2013年5月3日 星期五

The role of the study of programming languages in the education of programmers

課程論文研討(二)
日期 : 2013/03/22
時間 : 13:50 ~ 15:30
學生 : 資傳研一 劉孝皇
演講者 : 政治大學 陳恭教授
心得:程式語言就其接近人類語言的程度,大致可分為低階語言 (Low-level Language) 與高階語言 (High-level Language) :
語言名稱呈現形式缺點優點
機器語言用0與1來編寫程式人們不易看懂,編寫程式不易,維護困難不用翻譯便能執行,執行速度最快
組合語言
( 低階語言 )
以助憶符號編寫程式
組合語言 → 組譯器 (Assembler) → 機器語言
編寫程式須瞭解電腦內部組件的特性及能力命令語法較機器語言易懂大都用來編寫系統軟體
高階語言接近人類的自然語言及數學表示法
高階語言 → 編譯器 (Compiler)
或直譯器 (Interpreter) → 機器語言
必須經編譯器或直譯器翻譯才能執行可不必知道硬體內部結構程式撰寫、除錯容易
早期在程式語言萬馬奔騰的時代,每一種程式語言通常有比較清楚的功能分際,例如 BASIC 適合初學者、 C 語言適合用來開發系統程式、 FORTRAN 為科學運算程式語言、 Pascal 為結構化程式語言…,不過隨著技術的演進,這些分際越來越模糊,演變至今,較先進的程式語言幾乎都有一個共同的特色,那就是「物件導向」,也就是說,物件導向已經成為程式語言的主流。
因為程式語言本身不可能無限制地擴增功能,若無限制地擴增功能會增加系統的負擔,也會增加使用者的困擾,但另一方面,對程式設計師來說,卻希望程式的功能能無限擴張,而物件導向程式語言的特色之一便是可以讓程式設計師以既有的物件為基礎,擴增物件的功能,藉此擴張程式語言的功能。
雖然物件導向程式語言比傳統程式語言難,但不同程式語言之間的互通性高 ( 特別是觀念上的互通 ) ,學過一種物件導向程式語言,想再學另一種物件導向程式語言,通常都很容易上手,因此對初學者來說,可以選擇任何一種物件導向程式語言作為學習的第一個程式語言,目前市場上接納度較高的物件導向程式語言有 C++ 、 C# 、 Java 、 VB7 …等。
所以我個人認為至少要先選擇一種程式語言當作母語,扎實的打好基礎後再進行其他程式語言的學習會較有效率。

沒有留言:

張貼留言