`
luliangok
  • 浏览: 788564 次
文章分类
社区版块
存档分类
最新评论
文章列表
rails有一个无用的”神奇“功能,叫做scaffold。能够在model基础上,自动生成CRUD的界面。 说它无用,是因为rails的开发者David说,scaffold”不是应用程序开发的目的。它只是在我们构建应用程序时提供支持。当你设计出产品的列表该如何工作时,你依赖于“支架”“生成器”产生创建,更新,和删除的行为。然后在保留这个“动作”时你要替换由“生成器”生成的行为。有时候当你需要一个快速接口时,并且你并不在乎界面的丑陋,“支架”就足够用了。不要指望scaffold能满足你程序的所有需要"。 说它神奇,是因为在rails中你不清楚他是怎么实现的。只告诉你一句话:约定优先于 ...
深入浅出Cocoa 之动态创建类 罗朝辉 (http://blog.csdn.net/kesalin/) CC许可,转载请注明出处 在前文《深入浅出Cocoa之类与对象》一文中,我已经详细介绍了ObjC中的 Class 与 Object 的概念,今天我们来如何在运行 时 动态创建类。下面这个函数就是应用前面讲到的Class,MetaClass的概念,在运行时动态创建一个类。这个函数来自《Inside Mac OS X-The Objective-C Programming Language》。
每当完成一个软件作品的时候,我们需要一个about对话框! 为了省去这样的重复工作,我们有必要制作一个通用的关于对话框! 根据他们的共性,可以分两部分: 一、单位信息 二、程序信息 单位信息:主要为单位名称、单位地址、单位电话、单位E-Mail、单位网址; 程序信息:主要为此程序对计算机硬件需求、计算机软件需求和程序版本。 为了美观,可以在对话框左上方,放一个logo! 整体的窗体布局图,如下图,所示: 在程序实现部分,需要填写打开网址和主程序版本号。 打开网址需要使用WIN32函数ShellExecute; 他的原型为: H ...
从模型开始开发似乎是个好主意。一方面模型是整个应用的核心,实现了应用的业务数据和对业务数据进行操作的约束,而视图和模板只是向用户提供操作和展现这些数据的界面;另一方面模型相对于系统的其他部分更加稳定,将模型先确定下来有助于系统其他部分的实现。DDD(领域驱动设计)更进一步将模型中的核心对象抽取出来作为“领域模型”。从Depot应用来看,产品(Product) 应该是模型中的核心对象之一。就让我们先来实现Product模型。 创建app 我们可以从《Django第一步》中实现的工程开始。在继续之前,还要进行一些准备工作。 Django约定必须要创建app才能使用模型。这也是Django的 ...
DBGridEH --- 多表头的DBGrid 我们在大部分的时候,使用DBGrid能完成数据表格的显示。 但是,我们有些表格是多表头的,如下图所示: 这个时候,我们需要使用DBGridEH! DBGridEH是EHLib套件中的一个主要功能。这个Delphi组件是在2004年公司做项目使用的一个主要非官方(Borland)提供的Delphi组件! 对于打印此组件上所显示的数据,很简单:添加PrintDBGridEh组件,即可完成!code:PrintDBGridEh1.Print; 其官方网址为:http://www.ehlib.com/ 最新版本为:v5.5 ...
Depot是《Agile Web Development with Rails》中的一个购物车应用。 该书中用多次迭代的方法,逐步实现购物车应用,使很多人走上了rails开发的道路。 遗憾的是Django世界中好像没有类似的指引,也许是因为pythoner 不需要具体的例子。 ...
对于一个web框架,掌握了三部分的内容,就可以说是迈出了第一步。 1. 准备开发环境 2. 创建一个工程,并运行 3. 开发hello world应用 1. 准备环境 首先应该是安装python和django。这点官方网站有很详细的说明,网上也有很多教程,这里就不再重复了,只是表达一个对操作系统的观点: Mac OS:对程序员和用户都很友好 Linux: 对程序员很友好 Widows:对用户貌似友好 到底使用哪个操作系统,仁者见仁。 然后是开发工具的选择。建议抛弃IDE,使用一个好的文本编辑器。强烈推荐vim。但如果你选择Emacs,我无话可说。 ...
MVC是众所周知的模式,即:将应用程序分解成三个组成部分:model(模型),view(视图),和 controller(控制 器)。其中: M 管理应用程序的状态(通常存储到数据库中),并约束改变状态的行为(或者叫做“业务规则”)。 C 接受外部用户的操作,根据操作访问模型获取数据,并调用“视图”显示这些数据。控制器是将“模型”和“视图”隔离,并成为二者之间的联系纽带。 V 负责把数据格式化后呈现给用户。在《Agile Web Development with Rails》中有这样一张图对MVC模式进行了很好的解释: Django也是一个MVC框架。但是在Django中, ...
Django (/ˈdʒæŋgoː/) 是用python语言写的开源web开发框架(open source web framework),鼓励快速开发,并遵循MTV设计模式。其主要目的是简便、快速的开发数据库驱动的网站。 Django遵守 BSD版权,目前最新的稳定版(stable)是2011年9月发布的v1.3.1。 Django 的名称来源于比利时的爵士音乐家Django Reinhardt,他是一个吉普赛人,主要演奏吉它。 与rails一样,Django强调 松耦合、少写代码、快速开发、DRY、一致性等原则。但Django与rails在设计哲学上最大的不同在于,Django强调“显 ...
1.4.10 Parentheses andBackreferences 小括号的用途: 1.限制多选项(alternation)的范围; 2.使用「|」将若干字符组合为一个单元,受问号或星号之类量词的作用; 3.反向引用(backreference);表现形式为元字符序列「\1…」 例如, % egrep -i '\<([a-z]+) +\1\>' files… 1.4.11 The Great Escape 转义符:在除了字符组内部之外使用反斜线(backslash),使元字符失去特殊含义,成为普通字符。 比如: 「\. ...
1.4.4 Alternation 1.4.4.1 Matching any one of several subexpressions A very convenient metacharacter is 「|」,which means “or”. 能够匹配总的表达式中的任意一个的子表达式,在这样的组合中,子表达式称为”多选分支(alternative)”。 例如, % egrep '^(From|Subject|Date): ' mailbox From: elvis@tabloid.org (The King) Subject: be seein ...
写在篇首: -------------------------------------------------------------------------------------- 此系列是Mastering Regular Expressions的学习要点! 有兴趣的朋友可以使用邮箱和我沟通!(非常欢迎你的交流) 我的邮箱: veic_2005#163.com(把#替换为@) ------------------------------------------------------------------完美的分割线--- Chapter 1. In ...
深入浅出Cocoa之类与对象 罗朝辉(http://blog.csdn.com/kesalin/) CC许可,转载请注明出处 最近打算写一些ObjC中比较底层的东西,尤其是 runtime 相关的。苹果已经将 ObjC runtime 代码开源了,我们可以从:http://opensource.apple.com/source/objc4/objc4-493.9/runtime/浏览源代码,或点此下载源代码。
建立Socket Policy服务器(金庆的专栏)Flash和Unity3D游戏服务器需要开启一个Socket Policy服务器。详细说明见:Setting up a socket policy file serverhttp://www.adobe.com/devnet/flashplayer/articles/socket_policy_files.html协议如下:Flash或U3D播放器向Socket Policy服务器发送请求:“<policy-file-request/>\0”,服务器返回一个xml文本,其中有包含<cross-domain-policy>配 ...
第9章:正则 - 替换 9.1 Search and Replace s/搜索的word/替换的word/ (1) 全局替换 /g (2) 大小写字母 \U:此标志之前的大写 \L:此标志之前的小写 \u:此标志之后的大写 \l:此标志之后的小写 9.2 分合函数 9.2.1 分割函数 split/搜索的符号/替换的符号+word 注CSV文件不要使用它!!! 使用CPAN的Text:CSV模块。 9.2.2 组合函数 join 粘合元素…粘合部分 9.3 优化正则 ...
Global site tag (gtag.js) - Google Analytics