冒號和他的學生們(連載14)——教學計劃

          冒號和他的學生們

          ——程序員提高班紀事

          1. 教學計劃

          褚小者不可以懷大,綆短者不可以汲深                            ——《莊子·至樂》


          一陣商討之后,眾人似乎未能達成共識。冒號見狀,便讓他們一一道來。

          問號再次充當急先鋒:“能不能比較一些當今主流語言各自的優缺點?”

          冒號笑言:“我怎么恍惚間又回到了第一堂課?你的潛臺詞還是那句話:到底學哪種語言好?”

          問號被窺破心事,微露窘色。

          “不過我非常理解你們的想法。”冒號體諒道,“雖然這是編程中最易提出卻又最難回答的問題,但考慮到大家對它如此興致盎然,我決定不顧引火燒身之危,鋌而走險一回。”

          眾人鼓掌。

          冒號故作疑惑:“你們這是對答案表示期待呢,還是對我的勇氣表示贊賞?”

          眾皆笑曰:“兼而有之,兼而有之!”

          嘆號提出:“近來動態語言非常流行,能說說它與靜態語言到底有何不同,是否會取而代之?”

          “嗯,這個問題總算簡單了些。”冒號如釋重負。

          逗號堅持道:“我還是那個建議,希望學些具體的編程知識和技巧,比如將最流行的Java語言中的一些重點和難點分幾個專題來討論。”

          冒號頷許:“這是個很好的建議,可以采納。”

          引號有不同意見:“Java沒有C++來勁:要說難點,C++多得多;要說流行度,按照TIOBE的數據,CC++之和還超過Java五個百分點呢。”

          逗號不服:“你沒看到CC++正在逐漸沒落嗎?”

          引號冷哼一聲:“開玩笑,什么時候操作系統、數據庫、游戲軟件和嵌入式系統都改用Java了再說這話。別忘了,Java的虛擬機都還是CC++寫成的呢。”

          冒號忙止住干戈:“我還沒來得及成為眾矢之的呢,你們二位倒先掐上了。”

          句號提議:“最好找一個項目實例,從頭至尾演練一次,既能貫穿各個知識點,又能讓我們對軟件開發有個整體認識。”

          “這個想法聽起來非常不錯。”冒號沉吟了一會又道,“只是一個真正企業級的項目,涉及面太廣。比如一個完整的web應用,不論是采用重量級的J2EE.NET技術,還是采用輕量級的PerlPHPRubyPython等動態語言技術,除了要掌握各自的主體語言外,還涉及到相應的框架、集成環境和各種工具,以及JavascriptCSSHTMLXML等技術,同時數據庫的知識也是不可或缺的。”

          問號奇道:“javascriptCSSHTML這些不主要是網頁設計人員的語言嗎?”

          冒號解釋:“網頁設計人員大多用Dreamweaver之類的工具來設計HTML頁面,開發一般網站尚可勉力而為,若開發企業級軟件則有些力不從心了。更何況web應用的趨勢是具有更豐富用戶體驗的Rich Internet application (RIA),采用大量的AJAXFLEX等技術,需要熟悉JavascriptActionscript之類的語言,這些就更非一般網頁設計人員所能勝任。”

          引號插言:“據我所知,許多公司都是請網頁設計師來編寫HTMLJavascript等代碼的。”

          冒號指出:“網頁的迷人之處就在于,能夠用精美的畫皮來包裹冗長低效的代碼。出于軟件開發的時間和成本的考慮,公司的選擇無可非議,但如果要提高軟件競爭力,這些代碼至少要經過程序員的加工處理。”

          逗號復言:“那數據庫總該是數據庫管理員的事吧?程序員至多用到hibernate之類的ORM框架。”

          冒號斷然否定:“數據庫絕不只是DBA的事,ORM也不能取代數據庫的設計和SQL的使用。另外,復雜的應用需要編寫大量的存儲過程(stored procedure),故還應掌握PL/SQLTransact-SQL等擴展數據庫語言。換句話說,從web開發最前端的網頁到最后端的數據庫,都應該有程序員的身影。”

          句號聯想到:“借用前面餐館的例子,不妨把接待員看作客戶層client tier,把服務員看作表現層presentation tier),把廚師看作業務層business tier),把收銀員看作數據層data tier),把廚工看作常用的輔助類helper class)。”

          冒號微微點頭:“比較靠譜。要說不當之處,就是服務器端的表現層不會如服務員那樣直接與客戶打交道,此外業務層常與數據層打交道,但廚師好像不會與收銀員有什么瓜葛。”

          嘆號夸張地捂住臉:“天哪,程序員竟然身兼五職,太慘了吧?”

          “當然程序員會各有分工,不過如果你總局限某一層的應用開發,今后憑什么謀取更高的職位?”冒號苦口婆心,“無論干哪一行,要勝任愉快,離不開四樣東西:才能、興趣、方法和努力。沒有才能則難以勝任;沒有興趣則難以愉快;沒有方法則事倍功半;沒有努力則一事無成。我相信好的方法最終能激發人的才能、興趣和努力,這也是本班的一個理念。希望大家能通過各種問題的討論,獲得一些方法上的啟示。”

          問號急切地詢問:“那么我們的下一步是什么?”

          “綜合各位的意見,我們從簡到繁。”冒號公布計劃,“先簡單談談動態語言;再對主流語言作簡評;然后以Java為主、C++與C#為輔,對語言中的一些要點作專題討論;最后如果時間允許,找一個項目來實踐一番。”

          “嘔耶!”眾人皆大歡喜。

          posted on 2008-05-23 13:35 鄭暉 閱讀(2373) 評論(5)  編輯  收藏 所屬分類: 冒號和他的學生們

          評論

          # re: 冒號和他的學生們(連載14)——教學計劃 2008-05-23 15:31 問號

          終于等到鄭老師更新了哈!!
          先站位,再慢慢品嘗...  回復  更多評論   

          # re: 冒號和他的學生們(連載14)——教學計劃 2008-05-23 15:35

          無論干哪一行,要勝任愉快,離不開四樣東西:才能、興趣、方法和努力。沒有才能則難以勝任;沒有興趣則難以愉快;沒有方法則事倍功半;沒有努力則一事無成。
          -----------------------------------鄭暉  回復  更多評論   

          # re: 冒號和他的學生們(連載14)——教學計劃 2008-05-23 16:40 如坐春風

          》》無論干哪一行,要勝任愉快,離不開四樣東西:才能、興趣、方法和努力。

          》》沒有才能則難以勝任;沒有興趣則難以愉快;沒有方法則事倍功半;沒有努力則一事無成。

          前一句話很好,后面一句可以再推敲一下。  回復  更多評論   

          # re: 冒號和他的學生們(連載14)——教學計劃[未登錄] 2008-05-23 22:56 Matthew Chen

          java和c++比較學習是很不錯的。  回復  更多評論   

          # re: 冒號和他的學生們(連載14)——教學計劃 2008-05-24 19:24 rai

          從網頁到數據庫`````程序員要干的太多了`````  回復  更多評論   

          導航

          統計

          公告

          博客搬家:http://blog.zhenghui.org
          《冒號課堂》一書于2009年10月上市,詳情請見
          冒號課堂

          留言簿(17)

          隨筆分類(61)

          隨筆檔案(61)

          文章分類(1)

          文章檔案(1)

          最新隨筆

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 怀安县| 淳化县| 朝阳市| 双牌县| 含山县| 新竹县| 津市市| 五家渠市| 三门峡市| 井研县| 榕江县| 通辽市| 亳州市| 无锡市| 舟山市| 洪泽县| 大邑县| 凌云县| 平度市| 邛崃市| 沂南县| 潜山县| 池州市| 长海县| 平利县| 梁河县| 沅江市| 南昌县| 改则县| 浙江省| 陆河县| 黄浦区| 泸州市| 芜湖市| 大埔县| 石柱| 临猗县| 宿州市| 修武县| 九龙城区| 贵溪市|