无责任推技术

看了下 我自己的豆瓣 中标记已读过的书,数量上还对得起这两年。今天整理一下,分类推荐我接触过的技术和书。

基础类

C

我的软肋。C语言同时具有机器底层的操作能力和高级语言的语法,很适合作为计算机编程的入门语言,事实上国内很多学校也是这样做了。C是编写Unix和Linux的语言。

如上所说,C是我的软肋,无法总结什么,在此标记一下,以后要补上C。

C++

C++现在在操作系统(win)、GUI界面、游戏、电信类编程很普遍。可以说想从事前面所说领域的编程就首选C++了。

C++有个迷惑人的地方,就是它名字里的"C",但其实C++跟C完全是两种语言。C++里虽然可以引用C的函数库,但是编程思想截然不同,C/C++的说法应该废弃。任何想着“先学C然后学C++”的人肯定要栽跟头,要选哪个入手,需要先预估自己对哪个领域更有兴趣。

推荐书籍:

  1. 《C++Primer Plus》 C++很好的入门书
  2. 《高质量程序设计指南—C++/C语言》 看这本书,可以学到对待一门语言的正确态度。

Linux操作系统

作为一个8年windows用户,在接触了Linux一个月之后,毅然把windows格掉了。如果想做公务员平时没事打打纸牌,请继续用windows;如果想为计算机领域做出真正的贡献,请使用Linux。

推荐书籍:

  1. 《鸟哥的 Linux 私房菜 基础学习篇》 其实我现在看来,这本书并不是很好,内容旧,但是又比其他书好很多,至少不枯燥。

实用类

动态语言Python/Ruby

Python和Ruby 至少要会一个!今后是动态语言的世界。

Python和Ruby 之间有竞争关系,目前看来Python更胜一筹。Python的社区更大,支持的厂商更多(google,yahoo),可说竞争力巨大。不过我因为一件小事而选择了Ruby :vim对Ruby 的补全支持更好。现在看来Ruby 是我满意的选择,语法优美,功能强大。

凭自己的直觉选吧。

推荐书籍:

  1. 《Programming Ruby 镐头书,有名的了。
  2. Ruby 设计模式 不要去看四人组的设计模式 ,经典设计模式 里面很多内容是针对静态语言写的,经典那本可以说:用不上

桌面程序开发

Qt

Qt库是曾经的奇趣公司(现在被诺基亚收购了)开发的跨平台图形库,使用C++开发,同时有很多其他语言的绑定(比如Python和Ruby )。诺基亚收购之后,Qt库的授权已经是LGPL,可以商业闭源使用。Qt是跨平台的图形库中最强大的。

不要学MFC,不要学JAVA的swing

推荐书籍:

  1. 《C++ GUI Programming with Qt 4》 官方教材
  2. 《精通Qt4编程》 比上面那本好入手,但是后面不够详细

Web开发

Ruby on Rails / Django(Python) / Drupal(PHP )

如果有熟手的脚本语言,那么很容易已经选择上面的其中一个了。

我只熟悉RoR(本blog用RoR开发),其他两个不好评论。RoR是我迄今为止用过的最方便的Web开发工具。学习RoR,一下子接触到MVC、持久层、AJAX、测试驱动开发……这些先进/实用的概念。

推荐书籍:

  1. 《Web开发敏捷之道—应用Rails进行敏捷Web开发》 著名的铁道书,不看就没道理了。
  2. 《RESTful Web Services中文版》 为什么博客的Url是logs/568 ,这是有原因D。
  3. 其他(太多了)

界面设计

web界面设计,先要学xhtml+css。

  1. htmldog.com
  2. 《无懈可击的Web设计》 很多正确的范例
  3. 《CSS禅意花园》 其实这本书学不到什么,作品集而已

然后设计领域不是我的世界了,多希望身边有个designer。

软件开发方法

不要看:软件工程相关的书

大部分情况下,软件工程是个错误的隐喻。软件是个纯脑力的行为,脑力怎么可能用工程化的方法去约束?约束的后果只会产生肯德基那样的垃圾食品。

软件工艺是更好的隐喻

《软件工艺》

不要太注重:敏捷开发

这也是忽悠,是忽悠。(CMMI更不用说了,软件界的英语四级)或者换个词:废话。

但是要学习极限编程中的重要编程方法: 《测试驱动开发》

测试即使不拿来驱动开发,也要拿来确保代码质量。测试是我最近学到的最有用的工具。

与测试呼应,还有一个重要的编程方法: 《重构》 。编程并不是一蹴而就的,是一步步改进出来的。期待这本书的Ruby 版。

个人修养: 《程序员修炼之道》 是不是读起来有点想星爷的《演员的职业修养》?这本书综合了很多程序员自身需要培养的素质要求。

休闲: 《Joel说软件》

企业开发

不要碰这个领域!!!

这个领域是java和.net的IT民工的,别去跟他们抢饭碗。/

总结

计算机领域实在太广阔了,也许穷我一生也只能触碰到一些细枝末叶。不过正如我 上一篇日志 说的,我只是把它当兴趣罢了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值