上回用 Java + IntelliJ 來重構一堆 if/else 的計算運費範例,請見:https://www.youtube.com/watch?v=zO-NnNC-xyg&ab_channel=JoeyChen
這次改用 C# + Rider 來重構一樣的例子,不過這次刻意改用 Func
兩種作法適用場景不同,東西夠小夠單純,想要少一點 class/interface 等 elements,可以先這樣做,到真的有需要時,反正對我來說,要從 Func
## Reference
1) Youtube 版影片:https://youtu.be/9rfVe6Uikt0
2) GitHub commit history: https://github.com/tdd-best/strategy-sample-CSharp/commits/refactoring
3) #TDD與持續重構 培訓參考:https://tdd.best/courses/tdd-continuous-refactoring-2021-05/
--
我知道一般人的 Rider 沒有那個「把三元判斷式 自動替換成 Math.Min()」的燈泡,這是我自己刻的。
有興趣嗎?一起來 #極速開發 玩耍吧:https://tdd.best/courses/extreme-developing-202104/
同時也有2部Youtube影片,追蹤數超過7萬的網紅在地上滾的工程師 Nic,也在其Youtube影片中提到,對於設計模式的學習有多方派系持不同意見,但仔細去思考,會發現設計模式的存在是避免自己發明愚蠢的設計在已經常出現的問題上,在日新月異的科技進步下,隨著商業邏輯更加複雜,軟體工程師所遭遇到的問題也一次比一次還難 Design Pattern 的存在是幫助思考,避免不必要的協作災難,只要能懂得這點並融會...
「java pattern」的推薦目錄:
- 關於java pattern 在 91 敏捷開發之路 Facebook 的精選貼文
- 關於java pattern 在 91 敏捷開發之路 Facebook 的精選貼文
- 關於java pattern 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最讚貼文
- 關於java pattern 在 在地上滾的工程師 Nic Youtube 的最讚貼文
- 關於java pattern 在 Diy Soho手作り倉庫 Youtube 的最讚貼文
- 關於java pattern 在 Design patterns implemented in Java - GitHub 的評價
- 關於java pattern 在 # Pattern 1 | JAVA | - YouTube 的評價
- 關於java pattern 在 Java Pattern Matcher: create new or reset? - Stack Overflow 的評價
- 關於java pattern 在 Pattern 类的方法(Java™ 教程- 正则表达式 的評價
java pattern 在 91 敏捷開發之路 Facebook 的精選貼文
【重構】使用 strategy pattern 來取代複雜的 switch cases 與 if/else statement
上回在客戶那邊跟著他們一起重構 legacy code 中一大陀的 if/else if 裡面複雜的邏輯。(不同層級、模組的 cache 中做不同的處理)
因為當時時間有限,大家技能水平普遍有點跟不上,所以雖然讓產品程式碼變得乾淨一點,但對學習重構來說,大家少的東西還是太多了。
因此答應了他們,會再弄個簡單一點的範例,包含重構的過程步驟,source code,以及重構的操作過程錄成影片,供他們台灣跟國外的 RD 可以學習跟練習。
--
這例子其實也是我幾年前 3 天 TDD 版本中,重構的 workshop 裡面擷取出來的一段核心,從 C# 換成了 Java,只是重構過程的行雲流水程度,已經今非昔比了。有興趣的朋友可以看一下,我是怎麼用 IDE 在重構的。
身為 JetBrains Taiwan 的 training partner,總是要有點功力才能撐得起這個資格啊。
--
※ 影片網址:https://www.youtube.com/watch?v=zO-NnNC-xyg&feature=youtu.be&ab_channel=JoeyChen
我不定時會錄一些技術相關的影片,有興趣就來按一下小鈴鐺訂閱吧。
※ GitHub commit history: https://github.com/tdd-best/strategy-sample/commits/video
※ 想要了解更完整的來龍去脈,想要讓自己能動手作到一樣的事,想要玩比這範例更進階、更實務的重構與 TDD,2021 年五月的梯次,只剩下 4 個名額啦:https://tdd.best/courses/tdd-continuous-refactoring-2021-05/
話說這個梯次我拍胸脯保證 100% 會額滿的,因為我正在翻譯相關的經典書,屆時會補上更多相關的內容。
#IntelliJ
#Refactoring
#StrategyPattern
java pattern 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最讚貼文
https://github.com/…/java-design-patt…/blob/master/README.md
ลิงค์ที่แปะไว้เป็นลิงค์บน Gitbub
ที่เขารวบรวม design patterns
เอาไว้ใช้แก้โจทย์ปัญหาที่พบเจอบ่อยๆ
ในการเขียนโปรแกรม
โดยตัวอย่างโค้ดเขียนด้วยภาษา Java
พร้อมคำอธิบายแต่ละ pattern
ไว้อย่างครบถ้วน (ไลเซ่นเป็น MIT)
ที่สำคัญไม่ใช้มีแค่ design pattern ตระกูล GOF (Gang of Four) จำนวน 23 ตัวซะเมื่อไร มันมีมากกว่านั้นให้ศึกษาเยอะมากจริงๆ นับดูคร่าวๆ 90 กว่าตัวด้วยมั่ง (บางอันยังไม่รู้จักเลยครับ แฮๆๆ)
แต่ก่อนจะศึกษา Design pattern ไม่ว่าจะรูปแบบใด
ก็แนะนำให้อ่านหลักการออกแบบและพัฒนาซอฟต์แวร์ แนวคิดจะอิงกับวิธีเขียนโปรแกรมแบบ Object oriented (โปรแกรมเชิงวัตถุ) ก็ลองเข้าไปอ่านศึกษาดูลิงค์นี้นะครับ http://java-design-patterns.com/principles/
.
✍เขียนโดย โปรแกรมเมอร์ไทย thai programmer
https://github.com/iluwatar/java-design-patterns/blob/master/README.md
Links posted as links on Gitbub
Where he gathered the design pattern
It's for solving common problems.
In programming.
By example, code written in Java language
With a description of each pattern
Completely (Lysen is MIT)
The important thing is that I don't use. I have only design pattern of the GOF (Gang of Four) family. When it's more than that, I study a lot. I counted over 90 of them. (I don't know it yet. Haha. )
But before studying Design Pattern in any form.
It's recommended to read the design and software development principles. The concept is based on how to write Object oriented programming (Objective programming). Try to read this link. http://java-design-patterns.com/principles/
.
✍ Written by Thai programmer thai coderTranslated
java pattern 在 在地上滾的工程師 Nic Youtube 的最讚貼文
對於設計模式的學習有多方派系持不同意見,但仔細去思考,會發現設計模式的存在是避免自己發明愚蠢的設計在已經常出現的問題上,在日新月異的科技進步下,隨著商業邏輯更加複雜,軟體工程師所遭遇到的問題也一次比一次還難
Design Pattern 的存在是幫助思考,避免不必要的協作災難,只要能懂得這點並融會貫通,職業生涯中有更多的時間去學習不同的思考方式、軟體架構以及團隊管理
成為真正的資深工程師道路上,Design Pattern 絕對是一門主修科目,你可以不完全使用,但卻不能不知道
以下是學習 Design Pattern 的推薦資源,其中包含筆記、書籍和程式碼範例
✅ 我的部落格筆記(Ruby) https://blog.niclin.tw/2018/11/18/%E7%89%A9%E4%BB%B6%E5%B0%8E%E5%90%91%E5%9F%BA%E6%9C%AC%E5%8E%9F%E5%89%87-solid-ruby-sample/
✅ 設計模式學習筆記 https://skyyen999.gitbooks.io/-study-design-pattern-in-java/content/
✅ 七天學會設計模式:設計模式也可以這樣學 https://www.books.com.tw/products/0010750585
✅ 大話設計模式 JAVA 版範例: https://github.com/skyyen999/bigTalkDesignPatternJava
章節:
00:00 算我拜託你了
01:00 什麼是 Design Pattern
02:25 學習 Design Pattern 的好處
04:43 實際應用與學習方式
07:34 導入工作
喜歡影片的話!可以幫忙點個喜歡以及分享、訂閱唷!😘
━━━━━━━━━━━━━━━━
⭐ 蝦皮賣場: https://shopee.tw/bboyceo
⭐ instagram (生活日常): https://www.instagram.com/niclin_tw/
⭐ Facebook (資訊分享): https://www.facebook.com/niclin.dev
⭐ Blog (技術筆記): https://blog.niclin.tw
⭐ Linkedin (個人履歷): https://www.linkedin.com/in/nic-lin
⭐ Github: https://github.com/niclin
⭐ Podcast: https://anchor.fm/niclin
━━━━━━━━━━━━━━━━
🌟 任何問題或合作邀約信箱: niclin0226@gmail.com
#designpattern #前端 #後端

java pattern 在 # Pattern 1 | JAVA | - YouTube 的推薦與評價

JAVA CODEs. 14 subscribers. Subscribe. This is the code of java pattern programs . 1 12 123 1234 12345 Later program codes : * ** *** **** *****. ... <看更多>
java pattern 在 Design patterns implemented in Java - GitHub 的推薦與評價
Ilkka Seppälä... Subhrodip Mohanta... amit1307 ; 💻 Narendra Pathai...
Anurag Agarwal ; 💻 Markus Moser ; 🎨 💻 🤔 Sabiq Ihab ; 💻 Amit Dixit ; 💻
Zafar Khaydarov... Paul Campbell ; 💻 Argyro Sioziou ; 💻 TylerMcConville...
Ruslan ; 💻 Juho Kang ; 💻 Dheeraj Mummareddy ; 💻 Bernardo Sulzbach... ... <看更多>
相關內容