今天,正式把这本电子书的快捷方式放在桌面上,另外,下载安装了firefox的划词翻译插件:DictCN 2.2,用来翻译生词。
现在,网上已经有了这本电子书的中文版,但我还是想看英文版,因为想一举两得,既学了设计模式,又学了英语。我会把学习过程中碰到的包括语言在内的问题记下来。
现在,单位的事情不多,可以用这个时间认真学习一下设计模式。不过,单位的机器已经失盗,自己的那台老古董装的是文本模式的redhat linux 9.0,有空的时候在上面看看文章和网页还行,可就是碰到生词没有办法划词翻译。有点不爽。但是也只有将就了。
路还是要走的,不能因为怕走错路就一直呆在原地不动。学设计模式,开始吧。
如何安装Firefox扩展文件?(转帖)
如何安装Firefox扩展文件? (转自:http://www.firefox-china.com/edu/2006/26.html)
文档来源:firefox-火狐浏览器 文档作者: 火狐 发布时间:2006-06-24
扩展文件通常是xpi文件格式(以.xpi结尾).有三种安装方法:
1,直接拖拽到Firefox浏览器的窗口里或扩展窗口里
2,点击 '菜单"--"工具"--''扩展'',把.xpi文件拖进弹出窗口里,稍后就可以看到Firefox会询问你是否要安装这个插件,点击是,并重启Firefox浏览器
3,鼠标右键点xpi文件,选打开方式,在打开方式里选firefox,设置关联。以后只要双击xpi文件就自动安装了
Eclipse使用技巧(转)
转自:(http://www.javaresearch.org/article/57437.htm)
用了eclipse有一段时间了,就是没有系统的学习过。下面这篇转帖不错,看了下觉得有收藏价值就贴在这里了。
正文
××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
Eclipse使用技巧
jiqimiao1982 转贴 更新:2006-11-04 12:45:09 版本: 1.0
热键篇:
Template:Alt + .
修改处:Window->Preference->Workbench->Keys->Command->Edit->Content Assist。
个人习惯:Shift+SPACE(空白)。
简易说明:编辑程序代码时,打sysout +Template启动键,就
会自动出现:System.out.println(); 。
设定Template的格式:窗口->喜好设定->Java->编辑器->模板。
程序代码自动排版:Ctrl+Shift+F
修改处:窗口->喜好设定->工作台->按键->程序代码->格式。
个人习惯:Alt+Z。
自动排版设定:窗口->喜好设定->Java->程序代码格式制作程序。
样式页面->将插入tab(而非空格键)以内缩,该选项取消勾选
,下面空格数目填4,这样在自动编排时会以空格4作缩排。
快速执行程序:Ctrl + F11
个人习惯:ALT+X
修改处:窗口->喜好设定->工作台->按键->执行->启动前一次的启动作业。
简易说明:第一次执行时,它会询问您执行模式,
设置好后,以后只要按这个热键,它就会快速执行。
<ALT+Z(排版完)、ATL+X(执行)>..我觉得很顺手^___^
自动汇入所需要的类别:Ctrl+Shift+O
简易说明:
假设我们没有Import任何类别时,当我们在程序里打入:
BufferedReader buf =
new BufferedReader(new InputStreamReader(System.in));
此时Eclipse会警示说没有汇入类别,这时我们只要按下Ctrl+Shift+O
,它就会自动帮我们Import类别。
查看使用类别的原始码:Ctrl+鼠标左键点击
简易说明:可以看到您所使用类别的原始码。
将选取的文字批注起来:Ctrl+/
简易说明:Debug时很方便。
修改处:窗口->喜好设定->工作台->按键->程序代码->批注
将选取的文字取消批注:Ctrl+简易说明:同上。
修改处:窗口->喜好设定->工作台->按键->程序代码->取消批注
视景切换:Ctrl+F8
个人习惯:Alt+S。
修改处:窗口->喜好设定->工作台->按键->窗口->下一个视景。
简易说明:可以方便我们快速切换编辑、除错等视景。
3.0里Ctrl+Alt+H可以看到调用当前member的方法,而且可以一层一层上去.
Ctrl+O可以快速切到其他方法.
密技篇:
一套Eclipse可同时切换,英文、繁体、简体显示:
1.首先要先安装完中文化包。
2.在桌面的快捷方式后面加上参数即可,
英文-> -nl "zh_US"
繁体-> -nl "zh_TW"
简体-> -nl "zh_CN"。
(其它语系以此类推)
像我2.1.2中文化后,我在我桌面的Eclipse快捷方式加入参数-n1 "zh_US"。
"C:\Program Files\eclipse\eclipse.exe" -n "zh_US"
接口就会变回英文语系噜。
利用Eclipse,在Word编辑文书时可不必将程序代码重新编排:
将Eclipse程序编辑区的程序代码整个复制下来(Ctrl+C),直接贴(Ctrl+V)到
Word或WordPad上,您将会发现在Word里的程序代码格式,跟Eclipse
所设定的完全一样,包括字型、缩排、关键词颜色。我曾试过JBuilder
、GEL、NetBeans...使用复制贴上时,只有缩排格式一样,字型、颜
色等都不会改变。
外挂篇:
外挂安装:将外挂包下载回来后,将其解压缩后,您会发现features、
plugins这2个数据夹,将里面的东西都复制或移动到Eclipse的features
、plugins数据夹内后,重新启动Eclipse即可。
让Eclipse可以像JBuilderX一样使用拖拉方式建构GUI的外挂:
1.Jigloo SWT/Swing GUI Builder :
http://cloudgarden.com/jigloo/index.html
下载此版本:Jigloo plugin for Eclipse (using Java 1.4 or 1.5)
安装后即可由档案->新建->其它->GUI Form选取要建构的GUI类型。
2.Eclipse Visual Editor Project:
http://www.eclipse.org/vep/
点选下方Download Page,再点选Latest Release 0.5.0进入下载。
除了VE-runtime-0.5.0.zip要下载外,以下这2个也要:
EMF build 1.1.1: (build page) (download zip)
GEF Build 2.1.2: (build page) (download zip)
我只测试过Eclipse 2.1.2版本,使用上是OK的!
3.0版本以上的使用者,请下载:
Eclipse build I20040324:
1.0.0 Stream Integration Build I20040325 Thu, 25 Mar 2004 -- 12:09 (-0500)
1.0.0 Stream Nightly Build N20040323a Tue, 23 Mar 2004 -- 13:53 (-0500)
注意:3.0以上版本,仅build I20040324可正常使用。
安装成功后,即可由新建->Java->AWT与Swing里选择
所要建构的GUI类型开始进行设计。VE必须配合着对应
版本,才能正常使用,否则即使安装成功,使用上仍会
有问题。
使用Eclipse来开发JSP程序:
外挂名称:lomboz(下载页面)
http://forge.objectweb.org/project/showfiles.php?group_id=97
请选择适合自己版本的lomboz下载,lomboz.212.p1.zip表示2.1.2版,
lomboz.3m7.zip表示M7版本....以此类推。
lomboz安装以及设置教学:
Eclipse开发JSP-教学文件
Java转exe篇:
实现方式:Eclipse搭配JSmooth(免费)。
1.先由Eclipse制作包含Manifest的JAR。
制作教学
2.使用JSmooth将做好的JAR包装成EXE。
JSmooth下载页面:
http://jsmooth.sourceforge.net/index.php
3.制作完成的exe文件,可在有装置JRE的Windows上执行。
Eclipse-Java编辑器最佳设定:
编辑器字型设定:工作台->字型->Java编辑器文字字型。
(建议设定Courier New -regular 10)
编辑器相关设定:窗口->喜好设定->Java->编辑器
外观:显示行号、强调对称显示的方括号、强调显示现行行、
显示打印边距,将其勾选,Tab宽度设4,打印编距字段设80。
程序代码协助:采预设即可。
语法:可设定关键词、字符串等等的显示颜色。
附注:采预设即可。
输入:全部字段都勾选。
浮动说明:采预设即可。
导览:采预设即可。
使自动排版排出来的效果,最符合Java设计惯例的设定:
自动排版设定:窗口->喜好设定->Java->程序代码制作格式。
换行:全部不勾选。
分行:行长度上限设:80。
样式:只将强制转型后插入空白勾选。
内缩空格数目:设为4。
Eclipse的教学文件:
扩充Eclipse的Java 开发工具(中文)
使用Eclipse开发J2EE 应用程序(中文)
使用Eclipse平台进行除错(中文)
用Eclipse进行XML 开发(中文)
开发Eclipse外挂程序(中文)
国际化您的Eclipse外挂程序(英文)
将Swing编辑器加入Eclipse(英文)
如何测试你的Eclipse plug-in符合国际市场需求(英文)
Eclipse的相关网站:
http://eclipse-plugins.2y.net/eclipse/index.jsp
http://www.eclipseplugincentral.com/
Eclipse相关教学[简体]
转帖完毕
restart english diary writing
The spare in the past month, I was doing some changing on website: relocate our website, rewrite the homepage, do the 301 redirection, cut the old struts dynic navigation system, and rewrite the navigation system of website, etc..
So, I almost forgot writing english diary, even learning english in any way.
Engish is a very useful tool, this can't be changed, must learn it persistly.
How to learn it?
1, Learning some thing about program which written in english, like Eric's Thinking in Pattern. I have ever known a famous game programer named "Feng Yun" haven said:"If you want to learn a program techniqe, a best way is to read a relative book written in english." He says: In this way, you must study every part of the book. I think he is right.
2, See some english film and TV program, I have mete a method at http://seawan.nyist.net/kle/index.php;
3, Restarting reading yahoo news at my mobile phone through GPRS.
There are many ways to do a thing, but for me, maybe the simplest way is the best way for me. The persistent is the most important thing, not only for learning english.
世界上什么最大?
您先不要看我后面的回答,自己先想一下,看是不是“英雄所见略同”:)
我的答案是“心”最大,不是有句古话叫“人心不足蛇吞象”吗?当然这是一句贬义的。也许有的朋友会说宇宙最大。宇宙还不是“心”想出来的。
为什么“心”最大呢?“心”还可以把一点小事变成大事,一个平凡的人变得伟大。不是说:“千里送鹅毛,礼轻仁义重”吗?鹅毛虽小,但是它承载的情义是太深了。还有,如果有同样两个人施舍10块钱,一个人自己温饱不足,一个人家财万贯,您说他们谁更伟大呢?
为什么会想到这个,是因为今天早上女儿的一件小事触动了我。今天早上,我在外面买了点馒头当早餐。吃着吃着,女儿忽然拿起一个馒头说:这个馒头给婆婆爷爷吃。家里有人不以为然,而我则坚决支持女儿,让她把馒头给婆婆爷爷送去。一颗幼小的心灵萌发的孝敬长辈的心,虽然只是一个馒头,难道不值得我们呵护和鼓励吗?
所以,我说“心”是最大的。引申到人与人相处,只要彼此的心意是好的,没有什么能够打破人们之间良好的相处。
在eclipse中javabean中的boolean型变量不要用"is"开头
在eclipse中(2.* 和 3.*)都试过,如果选定属性用eclipse的自动生成getter和setter 的方法,则在boolean类型中不能以is开头。如下面的
boolean b 和 boolean isB 自动产生的getter和setter都为:
|
下面试了在eclipse中多种类型的数据的自动生成getter和setter方法,方法是用鼠标选定要生成getter和setter的属性,再选择菜单中的:Source->Generate Getters and Setters...:
|
搭建环境
一、安装Ruby
从http://rubyinstaller.rubyforge.org/上下载最新的Ruby one-click Installer for windows。
所有选项都选择。一顿经典的next之后,我们就安装了Ruby。
二、使用Rubygems安装Rails
因为刚才经典的next,我们已经成功的安装了Rubygems,利用它可以安装Rails。
gem包含很多子命令和相应的选项,感兴趣的可以在dos窗口下输入gem -h来查看帮助。
好了,让我们用一条语句来安装Rails。
首先确保你的计算机连接到了internet。
在dos窗口下输入:gem install rails --remote
等待吧。。。
有yes or no的地方按“y”
三、数据库的选择
要说Rails对数据库的连接,用mysql吧,这可是官方推荐的。至于mysql安装与配置,再次不赘诉了。
现在,我们已经搭建了开发Rails应用的环境,马上就要开始Rails应用的编写了。呵呵
Ruby简介
Ruby 是由日本人松本行弘发明的一种面向对象的脚本语言。虽然很多语言都宣称自己是面向对象的,但是每种语言的解释都不一样,大多是以它们自己特有的方式来解释什么是面向对象,而实际情况中,这些面向对象语言又都采用了很多非面向对象的做法。以 Java 为例:如果你想对一个数字取绝对值,你会怎么做呢? java 的做法是
int c = Math.abs(-166);
也就是将一个数值传递给 Math 类的一个静态函数 abs 处理。为什么这么做?因为在 java 中, 数值是基本类型不是类。
而在 Ruby 中,任何事物都是类, 也就是说,数字 –166 就是对象,取绝对值这样的操作应该属于数字本身,所以”Ruby 方式”的做法就是:
c = -166.abs
这种做法是不是更直观一点。
接着我们来介绍一下 ruby 语言的一些简单特点。
如何定义函数
def hello(name)
result = "hello, " + name
return result
end
这就是一个最简单的函数定义。Ruby 以 def 开始一个函数定义,后跟着 函数名, 然后是 参数,但是参数不必非要放在括号中, 你可以这样定义 def hello name ,之所以要用括号是为了更清晰。在 ruby 中你可以用多种方式来完成同一件事情,这也是 ruby 的设计思想。
Hello 函数很简单, 将参数和 “hello, “字符串组合在一起,赋值给临时变量 result ,然后再返回 result。 你会注意到 result 变量并没有申明,因为在 ruby 中无需申明,变量在赋值中自动使用。 另外 ruby 中不需要使用 ; 来结束每个语言,只要保持每条语句在单独一行就可以。 Ruby 也不包含 {} 来定义块结构, if , when 函数都以一个 end 关键字来结束。缩进不是语法(python 程序员要失望了)。第一次使用ruby 我也有点不习惯,因为我认为python 语言的缩进语法可以使得阅读程序代码更容易一些。但是学习了一段时间后,我发现缩进语法并不是那么重要,Ruby 本身带来的帮助远比这个更重要。而且代码的易读性也不是由缩进来改善的.此外上面的代码还可以更简化。
def hello (name)
" hello, #{name}"
end
在 ruby 中,函数的最后一条语句如果是表达式,那么它就作为返回值。在上面的代码中,用到了另外一个概念,就是表达式插入,字符串可以用单引号和双引号来括起来。但是两者还是有一点区别。区别在于处理时间上的不同。如果使用单引号,那么处理的时间很短。如果使用双引号,那么你可以插入变量,表达式,还有就是转意字符的替换,最常见的是 \n,\t 等。 以上面的代码为例 字符串中插入了变量 name ,字符串中插入变量以 # 开始,变量放在{}中。 但是特殊变量可以不用 {}. 那么什么是特殊变量呢。这个也是 ruby 特别的地方。在 Ruby 中,全局变量以 $开头,静态变量,也就是类变量以 @@ 开头,实例变量以 @ 开头。如果在字符串中引用 实例变量,你可以这么写。
def hello
" hello, #@name"
end
关于变量和基本结构我们就简单介绍这些,下面我们要介绍一个重要的Ruby 概念。就是 interator (迭代器)。 这个概念遍布在很多 ruby 代码中,也是最常见的 ruby way 。正是因为 interator ,在 ruby 程序中,你很少会看到循环的使用。 举个最简单的例子,如何打印从 1 到 6 的结果。
在 java 等语言中,我们的实现方法是:
for(int i = 1; i<6;i++) {
System.out.println(i);
}
而在 ruby 中,一切皆为对象,数字本身就是对象(我们在前面已经介绍过了),数字本身有它自己的迭代器 times 。那么让我们看看它的实现。
6.times {|i| p i }
是不是很简单。
迭代器的概念很有趣,它是如何在 ruby 中实现的呢。每个函数可以不光带有参数,还可以在参数后面带一个代码块。代码块在ruby 中是以 {} 和 do end 来包围起来的。通常如果是单行使用 {} ,如果是多行这使用do end 。这并非强制,只是习惯性用法。
代码块和参数并不相同,它和函数的执行可以说是并行的,确切的说是接替进行。如果在函数内部如何在运行过程中碰到了 yield ,它就会将函数执行过程交给函数附带的代码块来执行,代码快执行完了,执行流程转到函数内部继续运行。似乎很难理解,以下面这段代码来理解可以会容易一些。
def callBlock
yield
yield
end
callBlock { puts "In the block" }
输出:
In the block
In the block
CallBlock 函数中只有两个 yield 语句,它在执行过程中将执行权交给 函数附带的 block 运行,block 输出字符串 "In the block" ,这样最终结果就是输出两行 "In the block" 。 在函数内部使用 yield 还可以带任意多参数。比如
yield a, b, c
这三个参数对应代码块中的三个参数 {|x,y,z| p x y z }
Rails初体验
体验Rails带给我们的web开发全新感受!
又有一位单位上的老革命去世了
继昨年单位上的一位我尊敬的老师60来岁就去世了,今天,刚一上班就听说了本单位的一位66岁的老革命在前天去世了。上午和单位的同事一起到殡仪馆参加了他的追悼会。
这位老革命生前性格还乐观,但是60岁左右刚退休就因为得糖尿病眼睛瞎了,而且听说因为家事一直也不是很开心。直到去世。具体情况不清楚,听说而已。
死亡是无情的,但又是绝对公正的。
死亡对于生者也许是很好的一个导师。