好像是一兩年前聽到這個程式語言,說來特別,是在 JavaOne 的聚會。記得是當時公司同事對這個會議有興趣,後來我也被拖去參加。本來的開場是要找「Thinking in Java」的作者來演講,結果好像是因為他去滑雪腳受傷不克前往,後來就拍了一部片子來代替演講。對我而言最幸運的是因為是錄影帶,貼心的主辦單位還幫忙加上了字幕,要不然,我可能聽不進十分之一的內容。
那位作者說有些人建議一年學一種新的程式語言,他認為不必,但是由學習新的程式語言可以得到許多不同的想法。而最近讓他著迷的程式語言,是以 Java 作的 Python 引擎︰Jython。
老實說對於後來的介紹,現在還能記得片斷已經少得可憐。只記得有個叫作 Python 的東東,是一個新的程式語言,其思考方式和 PHP 類型,是動態型別的直譯語言。但是似乎能作的事情更多,也更強大。
中間的一兩年間,不時的聽到或是看到一些由 Python 寫出來的程式,給人的感覺評價都不錯。在一次機會下在歐萊禮的書單中看到「深入淺出 Python」,就入手將它買下來。又再隔了一兩個月後才真正把它拿起來看。
Python 和 PHP 很類似,都是由 C 所寫出來的,相同的具有自己的記憶體回收的機制,也都是動態型別,所以某些角度來說,寫起來滿「鬆散」的。不像 Java 那種強型別的語言,由於方法被定義在類別或介面中,所以可以由 IDE 提供的工具可以較簡單的給予方法名稱的提示,這種便利可以讓我不那麼專注在「有沒有打對方法名稱」這件事上。
Python 則是自由的讓人有些無所適從,不是每一個時候 IDE 能夠告訴我有沒有打錯字,讓人常常回憶起初學程式時,每當編輯或執行不過時,滿程式碼找自己打錯的那一兩個字。好在已經經歷過那個時間,除錯的能力還不至於讓我浪費太多時間。
就 PHP 和 Python 比較起來,出生較晚的 Python 顯然將程式語法簡化的幅度高出了許多。不管是迴圈、檔案開啟、例外處理…事情都有自己一套簡化語法。只不過這樣要記的東西又多了許多,往往印象中的語法就是無法被拼成一個完整的語法,又得往前翻上好幾頁去找答案。
整體而言,感覺 Python 的基本想法(語法)並不太難學,許多想法都可以由 PHP 的概念轉移,比較可惜的是書本的篇幅有限,只提到了一些皮毛,並沒有說到太多關於 UI 或是其它函數庫的應用,關於 Android 的部分需要下載第三方的直譯器(非 Google Play 上)讓人覺得有些雞肋,看看時間,也該暫時將它放在一邊,先學學其它對於現在而言更急迫的東西。
感覺上,基本語法似乎都不難,複雜的地方總是出現在整合其它函數庫,或是組裝、應用許多不知如何使用的第三方功能。
感覺程式的學習還不夠精熟,還沒辦法達到弄明白引用其它函數庫或是其它語言程式的地步。對於程式廣度還有滿長的一段路要走。
沒有留言:
張貼留言