設計樣式實務與應用 by Java/Spring and UML (06/27, 30 Hrs)

 o 日期:2015/06/27 起,每週六白天。
  每次上課為六個小時(AM 9:30~PM 4:30),共五個星期。
 o 預定上課日期:06/27, 07/04, 07/11, 07/18, 07/25
 o 上課地點:上課前一週以電郵/電話通知學員。
 o 附贈完整程式碼與執行檔,以及歷屆技術研討會簡報 DVD 光碟
 o 同課程可保留再旁聽乙次的權利 (.NET/Java 設計模式課程均可。報名時註明舊生旁聽即可)。
 o 修習課程完成的學員均有結業證書 (諸多公司已認同本單位所傳授的課程與理念)。
 o 附免費茶點 (最後一日結業時附外訂精緻下午蛋糕咖啡等茶點)。
 o 中午休息時間,學員可與講師們自由提問、小組討論或休息等。

============================================================================
§ 課程介紹:

** 所有設計樣式案例均有 Java 程式碼可執行,並透過 Spring Web 來呈現執行的結果;另我們也同時附贈一片 Ubuntu Linux 光碟,內已安裝 Java/Eclipse 等整合開發環境並提供專案開發範本,學員們帶回去即可直接執行與練習所提供所有的設計樣式案例,學習效果絕佳。

Java 所提出 Spring-Web MVC (Model-View-Control) 係為 Web 端的解決方案,但並非對整個 Enterprise 系統架構的 MVC 方案-如何設計 具高度彈性具延展性的結構,來解決多變複雜 (包括實體系統的變動與業務邏輯的頻繁變更)的議題。

回歸到軟體人員應具有的基礎功-軟性的設計能力。而這能力的培養,並非由現實對 Web, 資料庫等存取實務技術就可以理解;而是需要研讀大量設計性書籍並具獨立思考的能力,方能設計出某個解決方案 (solution)的結構並應用於實務系統的運作上。

的確,從無到有或沒有方向的摸索是相當不容易的,所以我們會期望能借重軟體先輩們的智慧結晶與設計法則 (Design Patterns),解決現實設計所面臨的困境與難題;甚而更進一步,能進而活用與創造出所屬自己與團隊的 "設計模式"!

四人幫 (GoF, Gang of Four) 著作的「設計模式 (Design Patterns)」,可以說是軟體領域的孫子兵法。書中介紹的 23 個設計模式,已被大量運用在系統框架(Framework)及應用領域上;不過該書其實艱奧難懂,如同金庸小說中的「九陰真經」上卷一般,充斥的儘是心法,若沒有真經下卷功法的實務修練,是極難打通任督二脈的。

HSDc. 顧問團隊累積了10數年在軟體設計領域上持續研究學習 (大量研讀名家著作/論文)以及實務的經驗 (大型系統開發、顧問/授課輔導、產品開發...),期能以所累積的心得與實務,並配合現實的實務技術 (以 Java/Spring 為例,並會搭配 Spring Web/MVC 與 JPA/Hibernet Framework 框架),把每一個設計樣式,寫成淺顯易懂的案例,讓有志於從事軟體設計業的學員們,可以理解設計模式所揭露的目的與意義,更能應用在現實的工作專案上。

============================================================================
§ 課程特色:
 o 採 "問題-解決方案(Problem-Solution)" 的說明並佐以生活化的案例,進而帶出程式碼的實作與執行。
 o 以 UML 類別 (Class)圖說明各設計模式內的類別結構關係
 o 透過 HSDc 所開發的 Sequence Generator 工具,產出 UML 循序圖,以展現程式碼動態執行期間的物件呼叫關係。
 o 所有案例均採 JEE (Java Enterprise Edidtion) 框架規格,並透過 Spring Web UI 來呈現執行的結果。
 o 以四人幫「物件導向設計模式」典藏版一書 (葉秉哲 譯)為授課藍本;並再另以講師所提供的案例說明暨程式碼作成簡報講義教材。

============================================================================
§ 報名與費用相關資訊:

o課程費用:
 o 大學/研究所 資訊相關科系講師、助教或教授,出示相關證明,我們會以建教合作方式計費。(請另以電話聯絡)
 o 清貧或由家扶中心推薦,所有費用 免費!!

§使用設備:
使用白板與投影機,由講師親自說明與操作示範。學員最好能攜帶Notebook ,於課程中實際操作練習。

§使用工具:
 o Ubuntu Linux OS。
 o EA (Enterprise Architect) UML Tool Trial。
 o Eclipse for JEE IDE Tool。

§授課講師: 賴信仁(Ringle Lai), 王克明 (Kenming Wang)

§適合學員:
 o 系統設計師(SD), PM, Programmer 等在職軟體開發者或在學學生。
 o CTO,技術經理,想瞭解如何活用設計樣式於現實平台的開發框架上(J2EE or .NET)。
 o 看了很多設計樣式書籍,但仍無法應用於現實及掌握其精髓,透過講師豐富的實務經驗與精闢解說,一點即能通。

o備註:
 o 教室設備包括白板與投影機,由講師親自說明與操作示範。(學員可攜帶錄音筆)
 o 學員最好能攜帶 Notebook(可無線上網),可以於課程中實際操作與練習。
 o 上過本課程(.NET/Java 均可)學員,仍可免費旁聽本課程。(每次保留6名學員名額。)
 o 若未達上課人數(原則以15人以上)則延期至下一梯次開課;
  已報名學員,本中心會電話通知,並主動辦理退費(或可保留至下一梯次)。
 o 開課前一週會以電話與電子郵件聯絡通知學員。
 o 遇國定假日或颱風等因素,則延至下一週上課日(本中心會主動通知學員),以此類推。

============================================================================
§ 課程大綱
每一個設計樣式各獨立成一個主題,每個主題的結構:

o 問題陳述 (Problem)
o 解決方案 (Solution)
o 案例說明
o UML 類別 (Class)圖靜態結構
o UML 循序圖 (Sequence)物件動態關係
o 所有設計樣式 Java 程式原始碼
o 可執行的 Spring Web UI (或 Console) 應用程式

------------------------------------------------------------------------------
設計樣式三大分類 (每次6小時課程說明 4~5 個設計樣式):

結構性 (Structural):
 o Facade
 o Composite
 o Adapter
 o Bridge
 o Decorator
 o Proxy
 o Flyweight

行為性 (Behavioral):
 o CoR (Chain of Responsibility)
 o Commang
 o Strategy
 o State
 o Iterator
 o Visitor
 o Observer
 o Memento
 o Mediator
 o Template Method
 o Interpreter

生成性 (Creational):
 o Abstract Factory
 o Factory Method
 o Singleton
 o Builder
 o Prototype

----------------------------------------------------------------------- o 諮詢專線:TEL: 092236977
 o 服務信箱:gnimnek168@gmail.com
 o FB社團:軟體設計鮮思維