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

The Will Will Web

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

如何在 Azure Lab Services 中批次啟動與停止實驗室中所有虛擬機器 (VMs)

最近因為企業內訓的授課需求,需要在 Azure 上建立 20 台客製化環境的虛擬機器(VMs),這個時候正是使用 Azure Lab Services 的最佳時機 (以前的名稱叫做 Azure DevTest Labs 實驗室服務)。由於透過 Azure Lab Services 建立的 VMs 可以設定每天定時自動關機、自動開機,用以節省 Azure 的花費,這是一個非常貼心的設計。不過,客戶這邊的課程並不是每天上課,而是每周上課一次,這個設定就不太好用了。本篇文章我來分享剛寫好的兩份 Azure PowerShell 指令檔,方便日後批次啟動或停止這些實驗室中的虛擬機器。

... 繼續閱讀 ...

如何用 Excel 2016 分析問卷項目中的複選選項

當我們手邊拿到一份問卷調查的 Excel 檔案,如果問卷題目是「複選」項目,要在 Excel 中分析出每個選項的出現比例,應該沒有比較方便的做法。我自己研究後發現,還是要透過撰寫 VBA 才能快速完成分析工作,否則如果問卷數過多,就會浪費許多時間整理資料。本篇文章將分享我的資料分析方法。

... 繼續閱讀 ...

如何將現有 .NET Core 專案加入相對應的 xUnit 單元測試專案

在 Visual Studio 2017 開發工具裡,建立單元測試專案有好幾種方法,其中一種是將現有專案增加一個相對應的單元測試專案。在傳統 .NET Framework 專案中,很輕易的就可以建立完成,只要在任一類別上按下滑鼠右鍵,選擇「建立單元測試」即可。但在 .NET Core 專案中就沒那麼方便了,因為這個功能一直沒被實現。本篇文章將分享如何依據現有專案的程式碼,產生相對應的單元測試專案,一步一步帶大家了解建立單元測試專案的過程。

... 繼續閱讀 ...

如何自訂 ASP.NET Core Web API 的錯誤回應訊息

我看過有無數企業在設計 Web API 的時候,會將所有可能的回應訊息,無論成功或失敗,全部一律回應 HTTP 狀態碼 200 (OK)。但這樣的設計完全違反 RESTful 架構精神,我們應該盡可能透過狀態碼表明回應的狀態才對。明明是一份不 OK 的訊息,硬要回應 OK 真的很怪。我就來透過這篇文章,告訴你為什麼大家會這樣設計,以及怎樣設計才正確。

... 繼續閱讀 ...

發行 Angular Schematics 程式產生器與設定 .npmignore 的注意事項

昨天寫了一個小工具,可以自動將現有 Angular CLI 建立的專案,轉換成有 Hot Module Replacement (HMR) 功能的版本,只要簡單一個命令 ng add hmr-enabled 就可以搞定,非常方便。不過我在發布專案到 npm registry 的過程中,卻意外遺漏了幾個重要的檔案,原來是有檔案被 .npmignore 給忽略掉了,到了今天傍晚才修復。我們就立刻來看看這個錯誤是怎樣發生的!

... 繼續閱讀 ...

離線安裝完整 Angular 開發環境的標準作業流程 (大型企業適用)

這兩個月經常在新竹科學園區進行 Angular 企業內訓,有越來越多的企業意識到 Angular 帶來的高價值(High Value)與低總體成本(Low TCO)。不過,在高度資安的防護下,我經常需要協助學員「離線安裝」完整的 Angular 開發環境,而且必須在「無管理員身分」的權限下進行安裝。雖然我已經寫了不少相關文章,但環境設定上還是沒甚麼效率。今天這篇文章,我特地整理詳細的設定步驟,幫助大家更順利的設立 Angular 開發環境。

... 繼續閱讀 ...

Angular 結合 nginx 反向代理的 Docker 容器化封裝技巧

在微服務架構下,部署 Angular 應用程式與後端 Web API 應該切割成兩個不同的微服務。但具體的實現方式,通常會透過容器化技術來達成,實作上相對容易許多。像我們公司的特定專案,就是透過 Kubernetes 叢集化技術來實現這個目的。這篇文章,我將分享如何將 Angular 這類 SPA 框架,如何透過 nginx 反向代理與 Docker 容器化技術,徹底做到微服務化。將前後端分離的結果,可以幫助我們簡化 CI/CD 流程,同時降低系統之間的耦合性。

... 繼續閱讀 ...

如何使用 .NET Core 2.1 內建的 dev-certs 命令管理開發環境的自簽憑證

從 .NET Core 2.1 開始,.NET Core SDK 就內建了 SSL 憑證管理工具 (dotnet dev-certs),透過 dotnet new 建立的 ASP.NET Core 專案範本,Kestrel Web Server 也會預設啟用含有 HTTPS 的加密網站連結。以往我們在開發環境設立一張「有效的 SSL 憑證」還挺麻煩的,我之前還寫過好幾篇文章分享。今天我就來介紹 .NET Core SDK 2.1 內建的標準作法。

... 繼續閱讀 ...

前端工程研究:如何在企業內部使用「完全離線」的方式安裝 npm 套件

許多企業在設法導入前端工程的過程中,最大的進入障礙竟然是「無法使用 npm 安裝套件」。因為真的有很多企業在嚴格執行資訊安全政策的情況下,所有開發者都無法從公司內部環境連到 npm 網站下載套件。這篇文章,我將分享幾個小技巧,幫助企業開發人員可以在內部實現簡易的 npm 離線快取。

... 繼續閱讀 ...

我的 Windows Subsystem for Linux (WSL) 終極開發人員配置 - 2018 版

我的個人電腦安裝了許多開發套件與工具,今天這篇文章我想來分享我這台的 Windows Subsystem for Linux (WSL) 環境設定,個人認為我已經把我的 WSL 調整的還不錯了,不管是跑 Node.js, Angular CLI, Docker CLI, Kubernetes CLI (kubectl), VIM 等等,都非常順,執行速度也不差,有興趣的人,可以繼續看下去。

... 繼續閱讀 ...