FactoryMethod を使ってオブジェクトを生成する方法

まず、自分で書いたコードを掲載します。 public class User { private int userId; private String userName; private int userAge; private String userGender; public int getUserId() { return userId; } public void setUserId(int userId) { this.userId = userId; } public String getUserName() { ...

7月16日 18:39 投稿

ASP.NET CoreにおけるMVCとRazor Pagesのフィルターパイプライン

フィルターの概要と適用タイミング フィルターパイプラインは、ASP.NET Coreアプリケーションにおけるリクエスト処理のライフサイクルにおいて、特定のポイントで追加処理を実行するための仕組みです。主にMVCコントローラーやRazor Pagesで使用され、共通処理の抽出や横断的関心事の扱いに役立ちます。 フィルターの種類と実行順序 フィルターは以下の6種類に分類され、 ...

7月6日 18:10 投稿

Springにおけるアスペクト指向プログラミングの実践的な利用方法

アスペクト指向プログラミング(AOP)は、横断的関心事をモジュール化するためのプログラミングパラダイムです。本記事では、Spring FrameworkにおけるAOPの具体的な実装方法について解説します。 基本的なログ出力の実装 以下の例では、特定のメソッド実行時に自動的にログを出力するアスペクトを実装しています。 package com.example.logging; import org.aspectj.l ...

6月20日 18:33 投稿

依存性注入パターンの実装

DIパターン 依存性注入を実装する主要なパターンとして、Composition Root、Constructor Injection、Method Injection、Property Injectionの4つが存在する。各パターンは特定のコンテキストで効果的に機能する。 Composition Root オブジェクトグラフの構築をアプリケーションエントリポイント近くに集中させる設計手法。複数モジュールから構成されるシステムでは、オブ ...

6月16日 16:05 投稿

Dagger2のスコープ管理:ライフサイクル制御の核心

はじめに Android開発において、依存性注入(Dependency Injection, DI)はコードの結合度を低減し、テスト性と保守性を向上させる重要な設計パターンです。Dagger2は、コンパイル時に依存注入コードを生成する強力なDIフレームワークとして知られており、実行時のリフレクションによるパフォーマンスオーバーヘッドを回避します。その中でも、スコープ管理モジュールはDag ...

6月9日 16:05 投稿

.NETの依存性注入の基本とAutofacの導入

インターフェース指向プログラミングの実践について考察します。 // NuGetからMicrosoft.Extensions.DependencyInjectionを追加 1. 動物インターフェースの定義 interface IAnimal { void Cry(); } public class Dog : IAnimal { public void Cry() { Console.WriteLine("汪汪..."); Console.WriteLine($"Dog:{this.GetHashCode()}"); ...

6月6日 00:44 投稿

ASP.NET CoreにおけるHttpContext.Currentの利用方法(サービスインジェクションによる代替手法)

はじめに ASP.NET Coreは、従来のMVC5やASP.NET WebFormsに基づく大幅なリファクタリングを経て構築された最新のフレームワークです。旧バージョンで利用可能だったHttpContext.Currentは、現在のASP.NET Coreでは直接使用できません。これは、該当するAPIが存在しないことを意味します。 Controller内からHttpContextにアクセスすることは可能ですが、特定の状況下ではHtt ...

5月29日 07:15 投稿

緊密結合コードの作成

第一章で述べたように、ホルダンソースは卵黄とバターで作られるエマルジョンソースですが、これは魔法のようにホルダンソースを作る能力を与えてくれません。学習の最良の方法は実践ですが、一つの例が理論と実践の間のギャップを埋めることができます。自分で試す前に、プロのシェフがソースを作るのを見るのは非常に役立ちます。 前章で依存性注入(DI)を紹介したとき ...

5月28日 12:39 投稿