.NET初學者架構設計指南(一)Hello world的時代

作者: 小陸  來源: 博客園  發布時間: 2008-09-10 13:43  閱讀: 14626 次  推薦: 4   原文鏈接   [收藏]  
 

系列文章導航:

.NET初學者架構設計指南(一)Hello world的時代

.NET初學者架構設計指南(二)OO設計初次見面

.NET初學者架構設計指南(三)設計模式

.NET初學者架構設計指南(四)Model-View-Controller

 

  中學的時候,學校里開設了電腦課。當時的電腦還是一種比較希罕的東西,學校里的電腦一共就十幾臺,還專門找了一個大廳擺放這些機器。廳里面鋪著厚厚的地毯,整天都拉著重重的窗簾。每次上課前一天,我們需要沐浴更衣,剪好指甲。上課時大家都穿上鞋套,排好隊伍,列隊進入機房。然后各位同學坐在座位上,在老師的指揮下,拿出一張五英寸的軟磁盤,磁盤里安裝著DOS操作系統,插入電腦的A驅動器。然后依次打開顯示器、主機電源,在一陣吱吱聲中,等待著電腦的啟動,進入一個充滿了幻想的神奇世界。

 

  我就是在那個時候寫出了第一行程序。當時我們學的是一種叫做GWBASIC的語言,這是BASIC語言的一個分支。

 

  BASIC是一種非常簡單的交互式程序設計語言。編碼人員需要為每一行代碼編制一個行號。行號是一個自然數,為了日后調試的需要,一般都是在最初編制行號的時候故意留下富余,不是按照1、2、3……的方式編制行號,而是按照10、20、30……的形式。程序輸入完畢以后,運行“RUN”命令,編譯器按照行號的順序,解釋執行程序。

 

  這樣的編程方式太簡單了,只要記住幾個流程控制、輸入輸出的關鍵字,就可以寫出一個簡單的程序。那段時間我每天都在想著把平時遇到的東西用程序寫出來,多元多次的方程式、猜數字的游戲、三角函數曲線……先把編程的思路記在紙上,每個星期上課的時候再在電腦上寫出來,調試運行。調試方式也非常簡單,就是把數值往屏幕上PRINT,然后運行查看結果。寫完了之后運行“SAVE”命令,把代碼保存到軟盤里。

 

  中學時期應該是一個人的思維最靈活的時期,以后的時期經驗逐漸的豐富,但是學習新知識的能力實際上是在走下坡路。除非特地去培養,很多方面的知識也就停留在中學的水平。比如對于一個搞計算機的專業人員來說,他的歷史、語文、物理、化學知識很可能就永遠的停留在中學時期的水平。那段時間我瘋狂的寫著程序,最大的愿望就是家里能有一臺電腦,安裝著GWBASIC的編譯器,我可以每天把自己關在屋子里,用GWBASIC寫出超級瑪麗,或者坦克大戰一樣的游戲。

 

  GWBASIC使用一種非常原始的方式進行流程控制——GOTO。他也有函數的概念,但是實際上也是GOTO到某段代碼上去(使用GOSUB指令),執行完了再GOTO回來(使用RETURN指令)。按照當時流行的觀念,程序中使用GOTO并無不妥,這是實現條件循環的一種很正常的方式。例如下面這段代碼:

 


50 LET I = 0
60 I = I + 2
70 PRINT I 
80 IF I < 100 THEN GOTO 60

 

  下面是我當時寫出的一段代碼,這是一個猜數字的游戲,他就是在GOTO來GOTO去的兜圈子,像是進入了一個迷宮。還好這個迷宮的規模不大,很容易就能找出他在干什么。這段代碼之所以能夠保存到現在,是因為他沒有象其他代碼一樣保存在軟盤里,而是隨手記錄在了書的空白處。


10 PRINT "Guess a number"
20 INPUT A 
30 IF A > 5 THEN GOTO 60 
40 IF A < 5 THEN GOTO 80 
50 IF A = 5 THEN GOTO 100 
60 PRINT "Too big" 
70 GOTO 20 
80 PRINT "Too small" 
90 GOTO 20 
100 PRINT "Right" 
110 END


  這樣的編程方式就是:面條式代碼。這是一種最簡單的編碼方式,不需要長時間的學習或太多的經驗就可以立即掌握。但是他能解決的問題也是有限的,也就只能寫一個猜數字的小游戲,或者畫出一個Y=A*SIN(X)+B的函數曲線圖。如果要真的用他來寫一個超級瑪麗,那將是很很很很很困難的。  

 

4
0
 
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()