- 浏览: 23504 次
- 性别:
- 来自: 北京
最新评论
-
robbin:
holan 写道静态语言与动态语言比较就是程序员在写代码的过程 ...
为什么没有java on rails——代码量少才是王道 -
holan:
night_stalker 写道holan 写道挂是因为这一向 ...
为什么没有java on rails——代码量少才是王道 -
night_stalker:
holan 写道挂是因为这一向的快乐女生
晚上的峰值太大
至于 ...
为什么没有java on rails——代码量少才是王道 -
holan:
抛开java虚拟机的成熟稳定不说单单就说动态语言和静态语言的不 ...
为什么没有java on rails——代码量少才是王道 -
holan:
fasun 写道holan 写道静态语言与动态语言比较就是程序 ...
为什么没有java on rails——代码量少才是王道
文章列表
java
web开发的框架很多,但都专注于J2EE分层结构的某一层,比如展示层的struts/jsf;业务层的spring/guice;数据层的
hibernate/ibatis等。J2EE充血模型项目追求业务层的独立,追求框架的低侵入性,在业务层不变的情况下,随便更换数据层或展示层被认为
是灵活性较高的设计,也是很多项目追求的目标。
但rails则追求完全不同的目标——开发快、代码少。事实上rails的业务代码对
ActiveRecord是高度依赖的,所有业务类都必须显示的继承ActiveRecord::Base类。在这种情况下,维持业务类的框架中立是不可能的。我们没 ...
在Rails中View+Controller+Helper是紧耦合的,Controller中的方法与相关目录下的view template一一对应;Model+Migration+DB是紧耦合的。这2大块之间是松耦合的。
这2块的内部组织方式是完全不同的:
对于Model层,我们通常会对业务进行OO分析,提取出一些名词和名词之间的关系,然后把他们映射成Model,这个过程比较直观,是相对细粒度的。
对于View层,我们要考虑的是用户怎么用着舒服,为了用户的方便,页面可能很简单,也可能很复杂,一个页面可能包含多个Form,一个Controller也可能调用多个Model的功能对view提供支持, ...
1、选择元素
旧用法
document.getElementById()
新用法
$()或$$()
评论
新的用法不限于用id选择元素,一般的库都支持CSS的选择语法,无论单选还是多选都非常方便。
2、namespace
旧用法
function submitBreakfastLogEntry(event) {
. . . . . .
}
function cancelBreakfastLogEntry(event) {
. . . . . .
}
新用法
var BreakfastLog = {
submitEntry: func ...
对象、类、模块
1.1、封装
1.1.1类层次结构
Object:顶级类
Kernel:mix-in到Object中的模块
Class:产生类对象的类
Module
:
Module是Class的父类
Classes, modules, and objects are interrelated. In the diagram that
follows, the vertical arrows represent inheritance, and the parentheses
meta-classes. All metaclasses are inst ...
- 2008-10-27 17:46
- 浏览 1687
- 评论(0)
Figure 1. UML offers five different types of class relationship
要理解这5中关系就不能简单的把它们和具体的语言实现相关联,UML介于问题域和解域之间,因而兼有这两者的概念。虽然类图是静态的,但类之间的这5种关系却是动静兼有的(也就是编译时和运行时混合的)。
问题域、解域混合,编译时、运行时混合是这5种关系的特点。
用词
问题域
解域
编译时
运行时
Dependency
uses a
短暂的或者对非业务类的(如工具类)依 ...
发过一个快捷键总结被埋了,现在搞个标题党试试。
代码助手:Ctrl+Space(简体中文操作系统是Alt+/)
快速修正:Ctrl+1
单词补全:Alt+/
打开外部Java文档:Shift+F2
显示搜索对话框:Ctrl+H
快速Outline:Ctrl+O
打开资源:Ctrl+Shift+R
打开类型:Ctrl+Shift+T 显示重构菜单:Alt+Shift+T
上一个/下一个光标的位置:Alt+Left/Right
上一个/下一个成员(成员对象或成员函数):Ctrl+Shift+Up/Down
搜索下一个:Ctrl+K
选中闭合元素:Alt+Shift+Up/Down/Le ...
- 2008-04-10 12:32
- 浏览 1217
- 评论(0)
线程安全的集合包含2个问题
1.多线程并发修改一
个
集合
怎么办?
2.如果迭代的过程中
集合
被修改了怎么办?
a.一个线程在迭代,另一个线程在修改
b.在同一个线程内用同一个迭代器对象进行迭代、修改、 ...
- 2008-04-10 11:25
- 浏览 4157
- 评论(0)
1几个最重要的快捷键
代码助手:Ctrl+Space(简体中文操作系统是Alt+/)
快速修正:Ctrl+1
单词补全:Alt+/
打开外部Java文档:Shift+F2
显示搜索对话框:Ctrl+H
快速Outline:Ctrl+O
打开资源:Ctrl+Shift+R
打开类型:Ctrl+Shift+T
显示重构菜单:Alt+Shift+T
上一个/下一个光标的位置:Alt+Left/Right
上一个/下一个成员(成员对象或成员函数):Ctrl+Shift+Up/Down
选中闭合元素:Alt+Shift+Up/Down/Left/Right
删除行:Ctrl+D
在当前行上 ...
1.实践
计算机是一门实践的学科,提高技术水平也应该选择最贴近实践的方法——自己写或者看别人写。我不是反对看技术书,但真正值得细读的技术书非常少,市面上计算机图书汗牛充栋,这个是经典、那个是大师、另一个又是必读,很容易误导初学者。事实上对国内大量在一线的程序员来说(专业项目管理、需求分析、测试等其它工种除外)在真正必读的书我认为只有2本——《代码大全》和《设计模式》(这里指的是讲设计模式的书,相对于Gof的这本,我更推荐《敏捷软件开发:原则、模式与实践》),剩下的时间都应该用在写代码和读代码上面。编程涉及到很多细节上的东西,比如变量和方法的命名、方法的粒度、注释的写法、经典模式的变体等等,而这些 ...