作者qrtt1 (有些事,有时候。。。)
看板java
标题Re: [问题] 新手看很久以前的书OK吗?
时间Wed Oct 16 23:58:08 2013
※ 引述《weirdfoot (怪脚之哈比)》之铭言:
: 如题
: 最近去学校图书馆找JAVA书
: 发现绝大多数的书都出版10年以上了...(约2000~2003)
: 不知道看以前的书 会不会跟不上现在的技术之类的?
: 我看到很多书都还在教人抓JCreator...
: 可是听说那已经变骨董了...
: 好吧我知道开发平台 编辑编译器这种东西本来就与时俱进
: 不过我是怕 像之前学AS的时候 有AS2 AS3这麽大的分界
: 不知道JAVA有没有这种 以前语法现在不好用的状况?
: 还请大大开示(跪
环境的基本设定上,没什麽大变化。
该设的 PATH 还是得设,CLASSPATH 除了多支援 * 万用字元外,
似乎没什麽变化
一直到 java7 以前语法上的变化不太多,
不过有些东西(习惯用的类别或library)已经不太多人写了
像是 applet 或直接用 AWT 刻视窗(其实 swing 也少人写了啊)
所以,你写到这部分时,书上应该不会太强调 ui/non-ui thread 管理
例如 swing 教学近几年才比较有强调这东东
http://docs.oracle.com/javase/tutorial/uiswing/
concurrency/initial.html
================================================================
然後,习惯用的 collection 类别,书上可能会是 Vector ?
其实我没看过那麽老的书,但公司的古老专案,刚好是你指的那个年代的
比较少看到新的容器类别。
现在蛮多的使用情况都直接弄 concurrency collections 的容器,
它对於常写多执行绪的开发工作挺方便的
http://docs.oracle.com/javase/tutorial/essential/
concurrency/collections.html
================================================================
另外,主要是一些习惯使用的函式库有着很大的差距。
可以当它是一种流行?每几年都有可能会不太一样,
不过就看你专案产生的年代是什麽了。
像我刚开始写 java 时处理一般事务的 library 多半有
Log4j + Commons Lang, IO, Logging ...
过了一阵子它换成了:
SLF4J + Commons Lang, IO, Logging ...
又过了一阵子它又变了:
Guava + (之前的东东)
不过,教语言的书大多有些奇怪的习惯,
像是滥用 System.out.println()
你可以挑一套看得顺眼的 logging library 把那些鬼东西换掉
也常常不想要多介绍其他 library
用一堆写起来麻烦,看起来也烦麻的实作方式
另一个常见的坏习是,为了范例单纯全都塞在一个 class 里。
class 还不见得有个正常的名字,像是 Example1.java
================================================================
那个年代的书,在气氛上有时会过份乐观看待『继承』
宣传用继承能让你的 code 少写一点,有事没事就把东西往父类别塞
再用简短的子类别来强化他的『想法』
不过却没有提到二个重点,单一责任原则 与 开发封闭原则
不知不觉制造了爱用继承简化程式的教徒(但事实上可能是坏掉的设计)
这些部分还是看新一点的书来得好,至少比较不会过份夸大继承的功用。
真的要多理解(也许是很久之後的需求),还是看设计模式与重构来得好
================================================================
若你学了一阵子後,觉得能习惯吸收这些内容,
开始决定要义无反顾作为一名开发者,
不管书有没有提到(通常没有,特别是那麽旧的书)
你还得确实掌握:
1. 用 ide 的 debugger
2. 学习一些简单的 unit test (会有人路过来推一下 TDD 吗?)
3. 学习专案编译工具 (ant, maven, gradle ...)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 36.231.130.229
※ 编辑: qrtt1 来自: 36.231.130.229 (10/17 00:22)
1F:推 LaPass:(举手) 我想请问,现在JAVA的ui比较常用什麽写? 10/17 00:37
2F:→ qrtt1:不要问不用写 ui 的人 (菸 10/17 00:49
3F:推 LaPass:orz..... 10/17 02:07
4F:推 Expsun:官网的tutorial也写得很详细喔,可以多参考:) 10/17 05:30