Kerry的Mac裝機必要

Kerry 的 Mac 裝機必要及常用套件整理


Office 365 (App Store)


Developer


Database


WebAPI


Text


UML


Browser


VM


通訊


FTP


VPN

  1. MotionPro (Taifer)


UI


無蝦米


Windows

壓力測試

程式碼檢測


Visual Studio

延伸模組

  1. GhostDoc:快速產生 XML 註解。

  2. EF Core Power Tools

  3. ResXManager:提供便於維護資源檔(resx)的 UI。

  4. Roslynator 2022

  5. Web Compiler 2022+:編譯 LESS、Sass Stylus、JSX、ES6 和 CoffeeScript 檔案。

  6. Automatic Versions Settings

  7. NPM Task Runner

  8. WebPack Task Runner

  9. SQLite and SQL Server Compact Toolbox

  10. Entity Framework Visual Editor

  11. ILSpy

  12. T4 Editor:強化 T4 範本語法的支援。

  13. VSColorOutput:輸出視窗增加顏色顯示。

  14. SlowCheetah:讓 XML 和 JSON 檔案可以像 Web Application Project(WAP) 的 Web.config 一樣支援 Coinfig Transform。

  15. EFCore.Visualizer

  16. Visual-Studio-Translator 翻譯

  17. CodeMaid VS2022

  18. Codeium

  19. Better Comments

  20. Dev Essentials:下列套件屬於「Dev Essentials」 同捆包的一部分,此套件在 Visual Studio 2019 以前叫 「Web Essentials」 。

    • Code Cleanup On Save:儲存時,自動整理程式碼。

    • File Icons:美化 Solution Explorer 裡的檔案圖示。

    • Bundler & Minifier:將 CSS、JavaScript 或 HTML 打包(Bundle)和最小化(Minify)。

    • SVG Viewer:增加 SVG 的預覽,及優化編輯器的相關功能。

    • Editor Enhancements:強化編輯器功能,如程式碼排序、文字編碼等。

    • Dummy Text Generator:在產建畫面 Sample 時,快速產出一些無意義的文字。

    • Markdown Editor v2:在編輯器增加 Markdown 相關功能。

    • JavaScript Snippet Pack:JavaScript Snippet 擴增。

    • Image Optimizer:壓縮圖片大小。

    • HTML Snippet Pack:HTML Snippet 擴增。

    • Web Compiler:編譯 LESS、Sass Stylus、JSX、ES6 和 CoffeeScript 檔案。

  21. Productivity Power Tools:下列套件屬於「Productivity Power Tools」 同捆包的一部分。

    • Double-Click Maximize 2022:點擊兩下來最大化 Visual Studio 視窗。

    • Fix Mixed Tabs:偵測程式碼是否同時有 Tabs 和空格,並提供轉換為其中之一。

    • Match Margin:Highlights 所有游標所指向的文字。

    • Middle Click Scroll:使用滑鼠滾輪來移動文檔。

    • Shrink Empty Lines:縮小空白行高度。

    • Solution Error Visualizer:在 Solution Explorer 顯示錯誤提示。

    • Time Stamp Margin:在 Debug 模式下,輸出視窗增加顯示時間訊息。

  • 「Productivity Power Tools」和「Web Essentials」以前都是單一套件,後續不知哪一版本的 Visual Studio 開始將其底下各功能改為獨立套件,變成可選擇獨立安裝各功能套件,或藉由安裝同捆包來一次安裝。

  • 安裝這類同捆包時,是在安裝時會忽略已獨立安裝的套件。

  • 早期我是直接安裝同捆包,後續因為以下原因,改成安裝獨立套件:

    • 由於 Visual Studio 2022 改為 64 位元時,很多套件都無法支援,或是有些功能改為 Viusal Studio 內建,(「Zen-Coding」),導致同捆包裡有在使用套件比重有逐漸降低的跡象。

    • 以前安裝同捆包,卻沒注意同捆包有哪些套件,導致很多功能我以為是內建的,結果是擴充套件的功能,而不同時期安裝的同捆包,實際安裝的套件都不一樣,有可能是新版的 Visual Studio 尚未支援,或是已不列為同捆包的一部分,像是「Web Compiler」和「Bundler & Minifier」後期就變成是要獨立安裝的套件(忘了是 Viusal Studio 2015 還是 2017 開始),而移除同捆包時,似乎不會移除底下相關套件,最後導致只安裝同捆包也不確定安裝什麼,倒不如把需要安裝的套件列清單來安裝。

  1. Tabnine:Tabnine 是一個 AI 驅動的代碼補全工具,支持多種編程語言和 IDE,包括 Visual Studio 2022。


NuGet 套件

  1. Microsoft Packages:

  • Entity Framework Core:

    • Microsoft.EntityFrameworkCore:EF Core 基本功能。

    • Microsoft.EntityFrameworkCore.SqlServer:SQL Server 資料庫提供者,其它資料庫請參考「資料庫提供者」:常見的關係資料庫功能。

    • Microsoft.EntityFrameworkCore.Design:Entity Framework 設計工具,執行像是 Migration 之類的功能。

    • Microsoft.EntityFrameworkCore.Relational:常見的關係資料庫功能。

    • Microsoft.EntityFrameworkCore.Tools:主控台工具。

非建置 Entity 的專案,正常來說只要安裝以下套件就好:

  • Microsoft.EntityFrameworkCore。

  • Microsoft.EntityFrameworkCore.SqlServer 或其它資料庫提供者。

  • Microsoft.EntityFrameworkCore.Relational。

  • Microsoft.AspNet.WebApi.Client:簡化 HttpClient 的操作。

  • CommunityToolkit.Mvvm:用來簡化 MVVM 架構開發的套件。

  1. Autofac:DI 套件。

  2. AutoMapper:將 Object 值映射到另一個 Object。

  3. Dapper:輕量化的 ORM 套件。

  4. FluentValidation:建構強類型驗證規則。

  5. Humanizer:功能非常強大的字串轉換工具,可將時間、數字轉換成口語化英文、英文單複數轉轉換,及各種字句 Format。

  6. CsvHelper:CSV 套件。

  7. NPOI:免費的 Excel 套件。

  • 原本還有另外一個功能更強大 Excel 套件是 EPPlus,但是它只有在 EPPlus 4 以前可以免費使用,EPPlus 5 以後,授權改為「Polyform Noncommercial 1.0.0」,無法用於商業環境,但如果只是個人使用則沒問題。

  • NPOI 有支援「XLS」格式,EPPlus 僅支援「XLSX」,但個人經驗,目前 EPPlus 支援功能較為多一點。

  1. iTextSharp:PDF 套件。

  2. NLog:Log 套件。

  3. SSH.NET:SFTP 套件。

  4. FluentFTP:FTP 套件。

  5. JSON 相關套件:

  1. 壓縮相關套件:

  • SharpZipLib:支援多種壓縮格式的壓縮套件。

  • DotNetZip:操作較為簡單、直覺的 Zip 壓縮套件。

  • 如果只使用 Zip 的壓縮、解壓縮,且未使用 NPOI 的情況下,建議使用 DotNetZip 就好,由於 NPOI 相依於 SharpZipLib,所以如果有裝 NPOI 的情況下,自行評估是否要在專案裝兩個壓縮套件。

  • 有些壓縮作法是在主機上放置如「7z.exe」等壓縮軟體,在 C# 使用 Command Line 來執行軟體進行壓縮,但如果檔案有加密要求時,就因為必須要在主機產生檔案(違反資料不落地原則),且壓縮失敗或壓縮完刪檔失敗時,就會在主機殘留有明文內容的檔案,造成資訊外流之風險。

15 單元測試相關套件:

  1. DefaultDocumentation:將 Visual Studio XML 註解轉為使用 Markdown 語法的 API 文件。

  • 專案版本號相關套件:

  • GitVersion 設定較為複雜,可以針對分支建立、合併與不同的分支名稱等來建立各版本號規則,MinVer 則是直接靠設定 Git Tag 來決定版本號。

Visual Studio Code Extension

  1. markdownlint

  2. Markdown All in One

SSMS Extension

Azure DevOps Extension

Last updated