The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何在 Windows 作業系統打造 Rust 開發環境

我最近的課程因為都開始改用 Discord 來當成學員之間的互動介面,為了實現自動審核加入課程的學員,我們用 Rust 撰寫了一支程式來處理這個審核作業,並將程式跑在容器中,部署到 Azure App Service 上面執行。效能好就不用說了,主要是啟動速度快,記憶體使用量也很低,但唯一的缺點就是「可讀性」真的很差,主要是一個相對陌生的程式語言,但我今天在改功能的時候,用 GitHub Copilot 輔助我瞭解程式語法與結構,也用它來幫我完成一些任務,想不到非常順利。今天這篇文章,我打算來介紹如何在 Windows 作業系統上打造 Rust 開發環境,並透過 Visual Studio Code 來開發 Rust 程式。

... 繼續閱讀 ...

如何在 Visual Studio Code 正確啟用「資料行選取模式」(區塊選取模式)

我之前有在我的 YouTube 頻道發佈過一部《示範 VS Code 強大的多重游標編輯能力》影片,當時有提到「資料行選取模式」(Column Selection Mode) 的功能,但是沒有特別說明如何正確啟用這個功能。重點是,我自己每次要找這個啟用的設定都要找個老半天,因為 VSCode 會自動同步設定,只要登入就會自動復原,而我上次調整這個設定已經是很多很多年前的事了。我為什麼還要找這個設定呢?因為有上課的學員會來問我,但我每次都找不到!所以我決定寫一篇文章來記錄這個設定。

... 繼續閱讀 ...

快速上手 Visual Studio Code (VSCode) 擴充套件開發

我個人開發過不少 VS Code 擴充套件 (這裡),工作上只要遇到現有功能不方便的地方,或是現有 VS Code 擴充套件不好用的地方,可以說是一言不合就自造輪子。由於都是用 JavaScript/TypeScript 撰寫,再加上微軟的文件與工具都非常齊全,因此開發的難度並不高。今天我想分享一下如何快速上手 Visual Studio Code 擴充套件開發,也期待看到大家的 Visual Studio Code 擴充套件作品。

... 繼續閱讀 ...

如何從 Azure Repos 的 Files 快速開啟 vscode.dev 編輯與查找檔案

應該很多人並不知道,其實在 Azure DevOps ServicesAzure Repos 中,長久以來都有一個很方便的功能,那就是可以在 Files 頁籤按下一個 . (小數點) 就可以立刻轉到 vscode.dev 網站,這是一套以雲端為主的 VS Code 編輯器,這樣你就不用將專案下載到本機,讓你可以直接用瀏覽器直接編輯版控中的檔案,還可以對所有檔案進行快速搜尋與取代,享用 VS Code 所有的功能,實在是非常方便。不過,我有好一段時間無法快速從 Azure Repos 順利開啟 vscode.dev 網站了,這篇文章我就來說說這個問題。

... 繼續閱讀 ...

使用 Dev Tunnels (開發人員通道) 快速打造一個對外公開的測試連結

開發 Webhook 應用程式的時候,最麻煩的地方就是如何讓外部的服務可以連線到你的本機開發環境。除此之外,要讓身邊的手機快速連到你正在開發中的網站,如果能快速建立一個對外公開的連結,且最好是 HTTPS 安全連線的網址,那也會十分方便。今天我要介紹一個微軟官方推出的 Dev Tunnels 服務,它擁有完整的命令列工具,同時也內建於 Visual Studio CodeVisual Studio 2022 之中,不但此服務完全免費,還十分容易上手,我們就馬上來看看怎樣使用吧!

... 繼續閱讀 ...

如何在 VS Code 順利啟用測試總管 (Test Explorer) 測試 .NET 應用程式

我最近在嘗試使用 GitHub Copilot 來撰寫單元測試,而在使用的過程中,我發現 Visual Studio Code 的測試總管 (Test Explorer) 竟然抓不到我專案中的測試案例,研究了一下才發現是 .NET Core Test Explorer 沒有正確設定導致的。不過,其實 C# Dev Kit 擴充套件本來就內建了 C# 的測試轉接器 (Test Adapter),不需要 .NET Core Test Explorer 就能跑,索性我就把套件刪除了。今天這篇文章我就來分享如何設定讓 C# Dev Kit 能夠正確的啟用測試總管 (Test Explorer),方便我們執行單元測試。

... 繼續閱讀 ...

建立 Node.js 使用 ESM 搭配 TypeScript, ESLint 與 VSCode 的專案範本

我在兩年前曾經寫過一篇如何快速建置一個 Node.js 專案並使用 TypeScript 與 VSCode 進行開發文章,由於現在的 Node.js 大多以 ESM 為主流,TypeScript 也更新到 5.x 版,而且當時的 TSLint 也都被換成 ESLint 為主了,所以這篇文章就來更新一下內容,幫助大家更方便、更快速的建立一個支援 TypeScript, ESLint, VSCodeESM 並搭配 esbuild 的專案範本。

... 繼續閱讀 ...

使用 VSCode 的 Remote Container 建立 SAP Commerce 123 開發環境

最近承接了一個相當有趣的專案,客戶採用了一個在台灣相對冷門的 SAP Commerce (SAP Hybris) 電商平台(基於 Java 與 Spring Boot 框架),由於建立開發環境的過程經常會卡關,使用不同的作業系統與 JDK 版本都可能會遇到跟官網文件說明不太一樣的地方。這時我就在想,如何果把整個開發環境全部弄進 Linux 容器中執行,那不就簡單多了?所以我就嘗試了一下,也相當順利的整理出 SOP 標準作業流程,未來建立開發環境就不用鬼打牆兩三天了!👍

... 繼續閱讀 ...

如何使用 Google Java Format 做到更決斷的 Java 原始碼編排風格

其實要在多套不同的 IDE 開發工具之間統一編碼風格(Coding Style)真的不太容易,不同 IDE 之間的程式碼格式化能力不同,有的強、有的弱,自動排版完多多少少還是會有些差異,因此很難做到真正的統一。因此 Google 已經漸漸移往更為決斷的 google-java-format 格式化工具,不太傾向依賴不同的 IDE 之間的程式碼格式化能力。本篇文章我打算分享我這兩天的研究成果,看如何在不同 Java 工具之間如何做到更完美的風格整合。

... 繼續閱讀 ...