是的,2020年五月,也就是一年前的 #TDD與持續重構 梯次,今天還有同學會在上面問問題,而我也樂於分享一下我的看法一起交流。
從他的發問例子,pull member up 加上 namespace 的 Money, 讓我想到他正在用 Ct 練習 Kent Beck 的 TDD by Examples part 1 的 Money Example.
所以順便分享了一下我覺得不要錯過的重點(美的地方)。
至於那個 builder 的視角,並不是書裡面寫的,而是我會想從 Expression 往下延伸嘗試的設計視角,這樣可以簡單的把一堆 計算 的內容跟組合封裝起來。
試過一次,覺得蠻有趣的,但畢竟不是真實產品等級,我的領域知識也還不足,不知道那樣的 builder 概念在該領域會不會碰到什麼不合適的使用場景就是了。
多嘗試,多從自己的輸出取得回饋,才能真的學到書本內想帶出來的知識點。
—
何況我還有 Kent Beck 可以請教 ❤️
補上在學員群組分享的片段:
—
好的抽象概念(隱喻)真的是可遇不可求,需要大量練習,如果大家有仔細看書的話,Kent Beck 也是在正式做這個例子十多遍以上,才領略到這個設計的角度。
這也是為什麼 一個足夠複雜 概念夠多的題目或需求,值得我們反覆練習
https://tdd.best/courses/classic-tdd-by-example-video-training/
我在這個影音課希望可以達到的效果也是如此,因為我自己一個語言做了十多遍(我目前有準備三個語言的版本 Java, C#, Python),很多遍的設計角度都不一樣。
有一些在前面幾次直覺不可行的,在後面幾次的岔路時,我就決定走走看。
大部分直覺都是對的,但也有幾次走出很不一樣的路。
如果「只練一次」,是沒機會走出那麼多不同的設計角度的。
同樣的,如果寫程式太慢,或是取得回饋的週期過長,你能嘗試的設計方案就會跟著變少,能學到的東西變少,同時要追求「剛好且簡單」的解決方案,機率就會變低。
大家可以想想,如果是自己在做 Money Example, 在真實世界有時間壓力底下,可能這輩子都不可能想出這樣簡單的設計方案。
如果都只在真實工作才學習、練習,那技能就會一直停滯。
永遠都只能用那種直白、procedure式、脆弱的流程設計角度,因為只會這種方式,自然自己最快的完成方式 就只會有這種副作用、複雜度最大的設計方式。
所以要多練 讓自己有多種視角,TDD 也是一種先從使用端來設計的視角,所以易用性的設計角度,物件的互動角度才能在這種視角被凸顯出來。
python封裝 在 自強基金會 Facebook 的最佳解答
資通訊領域✔️
半導體領域✔️
自強補助課程全包了💯🉐
👥2人同行還有超多優惠🎁
快來看看這豪華的陣容✨🎊
八月課程大補帖💪💪再來一波🌊🌊
🌎CPI晶片封裝整合協同設計
https://bit.ly/2D852Z3
🌎積體電路製程流程與故障分析技術
https://bit.ly/2XnSi7y
🌎生成對抗網路(GAN)理論與應用(實作)
https://bit.ly/2CIgNoH
園區內🆓
🌎解析區塊鏈與加密貨幣
https://bit.ly/39w5kEQ
園區內🆓
🌎深度學習模型與影像辨識應用
https://bit.ly/3f9DIX1
🌎無線射頻晶片技術設計實務
https://bit.ly/39Vo1ls
園區內🆓
🌎Python與機器學習實務(實作)
https://bit.ly/2ZV8IWr
園區內🆓
#科管局補助
#園區內免費
#免費課程
#資通訊課程
#半導體課程
#自強全包
#CPI晶片
#積體電路製程
#生成對抗網路(GAN)
#區塊鏈
#加密貨幣
#深度學習
#無線射頻晶片
#Python
#機器學習
python封裝 在 軟體開發學習資訊分享 Facebook 的最佳解答
今天的開源報報 ( 每週一到週五早上7:00準時發刊 )
今日內容摘要
✅ 極客的工作管理/待辦事項工具
✅ 不僅僅是改寫 Windows 檔案總管
✅ 不需要安裝任何東西就可以將你的終端機傳輸到網頁上
✅ 使用 Laravel 7 和 Vue 開發的族譜管理網站
✅ 當 Python 程式碼有變更的時候即重新載入執行
✅ 提供一個簡約的、跨平台的、高度註釋的、符合標準的 C 程式庫,用於在 xz 檔案中包含 LZMA2 封裝的壓縮資料進行解壓縮
✅ 快速獲取 JSON 的值——用於 Go 的 JSON 解析器
✅ 基於 VTK 的 3D 物件科學視覺化的 python 模組
✅ 用於操作和編輯大型 utf8 文字的 Rust 程式庫
✅ 一個以資料為優先的 Rust 原生 UI 設計工具套件
https://softnshare.com/opensource-news-147/
python封裝 在 用Python自己造轮子--Python模块封装及上传PyPI - 徐静 的推薦與評價
最近打算在业务系统中植入一些其他的算法,想着用Python去实现,算法封装成模块,运维在配置服务器时直接在网上pip我的算法就OK了,所以花了些许时间做了 ... ... <看更多>
python封裝 在 臉書推Research API,先用「邀請制」給學術機構使用 的推薦與評價
根據TechCrunch 報導,臉書的Research API 於今年6 月的F8 開發者大會上首度露面,以程式語言Python 為基礎,並可在開源介面JupyterLab 上作業。 ... <看更多>
python封裝 在 python-snap7, snap7 PLC通信庫的python 封裝- GitHub - 开发99 的推薦與評價
關於這是一個基於ctypes的python包裝,用於snap7。Snap7是一個開源的,32 ~64位,多平台乙太網通信套件,用於與西門,下載python-snap7的源碼. ... <看更多>