论坛首页 Java企业应用论坛

Java学习从入门到精通

浏览 196169 次
该帖已经被评为精华帖
作者 正文
   发表时间:2005-06-17  
还有就是现在我学了有将近1个月的java了,书已经看到多态了,我把书上的所有源程序,所有课后练习都做了,基本上是照robin所说的那种方法,可是现在怎么觉得自己还是不会编.
这次我们ai的课程实践是 用a*算法写个迷宫,可是我怎么就不知道要从那里下手,比如解数学题,它总有个步骤,一步一步就作下来了,可是编程我就不知道从那里下手,好郁闷,没办法,买了本算法导论,准备暑假好好学习了.
还有就是面向对象,我怎么觉得我现在想问题,还是在用面向过程的思想,我觉得原因是不是在小程序中面向对象是不是体现不出来?
谢谢 各位!
0 请登录后投票
   发表时间:2005-06-18  
呵呵,现在都用java做过几个大项目了,还是懒得看书。也许还没到系统整理出下框架的程度吧。TIJ一直就看不下去,也许一直下意识去抗拒那种书写的风格吧。JDK的Document真的是最好的好老师,还有Google。善于总结是最好的学习方法。
学了java这么久,觉得操作系统原理和数据结果对计算机来产真是很重要。
0 请登录后投票
   发表时间:2005-06-18  
simohayha 写道
还有就是现在我学了有将近1个月的java了,书已经看到多态了,我把书上的所有源程序,所有课后练习都做了,基本上是照robin所说的那种方法,可是现在怎么觉得自己还是不会编.
这次我们ai的课程实践是 用a*算法写个迷宫,可是我怎么就不知道要从那里下手,比如解数学题,它总有个步骤,一步一步就作下来了,可是编程我就不知道从那里下手,好郁闷,没办法,买了本算法导论,准备暑假好好学习了.
还有就是面向对象,我怎么觉得我现在想问题,还是在用面向过程的思想,我觉得原因是不是在小程序中面向对象是不是体现不出来?
谢谢 各位!

呵呵,我的看法是需要经验,需要经验来扭转思想。面向对象就是程序由个体组成,程序的运行是个体行为组合的结果。如果个体不具有这样的行为,你就没办法让它做事情。我觉得这和管理人才有点相似喔。这件事(程序)需要多少个人才(对象)来做,这些人才(对象)分别具有什么样的素质(属性Field),素质是通过行为来表出来的(Field不直接访问,通过方法来改变Field的值),经理(我们)所要做的第一步,是招览这样的人才(我们要做的是构造这样的对象)。第二步是让这些人才如何协作完成这些事情(让这些对象的方法如何互相调用和组件,呵呵,这就是面向过过程功底了。)因为人才有了自主的特性,经理只需交待要做什么,具体的事交给手下去做,而不必事事亲力亲为。(由于对象已经封装了很多方法,使得过程的组合相当简单,只需调某个对象方法)。事必躬亲是诸葛亮的做法,(每一句程序都要程序员自己组织,整个过程架构就会非常庞大,难得操作。正是这种面向对象的思维方法,像架构变得清晰和层次分明。大程序才能成为可能)
   我觉得面向对象是一种思维方法,java是实现这种思维方法的一个很好的体系的。我私底下认为,面向对象没什么了不起的。
   嘻嘻,希望不要收到太多鸡蛋吧。

   如果觉得无处下手,那就凭感觉做呗。做了觉得不对,再思考,再改。不断重复:思考+改正。就能把自己的路子带到正确的方向。得有点耐心吧。
0 请登录后投票
   发表时间:2005-06-18  
tomswan 写道
Thinking in java 写的是不错的,祝贺你将能少走弯路。

根据我多年的经验,常见的多数应用级编程,都用不到多少数学知识。可以说数学和编程没有什么必然关系。

(只是相对而言的,一些专业的领域和软件,会建立复杂的数学模型,需要复杂算法,进行密集计算,这些地方还是非常依赖于数学)

关键是java 的API太多了,所以很多算法都已经实现了,不需要自己去构造,调别人的方法OK了。
但有一些东西,没有一个数学模型是做不出来的。我觉得数学里头的抽象思维对编程有很大的好处。当然不是说解题高手会编程很牛,中国青少年每每在国际数学竞赛中拿奖,中国留学生考试非常厉害。数学大师几乎是没有的。
0 请登录后投票
   发表时间:2005-06-19  
simohayha 写道
还有就是,都说数学对编程很重要,可是我怎么没感觉到,我的数学学的很不错,可是怎么感觉不到对编程的帮助,难道是火候不到.


记得以前俺也是这么觉得  后来老师给我们举了一个例子
就是最简单的for嵌套循环 画图形的
我们都是自己想 外循环多少多少次 内循环多少多少次 遇到复杂一些的(比如菱形)就要算很久 
老师拿了一个2元一次方程出来 两个循环次数一下就出来了   唉.........

simohayha 写道
还有就是现在我学了有将近1个月的java了,书已经看到多态了,我把书上的所有源程序,所有课后练习都做了,基本上是照robin所说的那种方法,可是现在怎么觉得自己还是不会编.
这次我们ai的课程实践是 用a*算法写个迷宫,可是我怎么就不知道要从那里下手,比如解数学题,它总有个步骤,一步一步就作下来了,可是编程我就不知道从那里下手,好郁闷,没办法,买了本算法导论,准备暑假好好学习了.
还有就是面向对象,我怎么觉得我现在想问题,还是在用面向过程的思想,我觉得原因是不是在小程序中面向对象是不是体现不出来?
谢谢 各位!


大部分同意mac的说法  还是感觉重要一些  才1个月就想编东西是很困难的 对于以前没有接触过语言的人来说 (当然 那些大牛除外)  还是多看example 先练好感觉再说吧  看看他们为什么那么写


另外也说一句  俺也不认为初学者看Thinking in JAVA 能有很大的好处  实在是太难了  用来做为以后的提高倒是不错  我们这个项目以前的那个base layer说过 要是把Thinking in JAVA每一个字都看明白  一个月能拿好几十K (俺也是新人 道听途说 说错了8要打俺)
我倒是觉得Effective Java 和 The Java Developers Almanac 不错 适合初学者
当然了 JAVA DOC是必须要准备的......
0 请登录后投票
   发表时间:2005-06-20  
引用

还有就是面向对象,我怎么觉得我现在想问题,还是在用面向过程的思想,我觉得原因是不是在小程序中面向对象是不是体现不出来?


不是的,在中小程序中面向对象也可以体现出来的。
不要着急。也不要太刻意自己在用面向过程,还是面向对象。前面几位说的不错,需要积累经验的。新手要对自己宽松,这点很重要。等你有了二三年的经验,就会逐渐开朗的,并且很可能开始有了自己的主见。你再回头会明白一些原来令你困惑的事情。没错,这个过程需要不低于二三年,并且看来也没有什么更快的途径。当然,保持一颗学习的心能让你进步更快些。总之,计算机里面的问题、方法、技巧等和数学里的方法步骤很不一样,它是经验性的、实践性很强的东西。
0 请登录后投票
   发表时间:2005-12-09  
dlee 写道
Tomjava 写道
虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,

不是的,Sun 推出 JSP 是为了与 ASP 竞争,吸引一些初级开发者使用 Java 平台,就是为了降低 Java 服务器端开发的难度。
JSP 不是为了取代 Servlet 的。他们在 J2EE 中的定位不同,详细内容可以参考《J2EE 核心模式》。大量的 Java 开发框架都是采用 Servlet 实现的,JSP 并不适合做 Framework 的设计。
Tomjava 写道
学Java必读的两个开源程序就是Jive和Pet Store.。

开源的好东西多了。jakarta.apache.org 上有很多。还有 xml.apache.org 和 db.apache.org。
Tomjava 写道
然后你再研究一下软件Refactoring(重整)和极限XP编程,相信你又会上一个台阶。

重构和 XP 是 Java 程序员必须了解的知识。
Tomjava 写道
做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧,你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的来了。。。。。。

呵呵,赚钱这么容易吗?

说的比较肤浅。典型的中国式工具型人才。用来用去还是在用别人的框架,如何走自己的路一点也没说,这样下去你会很累的。还有如何搜集需求,如何做需求分析,如何建模也完全没说。理解业务的重要性相信 robbin 等有项目管理经验的朋友都是非常清楚的。技术狂人已经不再是我的目标了。



坦率的说这样自学出来的 至少可以干活挣钱了,毕竟不是每个人都期望成为项目经理或者系统架构阿。
0 请登录后投票
   发表时间:2005-12-18  
这个帖子我读了5次,明白了很多,也将会少走很多弯路真的非常感谢!
0 请登录后投票
   发表时间:2006-12-30  
读完这篇文章,我相信每个人在自己的心理都有一个衡量。
我现在明白robbin为什么理解知识那么透彻了。
自己还得继续努力呀,差的太多了。
0 请登录后投票
   发表时间:2007-01-08  
读了这篇文章不管怎么样才是算是个java高手,怎么才算是精通Java 至少理清了学习java的一条渐进的学习路线。不管怎么说,胖子不是一口吃出来的,武林高手也不是朝夕练成的。最近接触的新东西比较多,自己也有些迷失方向,任何方面只是跑出HelloWorld就浅尝即止了,到头来时间花费了不少,真正的进步却是少之又少。听楼上的,定下心来,慢慢熬。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics