cvsnt

来源:百度文库 编辑:神马文学网 时间:2024/06/13 13:49:44
2005年2月7日 23:45
今天坐在电脑一直在分章,顺便修改错字和调整句式。改到脑袋发热,已完成插件扩展点一章,明天再把插件项目实战一章搞定,足矣,争取上午完成,下午准备安心过大年。
有点经验教训:
(1)要让例子、图片更宽泛。比如,原来书的Eclpse是安装到c:\eclipse3.0.1,这就很不好,以后要换eclipse3.2.0怎么办,最后干脆改成了c:\eclipse。例子的包名文件名方法名等等都不要和章节编号有联系,否则章节一调,例子也得跟着改。要就尽量减少这种相关性,比如这一章提示看那一章的内容,这一节参照另一节的图片,这些都尽量的少。
(2)章节目录事先规划清楚。虽然写之前我已经给出目录,但。。。。。,郁闷。
今天改着改着觉得很恐怖,这么多文字都怎么写过来的,关键是里面隐藏的错别字还有病句怎么能都找出来。例子倒不用担心,都是运行通过直接复制的,应该不会有问题。另外,原先写的两个宏今天也忙了大忙,编号调整基本一下就搞定了。
2005年2月6日 23:10
今天把章节细分到了SWT篇,SWT那一章只分到了一半,基本上是把以前的节分成章,小节上升成节。挺大的一个工程。在细分的时间顺例再润色了一下文字和组织了小部份段落。在细分时以前写的WORD宏派上了大用场,编号调整很简单了。
今天有位兄弟 告诉我“关于CVSNT-2.0.58d与Eclipse 3.0.1或Eclipse 2.1.x的配置使用,只需把CVSNT中Compatibility选项卡中的三个选项选上即可,而Eclipse 3.1m4则可以使用CVSNT-2.0.58d的缺省配置。”,我以前怎么就没试出来呢?真是菜鸟呀。实在是感谢他,不过后来用到Eclipse3.1M4的个别图要重截,一些实例也要重测一下。
过年是不能安心了,呜呼!!!
2005年2月5日 23:50
书稿内容写完了,所有有红色文字的图片都换成了黑色文字,原稿都发给了张,他今天也要回去过年了,而我的工作还没做完,真是羡慕他呀。我哥也在回家的路上了。还有哪些工作呢:(1)一些操作录相要录音(2)有些章节太大了,要细分成多章。(3)前言要写。。。。我倒,过年前完成的愿望是难了。
张说:回家10天,再回来北京才能把书发给出版,其中还要一审二审三审,校对,光盘,等等,估计最快得两个月。他给我发了一本地址,电子工业出版社出的Eclipse书,我看了目录讲得很广,但插件和SWT/JFACE内容很少。想着刚写书的时候,还以为可以做一些开创性的事,当时还没有Eclipse的中文书。最开始第一本是<精通Eclipse>,接着GIGIX又翻译了一本,现在已经是第三本了,我的能在第四吗?呵呵。
幸好,我以插件和SWT为重点,不然重复做轮子真是没什么意思了。写书也太辛苦了点,两月半,我就没怎么在12点之前睡过。也许是我这个人太实在,不过我还是认为实在点好,我不希望我的第一本书成为垃圾。在图书市场计算机的烂书实在太多,我已经极少买书了,2003年买的<Java与模式>,2004年买的<Effective Java>都还不错,想想今年计算机书就买了这一本。也难慢怪,现在计算机技术更新得太快,版本更新更快,6.0出了,5.0的书就卖不动了,谁还这么卖力写书。
我觉得书还是以小而精的好,甚至想过那种口袋书,也就50页-100页,专门针对一个软件最常使用的方法来写,比如JUnit,把一个软件从创建自动测试开始到最后结束的过程写得清清楚楚,付上具体可操作步骤+详细简短的实例,这就是一本好书。网上的文章大都泛泛而谈,要就是很简单的示例性说明,不清不楚一笔带过,要就是纯理论的介绍,都看着费力也费时间。我宁愿花十几块钱,也比在网上找资料强,但这样有针对性的书很少。
2005年2月5日 凌晨
巨昏,写了很长的日志,一不小刷新就没了,算了简单记一下:
(1)莫名其妙成了CSDN的Java频道Eclipse专栏的专栏作者。
(2)第一次有人在“项目打包发行”一文里说我不专业,却又不指出我那里不专业。
(3)今天在Java视线,看到一个长帖,又是骂战。Java界名人Benq<-->CSDN的Java主编GIGIX,唉,希望这种事越少越好。
(4)benq的X框架在TSS上被外国人骂做“象是又一个中国垃圾”,唉,真是中国程序员的耻辱呀,难道中国的开源软件就是给别人这样一个印象吗?但有名的开源软件,中国人的名字在哪里?
最近在论坛里看到轻量级派和EJB派吵得很凶,已经到了人身攻击的份上了。想想很滑稽,这两种东东本来就更有胜场,适用不同的领域,EJB适用于企用级集群,轻量级框架适用于单服务器的快速开发。如果你用Hibernate来做集群看看,不是不可以,但肯定会很痛苦,因为Hibernate产生本来就有它的目的,就是解决EJB在轻量级开发上的尴尬,这是任何初学者的常识。
争论到了最后却成了谁替代谁的你死我活了,这样的帖子完全没有意义,本质上都是各派在为自己的饭碗在争夺,一个试图守住自已的EJB饭碗,对轻量级大肆妖魔化,甚至说:轻量级是技术政治人员搞出的蒙级的人东东。另一些则是技术新锐说:轻量级的流行是对EJB的胜利,把EJB扁得一钱不值。唉,初学者看了这种帖只会更困惑:Java我到底该学什么!!
2005年2月3日
第9章初稿完成,开始按张的要求修改第8章。图片有红色文字的都要重新截图,因为出版的是黑白图片,红色会较浅。第9章写完用了14天,才70页左右,真慢。
今天收到一个QQ消息,有一个网址,一点竟然中了QQ病毒,以后用QQ都会自动加尾巴了,极大的影响使用。以前都是装杀毒+防火墙+随时更新windows,所以都没有碰上病毒,几年来是第一次被病毒搞到,因为SP2激活的问题,所以后来重装XP后就关闭了自动更新的功能。QQ病毒基本是由于IE漏洞引起的,如果打好IE的补丁就不会有事。
这QQ病毒用瑞星以及QQ的网上杀毒都搞不定,最后想升级Windows却崩溃了,只得花三个小时重装系统。这已经是这二个半月以来第四次重装了,逊。
2005年1月31日
今天调一个JSP时,Lomboz巨慢。我后来干脆把它的代码检查和代码提示功能给关了,但却更不好用,编程出错的机率上升了,调试时间更多,所以不得不再打开。看来Lomboz应该在效率上改进一下,至少也变通一下,也可以提供一个菜单,让开发者想检查的时候再检查。我已经看到有人因为抱怨Lomboz的慢,而选择了MyEcilpse,不过MyEclipse要钱的。
中午和张浩在MSN上讨论了一下Struts中表单能否把一个非String的自定义类型传给ActionForm,讨论没有结果。我觉得应该是可以的,比如上传文件的表单项传到ActionForm里的photoFile字段就是一个org.apache.struts.upload.FormFile类型,也不是JDK的常用String或int类型,而是struts的自定义类型。
在Struts中模块化的功能好象有问题,它的模块名和路径名要相同,这似乎搞乱了概念,而且在路径定位上也存在问题。我去查这方面的资料,竟然发现一位老兄去改源代码来搞定它。
2005年1月30日
今天抽时间,写了两个word的宏。
Sub 批量后退()

‘ 批量后退,这个宏用于将出版书籍时对编号(如图像编号、章节编号)进行整体调整
‘ 宏在 2005-1-30 由 陈刚 录制

Dim prefix As String
Dim startI As Integer
Dim endI As Integer
Dim spaceI As Integer
prefix = InputBox("前缀", "", "图9.")
startI = InputBox("开始")
endI = InputBox("结束", "", "100")
spaceI = InputBox("后退值", "", "1")
Set myRange = ActiveDocument.Content
For i = endI To startI Step -1
myRange.Find.Execute FindText:=prefix & i, ReplaceWith:=prefix & (i + spaceI), Replace:=wdReplaceAll
Next i
End Sub
Sub 给程序加编号()

‘ 宏在 2005-1-30 由 陈刚 录制
‘ 给程序加编号,这个宏用于给选定的程序加上编号。
‘ 这个程序有几个特点:
‘ (1)在定位行之前要先定位页,因为word的行号是以页为基础的。
‘ (2)Information中只有开始字符所在行的信息,却没有结束行的信息(或者是我没有找到)。
‘ 这个程序有一个缺陷,由于没找到获得所选区域总行数的方法。所以选择区域必须为当页,否则

startNum = InputBox("输入开始编号", "", "1")
pageNum = Selection.Information(wdActiveEndAdjustedPageNumber) ‘得到当前页号
startLine = Selection.Information(wdFirstCharacterLineNumber) ‘得到第一行的行号
Selection.EndKey Unit:=wdLine ‘相当于按一下end键
endLine = Selection.Information(wdFirstCharacterLineNumber) ‘得到按end键后的行号,即所选区域的结束行号
Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=pageNum ‘定位页(光标会自动停在页的第一行)
Selection.MoveDown Unit:=wdLine, Count:=startLine - 1 ‘下移数行,到达所选区域的第一行
For i = 0 To endLine - startLine
Selection.HomeKey Unit:=wdLine ‘相当于按钮Home键
Selection.TypeText Text:="(" & i + startNum & ")  " ‘相当于敲入字符(1)等
Selection.MoveDown Unit:=wdLine, Count:=1 ‘下移一行
Next i
End Sub
2005年1月29日
第9章WEB开发,完成了JSP和Struts两大节,共48页,现在只剩最后一节Hiberante。Struts以一节的方式来似乎太牵强了,但前面SWT、插件等等都是以一章的形式来写的,为了统一不得不如此。
如果可以从头来过,还是应该分成“篇->章->节->小节”,把Eclipse基础篇、Eclipse插件篇、Eclipse的WEB开发篇,这样在章节上可以更细份一些,比如原来的项目实战100多页就可以分出几个章节。现在的WEB内容也可以分成三个章节:JSP、Struts、Hibernate。
章节细分的一个好处就是在图片增加时,工作量要小一些,现在第8章要加一节,所有50张左右的图片都要重新编号,挺恐怖。不过用word的宏可能可以用编程的方式来自动完成这些编号调整,到要改的时候再看看。
2005年1月19日 第八章完成了,终于告一段落
几天备战,终于完成了第八章 插件项目实战,106页,约15天的时间。CVS的问题也在这章彻底解决了,查了N多资料,最后还一个偶然的机会,下载了Eclipse3.1M4后发现它可以和cvsnt-2.0.58d.exe正常搭配,而上次浩浩同学给我的cvsnt-2.0.26.exe在Eclipse3.0.1下使用能出“CVSROOT”列表,但在共享项目时无法完成,频频死机。看来插件之间的配合真是蛮头痛的问题,也难怪很多人还是选择JBuilder,毕竟JBuilder一揽子都包含了,方便呀。
现在共完成了364页,前面也有一些修改的地方。负责书出版的张增强说,尽量在400页以上,500页也没问题,要把Struts、Tomcat、Hibernate包进来。虽说这些内容和Eclipse特性的关系是不很大,但也算Eclipse做
为JAVA开发工具的主要应用方面,下面的内容就是写它们了,希望可以在过年前搞定它们,不要过年了还做在电脑前低头打字呀!
给出第8章的项目的一个截图:

-------------------------
2004年12月13日 9:48 PM 第三章写完了,太艰苦了
一周左右常常加班到1、2点钟,才完成第三章SWT,而且还有一章未写(一些和插件开发无关的SWT的控件),仅仅52页的内容,有60多张图,截图都累死人了。一直在尝试快速写书的方法,第一、二章是步步为营,写一节检查一节,觉得太慢。第三章是粗写再精写,粗写时花时间不少,精写是则又是改动挺大,觉得这样更慢。接下来的是第四章JFACE篇要怎么写呢?我想要先在脑海里做好构思,然后罗列一整章的材料,然后精写。我是不敢再用粗略写再精细改的方法了,常常是一改就会动作很大。加油!!!只能自己给自己鼓气了。有时间会再选 一两节帖出来,有时间。在曾经同事张浩传的老版本CNSNT过来后,CVSNT软件的问题完全解决了。老版本没有的问题新版本却出了。真所谓改三个BUG再多出一个BUG,增一项功能又多三个BUG。
----------------
2004年12月05日 12:38 第二章写完了,JUnit一节暂时跳过
第二章写完了,不过有关JUNIT的内容,放到后面再写吧,说不定就不要了。在国内对JUNIT看热闹的要比实际去用的多吧,用自动测试方式的开发思路,基本上每个类都要写相应一段测试代码文件,工作量是加了两倍都不至,如果不是项目经理强制推行,程序员谁会想用JUNIT呢?那不是自找苦吃吗?现在的项目都是做完就扔,有些项目甚至都结构一团糟,改都不敢改,更不用说去用JUNIT了。
我朋友的朋友,一个北京名牌大学的研究生和我聊天时说,他们导师以学校名义低价接下国家某部委的软件单,十个人左右做了六个月,原计划是1个月三个人搞定的,最后却.......。而且做完以后都不敢改,没有总体设计,没有规划,不用设计模式,扛着键盘就上,埋头就写代码。到最后用一根根木头勉强把房子搭起来了,看看和用户要求的样子表面是一样,但却是个危房,里面代码混乱不堪,注释少得可怜,客户要修改一个地方,sorry,不敢改,有bug,sorry不敢动,因为动一处而动全身,改了一个bug说不定就会出N个BUG......。这样的项目绝不少见,而且可以说很多很多。
做事都要估计得宽松一点,因为实际情况经常会超出预期,很多未知的事都会拖慢进度。我在IBM的项目有点这个味道,原定5月结束的项目搞到了9月,不过人数倒没增加多少,控制得很好。而且产品听Grolia说很得客户好评,满意度很高,听到真开心呀,软件都得到客户好评可是真不容易的一件事。
再回到说JUNIT,做一个长期产品的人都知道,开发软件的第一个版本不难,难的是后期维护升级。要能经得住不断的修改就要有灵活而强健的的设计,要保证质量,还要全面测试。测试是质量的关键,再优秀的程序员都会编出有BUG的代码,因为一个系统需要考虑的事太多了,总会有想得不周到的地方,所以测试是必须的。
在微软,一个软件要打包出版,任何一个BUG的修改都要做评估以决定:改还是不改。因为根据实际统计一个繁杂的系统,平均改一个BUG就会生出三个新BUG(不良设计和劣质代码则更糟),打包出版前一刻任何改动都是很危险的。如果决定修改这个BUG,那么修改完成以后,微软还会对此软件重新做一次全面的测试,以确定此次修改不会产生新的严重的BUG。
测试优先,这是长期实践得出的结论,也是JUnit得以发展的原因。要得到同一质量的软件,用JUnit,用3小时编程,10小时维护;不用JUnit,用1小时编程,100小时维护。你选那一种。当然是第一种不用JUnit了,因为国内的软件项目,一开发完成再做过初期维护就不再管了,要升级?OK,重新来过吧。呵呵,现状就是这样的。
----------------
2004-12-03   CVSNT可真难搞
写第二章到CVS服务器CVSNT的安装时,可真是碰上麻烦了,新版的CVSNT(我用的是cvsnt-2.0.58d版)的设置面板改动挺大。最后安装好了,却用不了,原来是文件仓库的取名问题,不能用前缀,而要用绝对路径。唉,这个问题花了半天时间,郁闷。以前项目的CVS服务器是老大装的,我们只用客户端就行,记得开始时也出过一些问题,老大他自己装自己解决,不过我都没去管。
最后ECLIPSE连上没问题了,但HEAD却显示不了当然版去来,倒也不影响使用,不知这是不是CVS的BUG,网上的文章都是针对老版的,从没提到过这个问题. 等CVS出了新版再看看吧.
----------
刚刚,据说cvsnt新版本问题反而更多,老大用的是2.0.16,我现在用的也是,你试试?
2004-12-06 1:32 PM | 张浩
Trackback: http://tb.donews.net/TrackBack.aspx?PostId=275259
_xyz