분류 전체보기 212

클래스 간의 관계 (UML)

클래스 간의 관계 (UML)UML 다이어그램에서 클래스 간의 관계는 객체 지향 프로그래밍에서 클래스들이 어떻게 연결되고 상호작용하는지를 나타냅니다.1. Association (연관 관계)표현 방식의미클래스 간의 일반적인 참조 관계를 나타냅니다.한 클래스가 다른 클래스의 인스턴스를 속성이나 필드로 가지는 경우 나타납니다.두 클래스는 독립적으로 존재할 수 있지만 서로 연결됩니다.예시 코드public class Student{ public Teacher Teacher { get; set; }}public class Teacher{ public string Name { get; set; }}관계 표시Student → Teacher설명Student 클래스는 Teacher 객체를 참조하는 속성을 가지고 ..

프로그래밍 2024.12.06

[EFCore] Entity Framework Core

Entity Framework Core란?EF Core(Entity Framework Core)는 .NET 애플리케이션에서 데이터베이스와 상호 작용하기 위한 ORM(Object-Relational Mapping) 프레임워크입니다.EF Core는 C# 같은 객체 지향 언어의 클래스를 데이터베이스 테이블과 매핑하여, SQL 쿼리를 작성하지 않고도 데이터베이스 작업을 수행할 수 있도록 도와줍니다.https://learn.microsoft.com/ko-kr/ef/core/Model이란?EF Core에서는 데이터 액세스가 모델을 통해 수행됩니다.모델은 엔터티 클래스 및 데이터베이스와의 세션을 나타내는 컨텍스트 개체로 구성됩니다.컨텍스트 개체를 사용하여 데이터를 쿼리하고 저장할 수 있습니다.마이그레이션(Migrat..

프로그래밍 2024.11.29

ERD (Entity-Relationship Diagram)

ERDER모델은(Entity-Relationship Model)을 기반으로 데이터베이스의 논리적 구조를 표현하기 위한 도구ERD(Entity-Relationship Diagram)는 데이터베이스의 개체와 관계를 보여주는 다이어그램이다.ERD ElementsEntity어떤 시스템인지에 따라 Entity는 사람, 장소, 사건(이벤트), 오브젝트가 될 수도 있다.WeakEntity어떤 Entity에 의존적인 Entity를 부르는 명칭Attribute엔터티(또는 관계)가 가진 정보를 나타내는 세부적인 요소엔터티의 특성을 구체화하며, DB테이블에서 열(Column)에 해당합니다.Relationship두 개 이상의 엔터티를 연결하며, 이를 통해 엔터티 간의 데이터 상호작용을 표현합니다.관계는 마름모(Diamond)..

Database 2024.11.28

Hypervisor (하이퍼바이저)

하이퍼바이저란?하이퍼바이저는 프로세서, 메모리, 스토리지와 같은 컴퓨팅 리소스를 가상 머신(VM)에 재할당하는 소프트웨어입니다.이 기술을 통해 여러 VM을 생성하여 단일 물리 머신에서 실행하는 가상화가 실현될 수 있습니다. 하이퍼바이저는 각 VM에 할당된 리소스를 제공하고 물리적 리소스에 대한 VM 리소스의 스케줄링을 관리합니다.예를 들어 하이퍼바이저가 스케줄을 관리하는 동안에도 물리적 하드웨어는 여전히 실행을 수행하므로 CPU는 VM의 요청에 따라 CPU 명령을 실행합니다. 하나의 하드웨어에서 여러개의 운영 체제를 동시에 실행되고 가상화된 동일한 하드웨어 리소스를 하이퍼바이저와 공유할 수 있습니다.이것이 가상화의 주요 장점입니다. 가상화가 없으면 하나의 하드웨어에서 하나의 운영 체제만 실행할 수 있습니다.

프로그래밍 2024.11.28

[C#] 참조형 null 초기화

C#에서 null!은 null-forgiving operator (!)를 사용하는 표현입니다. 이를 사용하는 이유는 다음과 같은 상황에서 발생할 수 있습니다:1. Nullable Reference Type (NRT) 경고 방지C# 8.0 또는 .Net6.0 부터 Nullable Reference Type 기능이 도입되었습니다. 이 기능은 참조형이 null을 가질 수 있는지 여부를 컴파일러가 추적할 수 있도록 도와줍니다.string은 기본적으로 non-nullable로 간주됩니다.하지만 초기화 시점에 null로 설정하려 하면 컴파일러가 경고를 발생시킵니다.public string Name { get; set; }; // 경고: Non-nullable property 'Name' must contain a ..

카테고리 없음 2024.11.28

[Windows] 우클릭 팝업메뉴 단축키 설정/변경

Notepad++ 윈도우 Context Menu 단축키 변경하는 방법입니다.레지스트리 편집기(regedit)를 실행합니다.Ctrl+F로 Notepad++를 검색하시면HKEY_CLASSES_ROOT/*/ShellEx/ContextMenuHandlers 에 ANotepad++64 항목이 있을겁니다.ANotepad++64를 클릭하면 데이터에 {BXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX} 이런 값이 있습니다.{BXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX}를 복사해서 Ctrl+F를 눌러서 레지스트리 검색을 합니다.항목을 찾았으면 하위에 Settings가 있고 Title에 Edit with &Notepad++이라고 있습니다.그 부분을 (N앞에 있는 &를 빼고) Edit with..

Windows 2024.11.16

[C#] CPU, DISK I/O 스트레스 테스트

CPU, DISK I/O 사용률을 최대로 사용한 상태에서 APP 테스트가 필요하여 사용하게 된 코드입니다.using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace CPU_Disk_PerformanceTEST{ public class CPU_DiskPerformanceTEST { public static void Main(string[] args) { Console.WriteLine(" 1 : Use Cpu 100% \n 2 : Usage DIsk IO"); ..

프로그래밍/C# 2024.10.18

[C#] WPF Func<T>

GPT Q. private readonly IDialogView _selectDefaultRecipeDialogView; private readonly Func _selectDefaultRecipeDialogView;  차이점?1. private readonly IDialogView _selectDefaultRecipeDialogView;타입: IDialogView설명:이 선언은 IDialogView 타입의 객체를 저장하기 위한 필드입니다.선언된 필드는 하나의 IDialogView 객체를 저장하며, 해당 객체는 한 번 설정되면 바뀌지 않습니다(readonly).이 필드는 단일 객체 참조를 보유하고 있으며, 프로그램에서 특정 시점에 이 객체가 초기화됩니다(예: 생성자에서 주입).사용 예시:한 번 할당된 I..

프로그래밍/C# 2024.09.27