2024-02-24 10:20 PM 0 677
百分位數 (Percentile) 跟 PR (Percentile Rank 百分等級) 是統計學常用參考值,年輕同學應該很不陌生(我們那個年代聯考比較簡單,直接用分數比大小,沒這麼多名堂),用考試分數比喻的話,百分位數是要在一百個等級中勝過幾個等級需要考幾分,或是位於某百分等級的人分數是幾分;...
2024-02-14 12:33 PM 0 1,090
用電腦解聯立方程式,一般會使用高斯消去法用矩陣求解: 在 .NET 做矩陣運算,Math.NET Numerics 程式庫是首選。 Math.Net Numerics 是個開源數學程式庫,囊括矩陣、線性代數求解、機率、線性回歸、積分、傅立葉轉換... 等各種你想得到的數學運算,且被學術論文和期刊廣...
2024-02-11 10:48 PM 0 969
.NET 內建的數字型別裡有整數、浮點數,但如果我們計算 -2 * 1/3 + 3/4 想得到 1/12 而不是 0.08333333333,該怎麼做? 就來寫個可以加減乘除的自訂分數型別吧。就像下面這樣,是不是很酷? Frac g = -2 * (Frac)"1/3" + ne...
2024-02-09 09:50 AM 0 1,795
PVS-Studio 是一套源碼檢測軟體(小知識:專業術語叫 SCA,(Static Code Analysis 靜態程式分析),知名度遠不及 Fortify、Checkmarx 或 SonarQube,不過,PVS-Studio 專注於 C、C#、C++、Java 四種語言,且有給學生及開源專案免...
2024-02-08 05:21 PM 2 5,569
SonarQube 是一套程式碼品質掃瞄工具,可以分析你的程式的寫法是否存在 Bug、漏洞或不好的寫法(Code Smell)。 這篇簡單記錄我如何在 Linux 主機上安裝 SonarQube Docker,並用它在 Linux 掃瞄 .NET 專案。 安裝步驟我主要參考這篇:於 Ubuntu 透...
2024-02-05 09:35 PM 4 1,961
今天踩到的低級錯誤,用以下範例重現。 假設有物件 Foo,建構時傳入字串,透過 List<string> List 與 Dictionary<string, int> Stats 兩個唯讀屬性傳回包含字元清單及出現次數統計: public class Foo { p...
2024-02-02 11:58 PM 0 4,038
專案上的小需求,公司內網依實體網路架構區分了多個網段,系統有網段清單,已知不同 CIDR (Classless Inter-Domain Routing) 格式(例如:192.168.1.0/24、10.0.0.0/8) 對映的代碼及說明。系統在接收到任一 IP 地址時,需識別出其隸屬哪一個網段。有...
2024-01-23 09:50 PM 2 2,353
原始碼產生(Source Generation)是 .NET 5 加入的新功能,能在編譯過程對 C# 原始碼進行增補,動態加入額外原始碼一起編譯進結果,在某些情境可展現神奇效果。(延伸閱讀:新手上路 C# 原始碼產生器 (Source Generators) by 保哥) JSON 序列化傳統會使用...
2024-01-23 12:04 AM 0 336
在參考某個開源專案 .csproj 看到類似 <PostBuildEvent>copy $(TargetDir)Blah.dll D:\</PostBuildEvent> 發現它會被觸發,但 $(TargetDir) 抓不到輸出路徑而是空值。 <Project Sdk=...
2024-01-21 12:27 PM 0 2,053
接續前一篇用 .NET Native AOT 編譯程式庫給 Python 呼叫的實驗。 下一步我打算搬到 Linux 執行,過程有些小波折,編譯原生二進位檔案有優點,但領教過比較複雜繁瑣的編譯程序,倒也襯托出 .NET Runtime 的好處。 參考官方文件 Native AOT deploymen...
2024-01-21 09:45 AM 6 3,162
Python 是當今火紅的程式語言,為 AI/Mechine Learning 領域的奧林匹克指定開發語言,在這些領域,你得說 Python 才能享有一等國民的待遇。 身為 C# 已經寫到得心應手的老人,若在 Python 場子遇到刁鑽需求,但用 C# 可以秒殺或已有現成程式庫,此時我有三種選擇: ...
2024-01-18 10:23 PM 0 2,855
十四年前我寫過地址阿拉伯數字轉中文大寫的 .NET 函式,但它有兩個問題:一是依賴 Visual Studio International Feature Pack,二是當年只做了阿拉伯數字轉中文,沒有中文數字逆解回阿拉伯數字的能力。 總之,十四年後我把這個題目當成暖身練習,打算不靠第三方程式庫,用...
2024-01-17 10:16 PM 1 2,933
同事踩到 Dapper 的雷,我跟著上了一課,筆記備忘。 嚴格來說,NVarChar 參數查 VarChar 欄位效能不佳算是老掉牙問題,我過去沒紥紮實實踩到所以印象不深,但體驗過一次效能差異,以後應該都會記得要確認。 用一個 2,000 萬筆資料的 Oracle 資料表重現問題。 用 Dappe...
2024-01-16 08:53 PM 0 2,498
這是調查 Dapper 參數茶包的副產品,檢查底層對映參數型別的工具函式。 遇到一個 Dapper 問題,懷疑與匿名參數物件屬性對映的 OracleParameter 型別有關。而 Oracle 不像 MSSQL 有 Profiler 可以偷看實體指令,我便想從程式端突破,設法在執行時取得參數資訊。...
2024-01-13 03:16 PM 3 3,801
如果你是 .NET 開發者,考個簡單問題: .NET 6+ 寫的程式可以直接參照引用 .NET Framework 編譯的 DLL 嗎? (註:非 .NET Standard,純 .NET Framework 2.0/3.5/4.0/4.5 ~ 4.8,參考:淺談 .NET 類別程式庫跨平台開發) ...
2024-01-08 11:59 PM 1 3,475
幾年前從一篇 VB.NET 超越 C# 文章認識了 TIOBE 程式語言排行,我對 TIOBE 的理解是它依據 Google、維基百科、Bing、Amazon、YouTube... 等平台搜尋 `+" programming" 結果計算而得參考,作為各種程式語言「熱門或受歡迎程...