C# - AutoMapper

기본 객체간의 복사를 자동으로 한다. 복사되는 객체에 복사한다. Nuget으로 설치 가능. 예 public class SourceType { public int SourceId { get; set; } public string Value { get; set; } public DateTime DateUpdated { get; set; } } public class...
더 읽기

C# - Debug 클래스

Debug 클래스 Debug 클래스는 그 이름대로 디버그 정보를 출력하는 클래스이다. Debug 클래스는 System.Diagnostics 이름 공간에 있다. 사용 예 using System.Diagnostics; Debug.WriteLine("Start Method"); Debug.IndentSize = 4; Debug.Indent(); Debug.Write("Debug.Write"); Debug.WriteLine("는 개행합니다."); for (int i = 0; i < 4; i++) { Debug.WriteIf(i%2==1,i);...
더 읽기

C# - List, Tuple, Queue, SortedList, SortedDictionary, SortedSet

List 정렬 https://msdn.microsoft.com/ja-jp/library/w56d4y5z(v=vs.110).aspx https://msdn.microsoft.com/ja-jp/library/b0zbh7b6(v=vs.110).aspx https://msdn.microsoft.com/ja-jp/library/234b841s(v=vs.110).aspx List<UserWeekTotalNetProfitResult> TopPlyser = new List<UserWeekTotalNetProfitResult>(); TopPlyser.Sort(PlayerCompare); static int PlayerCompare(UserWeekTotalNetProfitResult user1, UserWeekTotalNetProfitResult user2) { if (user1.TotalScore == user2.TotalScore) { if (user1.Level == user2.Level) { // UID는 절대 동점이 없음 if (user1.UID > user2.UID) { return -1;...
더 읽기

C# - XmlTextReader

XmlTextReader 로 XML 읽기 예제 1 <?xml version="1.0" encoding="utf-8" ?> <Config> <log4net> <root> <!--로그 레벨 지정. 아래에서는 INFO 레벨 이상만 로그가 남는다--> <level value="INFO" /> <!--어느 로그를 사용할 것인지 지정한다. 파일 로그와 날짜별 로그 사용--> <appender-ref ref="DayRollingLogToFile" /> <!--복수 지정...
더 읽기

Windows에 Rust 설치하기

Rust를 Windows에서 사용할 때 C++ 컴파일러가 별도로 필요하므로 먼저 VisualStudio Build Tools를 설치한다.(Visual Studio를 설치하면 된다) Rustup 설치 Rustup 사이트에 가서 rustup‑init.exe 링크를 클릭해서 다운로드 한다. 다운로드한 rustup-init.exe을 클리하여 설치한다. 설치가 끝난 후 아래 명령어를 실행하여 잘 설치 되었는지 확인한다....
더 읽기

C# - 닷넷프레임워크의 타이머 관련 클래스

인터넷에 있는 글에서 가져온 것입니다. DispatcherTimer 일반 타이머는 메인 스레드가 아닌 다른 스레드를 만들어서 처리 되지만 이것은 실행은 메인 스레드에서 처리 되어 메인 스레드와 동기화가 보장 된다. MSDN의 설명 각 Dispatcher 루프의 맨 위에서 DispatcherTimer가 다시 평가된다. 시간 간격이 발생할...
더 읽기

CMake에서 GoogleTest 사용하기

출처 구성은 아래와 같이 되어 있다고 한다. src 폴더 아래가 테스트 대상 코드, test 폴더 아래는 테스트 코드 클래스 단위로 파일이 나누어져 있다고 가정한다. mk.sh을 실행하면 build/src/ 에 응용 프로그램의 실행 파일, build/test/ 에 테스트의 실행 파일이 만들어진다. ├── CMakeLists.txt...
더 읽기

cmake에서 CMAKE_C_FLAGS에 설정한 값이 무시될 때

출처 CMakeLists.txt 안에서 컴파일 옵션을 지정하려고 했는데 설정이 무시되는 문제를 만났다. 컴파일 옵션 지정과 add_subdirectory 명령어 기술 순서가 문제였다. 문제 CMakeLists.txt cmake_minimum_required(VERSION 3.12) project(cmake_01) set(APP_NAME example) add_subdirectory(src) # 여기가 무시된다. set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall") set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -g -O0") set(CMAKE_CXX_FLAGS ${CMAKE_C_FLAGS}) set(CMAKE_CXX_FLAGS_DEBUG...
더 읽기

스터디 - 신입 게임 서버 프로그래머 학습 모임

신입 게임 서버 프로그래머를 목표로 하는 분을 도와 드리려고 하다가 이왕 하는 것 좀 더 많은 분들을 도와 드리면 좋을 것 같아서 모임을 만들기로 했습니다. 게임 서버 프로그래머가 되기 위해서 어떤 것을 공부해야 할지 잘 모르는 분들에게 제가 어떻게 공부하고...
더 읽기

.NET Core - Improving .NET Core Kestrel performance using a Linux-specific transport

이 글을 구글 번역을 통해 일부 정리했다 성능은 핵심 기능입으로 많이 최적화되어 지속적으로 벤치마킹 하고 있다. Kestrel은 HTTP 서버의 이름이다. 이 블로그 포스트에서 우리는 Kestrel의 네트워킹 레이어를 리눅스 관련 구현으로 대체하고, 기본 구현 방식과 비교하여 벤치마킹 할 것이다. TechEmpower 웹...
더 읽기