作者qrtt1 (有些事,有時候。。。)
看板java
標題[分享] 練習寫個好懂的程式
時間Sat Mar 7 22:33:03 2020
分享連結 (TWJUG 裡的文章):
http://bit.ly/2VQH9fg
前情提要連結
http://bit.ly/39xC9Ar
影片清單連結
http://bit.ly/2wHjHXh
這篇文章是平時逛新手社群,看著新手的發問而來的。
與其講一堆建議或最佳實踐
給初學者『體會』等時機成熟後,他們有機會『頓悟』!?
這次想換一種『推坑』的方法,直接錄影示範看看。
內容主要是先看了一下原作者的程式
程式的主要目標是:提供寫日記的 Application
1. 一般純文字 Editor 的功能
2. 支援存檔加密
實作的方法,大概跟一般入門書一樣,想到什麼就寫什麼
總之程式能動就 100 分惹,導致最終凌亂的成果。
==============================================================
那麼,這次是想要『展示』些什麼呢?
除了讓初學者知道 IDE 真的很好用之外,
要帶來已經廣為流行的架構思想:
怎去組織你的程式,抓出核心邏輯。
引用了一些觀點的:
* Clean Architecture
撇開外界的紛擾 (UI, I/O, Persistence),直接實作內部核心物件
(微 DDD)
滿足,獨立於『應用程式框架』且『能實作單元測試』二大目標為主
* Single responsibility principle
SOLID 整組都很棒,但我特別喜歡由 SRP 作為起手勢,
主要是初學者常猶豫著『這段 code』到底該放哪!?
這其實靠著 SRP 陳述句自問自答,就能解決大部分的問題。
* TDD
因為實作的目標挺具體的,要寫測試並不會太困難。
特別是把問題鎖定在 Clean Architecture 內層,
能完全隔絕外務驗證實作出來的 Business Logic
(順便展示 IDE 的強大輔助)
希望在迷惘中的初學者們,能在看到這篇文章後獲得一點幫助 :D
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.231.139.216 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/java/M.1583591585.A.E3E.html
1F:推 shengvia: 謝Q大分享 03/07 22:50
※ 編輯: qrtt1 (36.231.139.216 臺灣), 03/08/2020 09:50:42
2F:推 rexhuang: 感謝分享^^ 03/08 14:56
3F:推 Veirshin: 感謝分享~ 03/08 23:58
昨天又補了 2 段,追加實作開啟舊檔。
做這樣的練習挺好玩的說。
※ 編輯: qrtt1 (36.231.139.216 臺灣), 03/09/2020 14:43:18
4F:推 newkni: 感謝分享!! 內容非常仔細~對小弟這新手來說獲益良多~希望 03/12 22:52
5F:→ newkni: 能多一點類似的教學影片~也期待把整隻交易給實作完成XD 03/12 22:53
倒不一定會實作完,雖然今天加減寫了『存檔』。
這東西主要是要『傳遞概念』,而不是完成一項工作啊 XD
你有什麼迷惘的東西,也能加入 twjug 跟 twjug-lite 來討論啊。
※ 編輯: qrtt1 (36.231.130.25 臺灣), 03/14/2020 21:20:39