【樓主一生平安】
#熱血,是會物以類聚的。
一位擅長 java 的同學,之前參加了我的三門培訓:
①【#針對遺留代碼加入單元測試的藝術】
②【演化式設計:#測試驅動開發與持續重構】
③【#極速開發】
他最近再把《#單元測試的藝術》看完了一遍,並將書中的 C# 範例程式碼轉成了 java,其實能自己跟著做過一遍,收穫最大的肯定是自己。
同時也造福了其他習慣用 java 的同學,在看這本書時可以更容易理解書中的意義。
2018 年是我很重要的一年,因為我把上列的三門培訓拓展到了 java, php, C# 三門語言,其中【極速開發】更是能同時用在所有 JetBrains IDE、Android Studio 以及 Visual Studio + ReSharper 上。
我自己對一門培訓要能支援到其他語言的要求很嚴格,這也是為什麼 2019 年的【#DI與AOP實戰】以及【#從重構學會設計高易用性與高彈性API】,我至今仍不支援 C# 以外的語言。
#自己強還不夠,還要能讓別人更強
#別人變強還不夠,還要能讓他發光發熱,繼續影響別人
花了一些時間,把單元測試的藝術又看了一遍,順便把 C# 程式碼轉成 Java
不過有些 Java 不支援的真的就只能讓他去了🤣 (Events, Delegates...)
https://github.com/Coffee0127/the-art-of-unit-testing
--
書中介紹了...
* 一個好的單元測試應該具備哪些特色 (可讀? 可維護? 可靠?)
* 整合測試 vs 單元測試區別
* 何謂假物件 (Fake Object) [很多人會被Library誤導XD Mock, Spy, Stub 分不清楚,很巧的我也曾是很多人的其中一個]
* 本書一再強調他不談設計,但是他推了很多書,例如 Code Complete, Clean Code
* 該如何正確面對一個要加功能但是沒有單元測試的 Legacy Code
91 哥火力支援-https://dotblogs.com.tw/…/13/priorities-for-adding-unit-test
可以加入 單元測試的藝術閱讀交流 社團跟更多人交流
https://www.facebook.com/groups/288261638343874/
--
不過最想講的,還是 9.2.3 引入外援 這章節
> 我強烈建議邀請組織外的專家來幫助導入變革
這邊的專家當然就是業界有名的點火師 Joey Chen 啦
上面說了書中介紹的這麼多東西,大部分在 單元測試實戰操練營 會提到
然而課堂上會被灌輸更多書中沒提到的 (例如:show your intention)
整體來說,我覺得是一堂 濃縮再濃縮、提煉再提煉 的必修課程
// 然後下一步就被燒到接著學 TDD,接著覺得自己寫 code 超慢跟著學急速開發
// 覺得 C# 這圈子好幸福,好多大神
按讚 91 敏捷開發之路 以獲得更多熱血課程😎
https://www.facebook.com/91agile/
「visual studio code c 範例」的推薦目錄:
- 關於visual studio code c 範例 在 91 敏捷開發之路 Facebook 的精選貼文
- 關於visual studio code c 範例 在 91 敏捷開發之路 Facebook 的最佳貼文
- 關於visual studio code c 範例 在 【C 編程】 工欲善其事! Visual Studio Code 編程、組建 的評價
- 關於visual studio code c 範例 在 用C# 自製ANSI C 編譯器與實作VSCode 語言服務 - Facebook 的評價
- 關於visual studio code c 範例 在 vscode c教學的推薦與評價,DCARD和網紅們這樣回答 的評價
visual studio code c 範例 在 91 敏捷開發之路 Facebook 的最佳貼文
「每一次複製貼上的動作,就像頭痛時吃顆止痛錠那樣快又有效。但每一顆都在侵蝕著你的健康。」
#quote #出來跑總有一天要還的 #腳踏實地才是捷徑
複製 & 貼上是一種設計錯誤。(David Parnas)
Copy and paste is a design error. (David Parnas)
--
「在你透過複製貼上的動作來快速交件時,可能會覺得其他在重構的人都是傻子。但是相信我,那一天到了,你就會發現只有你走不過去。」
不過,雖然複製貼上是種罪惡,但實務上還是會為了一些特殊緣由而取捨,這時建議搭配三次法則(The Rule of Three),也就是同樣的東西只有重複一次沒關係。只有兩份重複的東西,就算要改,最多也只是再一次複製貼上而已。
但萬一超過三個 block 程式碼相同時,就不可以視而不見了,應重構以避免一式多份。
怎麼找出來程式碼相似的部分?Simian(http://www.harukizaemon.com/simian/) 是個不錯的工具,支援的語言有 Java, C#, C, C++, COBOL, Ruby, JSP, ASP, HTML, XML, Visual Basic, Groovy. (附圖是 CI report 上靜態程式碼分析的趨勢圖與 result 的範例,可以看到相關的 violation rule 原因跟程式碼行數都在 CI report 上一覽無遺)
Visual Studio 2012/2013/2015 的版本,Premium/Ultimate 版本,也有內建的 Code Clone Detection 功能,可以掃出來程式碼有哪些是相似的。
visual studio code c 範例 在 【C 編程】 工欲善其事! Visual Studio Code 編程、組建 的美食出口停車場
... <看更多>