选其器 善其事——纵谈编程工具的选择

Author: 严玥 Date: 2000年 第38期

  “工欲善其事,必先利其器”——《论语》。很多人在学习软件编程时,都希望选择一款优秀的编程工具。到书店逛逛,可以看到各种琳琅满目的编程书籍,可是你还没有想好选择学习什么编程语言,也就无所适从,不知道该买什么书看。
  要想学好编程,必须认真了解各种语言的特点,找准自己的学习方向。那么你首先必须明确你想要做什么,你所感兴趣的是什么?进一步说就是:你现在想要完成哪一方面的程序设计,你的程序主要完成的功能是什么?由此在众多软件中,选择出适合自己的开发工具。
#1    一、基础语言开发工具
  诸如Delphi、VC++、VB等语言都是一种面向对象的程序设计语言,虽然每种语言在对面向对象的支持不尽相同,但它们始终贯穿整个程序设计的思维方式的主线。因此,要学好这些语言最开始不应该将重点放在某种语言的具体语法格式上,而应该注重学习面向对象的基本理论,比如对类、对象、封装、继承等基本概念的理解。具有较为扎实的面向对象的基本理念,将对你理解具体某种程序语言的实现过程提供极大的帮助,更能帮助你理解其他程序设计语言时,起到触类旁通的作用。
#1    最容易的入门语言——Visual Basic
  在掌握面向对象编程的基本概念的基础上,相对来讲,VB是比较容易入门的一门语言。在学习VB时,应该注意抓住对象的精髓,避免凌乱和繁杂,注意掌握对象和控件的属性和事件以及它们的功能和用法、主要函数的简单功能。最有效的方法就是自己组织一个由简到繁的学习步骤,在每一部分的学习中,尽可能地自己动手创建自己的VB程序。比如:在学习VB简单绘图功能时,学着自己绘制正弦曲线;学习使用picturecl控件来制作一个液晶效果显示时间;在学习API函数时,制作自己的任务栏图标。这种方法能够很好的帮助你掌握VB中常用对象、事件的使用。
#1    最灵活的语言——Delphi
  对于Delphi来讲,如果你曾经学过PASCAL的话,你会发现很多东西都是“似曾相识”的。确实如此,Delphi本身就是由和PASCAL结构类似的Object Pascal编写而成。如果你有一定的PASCAL基础,学习起来当然更轻松一些。另外,还应注意对Delphi中包的理解和应用。比如,对运行期包、设计期包以及自己建立包应该注意的事项。在熟练掌握Object Pascal语言的基础上,可以把学习Delphi时的重点放到如何使用Delphi编写Windows应用程序,Delphi数据库编程和创建控件以及程序开发上面。
#1    最强大的语言——Visual C++
  VC++中由于有较完整的微软基本类库,使开发Windows应用程序变得简单而高效。它提供的复杂的资源编辑器,可以很方便地编辑对话框、菜单、工具栏以及其他组成元素,因此它的功能强大,使用方便,但是和VB、Delphi相比,入门较难、不容易掌握。学习VC++,应该首先把重点方在基本数据类型、输入/输出、循环和数组、模板以及如何创建C++应用程序上面。在此之后,才应该进一步学习VC++中资源编辑器的使用、Active X控件的使用以及编辑器优化等内容。目前很多关于VC++的书籍中大部分都是对使用VC++各个版本开发应用程序的介绍,而忽略了C++的基本知识,实际上,对于初学者来讲,直接从具体应用程序设计入手而忽略基本知识,反而会在很大程度上加大学习难度,很容易丧失学习的信心和兴趣。
  当然在上述这些语言中,都提供有自己的数据库编程和Internet编程。在对程序本身熟练掌握的基础上,你还可根据自己的需要选择学习。当你已具有一定程序设计能力时,不妨自己设计一个现实、有兴趣的课题,自行开发、自行设计。这样可以帮你很好地熟练掌握程序设计基本技巧、融会贯通程序语言各部分。
#1    二、数据库编程
  如果你主要是想完成数据库方面的设计,那么应该选择专门的数据库开发工具,常见的有:SQLServer、PowerBulider等。假如只是需要完成相对简单的数据库功能,那就仔细看看Access吧。花不多的时间,也能让你有很大的收获,另外,还有一些专门用于大型数据库开发的工具如:DB2、Sysbase以及Oracle,这一类的软件一般都需要有较扎实的数据库基础知识和一定的软件开发能力。如果你是从头开始的话,建议不要一开始就去学习这一类软件。
  PB和SQLServer主要是用于完成数据处理和数据库的访问。由于SQLServer和操作系统兼容性较好以及在网络中的广泛应用,目前很多业余爱好者都选择学习它,在学习SQLServer时,应把重点放在SQL语言的组成、SQL的事务管理以及SQL的查询和优化上面。而PB则一直都是很多从事数据库开发专业人员钟爱的对象,对于选择学习PB的人来讲,在学习数据库基本使用技巧的同时,还应注意到在PB中,对于需要访问Windows特殊功能的应用程序需要调用API函数,比如:控制鼠标、创建目录以及闪烁窗口等。
  在学习数据库编程时,可以尝试着完成一个完整的软件开发周期。从需求分析开始,亲身经历设计数据库、创建数据库前端、创建表格、完成常见查询以及输出报表等全部过程。
#1    三、网络编程
  目前较为流行的网络编程工具可谓“风格迥异,百花齐放”。每一种工具都有其独特的特点,在互联网实现上都有各自的优势。
  在学习Java时,应该明确其中对象、继承等面向对象的基本理论,从根本上掌握Java的运行机制。在学习中应把重点放在其语言基础、Java与Active X以及Java Beans等组件之间的编程技术以及应用上来。你可以自己编一些较为经典的小程序来加深基本技能的掌握:用Java的图形处理能力编写纸牌游戏,用AWT编写扫雷或者俄罗斯方块、用Java的网络功能编写网络聊天室等等。
  相对来讲,ASP编辑方式简单、容易上手、功能强大,早已被广泛采用。在学习ASP时,应该首先对ASP相关的网络知识、Web Server设置、HTML语言等方面有一定了解,在此基础上,注重ASP的主要编程语言VBScript、ASP的常用对象和组件的学习。如果想对ASP有较深入的了解的话,还必须对其常用的数据库SQLServer、Acess等具有基本的使用技能。你可以自己尝试编一个简单的网上投票、网上超市等程序来加深对上述知识的掌握。
  另外,值得一提的还有网络编程语言的“新秀”——PHP。它摆脱了ASP只能使用NT或者Windows 2000为服务器操作系统的限制,对于数据库的访问较ASP更快、更直接。但是目前对于初学者来讲,其语言比较难理解,安装相对复杂、可供参考和学习的资料远不及ASP。同时在Windows中使用PHP,并不能够很好地体现其优越性。因此,我们建议对于没有Linux/Uninx基础的初学者,最好不要从PHP学起。
  网络编程还有一个很大的特点:处处留心皆学问。时常留意互联网上各个网站的设计,留心他人的设计思想和创意,会使你的网络编程技巧进步很快。总的来讲,网络编程本身难度并不大,但是由于其在具体项目设计上涉及范围较广,比如涉及到与各种各样的数据库直接的接口、不同操作系统等,有时又会变得非常复杂。
  学习语言的过程,是自己创造、自己编程的过程,也是逐渐掌握、逐渐应用的过程。在学习过程中逐渐培养起良好的编程思维、经验,逐步提高程序设计能力、找到更好的设计方案才是编程开发的真正精髓和乐趣所在!