程序员需要什么?

来源:互联网 发布:单片机串口是什么电平 编辑:程序博客网 时间:2024/03/29 19:24
下面两个链接, 希望对于学习mfc的同仁有帮助,
http://www.vczx.com/tutorial/mfc/mfc.php <mfc深入浅出>这是一本经典的mfc教程,
和台湾的侯俊杰写的相比一点也不逊色, 是国内一位老师写的(李久进), 可惜没有大量发行.

http://www.51shuji.com/article/10/16230/index.html<windows程序设计 5th Edition>
,建议作为windows等以及mfc的教材.细致入微, 源码很多而且可以跑,关键是高手写的,
很好,看起来很舒服.

相信仔细阅读过这两本书, 大家对于日常使用的桌面操作系统windows会有更深的理解.
 下面是一些关于mfc,.net java 之间的个人言论了.
其实我上面推荐大家看的两篇文章, 基本上都是关于windows 编程的, 里面讲的很多东西
对于理解windows的机制很透彻, 其实大体来讲, 大家都知道mfc 是一个中间产品, 现在
说它过时也无所谓, 不过mfc里面的很多封装思想却是很难得的, 你可以说我用c# .net
拖两个控件就摆平了的事情, 干嘛要整的那么复杂, 或者说mfc还不够好, 而且开发起来
的成本要大一些.

然而, 转过来看我们程序员的话, 我们学习的其实只是语言, c, c++, java, c# , 用过
perl,python 处理文本的人们对于用char* 来做同样的事情会多么苦恼, 虽然对于c,c++
同样也有一些正则表达式的库可以用. 光会语言也不够, 我们还要用语言来完成任务啊.
光会拖界面也不够, 我们的程序还需要算法呢. 你讲你会c++, 是指什么呢? 指你会用qt,
mfc, stl 等等库吗? 还是说你就是会 cin cout呢? 所以这些前人累积的经验, 对于我们
学习,或者了解语言来说, 是相当不错的财富. 所以如果要想对c++ 了解多一些, 不可不
研究一下前辈们的类库, stl, mfc 是首选, qt也可以. stl是封装了很多日常可以用到的
东西,任何平台都可以用, mfc是针对特定的windows系统来做的, 两者都是有代表意义的,
从这点来说, mfc是值得了解的.以后, 类似于这样的类库就不多了, 一个原因是新兴语言
的代替, 另外一个是我们还要用语言来完成其他的工作, 总不能成天在那儿写一些基本类
库吧.

再者, .net 和 java 之争现在仿佛成为了一种现象, 但凡说的人都要比上一比,我对于这
两者没有深入研究,只是觉得都很简单, 用来做网页, 做企业流程, 报表数据库什么的都
很好. 有人说 java 语言是一群科学家发明的, 而 c# 是工程师发明的, 由此可见, c#
还是要更实用简单. 很多人说 java 跨平台, .net 不跨, 这个说法是不准确的, 如果有
人对于其他平台写一些.net 的支撑框架,比如unix下中间语言到cpu指令的转换, .net也
可以跑在unix, linux上. 所以它们都是平台, 都是让我们去写程序的. 对于EJB之类的我
不是很了解, 但是大家要相信, 一种语言能解决的问题, 其他语言也可以解决, java可以
写的, c# 也可以写, 反过来也一样. Perl 语言的创始人有一句话: There is not only
one way to do it. 不过程序员最好就是都了解, 然后对症下葯.

除了汇编, 机器语言之外, 比运行速度, c#,java 应该是不会比的过c, c++ 的, 原因有
很多, 很多人说中间语言,机器代码没有汇编快, 早期java用解释,后来也改用编译后运
行, 还有就是, 我个人觉得, c# java 等平台, 都要将程序的内存等等包起来,表面上是
安全, 但是也是双刃剑. 你的调用它要中间转一下, MS还发明了 托管 c++, 这个东西确
实对于以前的c++ 和 .net 有了很好的连接, 但是大家要知道, 你的指令直接操作内存,
比交给.net或者jvm , 让他们帮忙过一遍,谁快谁慢, 不言而喻. 任何一种语言, 要想
快, 就直接操作, 并且要编译成机器语言操作.

总结一下, 学软件的, 程序员兄弟们, 不要抱着平台, 语言的偏见, 谁最好用咱们用谁,
各类编程语言, 学通了一门, 其他的咱还不是照葫芦画瓢嘛.
原创粉丝点击