본문 바로가기

분류 전체보기174

배경지식 - ORM ORM Object-Relational Mapping의 약자로 OOP에서 데이터베이스를 쉽게 사용하기 위한 도구 객체지향 프로그래밍 언어에서 사용되는 객체와 관계형 데이터베이스의 데이터를 자동으로 변환하고 매핑해줌 따라서 ORM을 사용하면 개발자가 SQL 쿼리를 직접 작성하지 않고도 데이터베이스와 상호작용할 수 있음 C#의 ORM으로는 Entity Framework, Dapper 등이 존재 SQLKata SQL 쿼리 빌더를 제공하는 오픈 소스 라이브러리로, MySQL / PostgreSQL / Microsoft SQL Server 등 대부분의 RDBMS를 지원 라이브러리는 NuGet 패키지로 제공되기 때문에 C# 프로젝트에 쉽게 추가할 수 있음 쿼리 빌더 : C# 코드로 쿼리를 작성하고 실행 가능 조건절.. 2023. 4. 20.
배경지식 - C# 비동기 프로그래밍 C#에서는 async과 await 키워드를 사용하여 비동기 프로그래밍을 구현 await 작업이 이루어지는 경우 await 이후의 작업은 쓰레드 풀의 유휴 쓰레드를 할당받아 수행하게됨 async 해당 메서드 내에 await 키워드를 사용할 수 있게 만들어줌 즉, await를 가지고 있을 수 있음을 알려주는 역할 반드시 void / Task / Task 중 하나를 반환해야함 Task : 백그라운드 속성의 쓰레드, 쓰레드 풀 사용 System.Threading.Tasks 네임스페이스가 필요함 void를 사용시 비동기 메서드를 호출하는 쪽에서 비동기를 제어할 수 없음 await 비동기 작업의 흐름을 제어하는 키워드 단항 연산자로 쓰이며, awaitable 형식(Task 또는 Task를 반환하는.. 2023. 4. 20.
배경지식 - ASP.NET ASP.NET .NET을 사용하여 웹 및 서비스를 빌드하기 위한 Microsoft의 오픈소스 웹 프레임워크 RESTful 웹 서비스 구축 지원, MVC(Model-View-Controller) 아키텍처, 내장 보안 기능 등 다양한 기능 및 도구 포함 .NET : 다양한 유형의 애플리케이션을 빌드하기 위한 도구 / 프로그래밍 언어 / 라이브러리로 구성된 개발자 플랫폼 MVC : Model(사용자 정의 프로퍼티 등) / View(html 등의 인터페이스) / Controller(DB 통신 등) 으로 구별하는 형식 코드가 섞이는 것을 방지하고 유지보수가 용이함 Model -> Controller -> View 또는 View -> Controller -> Model로 전달 가능 ASP.NET Core에서 필요한.. 2023. 4. 19.
배경지식 - API Web 서버 방식의 게임 서버에서는 Web API를 사용하여 서버를 구축 API Application Programming Interface의 약자로 응용프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만드는 인터페이스를 뜻함 일종의 규약으로 애플리케이션 개발자들이 다른 애플리케이션을 사용할 수 있도록 표준화된 방법을 제공 즉 프로그램들과 데이터베이스, 기능들의 상호 통신 방법을 규정하고 도와주는 매개체로 사용됨 REST REpresentational State Transfer의 약자로 웹 기반의 소프트웨어 아키텍처 스타일 중 하나 웹 리소스를 사용하여 클라이언트와 서버 간의 통신을 수행하는 방법을 규정 HTTP URI를 통해 자원(Resource)을 명시하고,.. 2023. 4. 19.