iT邦幫忙

2022 iThome 鐵人賽

DAY 1
0
自我挑戰組

設計模式探索系列 第 1

[Day 1] 深入淺出設計模式- 前言

  • 分享至 

  • xImage
  •  

前言

去年的鐵人賽挑戰leetcode連續刷題一個月(Leetcode刷題筆記),熟悉C++的基本語法與邏輯鍛鍊,今年則是希望可以趁這個機會來好好閱讀軟體設計的經典書籍們,這次就從深入淺出設計模式這本經典開始,將閱讀完後的內容整理一些筆記,期望日後在實際軟體開發過程中,可以領略到這些設計模式的精妙之處,並加以應用。

目標

為什麼需要學習設計模式?看完本書期望得到什麼?
學習都需要有個目標,否則很難把看過的內容放進腦子裡。
軟體開發的工作常常要求開發者需要學習設計模式,但為什麼需要?
就我個人而言,我希望可以藉由設計模式的應用來產出品質更好的軟體,品質好的軟體有很多面向,例如效率、可靠度、安全性、可維護性等等,而我認為在開發大型軟體專案時,可維護性尤其重要,效率可以找方法提升,可靠度與安全性也能經由掃描不斷補強,但當開發出來的軟體沒有好的架構,往往在擴充或改變功能的路上越走越歪,最終變得跟岌岌可危的疊疊樂一樣,動彈不得,一碰就倒,最後只好打掉重練。
我希望可以盡量採用合適的設計模式,讓自己或他人在後續開發時,可以輕易地根據需求增加功能,增加開發的效率跟穩健性。而設計模式就是前人經驗的心血結晶,讓我們在開發過程中有規則可循,比容易較設計出可維護性高的軟體,熟悉運用後,也能達到事半功倍的效果。誠如本書標題所說─建構可擴展、易維護的物件導向軟體

目錄

本書先高達639頁,介紹了12+種設計模式,接下來就是在這一個月盡可能的閱讀&分享XD 但每篇的篇幅不定,不確定這個月的分享會介紹到幾種模式。
以下連結更新中:

結語

事實上如果只有閱讀,沒有實際應用也只是紙上談兵,期望先具備這些概念,未來應用到時能夠把實際運用的心得再補充進來。

  • 附註: 本系列篇中出現的UML圖與程式碼皆是參考書本內容,並自行稍微改編使用C++來實作,作為閱讀本書的消化內容實際操作練習;建議參考原書本內容,再將本系列文章搭配閱讀~

下一篇
[Day 2] 前置準備─ OO與UML
系列文
設計模式探索30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言