本篇同步發文於個人網站: Encapsulation This article references the chapter 7 ” Encapsulation...
本篇同步發文於個人網站: A First Set of Refactorings This article references the chapter 6 ”...
本文同步發自於個人blog - [Refactoring] Chapter 2 Principles in Refactoring - Book Summary...
Unit Test 應用於使用重構與測試手法優化 C# Code-3-前言 昨天已經把 DemoCalculate 中的 Calculate 方法檢驗參數的部分...
Unit Test 應用於使用重構與測試手法優化 C# Code-2-前言 昨天有提到我們在 Console 執行應用程式時,可以依序輸入 ID、名字、數學數值...
程式碼設計框架對測試碼可測試性的影響 今天進到核心技術的第三個系列—重構 (Refactoring) 與接縫 (Seam),那不免俗的先來看 Roy Osher...
上次在用函式來傳達你的心意> 0 <中我們把while迴圈內在做什麼用函式名稱詮釋出來,看起來像是在閱讀一篇文章一樣,這次讓我帶你看main裡面還有...
前情提要一下,上次在變數命名的善意那篇中我們把arr換成seats代表一堆位置,n1換成seat代表位置索引,n2換成number代表要放入seats內的值,這...
這是一小段泡沫排序法的程式碼,可是在說什麼呢?你可以試著閱讀他,但千萬不要勉強自己。 int main() { int arr[10] = {99, 0...
數據顯示,工程師完成最後 20% 的工作時間跟之前的 80% 一樣多 完成功能後,重構是另一個開始 昨天我們完成了一個跑得動的程式,但很明顯這不是一個好的程...
本系列文章已集結成冊與鐵人賽文章差異內容,有以下幾點: 更新至Laravel 8、基礎的PHP重點筆記、加強製作API流程細節、加入程式設計模式,優化、重構...
切斷CSS與JavaScript的耦合 用來為元素指定樣式的類別與ID不應該在JavaScript中被用來選取元素,因為這樣就會產生相依性(dependency...
第六章 樣式碼置放與重構策略 從特定度低到特定度高之樣式的順序來組織CSS CSS樣式依據特定度與被引用的順序來套用,按照被套用的順序來組織CSS也是很合理的...
以幾種瀏覽器進行測試 在不同瀏覽器上檢測CSS最常見的方法是以手動方式進行測試目前主流的瀏覽器有 Google Chrome Firefox Safari M...
第五章 測試 測試 測試CSS可能會很困難,因為有許多不同的平台、螢幕尺寸、與裝置形體(form factors)需要進行測試。 測試為何困難? 如果要徹底檢測...
影像 圖片可以透過<img>、<picture>標籤來呈現。因為<img>元素可以在行內的格式情境中使用,此外<img...
錨點標籤 錨點標籤(anchor tags)提供可連到其他HTML文件或同一份HTML文件中段落的連結能搭配常用來顯示狀態:link、:visited、:foc...
第四章 為不同類型的樣式分類 樣式分類的重要性 網頁可以被視為是用來呈現資訊的文件集,也能被視為一套複雜的應用程式這兩種面像都需要具語意的HTML標籤來描述要呈...
建造較佳的盒框 盒框模型(box model)是瀏覽器決定如何渲染(render)一個方型區域的方法,因此瞭解盒框模型的運作對我們而言是很重要的,而HTML的所...
高效選擇器 簡單選擇器的效能會比複雜選擇器的效能要好,簡單的選擇器應該優先被使用這是因為他比較容易被重複使用與理解而不是因為他們比較有效率。 由右向左比對選擇器...
第三章 編寫較佳的CSS 善用註解 註解可以幫助自己檢視自己之前所寫的程式碼或是段落說明應該加上註解的部分包括: 檔案內容 選取器的相依性與用法等 為何要如此...
第二章 瞭解串接 什麼是串接? 串接(cascade) 是瀏覽器用來決定樣式如何套用到元素上的方法。有許多樣式可以套用到同一個元素上,當樣式沒有依照預期的方法被...
開始要求自己的程式碼的乾淨與可視程度之後被前輩推薦了一本書接下來幾天會以這本書為主的閱讀筆記,筆記會節錄書中的片段文章有興趣的朋友可以買來看看,這本書真的蠻不錯...
很開心又邀請到一位高手來分享經驗,帶領大家實作。 相同的北風資料庫,從Web Form如何轉換成MVC呢? 這一天會讓您動手實戰,親身體會。 課前須知: 希望是...
從[Day 9]開始,一直到[Day 18],我們從最初不知道從哪開始重構,到現在程式碼變得高內聚、低耦合、可擴充、可讀、可維護,而且有了相關的測試保護,不再需...
上篇文章透過簡單的重構一個function,將相同的部份抽出判斷式外,讓不同的部份影響範圍最低。因此解決了我們有著重複程式碼的問題。 更重要的是,透過這一個過程...
在上篇文章中,我們將各個物流商的物件,抽象化出來一個物流商的介面,這個介面提供了當下頁面物件所需要的功能: 計算運費 取得運費結果 取得物流商名稱 雖然頁面...
上一篇文章中,將原本散落在頁面,屬於物流商職責的部分,搬移填入到物流商的物件中,並且通過了最原始的Selenium測試,代表符合了使用者的需求。也通過了單元測試...
前兩篇文章,我們先以當下物件的角度,思考屬於自己的職責是什麼。而不屬於自己職責的部份,該委託給哪個物件來進行。並思考清楚當下物件所需要的,究竟是什麼,接著不必去...
在上一篇文章中,重構第五式:「給你錢,趕快做」中,重點在於如何站在當下物件的角度,去思考自身職責該處理的邏輯,並思考非自身職責的部分,該委託給哪一個物件來處理。...