効率化のためのNuGet導入

こんにちは。KENTEMでバックエンドを担当しているおかおかです。
KENTEM TECH CONF 2023 Winterで発表したKENTEM NuGetをご紹介します。

NuGetとは

Visual Studioで開発されている方は利用されていると思いますが、以下のことです。

NuGetとは

NuGetを利用した目的

WindowsアプリやモバイルアプリでAPIを利用してクラウドのデータ取得・追加・削除を行うことがあります。各製品・プロジェクトで同じコードを管理、サブモジュールで管理を行っていました。
・各プロジェクト間で整合性を維持するのが大変
・どの製品で利用されているかの把握ができない
・影響範囲がわからない
上記課題をNuGetでバージョン管理を行うことで改善でき、開発効率も良くなると考えました。

Visual StudioでNuGetパッケージの作り方

①. NuGetパッケージにしたいプロジェクトを選択→「プロパティ」→「パッケージ」タブを表示
②. ビルド時にNuGetパッケージを生成にチェックを付ける

NuGetパッケージの作り方
③. ビルドするとnupkgができます
nupkg

NuGetサーバーへnupkgを発行

NuGetサーバーは『BaGet』 を利用しています。
①. Visual Studioの「ツール」→「コマンドライン」→「開発者コマンド プロンプト」を起動
②. コマンドを発行する
dotnet nuget push [NuGetパッケージファイル名] --api-key [api key value] --source [NuGetサーバーのURL]
簡単にNuGetサーバーにNuGetパッケージを公開することができます。

NuGetサーバー

Visual StudioでNuGetサーバーを参照追加

①. 「NuGetパッケージの管理」→「設定」を表示
  
②. 名前、NuGetサーバーURLを入力し、追加
  
③. パッケージソースのプルダウンに追加した名前が表示
  

NuGetを導入したことでの効果

・プロジェクト間の役割・作業範囲が明確になった!
・実装方法を統一することができた!
 NuGetでAPIの呼び出し部分を提供したことで各プロジェクトでの
 実装が楽になった
・NuGet化した分、ビルド時間が短縮!
導入した効果があったため他の共通モジュールもNuGet化し作業の効率化を進めています。

おわりに

KENTEMでは、様々な拠点でエンジニアを大募集しています!
建設×ITにご興味頂いた方は、是非下記のリンクからご応募ください。

https://hrmos.co/pages/kentem2211/jobs/A0008hrmos.co hrmos.co

hrmos.co hrmos.co hrmos.co