如何转型或者使自己的知识结构更加全面合理?(大小鸟毕看)

xue_sharp 2002-12-30 10:35:54
如何转型或者使自己的知识结构更加全面合理?

作者:高辉

kouvin@21cn.com kouvin@163.net

tel:13925097814



很多朋友非常想转型或者使自己的知识结构更加合理,但是苦于不知道如何进行,现在我想就这个问题给这些朋友介绍一下。



首先是技术的发展方向。sun当年提出了nc的概念,记得当时这个概念还炒的非常热,但是不久就因为各种原因销声弥迹(主要是商业上的原因)了。但是这种应用模式却随着时间的推移,越来越明显了,包括sun,包括微软,都在提出自己的网上平台,尽管sun和微软现在是名副其实的两大阵营,打的不可开交,但是他们都有一个共同点,那就是应用以及应用的方向都是构建在互联网上的,随着带宽等硬件建设的发展,这种需求对于软件来说也是越来越迫切,越来越成熟。分布式这些年来其实各大公司如sybase,sun,ibm,oracle等等都在做,但是都一直做的不太好,也不太实用,但是最终,sun提出了j2ee规范,并且成功将其实施,致使sybase,ibm,oracle等等都像是要讨好sun一样的迅速做出了反应,sybase 就说,我们从1987年就开始了与sun的合作,现在我们的EAserver也成功的支持j2ee,在EAServer上开发j2ee将是您最好的选择等等之类。因为大家都知道,j2ee已经成为事实上的工业标准,如果自己不在这个标准上跟进的话,自己就会在新的一轮竞争中淘汰或至少将失去一大部分市场,其中ibm,oracle和sun在他们所有的企业级产品中都加入并且将支持j2ee规范最为自己的必要和卖点。微软总是扮演一个邻家坏男孩的角色,不过这孩子也总是能够提出自己的一些东西,.net可以说已经进入市场,但是至少目前,他有两个我所不能接受的缺点:一是必须要在win平台上,二是这套技术规范还非常不成熟,我看过c#,在广州购书中心和北京路科技书店上也摆了一些,正像一些专家所说的那样,c#作为一种语言还不成熟,我倒是没有深入研究那些地方不成熟,但是因为和java非常类似,我看了一下其中的关于对象指向的问题,以及复制,我觉得没有java中克隆那样灵活。所以在语言的选择上,综合以上,我觉得我们现在其实选择的余地不是很大,也就是java。java作为一种网络语言,在开发今天和明天的软件或者说商业平台方面具有目前任何语言都无法比拟的优势。所以,如果您不想为明天担忧,建议是java。



其次是关于java本身的学习。实话讲java语言本身真的是一个非常简单的东西,甚至连数据库的访问的api在java语言本身中都没有包括。不过这一点儿也不影响java语言的强大,目前包括sun等等很多的公司都免费提供了很多的包,我们拿过来用就是了,就好像是core java中的包一嬷一样。java 语言之所以设计的如此简单,我想也是为了让大家尽快上手,在核心java(core java也就是java语言本身)中需要掌握的内容也就是下面几项内容:

1语法(不用我说,只要是程序员,看20分钟之后或者不看就可以跳过这一步,我是97年开始学习java的,以前是c语言,所以看java的语法很是化了一番功夫,但是现在的大家肯定比我当年要好上几倍,所以就可以跳过这一步,因为看源程序一样可以熟悉语法)

2对象的创建,记住:java中除了byte,char,int,long,float,double,boolean外全是类,既然是类,就必须要new来创建(除非一些static类型的返回值,比如Properties pros=System.getProperties()),用完了对象不必像c++中那样痛苦的要del掉。另外在这方面中还要注意casting和convert,也就是类型的转换,注意上下转换的不同。如 long-->double,和 double-->long就不同,会截掉某些某些字节。同样对象也要注意这些。也就是说在这方面内容时理解的关键就是对象或者基本类型在内存中的存在空间。

3事件机制的实现,我说的事件机制的实现是对于java1.1版本后的事件机制,老的事件机制好像用的人已经没有了。比如:如果按钮a要知道自己挨揍之后要做甚嬷,他就要请一个人来帮忙,这个人必须是具有合法的证件,我们可以叫这个人是私人律师,按钮把自己挨揍之后的事件处理直接交给她的律师来处理,当然按钮也可以自己来处理,不过他要先考律师证,也可以很多的按钮公用一个律师。总归就一个原则:处理事情的人必须是具有律师身份。----好了,就是这个比喻,我刚才突然就来了这个绝妙的比喻,真的非常贴切,如果你在事件机制看不懂时,就回过头来看一下我这个比喻,你马上就会明白的。

4swing界面的设计。和其他如pb,delphi等差不多,你很快就会上手的,只要多练。当然前提是要明白layout的管理。layout要多试验,试验多了,就懂了。layout manager的原则就是面板上可以放面板,也可以放组件。面板上的面板上还可以放面板,等等,也就是你随便放吧。“面板上随便放”就是layout manager原则,但不是“随便放”。

5数据库的访问。哎呀,这个最简单,找一个例子一看,2分钟就懂。因为各位都是从事数据库开发的,各种sql语句不用我说了,所以数据库是最简单的。

6j2ee规范中的jsp,servlet,ejb:如果您要开发分布式加web的应用,这是其中的三项内容,jsp的您只要以前做过asp,30分钟后您就入门了,半个月就是高手了。servlet其实是其中的两个对象,一个输出,一个获得,分别是HttpServletRequest,HttpServletResponse,如果您用jbuilder生成一个servlet的框架,然后花上半天的时间来研究,那嬷下午您就算是明白了它是怎嬷回事情(原来就是那两个对象呀),然后再开始入门。ejb有些特殊,建议您首先研究它的原理,原理研究透了,再用jbuilder生成一个框架,然后分别研究所生成的所有文件,研究2天,或者3天,您就可以开始入门了。

在上面的6项中我没有写一项就是如何写您需要的函数,任何语言都是一样的,您无非就是利用它的语法表达您的意思呗,所以我没有写,您自个儿心里面肯定倍儿清楚。



如果您要开发桌面应用的话:1+2+3+4+5

如果您要开发互联网应用软件的话:(如果需要客户端软件界面的话)1+2+3+4+5+6(去掉jsp)

如果客户端是浏览器的话:1+2+5+6



关于java语言的学习,如果您遇到困难,不妨重新看一下我的这篇文章,我想就会豁然开朗。很多东西当您完全通了的时候,您回过头了一看,就会惊呼:哇塞,原来就是这嬷一回事情!往往一句话就能够概括。





java开始学习的时候,最好不要用集成化的工具进行开发,直接用写字版,或者别的能够高亮显示语法的编辑工具,如UltraEdit,然后拿上一本入门书,开始时抄例子,然后到达一定程度后,拿过例子看一看,然后合上书,自己写例子,运行看那些地方错误,再看为申嬷,就这样,您就会很快的入门的。千万不要只是看书,要知道,计算机是一门实践性极强的东西。光看书会觉得很简单,但是就是上不了手。





第三培养系统分析员的素质。很多的程序员写了几年还是局限于程序,而不能够很好的达到一个更高的程度。其实现在由于许多的系统分析员都是程序员来做,因此,在开发数据库方面或者应用软件方面的设计总是比较糟糕,致使后来的人根本就没有办法去做。其实如果这些系统分析思路能够从事件中抽出来,而上升到对象一级,就会“柳暗花明又一村”,而不用怕客户再来提修改要求,达到以不变应万变。这个世界是对象与对象之间的互动,而不是表象的事件与事件的互动,错误的巨大隐患的系统分析就是分析了事件与事件的互动,这是严重的错误!对象可以是实体,也可以是事件,问题在于错误的系统分析将某一事件中的对象和子事件没有抽出来,其实上一般的(事件=实体1+实体2+实体3+....+实体n+事件1+事件2+...+事件n),只要能够将这个抽出来,然后再相对于各个实体,各个对象分别定义属性,事件,再在函数的实现一级抽象到最低,就可以对客户说尽管来吧。真的,如果能够深刻认识对象之间的三种关系(其实现实世界中对象只有这三种关系):继承,对应,组装,也就算是系统分析的入门了。另外还要能够学会用一些辅助工具来帮助您分析,如rose,vis,powerdesigner,会收到事半功倍的效果。



第四是linux的应用。我们办公室刚才还开过玩笑,有些公司如果真的查到版权的问题,不给罚的只剩下一把拖把才怪。最近版权的问题大家也都重视起来,对于win的系统,大家也都回归当年,仅仅是一个桌面机而已,不会把它当作服务器。而对于linux来说,另外还有apache,tomcat等等不花钱却又比商业的要好,“点解唔用佐?”(干嘛不用呢).linux这鬼东西,如果您要是愿意,拿上一本书,在机器前面待上4乘14小时,我想您就能够做一般的应用了,如安装软件,安装服务器,设置系统,编辑shell程序等等。我桌子上有两台机器,一台win的桌面机,一台linux,很爽,并且两台机器之间配合也非常默契。



...全文
66 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
wdman 2002-12-30
  • 打赏
  • 举报
回复
呵呵!
liusuanse 2002-12-30
  • 打赏
  • 举报
回复
好文
不过
12345
那几步说的恁简单了点

可能笔者牛b吧!
sayo 2002-12-30
  • 打赏
  • 举报
回复
嗨呦,嗨呦……
veijerd 2002-12-30
  • 打赏
  • 举报
回复
好文
我等要多多学习!
sunni 2002-12-30
  • 打赏
  • 举报
回复
不错不错~~~
momtea 2002-12-30
  • 打赏
  • 举报
回复
高!!!!!!!!!!!!!!!!
xue_sharp 2002-12-30
  • 打赏
  • 举报
回复
关于java语言的学习,如果您遇到困难,不妨重新看一下我的这篇文章,我想就会豁然开朗。很多东西当您完全通了的时候,您回过头了一看,就会惊呼:哇塞,原来就是这嬷一回事情!往往一句话就能够概括。
xue_sharp 2002-12-30
  • 打赏
  • 举报
回复
我感觉说的很精辟,是达到一定程度了。

我学java中的很多感受都被这文章说中了,可见作者是牛人啊。

大家说置顶好不好????????
kofwr 2002-12-30
  • 打赏
  • 举报
回复
先收了再说....
allthesky 2002-12-30
  • 打赏
  • 举报
回复
好文章
UP
UP!!!!!!
hoxisoft 2002-12-30
  • 打赏
  • 举报
回复
nb

SHOU CANG

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧