點燈坊
SonarQube 是一套 程式碼品質檢查工具
,可以幫我們檢查 code 的 bugs、 vulenrability、code smell 與 duplication,也屬於 持續整合
重要的一環。
SonarQube 已經內建 SonarTS,可以直接對 TypeScript 進行檢查,本文將以 Angular 為例,並搭配 Jenkins 自動執行 SonarQube,將結果通知 Slack。
FP 既然強調 Higher Order Function,就會希望 argument 以 function 傳入,因此就會有 function 能夠傳回 function 的需求,除了回傳 Anonymous Function 或 Lambda Expression 外,F# 更提供了 Partial Function Application ,讓程式碼更優雅。
F# 是 FP,強調 function 都要有 input 值,也要有 return 值,若 function 真的沒有 input 值,也沒有 return 值,在 F# 該如何表示呢?
SonarQube 是一套 程式碼品質檢查工具
,可以幫我們檢查 code 的 bugs、 vulenrability、code smell 與 duplication,也屬於 持續整合
重要的一環。
SonarQube 已經內建 SonarPHP,可以直接對 PHP 進行檢查,本文將以 Laravel 為例,並搭配 Jenkins 自動執行 SonarQube。
Decorator Pattern 是 OOP 中著名的 Design Pattern,尤其可在不改變 interface 的前提下,動態對原有物件增加功能,F# 既然是 Function First Language,就讓我們以 function 的角度重新實現 Decorator Pattern。
SonarQube 是一套 程式碼品質檢查工具
,可以幫我們檢查 code 的 bugs、 vulenrability、code smell 與 duplication,也屬於 持續整合
重要的一環,亦可使用 Docker 安裝,將來管理會更加容易。
Decorator Pattern 是 OOP 中著名的 Design Pattern,尤其可在不改變 interface 的前提下,動態對原有物件增加功能,隨著 FP 逐漸受到重視,Decorator Pattern 在實作上也有了新的面貌。
在實務上可能遇到有些自己寫的 class library,或在 GitHub 上 class library,原本跑在 .NET Framework 上,需要自己 porting 到 .NET Core。本文實際以一個 GitHub 上的 class library 為例,一步一步從 .NET Framework 移植到 .NET Core。
當我們要根據使用者輸入的 OrderId
到資料庫搜尋 訂單資料
,若找的到就回傳該筆訂單,若搜尋不到呢?一般而言有兩種處理方式,傳回 null
或拋出 exception,但實務上常會因為忘記處理 null
或 exception,而在 run-time 得到 NullReferenceException
,這種常見的錯誤,是否能在 compile-time 獲得解決呢?