본문 바로가기

분류 전체보기105

Routing var builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddControllersWithViews(); var app = builder.Build(); // Configure the HTTP request pipeline. if (!app.Environment.IsDevelopment()) { app.UseExceptionHandler("/Home/Error"); // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-h.. 2024. 3. 10.
개요 용도 웹 앱 및 서비스, IoT 앱 및 모바일 백엔드 빌드 Windows, MacOS, Linux에서 사용 가능 클라우드 또는 온-프레미스에 배포 가능 .NET에서 실행 특징 ASP.NET Core는 더 간결하고 모듈화된 프레임워크를 만드는 아키텍처 변경 내용이 포함됨 웹 UI 및 웹 API를 동일한 과정으로 빌드 테스트 가능성을 고려하여 설계됨 Razor Pages는 더 쉽고 더 생산적으로 코딩 페이지에 초점을 맞춘 시나리오를 만듦 Blazor를 사용하면 JavaScript와 함께 브라우저에서 C# 사용 가능, 모두 .NET으로 작성된 서버 쪽 및 클라이언트 쪽 앱을 공유함 Windows, MacOS 및 Linux에서 개발하고 실행할 수 있음 오픈소스이며 커뮤니티에 중점을 둠 최신 클라이언트 쪽 프레임.. 2024. 2. 29.
Crescendor - Ranking System 우리 시스템은 사용자가 시간과 공간에 제약을 받지 않고 피아노를 학습할 수 있게 하고, 피아노 학습 과정에서 중도 포기하지 않도록 재미를 주는 것이 목적이다. 그래서 랭킹 시스템을 넣기로 했고, 실력이 높은 사람, 플레이 횟수가 많은 사람일수록 랭킹 점수를 높게 산정하여 콘텐츠 내의 경쟁을 유의미하게 한다. 만약 랭킹 시스템을 구현하는데 DBMS를 사용한다면, DB에 데이터를 저장하고 저장된 데이터를 정렬하여 다시 읽어오는 과정에서 디스크에 직접 접근해야 하므로 오래 걸릴 것이다. 그래서 보통 많이 사용하는 것이 Redis이다. Redis는 모든 데이터를 메모리에 저장하고 조회하는 인메모리 데이터베이스이며, DBMS와의 차이점은 다양한 자료구조를 제공한다는 것이다. Redis 고성능 키 - 값 저장소로서.. 2024. 2. 2.
Build Tool 다양한 빌드 구성에 걸쳐 소스 코드를 빌드하는 프로세스를 관리하는 커스텀 도구 동작 방식 언리얼 기본 C++ 프로젝트 생성 시, 3개의 C# 파일이 프로젝트에 같이 생성된다. (프로젝트명).build.cs (프로젝트명).target.cs (프로젝트명Editor).target.cs build.cs는 빌드 옵션을 관리하고, target.cs는 빌드 타입을 정의한다. .uproject를 실행하거나, .sln 프로젝트에서 build 명령을 내리면 UBT 프로그램이 실행되면서 언리얼 프로젝트의 build.cs, target.cs 파일들이 C# 컴파일러에 의해 컴파일된다. 이후에 .cs 파일에 작성한 사양대로 빌드 과정이 진행된다. 왜 필요한가? 언리얼은 멀티 플랫폼에서 개발이 가능하고 멀티 플랫폼 빌드를 목표로하.. 2024. 2. 1.
Automation Tool C# 사용 시 UE 관련 무인 프로세스를 스크립팅할 수 있는 호스트 프로그램 및 유틸리티 라이브러리 세트 작동 방식 자동화 프로젝트: 자동화 툴 실행 시 확장자가 .Automation.csproj인 Visual Studio C# 프로젝트로 저장된 모든 자동화 프로젝트를 찾아 컴파일 다음, 리플렉션을 사용하여 실행할 적절한 명령을 찾는다. 이러한 명령은 Build Command 베이스 클래스에서 파생된 클래스에서 구현되며 클래스 명으로 식별됨 자동화 도구 실행: Windows의 Visual Studio 디버거 또는 Windows, Mac 및 Linux의 검색줄에서 검색할 수 있다. 디버거 Commands 실행 Command line에서 Commands 실행 (Windows) 터미널에서 Commands 실행.. 2024. 2. 1.
STL - next_permutation 현재 탐색하고 있는 순열의 다음 순열을 구하고 true를 반환한다. 만약, 다음 순열이 존재하지 않는다면 false를 반환한다. 즉, 마지막 모든 순열의 경우의 수를 탐색한 뒤, false를 반환한다. template bool next_permutation(BidirIt first, BidirIt last) { auto r_first = std::make_reverse_iterator(last); auto r_last = std::make_reverse_iterator(first); auto left = std::is_sorted_until(r_first, r_last); if (left != r_last) { auto right = std::upper_bound(r_first, left, *left);.. 2024. 2. 1.