晒晒大家学习JAVA的心得,以及过程吧!

2013-06-21 20:48:07 +08:00
 iMouseWu
个人感觉,应该先把java的基础学习好!比如说一些教材可以去看上几遍,把里面涉及到的都牢记并且学着去用!因为我觉得现在公司招新人,更加注重的是你的基础!然后在此基础上做点项目来开拓下视野!。
但是看了这篇文章以后 http://www.cnblogs.com/yangjava/p/3140926.html
觉得java的范围真的好大呀!。。需要知道的东西太多了!所以我现在又开始迷茫了!而且最终还要写出优秀的代码!
也许可能java本身涉及到的东西不多,(我说的是基础的东西不多),但是要全部掌握也不是件容易的事情,因为如果不应用的话基本就会忘记!
除了基础,就像上面给的链接一样,真的需要懂这么多?
懂了这么多,还要熟练,还要对代码优化!想想都觉得有点可怕!这得多少年以后呀!。。哎~~~~顿时觉得未来很迷茫啊!
所以路漫漫其修远兮,我的java路在何方!熟练,精通!这条路好长!
各位javaer说说你们的看法吧!
7617 次点击
所在节点    Java
63 条回复
Lbcove
2013-06-24 17:04:01 +08:00
语言只是一门语言,基础比较重要,至少C是最基本要学习的,其他相关的操作系统,数据结构,计算机网络,数据库等都是最好要掌握的基础。要从大体上认识这门语言能干什么,优势在哪,劣势在哪。学习语言也是为了开发应用,开发软件的流程,比如软件工程等就比较重要。能较好清楚自己的定位。基础好了学起来不是很费力。
iMouseWu
2013-06-24 17:04:54 +08:00
@Beckham007 个人感觉还有底层!
iMouseWu
2013-06-24 17:19:59 +08:00
@denger @zarzen ,C确实很牛。C也确实要比java什么简单(这里的简单并不是所说的内容简单),没有java doc api。没有各种烦人的框架!因为个人没有研究过jvm所以对内存这方面的比较也不能发表什么看法!就像@b824379598 所说的,各种框架的出现确实让人目不暇接!
个人感觉java里面的框架就想各种新出的语言一样,只是为了让人更加简单的做事情而出现的一种事务!所以@denger 为什么会有烦人的java doc api也不奇怪了!因为什么都已经给你写好了,你只需要调用就OK了呗!(也许这就是面向对象中“封装”的精髓所在吧)所以学习框架最终还是要回到本质,也就是框架的源代码。也许哪一天自己能像@davepkxxx所说的,可以写出一个工具来,也许就是达到另外一个高度了吧!
其实语言的纷争就没有停过C,C++,java.@Lbcove .对的至少要知道一门语言的优势和劣势在哪里。就像我上面说的,不管什么事情,什么语言都可以干,只是效率的问题罢了!
NEVER GIVE UP
iMouseWu
2013-06-24 17:21:06 +08:00
@luikore 翻译一个!
ipconfiger
2013-06-24 17:27:18 +08:00
最好的学习方法就是,忘掉java吧
iMouseWu
2013-06-24 17:42:09 +08:00
@ipconfiger ......其实java也还是不错的!我比较喜欢诶!
davepkxxx
2013-06-24 18:35:12 +08:00
@iMouseWu 好吧,这里就多说一些吧,毕竟身为一个靠Java吃饭的人。

《Effective Java》是一本非常优秀的书,它的作用是帮你合理规避Java中一些可能引起BUG或异味的地方,并帮你选择一条更好的道路,这些地方不少是Java设计中的不足或缺陷。

《重构》对于Java、C/C++、C#这种为大型、复杂、安全性要求高、多人/多团队协作开发的准备的语言来说很重要,因为到了这个时候,需要有清晰的项目结构和明确的代码逻辑。

对于设计模式,很多书都很优秀,我选《大话设计模式》其实是因为它通俗易懂,因为当时我还是个菜鸟。设计模式主要是为了解决很多实际问题,比如安全性保障、多人协作方便、提高开发效率、降低代码耦合。这些问题有些是为了帮助解决软件开发过程中遇到的问题,有些是为了弥补Java自身的不足。

Java是开源界少有的高质量代码聚集地,原因是经过很多商业项目的检验,并且其中很多代码是由非常优秀的公司和人贡献的。那些流行开源代码库中的项目,是重构、设计模式这些概念非常精彩的范例。当然你使用的时候只用看用户手册和API就够了,不需要关心它是如何实现的,除非你遇到BUG。

自己写框架是一个非常有趣而同时又很折磨人的事情,但是对自己水平的提高非常大。设计的时候不必拘泥于Java本身和现有的框架,参考一些其它的语言和它们的框架。
hooluupog
2013-06-24 18:44:10 +08:00
c入的门,java开始做项目,python/c++/Go这些自学,c++很少使用。JVM平台很好很强大。
zarzen
2013-06-24 19:46:55 +08:00
@denger
你觉得c简单,纯粹。
别人也这么觉得么?

好像我看到支持python比较简单的吧?至于你说C传承不衰什么的,你觉得是为什么呢?
msg7086
2013-06-24 19:47:42 +08:00
@luikore Javaが複雑すぎだからよ
zarzen
2013-06-24 19:53:36 +08:00
@iMouseWu
网易公开课有个编程范式课,你可以看看。
这样照着C做基础那条路子,我觉得还行。我不支持先学C是因为,c过于接近机器。不适合,入门。

至于java,我认为它有今天,在于商业支持。商业支持带来了普及化,规范化,民工化。所以它是很好的工具。但是java的不断演化中可以看出,它感受到了自己的不足。
denger
2013-06-24 22:01:33 +08:00
@zarzen 我说的是相对 Java 而言。至于别人如何觉得,我管不着,我只是表达我的想法而已,一个 从 C -> xx -> Java 的过来人的心得。

至于什么 Python Ruby 之类在该贴感觉就有点偏题了...
denger
2013-06-24 22:15:16 +08:00
@zarzen
C "过于"接近机器? 请问您指的是它的指针还是它的内存管理上或其它?现在学习哪门语言到了一定程序不需要对内存甚至更深的原理或接近机器的进行了解或优化? 提前了解这些基础有什么不好。当然,如果你今后的志向只是每天只是写写 Demo 或 没多大访问量的程序就另说了.

在我看来,Java 有今天, 其商业上的成功并不是关键,更大的成功来源于开源的推动。
ipconfiger
2013-06-24 22:53:44 +08:00
@iMouseWu 8年前我也这么想滴,可惜啊
iMouseWu
2013-06-26 07:05:11 +08:00
@all....谢谢大家的回复!
Ricepig
2013-06-26 12:29:26 +08:00
java程序员表示不知道define,free,头文件,指针为何物。大概也不知道makefile为什么能写的那么复杂。

哈哈
iMouseWu
2013-06-26 18:22:43 +08:00
@Ricepig 个人感觉C中指针是精华!。。但是我觉得在Java中引用变量其实是1级指针的另外一种体现!虽然不知道java里面是否存在多级指针的体现!但是一级指针的体现可以有!
Ricepig
2013-06-26 18:26:25 +08:00
@iMouseWu 这未免把指针看的高级了一点,事实上指针除了达成类似引用的作用,还有其它作用。指针和位操作也是c语言接近硬件的典型特性。
java程序员就不一定要接触这些了。
iMouseWu
2013-06-26 18:31:59 +08:00
@Ricepig 这个倒是!我觉得正式因为C语言接近硬件,所以它的效率会比java高,也更加难学!
C也没有很深入了解!
manoon
2013-06-26 23:02:57 +08:00
@iMouseWu

father works with j2se, everynight late 2 back. mother often complains. and there is no memoeries about park or pleasure ground.

if father worked with c#,he would back home on time everyday .mother would be happy and smile every day. and of course could go out togethet for playing in syumatu.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/73174

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX