当前位置:首页 > 网站技术 > 经验之谈

给学习编程的朋友几点建议(3)

...

  再来看下面一个程序,下面的程序的功能是在打印机上打印两行文字:

'----------打印程序----------
Printer.CurrentX=2500
Printer.CurrentY=1000
Printer.Fontname="黑体"
Printer.FontSize=32
Printer.print "给同学们的一封信"
Printer.CurrentX=100
Printer.CurrentY=3000
Printer.Fontname="宋体"
Printer.FontSize=16
Printer.print StrNameOfStudent & "同学:你好"
Printer.Enddoc

  以上这段程序非但可读性差,语句量大,而且日后修改起来麻烦,如果改用下面这种方法就好多了:

'----------打印程序例二----------
PrintText(2500,1000,"黑体",32,"给同学们的一封信")
PrintText(100,3000,"宋体",16,StrNameOfStudent & "同学:你好")
Printer.Enddoc

Private Sub PrintText(Byval PTX as Singel,Byval PTY as Singel,Byval PTFN as String,Byval PTFS as Singel,Byval PTStr As String)
  '打印内容子过程
  'PTX,PTY是打印位置
  'PTFN是字体,PTFS是字号
  'PTStr是打印内容
  '你还可以跟据需要加入粗体、斜体等参数
  Printer.CurrentX=PTX
  Printer.CurrentY=PTY
  Printer.Fontname=PTFN
  Printer.FontSize=PTFS
  Printer.print PTStr
End Sub

 

五、不要用GOTO

  这是多年前的问题了,如今却实大多数人已经不用GOTO语句了,但是,不可否认还有些人在死守着那些老古董不肯放。用了GOTO语句的程序就像面条一样,日后是很难把它理清楚的。

  我97年开始从GW Basic向True Basic转时碰到了很大的难度,因为我已经非常习惯于GOTO语句了,但是,我一直坚持一个也不用。现在,我已经习惯了没有GOTO的程序。前两天,一位朋友把他编的程序给我看,程序本身很好,功能也很强,就是里面用了几个If...Then Goto语句,让我很受不了。都这么多年过去了,这些东西应该丢掉了。

  最近才着手学习程序设计的朋友应该不会滥用GOTO,因为现在的任何一本材料中都不介绍GOTO的使用。也许你们都没听说过还有这样的语句,这样更好了。

  不过,有一个例外:On Error Goto语句不用丢弃它。但是我不喜欢用数字做行号,我的朋友在他的程序里除了几个“Goto 100”,“Goto 200”之类的语句,还有“On Error Goto 1000”。如果用“On Error Goto KillErr”,采用字符串做行标记,日后看程序时总比看到数字舒服。万一你还没看到“On Error Goto”而先看到行号呢?用数字不就麻烦了些?

六、在应用中学习

  许多人学程序设计只是照着书本的例子做,一本书啃完了,再买一本继续,这样做永远没有主动。要想学得深一些,学一些有用的东西,可以先拿一本书学学其中的例子,大体有点会后就放开书本自己编。

  自己编的时候,不要只想着程序语言能实现的功能,而要想其它应用软件能实现的功能,甚至其它应用软件还没有实现的功能,然后想办法用程序去完成它。

  自己编的时候,要么不编,要编就编一个完整的程序。这样的话,接触到的问题会多一些。编什么呢?不用想:小时候玩过七巧板吗?玩过飞行棋吗?现在你需要一个好的通讯录吗?都可以编啊。把这些都编出来就行了。

  也许你要说,这些程序网上都有,还要我编干什么?错!网上是有,而且网上的比你即将编出来的更好。但是,我们并不是要一个程序,而是要学习。

  我现今用Visual Basic编程序时从来不翻书,碰到不会的怎么办?用F1就行了。MSDN里讲得比任何一本书都完整,当然,MSDN里并不介绍算法,并不介绍模块的组合。但那是你早该解决的问题。

继续阅读
程序员与妓女完全版
一个程序员的大学十年路程
java程序转成exe文件
C#中水晶按钮的程序生成
用Delphi制作以浏览器为界面的应用程序
C++大师Lippman对中国程序员的忠告
写程序应注意的事项
维护 ASP 应用程序的安全 [2]
维护 ASP 应用程序的安全 [1]
发表评论

昵称:
最新评论
暂时没有评论!