|
|
发表于 2005-5-13 14:31:08
|
显示全部楼层
Post by bbbush
好问题
要想学任何语言, 语言本身只要几分钟就可以搞定,但是与平台相关的内容比如类库,IO 等等就需要好久好久了。只有了解一个系统才可以学会。至于编译和连接过程中发生的一切,要了解就要更长时间了,但是受益无穷。语言本身就是几十页的定义,并且都是差不多的。
谭的书算是不错了,不过我只打印了教学辅导那本配套书的附录...
BTW, 我这种想法,直接导致我现在编程能力狂差,你自己衡量吧
稍微修改一下:
要想学任何语言, 语言本身只要几个月(如果你没有学过语言)甚至几天(如果你学过类似的语言)就可以搞定。但是与平台相关的内容比如类库,IO 等等就需要好久好久了。但是当你好久好久以后,发现最后自己还是只是知道了他们做什么的,以及怎么用,但是要想知道怎么自己去写又要好久好久。
我比较赞同先熟悉使用再学会开发的方式,但是如果你感兴趣的只是语言,或者说软件架构,开发等等,是没有必要学习linux的,这些在windows都能做,而且做的都很好,往往用linux的人都是出于对这个系统本身的喜爱,而不是出于对某种语言本身。
所以我的建议是:如果你喜欢C,那么在windows下面用vc来做开发非常合适,当然linux也能做,也做的非常棒,但是考虑到从你认识linux到你能够熟练的用命令行来build一个自己的程序,调试,运行,恐怕需要一个漫长的过程,而且需要你有其他一些必备的知识,所以除非你想做linux平台下面的软件开发,否则得不偿失。其实windows,linux都只是一个平台,上面都可以学习C/C++或者其他语言。
语言本身虽然简单,只是语法的一种组合方式,但是精通一门语言本身也是非常难的,在语言里面调调库不是什么本事,语言背后的东西,写程序的思想,对程序稳定性,安全性,平台无关性(如果需要的话),以及可扩充性的考量才是最难的。
一个小软件可能功能不多,但是可扩充性非常好,以后维护很方便,能够以插件的形式进行2次开发,跑起来很稳定,速度也很快,同时能够在linux/windows两个平台上面跑,这就是功力。 |
|