<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://jackxiang.com/post//</link>
<title><![CDATA[一个编程前辈的编程学习经验]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Sat, 26 Jun 2010 04:49:23 +0000</pubDate> 
<guid>http://jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	接触编程有两年多了，也算积累了一些经验，希望能给刚入门的朋友一些帮助，文章仅<br/>代表本人观点，如有错误之处，还请多多包涵。<br/>1.我该学什么语言？<br/>&nbsp;&nbsp;VB、VC、Delphi、Java……面对各种各样的编程语言，你是不是被弄昏了头脑呢？该学<br/>什么？“学VC吧！”许多高手说。并且还举了很有说服力的例子：“学VB只要两个月，学<br/>VC要一年，如果先学VB再学VC，所用时间仍然是一年，但学了VC再学VB，所用时间将不到<br/>两个月。”这句话没错，的确是这样的。但是刚入门的初学者都能学VC？把每个人都看得<br/>这么高？一些初学者把VC当成自己的入门语言，结果能学到最后的只有少部分人！我们不<br/>能奢望所有初学者都是在十分熟悉Windows的情况下才开始接触编程的，实际上，很多人就<br/>是在学习编程的过程中逐渐深入了解系统的，要是所有人都选择VC作为“入门级语言”<br/>……<br/>&nbsp;&nbsp;初学者应该根据自身情况来选择语言，如果你刚开始接触系统，应该去学VB，因为VB很<br/>好学，基础最重要；当然，还有Delphi，它介于VB与 VC之间。除非你比较熟悉Windows，否<br/>则别急着学VC，你会因此神经衰弱的。<br/><br/>2.切忌同时学习多种语言<br/>有没有试过同时学英语俄语德语波兰语法语日语？最后八成会变成鸭子。学编程也一<br/>样，如果你才高八斗机敏过人玉树临风，那么随便你同时学VC、 VB、Delphi等等等等，没<br/>人会拦你，但如果是初学者呢？去做鸭子吧。同时学这么多种语言还不如踏踏实实学好学<br/>精一门适合自己的语言！初学者往往什么语言都要去了解一下，更有甚者连一些概念都不<br/>熟悉就什么都学，面对他们，我都要自愧不如了，但我还是要劝他们一句：一样一样的<br/>学，没有人能一步登天！别以为同时学多种语言就很“光彩”，当心最后仍是七窍通了六<br/>窍。<br/>无论学哪门语言，都要把它学好再想其它，别“花心”，如果你是学VB的，至少要熟悉<br/>VB编程并且能熟练使用API的时候，你才应该去学其它语言，学VC更要注意，否则最后只能<br/>“无所不学，而一无所知”，只学一种语言时遇到困难还是好处理的，但是同时学这么多<br/>种，你保证都不遇上问题？小心几种语言的问题一起来压你！<br/><br/>3.要有主见<br/>&nbsp;&nbsp;许多初学者爱跟着潮流走，外面流行什么他就跟着做什么（追“猩”族？）今天流行VB<br/>他就学VB，明天流行Delphi他就把VB忘了，再到 VB.Net、C#……人云亦云，随波逐流，<br/>“专家”说什么语言好他就投奔什么语言，“走在科技前沿”，但是到最后又能学到什<br/>么？不仅丢了西瓜，连个绿豆都没拣着。这年头“世界变化快”，我知道，但是它怎么变<br/>就随它去，总不见得把你变成今天张三明天李四吧？“月亮走，我也走”的思想要不得，<br/>别管外面流行什么，如果不是大众需要，你只管学好你该学的语言就行。<br/><br/>4.别看轻其他语言<br/>&nbsp;&nbsp;经常有人说“XX语言差，学了没前途！”要是让我评价一句，恐怕是你没前途吧？你凭<br/>什么说它差？没有一种语言是十全十美的，即使它再“差”，只要它还没有被外界宣布完<br/>全淘汰，它就有存在的理由！曾经有人对我说：“我的老师经常教育我，VB太差了，所以<br/>我要把以前学过的忘掉。”且不说这家伙随波逐流，单是他老师就够酷了，呵呵，不知道<br/>他的老师是圈子里的哪位资深专家呢？只怕是个三角猫吧！VB虽然存在一些局限性，但它<br/>的语法很好理解，数据库编程很方便，配合API也能完成一些复杂工作，这就叫差？多少个<br/>优秀程序不是用VB这个“没前途”的语言写出来的？多少个程序员不用VB？你看见他们没<br/>前途了吗？<br/><br/>5.不可缺少的教材<br/>&nbsp;&nbsp;虽然从古到今一直有“尽信书，宁可无书”的遗训，但是我们可别因此“无书”哦！也<br/>许你天资聪明，自学电脑不用教材，但是自学电脑可以凭现象和经验，学编程能凭空摸<br/>索？连变量、过程等概念都不知道，还能看懂for(i=1;i&lt;50;i++)的意思？要学编程绝对不<br/>能少教材资料，如果连这都不舍得买，那么你最好别学了。还有一点，关于网络教程，我<br/>个人认为它太过于零散了，即使是一本完整的电子书也尽量不要看（除非实在买不到），<br/>难道你要一边写代码一边ALT+TAB？我宁愿慢慢翻一本书，也不愿盯着屏幕看半天！现在市<br/>面上的教材参差不齐，光买一本是明显不够的，基础的、高级的都要买回来慢慢研究，至<br/>少也要3本吧？市价低于20元的书最好不要考虑了，看看它的厚度！书本的厚度通常与含金<br/>量是成正比的（厚厚一本垃圾？你衰），最好选一些比较常见的出版社出版的书籍，尽量<br/>别买少见的，质量没得保证！我的一个同学就买了一本20元的垃圾，整本书连个完整的例<br/>程都没有，还大言不惭“基本入门”，误人子弟啊！现在那同学看的是我借给他的清华大<br/>学出版社出版的《中文 Visual Basic 6.0 傻瓜书》。<br/>&nbsp;&nbsp;一个小窍门：如果你不知道该买什么书，最好找个高手一起去，让他帮你选本好的，如<br/>果你身边没有高手，那就找厚点的！或者书名带有“疑难解答”或“API”，这些书质量一<br/>般都可以。<br/><br/>6.关于英语<br/>&nbsp;&nbsp;由于大多数语言的母语都是英语，这就导致了一些初学者望而却步，但是英语对于编程<br/>很重要吗？实际上编程需要的英语很少，都是比较基础的词汇语法，它和一般的英语不一<br/>样，即使你连一篇英语文章都看不下去，但只要有点英语基础的，你就不用怕“不会”！<br/>（当然前提是一些基础词汇如If、 For、Next、While、include等必须看得懂，否则先去补<br/>习一点英语再说）就算英语再好，没学过编程也不会看得懂程序源码，难道没学过编程能<br/>知道StrComp等于String Compare？学编程与英语水平无关，我们学的是编程而不是英<br/>语！<br/><br/>7. 编程大忌——组装<br/>&nbsp;&nbsp;VB最大的方便之处是它和ActiveX能很好组合，MS和第三方厂商为VB开发了许多ActiveX<br/>控件，为初学者提供了很好的学习机会，但是一些初学者却满足于此，做一个程序用了一<br/>大堆别人的控件，加上一点微不足道的代码，就以为学会了编程，却不知这样根本没有入<br/>门！ActiveX是别人做的东西，写了多少代码才到你用的！别幻想ActiveX无所不能，从另<br/>一个方面说，它正是VB的累赘！会用ActiveX又有什么了不起？API会吗？复杂点的代码会<br/>写吗？会自己开发ActiveX吗？做一个用到通用对话框的程序，只会用 comdlg32.ocx的<br/>ShowOpen方法，却不会用GetOpenFileName这个API来打开，而且使用ActiveX会让你的程序<br/>挂上一大堆OCX，加重程序开销，更要命的是ActiveX会导致许多不可预料的错误，如控件<br/>过期、控件没有注册等，任何一个错误都会让你的程序无法运行，许多初学者搞不清<br/>ActiveX与程序文件的关系，发布软件时忽略了程序需要的ActiveX，导致程序在其他环境<br/>无法运行，我早期发布的IIS Cracker就因为不得已用了两个ActiveX而成为我最头痛的事<br/>（有些东西不用ActiveX做不出来，没办法）如果一个程序出现控件错误，<br/>而作者又没有提供相应的控件，那么我要做的就是把这个程序删除！在此提醒各位一句：<br/>写程序不是组装！别以为用VB画个窗体，加几个ActiveX就学会了编程，你根本连编程的门<br/>槛都没入！<br/><br/>8.循序渐进<br/>&nbsp;&nbsp;许多初学者刚开始接触编程就急着写一些较高级的代码，却忽略了最重要的基础，他们<br/>也许热情高涨，也许有心学编程，但是却没能静下心学编程基础，这将导致付出时间多而<br/>收获少的后果，举个例子吧，你刚入门，连一个简单的程序都不会做，就算我给你个木马<br/>程序的全部源代码（谁要独裁者的代码？呵呵）你又能看懂多少？学习要一步一步来，没<br/>有扎实的基础，谁都不可能写出好程序。当然，学习的方法也不能不提，尽管学VB、<br/>Delphi 不需要专门学Basic、Pascal，但是学VC就不能不学C/C++了，否则你会前进得很辛<br/>苦！别信什么“速成班”、“24小时学会 XXX”，那种是喂猪的！经验要*练习来积累，不<br/>能只学理论，编程不是让你纸上谈兵的，平时不多练习，别想写出什么好程序！学习时要<br/>从简单做起，先熟练简单编程，在这个基础上要写出高级点的程序就不困难了，遇到难题<br/>别被吓着，努力克服它（除非是由于语言的局限性而做不到的），如果暂时做不出来，可<br/>以先搁一段时间，但别把它忘了。等你学到更高一层的技术后，再回头研究过去的难题，<br/>将会事半功倍。<br/><br/>9. 在学好一种语言的基础上，继续学习其他语言<br/>&nbsp;&nbsp;别误会，这不是让你同时学习N种语言，而是在学好一种语言后，继续学其它语言，例<br/>如学好 VB后，可以改学C、Delphi等，不要守着VB不放，多一种语言就多一条出路，如果你<br/>觉得自己学得够好了，那就别犹豫，马上改学另一种语言（喂喂，你怎么把VB的书给烧<br/>了？不是让你放弃已经学会的语言啊）还是那句话，切忌同时学习多种语言！如果你对自<br/>己掌握的水平没信心，最好还是别想其它了！<br/>&nbsp;&nbsp;多学几种语言的好处是显而易见的，一来可以做到几种语言同时配合，二来对扩大知识<br/>面也有很大帮助。<br/>&nbsp;&nbsp;注意：学VB/Delphi后马上学VC是错误的，你必须先学会C！<br/><br/>10.用多种语言配合，多利用各种语言的长处<br/>&nbsp;&nbsp;前面已经提到过，各种语言都有短处，但是它们一般都能互相弥补，VB的局限性导致一<br/>些复杂工作不能实现，VC强大，但是界面难做（个人想法），这时你可以用VB写界面，VC<br/>写DLL供VB调用。例如VB的指针、位运算操作麻烦且执行速度比较慢，在一些特殊应用环境<br/>里，就必须用VC 写DLL了，其实写个DLL并非难事，甚至比写个VC的MFC程序还要简单。<br/><br/>11.多收集信息<br/>&nbsp;&nbsp;学编程不能闭门造车，有些知识是书本上没有的，应该多使用搜索引擎，多搜集研究前<br/>辈们做的源代码，吸收一些新知识和优秀思路，有助于提高编程水平，另外还应该参与一<br/>些论坛的讨论，积累一些经验。
]]>
</description>
</item><item>
<link>http://jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] 一个编程前辈的编程学习经验]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>