作者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/cn.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