⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_20206.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:20206 发表者:Samlet 发表日期:2002-11-04 15:26:59
<br>主题:关于编程语言的思考
<br>内容:首先要说的是,我在这个论坛上从来没有发过言。确切的说,从我95年开始学编程以来,我很少在论坛上发言,仅有过三四次而已。可是看了论坛中的几个关于语言评论的文章,以及关于褒贬VC的文章之后,觉得有必要将我这七年编程过后所得到的东西放上来,希望能够让初学者少走一些弯路,给顽固的人一些劝告。<BR>我简要说一下我的经历,95年刚接触电脑,很讨厌,但被逼无奈学了一点DOS和Basic,我很讨厌BASIC,所以这年我只会使用Basic编从1加到100的程序。到第二年的时候,就是96年,偶尔有一天无聊,将一本计算机书最后的dbaseiii的部分看了看,突然心血来潮依照例子编了一个程序,这个偶然让我从此走上程序员的路。从那个程序之后,我花两个星期学会了foxbase,在此之后陆续学了foxpro的DOS版和foxpro windows版的带窗口界面的编程,97年学完了VB和一点C,当然这些都是自学的,所以在高三时,我是班里的计算机天才,也自以为无人能及。到大学时,我大一便报考计算机四级和高级程序员,苦学了一学期,结果一个也没过,但把包括数据结构、算法、计算机组成原理、网络基础等十几门基础课学完了,由于我是管理专业的学生,所以这给我以后的帮助很大,我不敢想如果没有学数据结构、数据库系统概论,以后还怎么更深层次的学习。<BR>大一下学期,我开始学MFC,由于图书馆只有MFC的高级编程书,没有VC入门书,我只有硬着头皮看,这时候学校的科协计算机部长告诉我他学了一段时间VC,但感觉很难,所以选了C++ Builder作为工具,在他学VC之前,他的C和汇编已经相当熟练,他在DOS下编过汉字输入法程序、数控机床的图形控制、游戏、图形系统引导程序等等,但DOS向windows转型是个很难的过程,他徘徊了好多时间,最终选择了C++Builder,那时候c++builder1.0刚出来。我是属于知难而进型的,所以抓住VC不放,心想一定要攻克掉这个连他都不会的东西,结果两个星期下来,我还是一点头绪没有,当时我烦燥的直想扔掉VC的书,在那之前,我学任何语言或开发环境都没有这样的情形,学foxpro只花了一个星期,学vb只两个多星期,学vfp也只一个多星期,之后的pascal,c,office里的vba, javascript等都是很快学完。我最后决定放弃VC,躺在床上艰难决择,那本书的内容在我脑里不断徘徊,由于那本书的内容偏难,书里的示例我一个也没有执行成功,而且从一开始,讲的就是DOC/VIEW/FRAME的深层编程,涉及到windows api编程的地方我还参考了五六本相关的书(由于当时图书馆资料落后,都是windows 3.x的编程书籍)。而且那本书从一开始就讲究手工编写代码,就是按钮这样的东西,也是用createwindow来生成然后绑定事件。那天晚上我决定将书后的附录中的一个例子敲上去,如果再不成功就放弃,那个示例是编写一个非模态对话框,结果花了一个小时调试,终于成功了,我一下子抛弃了放弃它的念头。<BR>接下来的三天我逐条逐句的跟踪VC wizard生成的源码,搞清楚了它的运行流程。当我大二时在图书馆看到一本很简单的VC入门级书里,感觉真是悲喜交加,喜的是失败那么多次后,居然让我从VC上手里便开始搞MFC的源码(那时候并不知道那就是MFC整个框架的源码)。整个大一我都疯狂的在学习VC)。<BR>到大二时,由于要搞大学习挑战杯项目,我不敢使用VC,因为用它搞图形界面太复杂了,况且那时还没有上过网,没有现成的源码利用,所以后来用了VFP编的项目去参加竞赛。我开始觉得VC的局限性,一旦实践才觉得我最爱的VC没有用武之地,这时我的前辈——科协部长已经在使c++builder 3.0,我不愿示弱去跟他一样再学c++builder,便找了它的同宗兄弟delphi,由于我学数据结构时学习是使用pascal讲述的,pascal语言已经很熟练,所以delphi只花了三天工夫使学完了,当然当时根本不知道面向对象有什么作用,只知道拿delphi画几个窗口,点击出code窗口编几个事件。当然,delphi学会后,加上C++的基础后,不费一天工夫我就可以使用c++ builder来干活了,之后我一直用delphi和c++ Builder帮助计算机老师干项目,我心爱的VC却只能晾在一边,每次干新项目时,我都要犹豫很长时间,是用c++builder还是vc,这个问题困扰了我两年。促使我真正用上VC的是我在大三时在瑞星时的打工经历,由于工作需要,必须用VC,所以也逼迫了自己将VC搬上桌面,但我也随即发现,在网上可以很容易下载到类似delphi那么美观漂亮的VC的控件,甚至还有整个的界面框架cjlib,两个月后,我已经可以熟练的运用VC来编写界面、网络组件还有多线程、压缩解压程序,我也对它喜欢到了无以复加的程度。<BR>回到学校,在研究所,我带领几个人开始用VC编写企业模拟培训系统(一个八十万的项目),由于界面要求象游戏一样灵活,所以我又学了DirectX。我在这个项目里只拿到了一千多块钱,后来经别人介绍,到校外开始干活,然后学了perl, php, asp, powerbuilder, oracle, sqlserver,可以说只要是项目需要的,我都学了一个遍,其中除了powerbuilder我花了一个星期时间外,其他的都是边干边学的。<BR>真正关于编程语言的思考时,是我毕业后当了项目经理几个月后,毕业后我进了一家软件公司,进去时是高级程序员,三个月转正时成了设计师(这时我已经学完了UML、设计模式,由于以前有软件工程的基础知识,所以学习这些并不是很难),当了设计师后,code不再是主要工作,主要工作变成了设计接口和类的协作了,一段时间之后,语言不再在我眼中很重要,到详细设计里,才会要考虑具有使用的语言和环境。这时候,VC那死板板的消息映射和架构带给我很多的麻烦,而Delphi却正好相反,我忽然觉得,Delphi才是设计师们用的真正的面向对象的编程语言和环境。<BR>再过了两个月,我升任了远程教育项目的项目经理,由于要实现跨平台,MFC已经派不上用场,这时候我已经能够熟练运用标准C++的STL,所以彻底抛弃了MFC,界面使用Delphi,然后底层使用c++,delphi的界面库封装到dll中,通过回调函数与c++来通讯。我对编程工具的考虑也从单纯的喜好变为了开发进度、人员配置、经费、设计实施、维护等多方面的全面考虑。<BR>应验一句名言“不管黑猫白猫,逮住老鼠的就是好猫”,所以我要劝大家的一句,特别是初学者,并不需要苛求使用什么语言,比如VC,它只不过是一个编程环境,而MFC也只是一个frame work,VCL的frame work比它先进一两代,但是MFC作为一个成熟的架构体系,它的性能是稳定的,而VCL(delphi和c++builder使用的frame work)则相对弱,但从软件工程和设计角度上来看,使用VC要比使用Delphi付出更多的代价,开发周期的延长、后期维护的困难、移植的困难(由于现在的Delphi已经有了相应的linux版本,所以很容易移植)、程序员的水平要求相对较高等等。<BR>Java和C#作为新生代语言,将会在将来代替VC和Delphi现今的地位,C#在图形界面的优势将会使它在将来占据应用程序的主导地位,而Java在服务器的优势也使其地位越来越巩固,尽管C#也具有强大的服务器端开发优势,但它的Win平台的局限性和新生不久的原因,在近两三年内还无法取代Java的优势。<BR>学C++而不局限于VC,这是我对初学者或只专注于VC的人一句忠告,毕竟MFC那样的设计架构已经不适于现在的软件设计和项目架构,它是属于OWL同时代的产品,能够延续到今天已经相当不易。<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:CDMA2000 回复日期:2002-11-04 15:34:13
<br>内容:能在很短的时间精通那么多!天才啊!<BR>去微软吧!我想比尔盖茨会喜欢你的!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:徐公子 回复日期:2002-11-04 16:01:51
<br>内容:Right <BR>佩服你!<BR>你觉得学C的数据结构和C++一起学可以吗?<BR>我想一起学,不知可不可以<BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:Samlet 回复日期:2002-11-05 09:42:19
<br>内容:我学的第一数据结构书是使用类PASCAL语言讲的,很清晰也很好懂,之后借了一本用C讲的,大概三四天就掌握了,C++的数据结构主要是针对面向对象讲的,和C的概念和切入点都很不一样(但比C讲的要容易一点)。我曾买过一本C++数据结构的书,但感觉对我帮助不大,也只粗略的看了一遍。<BR>数据结构重要的是概念,并不是说你学完了自己去编数据结构,数据结构在STL、VCL、MFC中都中相应的实现。所以学习哪一种语言的数据结构并不重要,重要的是掌握数据结构的原理。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:龙龙 回复日期:2002-11-07 10:46:17
<br>内容:天才啊!不过你学那么多种语言,又在那么短时间学会,你不会乱吗??<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:小誉 回复日期:2002-11-08 11:25:19
<br>内容:我给你打工好不好?跟你学习能让我少走很多弯路。我说真的,还请考虑一下。要不交个朋友也行啊!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:短笛 回复日期:2002-11-10 21:11:13
<br>内容:你学习的速度真是快啊,太佩服了!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:天才蛙蛙 回复日期:2002-11-14 20:14:15
<br>内容:现在真正掌握VC的人实在太少了,不过BCB也很不错的,我们这里是用VC做底层控件然后再用BCB做用户界面的
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -