载入中

 
     
 
      placard
载入中
      calendar
<<  < 2008 - >  >>
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
      comment
载入中
      newblog
载入中
      newmessage
载入中
      search

 

      login
载入中
      link
      info
载入中


 
 
载入中
   
 
 
浅谈如何成为JAVA程序员
[ 2008-5-22 10:36:00 | By: 北大青鸟鲁广 ]
 

  Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。J2SE开发桌面应用软件比起VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。所以现在应用最广泛又最好学的就是J2EE了。J2EE又包括许多组件,如:Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。

 

  如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。然后你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?还好,SUN提供了Javabean可以把你的JSP中的Java代码封装起来,便于调用也便于重用。接着就是EJB了,EJB就是Enterprise JavaBean,看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail了。  

 

  当然,JAVA中的应用有很多,毕竟不是三言两语可以说完的,在这里要告诫大家的是,软件工程师在进行程序开发时,切忌——浮躁,因为,做任何事情都不可以太过浮躁,当突然出现一个错误的时候,当出现的结果并不是我们想要的时候,这些时候,我们该做什么,该怎么做?调试,检查,思考,然而要解决困难做好这几点的前提就是心态,我们对于这些往往不是一朝一夕所能养成的,需要磨练,代码的磨练,以及错误的磨练。  

 

  总的说来,北大青鸟的学员们,要成为一个合格的JAVA程序员不是很容易,可是,在这一朝一夕中,我们所认识到的又仅仅只是这个编程世界吗?

 

采编: 武汉北大青鸟 蔡磊
原载: 北大青鸟鲁广校区 whhpaccp.com
版权所有,转载时必须以链接形式注明作者和出处及本声明

 
 
 
Re:浅谈如何成为JAVA程序员
[ 2008-9-29 16:05:00 | By: 徐州中博(游客) ]
 
徐州中博(游客)我也是学习java的,在徐州中博 北大青鸟(http://www.zbaccp.com);来学习IT,就有许多人告诉我java是重点,也是难点,是的,我自己也感觉到了,如果没有把所有知识点学好,就很难串连一起~

关于Java、C#泛型的一些看法
过去曾经有很长一段时间,直至现在,存在这样的一种观点,就是C#比Java的实现更漂亮。《Think in java》的作者Bruce Eckel曾经公开质疑过Java 5提供的泛型。不过说实在,我一直不喜欢看Bruce Eckel的书,感觉上他不是一个有经验有深度的技术人员。  我也很长一段实现认同这样的观点,因为人云亦云!
  在C# 2.0支持泛型,而且在虚拟机级别支持,一开始接触时,感觉是很震撼的,感觉到泛型从此走入主流应用开发了。和C++相比,没有C++模板那样强的功能,完全做不到产生式编程的效果,也做不到编译期计算的效果,但是它简单实用。
  Java 5也开始支持泛型,而且最终正式发行比C# 2.0要早,我之前就使用过Beta版本C#的泛型,也熟悉C++的模板语法,可能是内心的傲慢,或者是懒惰,开始时只是将就着按照传统的经验使用Java 5提供的泛型。
  对事物的一知半解总是令人困扰的,在阅读分析JDK源码时,总会遇到一些Java 5额外提供的泛型用法,一开始忽略不计,但是看多了总会注意到的。
  例如java.util.Collections类中的sort方法和binarySearch方法的接口:

以下是引用片段:
  public static void sort(List list, Comparator c);
  public static int binarySearch(List> list, T key);
  extends和super这两个关键字是C#和C++的泛型中都没有的,为什么需要这样的功能呢?
  例如如下情形:


以下是引用片段:
  class A { }
  class B extends A {}
  void addAll(List items) {}
  如下代码:

以下是引用片段:
  List aList = ;
  List bList = ;
  addAll(aList); //可以
  addAll(bList); //编译不通过
  addAll(bList)是无法编译通过的,这一点在Java、C#、C++中都是如此,怎么办呢?在java中如下处理,修改addAll的接口,改为:
  void addAll(List items) {}
  这样,addAll(aList)和addAll(bList)都能够编译通过了。
  另外super关键在算法中更是好用,如上面介绍的Collections.sort方法。如果你想在C#中实现一个和java.util.Collections.sort一样的方法,你会发现那是做不到的!
  为什么C#和C++无法提供这样的功能呢?因为C#和C++都是运行时的泛型支持,bList和aList的类型是不一样的,List和List的实际类型都是不一样的,运行时对泛型的支持目前还无法象处理数组参数那样具备协变能力。而Java的实现是编译器的特性,这样做的缺点就是性能没有得到提升,但是可以提供更好的语法糖。
  想起ajoo以前发表的一个观点,就是在应用开发中,泛型提供的关键是类型安全,性能反而是其次。我对此十分认同,重新审视java的泛型,我们会发现其设计颇具创新,而且向后兼容良好!
  总结一下我的观点:
  Java的泛型,语法有创新,更好用,向后兼容,编写泛型算法更方便,但是没有带来性能提升。
  C#泛型,实现有创新,在虚拟机级别支持,运行时支持泛型,性能有提升,但是不好编写泛型算法,不向后兼容。
http://bbs.zbaccp.com中博社区
 
 
 
Re:浅谈如何成为JAVA程序员
[ 2008-9-29 15:56:00 | By: 徐州中博(游客) ]
 
徐州中博(游客)我也是学习java的,在徐州中博 北大青鸟(http://www.zbaccp.com);来学习IT,就有许多人告诉我java是重点,也是难点,是的,我自己也感觉到了,如果没有把所有知识点学好,就很难串连一起~
 
 
发表评论:
载入中
 
     
   
     
Powered by Oblog.