關於『物件導向實作課程』

關於『物件導向實作課程』

從基礎概念出發

        個人認為物件導向程式開發最要緊的一個關卡其實是基礎概念,有些人可能寫了很多年的 C# 但卻不見得有花時間好好探究物件導向程式設計的基礎概念,所以很可惜地在寫了很多年程式以後,程式碼看起來和剛學半年的初學者可能沒兩樣。在大部份的情形下這些開發者並不是不努力,真正的問題點在於沒有人告訴他們正確的學習路徑,也沒有人提醒他們在程式設計方面所欠缺的是什麼;所以在這門課程的前半段,會從物件和抽象的觀點開始,進而探討 OOP 三大特性的內涵,了解 .Net Framework 中的型別系統,然後才開始學習如何設計介面與類別,最終引申到設計模式的實作應用。

 

 

為什麼要談這麼多基礎?

       讀過金庸文學名著『倚天屠龍記』的人應該都知道許多明教教主學乾坤大挪移的時候要不是花了大把的時間沒有進展,要不就是走火入魔吐血身亡;但偏偏張無忌隨便學個幾個時辰就整個都學會了,書中也解釋了因為乾坤大挪移是一個運用內力的巧妙法門,而張無忌當時身負九陽神功所以輕輕鬆鬆地就學會了。雖然這是小說中的情節,但套用在程式設計上卻是一個極為契合的觀念,如果一個人對於物件導向程式設計的基本概念有了一定程度的基礎,那學起設計模式 (Design Patterns) 來絕對是事半功倍。

 

 

實作與思考

        實際動手下去寫程式碼是學習開發軟體不可或缺的一環,但思考也是同樣地重要,風清揚老前輩曾說:「熟讀唐詩三百首,不會做詩也能吟!熟讀了人家詩句,做幾首打油詩是可以的,但若不能自出機杼,能成大詩人麼?」,悶著頭寫程式碼常常會走上冤枉路,就像我曾見過某些見解是『寫物件導向很簡單啊,只要把共用的東西通通寫在一個類別裡就好了。』這種似是而非的說法,通常就是因為沒有正確的思考模式的產物。

 

        在學習的過程中,我們不僅僅要動手去寫程式碼,並且要常常思考如何做的更好。整個課程中想要帶給大家的也不僅是怎麼撰寫類別與介面,怎麼套用設計模式;更想大家瞭解的是我們如何將程式碼一步步重構的思考歷程,如何在各種不同的情境考量效能、重用與彈性。期待上完課的同學能夠在短短的時間體會思考的重要性與技巧,未來對於開發程式的想法就會有更大的發揮空間。

 

報名網址

        請點選此處報名