UML是統一建模語言的簡稱,是一種標準化建模語言,由一組集成的圖表組成,旨在幫助系統和軟體開發人員指定、可視化、構建和記錄軟體系統的偽影,以及商業建模和其他非軟...
活動圖類似於業務工作流程圖或簡單的流程圖,具有更豐富的語義。它描述了系統活動,或進行活動的人,以及這些活動的順序流程。活動圖是與面向對象方法相關的 UML 圖之...
前言 上一篇談到領域驅動設計並不是橫空出世,而是經由過去幾十年的逐步演化而成的,因此,我們就來看看阿公級的系統分析方法 -- 『結構化分析與設計』(俗稱DFD)...
大家好:GHR是幫台灣人介紹日本工作的人才介紹公司FB https://www.facebook.com/GHRtaiwan/ ーーーーーーーーーーーーーー...
今天要講的是一個老到不能再老的老題目:『依賴注入』。依賴注入,Dependence Injection,也很常被簡寫成DI。很多時候,我們都是在學Spring架...
1. 什麼是Agile? Agile是一種軟件開發的理念,是對Software Development的價值觀。不是所有Project都應該使用Agile。Ag...
『我進QA啦。』『這個案子現在已經在QA了。』『目前很順利,估計明天就可以進QA。』 多麽熟悉的工程師對白,不是?我對於各家公司的工作流程沒有意見,畢竟,能賺錢...
終於,我們開始跑scrum了。 在跑scrum的過程中,免不了要把需求寫成user story,再在每個story中定義什麼叫做『完成』。PO每個sprint都...
前言 近幾年中國掀起一股『中台架構』熱潮,大型企業紛紛導入此一概念,重整戰略資訊架構,建構業務、數據、AI、技術、移動、通訊、安控、...等中台,接著這股熱潮也...
今天在聊測試之前,我們要先聊 Scrum 與敏捷開發。為什麽?等會你就知道了。 烽火下的 Scrum 思考一下以下兩句話:「我們這個 Sprint 先做功能,下...
琛哥說了,出來混,遲早要還的。工程師出來職場上打滾,不論專業度高或低,責任心好或壞,都或多或少會累積出一些技術債。技術債這種東西,有很多點都跟真實生活中的借貸...
世事難預料,寫程式總會遇到例外。例外該怎麼處理,邏輯該怎麼驗測,本篇將進行討論。 圖片擷取自網路 「例外處理有什麼難的。不過就是 try-catch 嗎?」 嗯...
今天先來聊聊測試的規模與邊界。 測試金字塔 說到單元測試,那就一定要提到 Mike Cohn 在書中提到,有名的「測試金字塔」: 圖片轉自 Martin Fow...
前言 Repository 設計模式主要是要分離商業邏輯與資料存取的邏輯,希望開發者專注在商業邏輯的設計,不必擔心如何與資料庫介接。圖一. DDD 分層 另外,...
這是一篇臨時追加的主題,因為在前文中,有邦友指教,聊到註解的實用性,深有感觸。同時,想到大師Robert C. Martin也在作品中不只一次強調註解的利與弊,...
終於要開始了:「說到底,單元測試怎麼做?」 單元測試 單元測試要測的是一個邏輯單元功能是否正確。這短短的一句話,其實就有兩個蠻常爭議的點:1) 什麼叫一個單元,...
2021 IT 鐵人 Day 06 測試與依賴:測資料 之 用 Mock 工具控制依賴 今天要來聊的是另一種控制依賴的方法:Mock 工具。 不受控的依賴 讀者...
古語有云:「歲有凶穰;故谷有貴賤;令有緩急;故物有輕重。」旨在告訴後人,做任何事情,一定要先搞清楚狀況,把事情的優先順序排好再開始動手,方為上策。時間有限,但要...
我們在前面的兩篇文章中,各自提到了程式的『波動拳』與『大量參數』兩種降低可讀性的程式寫法。然而,大部分時候,『可讀性』並不是最嚴重的問題,他只是不高明而已,『耦...
撰寫本篇文章是因為在一個讀書會當中,聽到了成員分享邰曉梅老師在著作中提到的觀念,雖然他不是該章節的重點,但是可以快速幫你已安全的方法,列出所有可能的測試案例。這...
前言 上一篇我們討論DDD的戰術設計,它建議引用各種設計模式,提高生產力,因此接下來,就來介紹各種設計模式(Design Patterns),我們會使用Pyth...
聊完測試金字塔,讓我們回到單元測試。 在這篇中,我們會從單元測試的控制與撰寫開始,一路帶到單元測試與「單一職責原則(Single Responsibility...
數據流圖為組織理解、完善和實施新流程或系統提供了一種直接、有效的方式。它們是您的流程或系統的可視化表示,因此它們易於理解和修剪。資料流程圖為組織提供了一種直接和...
『好忙啊,好忙啊!』身為工程師,時不時地就有這種心情吧?在產品發展的過程中,隨著功能越來越多,客戶需求變更,或是緊急修正線上bug,每天每天的工作忙碌度都不太一...
今天來聊聊「多線程」的單元測試。 多線程測試的困難點 當系統成長到一個程度,效能的重要性就會慢慢浮現,隨著使用者數量越來越大,「效能」的影響也會變大,最終變成系...
前面講了幾篇設計模式的好處,事實上,大自系統架構,小至單一個物件的創見,都可以看見設計模式的影子。今天我們從最簡單不過的『創建單例物件』(Singleton)來...
軟體開發生命週期 (SDLC) 軟體開發生命週期 (SDLC) 是一個系統化的過程,用於建立和維護軟體應用。它確保所有開發活動都是有組織、有計劃和可控制的...
前言 上一篇我們用 Python 簡單的幾行程式,就可以實踐工廠方法設計模式,本篇繼續討論另一個設計模式 -- 配接器(Adapter)。 配接器(Adapte...
用例描述了用戶如何使用系統來實現特定目標。用例圖由系統,相關用例和參與者組成,並將它們相互關聯以形象化:所描述的內容是什麼?(系統),誰在使用該系統?(參與者)...
前言 上一篇我們討論DDD的戰略設計,說明系統範圍如何切割成多個領域(Domain)、子領域(Sub-Domain),完成後,接著進行戰術設計,將實體進一步分類...