[軟體課程]Java/Spring 案例實作筆記 Step-by-Step (2018/06/30, 12 Hrs)

報名資訊

上課日期:2018/06/30-/07/01 (星期六、日)
週六日上課 (09:30 ~ 16:30),共 12 小時。招生中
上課地點:上課前一週公布 (另會以電話/電郵通知已報名學員);近捷運交通方便。
(歡迎來電洽談企業內訓包班課程,課程案例與實作可以採該單位專案內容來規劃)

線上報名

課程介紹

這絕對是一個可馬上被應用到工作實務的實作範例,讓學員可以知道,只要確立了可滿足使用者特定目的 (specific goal)的系統功能,並大致勾勒出實現功能的主要程序/步驟,就可以馬上導出到控制類別的程式碼。而傳統資料導向的開發模式,卻往往需要等待需求分析的細節與資料庫的表格定義,甚至把表單欄位與資料庫表格耦合一起,難怪乎開發速度與後續的變動維護相當遲緩極難偵錯。

本課程主要讓學員瞭解「目標導向」的開發方式,應用在學習所謂「新的 IT 技術」,尤其是偏向實作面的 「How-to」,包括工具的操作,與程式的寫碼等,是如何從所設定的主要完成目標 (main-goal),再分解成數個階段性的子目標 (sub-goal),然後一次只克服一小段問題,再往前漸增推進,往下一個階段目標前進。

本課程會從實作過程中,讓學員了解 Java/Spring 主要實作技術的應用,包括「Spring Web MVC」、「Hibernate」的 O-R Mapping 技術。然後透過馬上撰寫「單元測試 (unit test)」的把關,後續就可以放心地對程式碼實行「重構(refactoring)」,讓程式碼更簡潔易於維護具彈性度。

從實作練習的過程中,逐漸熟習工具與相關實作技術的使用。「快速學會 How-to (如何做)」的能力,才是技術人員首需具備的技能 (skill)。

課程目標

  • 藉由一個小型的案例,來展示開發階段 (包括 需求分析、結構設計、程式實作)的主要產出 (artifacts),以及這些產出之間的關聯性。
  • 展示目標導向的功能開發,如何快速從需求分析流暢地橋接至程式寫碼,並配合分層結構的 Enterprise MVC (Model-View-Controller) 框架,而可以應付未來系統重構,讓系統更具彈性與延展性。
  • 了解 JEE(Java Enterprise Edition) 在 Spring Web MVC 與 Spring/Hibernate 兩種關鍵技術的應用,並藉由控制類別隔離兩者之間的耦合。
  • 提供作為開發人員的實作範本,可以馬上應用在工作實務上,並未來可以擴展成為團隊的「實作學習筆記與範本」。

課程對象

  • 以 Java/Spring 的程式設計開發者。
  • 技術職主管,希望了解UML塑模產出與程式碼之間的對應關係。
  • 學校資訊講師/在學相關資訊科系學生。

課程大綱

課程單元 課程大綱
案例描述與實作目標
  • 界定系統開發功能,定義可獨立開發的主題 (Subject)
  • 利用UML系統循序圖描述實現系統功能的程序/工作項目 (Step)
  • 定義精要 (essential)的業務邏輯與資料欄位 (Detail)
  • 快速導出到 POJO(Java Plained-old Object)控制(Control)類型程式 控制類別 => Subject , method => Step
  • 立即撰寫單元測試程式碼 (unit test code)
  • 連結資料庫與 Web UI 表單畫面
  • 重構 (re-factoring),讓程式碼更簡潔易於延展與維護
Iteration#1-
從需求快速導出到實作,建立程式碼框架
  • 安裝與設定 STS(Spring Tool Suite,內建 Eclipse) & UML 工具的開發環境
  • 說明系統功能的界定與實現方式 (定義可獨立開發的操作目的)
  • 建立 POJO 控制類別程式碼框架,對應系統功能的分析產出
  • 利用 JUnit 立即撰寫單元測試程式
  • 建立 Spring Web MVC 專案,實作可操作系統功能的表單畫面
  • 規劃 DTO(Data Transfer Object)資料物件,作為各類型物件的參數/回傳值的資料傳遞
  • 建立資料庫表格(Table),產出標準 DDL(Data-Defintion Language) SQL
  • 讓控制類別透過 Spring/Hibernate 框架實際存取資料庫
Iteration#2-
更新處理邏輯與加入更多欄位細節,並對共用部分做萃取重構
  • 修改程式碼細節,包括資料欄位與業務邏輯的實作
  • 在程式碼內新增對例外處理(exception handling)的實作
  • 從控制類別萃取共用性/複雜的商務邏輯,並設計共用性的領域物件(domain object)
  • 將原來資料庫的存取邏輯,從控制類別抽離至 DAO(Data Access Object)物件。
  • 新增測試案例,並利用單元測試程式把關,確保每一次程式碼變動的正確性。
※本案例實作效果:UI 完全隔離資料存取與邏輯處理﹔UI/物件模型/資料庫 可以達成各自維護與延展的高度彈性度!

課程費用

  • 原價: NT$9,000元(含稅);線上報名並預繳報名費用者優惠:NT$8,000 (含稅)。
  • 早鳥優惠 (至 06/15 前止)價:NT$7,000 (含稅)。
  • 舊生優惠:NT$6,500元(含稅)。
  • 同人同行,費用再折抵95折、四人同行則折抵為9折。
  • 本系列課程若期再次旁聽,原價五折 (NT$4,500)。
  • 清貧或由家扶中心推薦,可留言說明或電話聯繫,所有費用 免費!
**備註**
  • 上述課程費用已含電子教材檔、UML Model檔、程式源碼 (含版控)。
  • 為確保報名足額人數,煩請報名完成後再以 ATM 轉帳預約費用 ($1000,當然也可一次繳清)。
  • ATM 轉帳帳號請參考報名表單內匯款帳號。並請於報名確認信所附鏈結點選編輯,可於報名表備註欄位內,註明您的轉帳帳號末 5 碼與轉帳金額。
******

課程資訊

授課講師:
 Kenming Wang
 o 具有近20年豐富教學與顧問輔導經驗。
 o 擅長引導學員反思並找出答案。
 o 專長大型系統架構規劃、企業/系統流程與系統分析、
  巨觀/微觀結構設計、精通 .NET/Java 兩大平台技術應用。
 o 專職軟體設計顧問/講師。

備註:
 o 教室設備包括白板與投影機,由講師親自說明與操作示範。
 o 學員最好能攜帶筆電(可無線上網),可於課程中實際操作與練習。
 o 若未達上課人數(原則以6人以上)則延期至下一梯次開課;
  已報名學員可申請退費(或可保留至下一梯次)。
 o 開課前一週會以電子郵件/電話聯絡通知學員。
 o 遇颱風等天候因素,則延至下一週上課日(會主動通知學員)。


如有課程相關問題,歡迎來信或來電洽詢
---------------------------------------------------
電郵: gnimnek168@gmail.com
Blog: http://www.kenming.idv.tw
軟體設計鮮思維:
https://www.facebook.com/groups/softthinking/
聯繫電話: 0922236977

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *