
## 개요난 무시하고 싶은데 계속 에러리스트에 메시지가 떠서 짜증날때.editorconfig파일 설정을 통해 코드분석기에서 특정 스타일만 제외가 가능하다. ## .editorconfig 파일 예시[*]charset=utf-8[*.cs]# IDE0090: Use 'new(...)'dotnet_diagnostic.IDE0090.severity = slient해당 파일을 프로젝트 루트폴더에 위치시켜서 적용이 가능하다. slient의 경우 warning으로 표시되지 않지만 계속 모니터링된다.아예 제외하고 싶은 경우 none으로 설정해주면 된다.## Referenceshttps://learn.microsoft.com/ko-kr/dotnet/fundamentals/code-analysis/configuration-..

## 개요 각 플랫폼이나 프레임워크마다 서로 다른 로그 기준을 사용중이라 개발시 기준을 잡기위해 로그수준에 대해서는 어느정도 본인만의 기준을 잡을 필요성이 있다. RFC 5424를 기본으로 잡는다면 아래와 같이 대부분의 상황에 기준을 명확히 세우고 로그 작업을 진행할 수 있다. - RFC 5424(syslog) : 시스템, 소프트웨어 등에서 발생하는 로그메시지 로깅을 위한 표준 프로토콜 아래는 개인적인 판단으로 적절하게 심각도 수준을 배치시켜 보았다. 중간에 비어있는 영역은 개별적인 판단으로 Warning 또는 Log에 편입시키면 된다. Unity의 Exception의 경우 Error수준인데 순서가 마지막에 있는걸보면 LogType은 심각도 수준 순서가 아니란걸 알 수 있다. ## Unity의 로깅 시스..
## 개요 C#은 두가지 상수형을 제공한다 각자의 특성에 맞게 올바르게 사용해야한다 ## const public const int MILLENNIUM = 2000; - compile-time 상수 - 컴파일시에 const 상수형 변수가 사용되는 위치(code)가 실질적인 값으로 치환 - readonly에 비해 다소 빠르지만 유연성이 떨어짐 - 변수 선언시에만 초기화 가능 (생성자를 통해 동적 초기화 불가) - 내장자료형(정수형, 실수형 등)이나 enum, string에 대해서만 선언 가능. 즉, 숫자와 문자열에 한해서만 사용가능. - 기본적으로 static이므로 동일타입의 여러 인스턴스에서도 항상 같은 값 - 서비스 기간동안 불변값이어야하고 피치못할 변경 발생시 참조하는 모든 어셈블리 재컴파일 후 재배포..
C#에서 logging 등의 이유로 현재 실행중인 method나 class의 이름과 같은 정보가 필요할때 `System.Reflection`나 `System.Diagnostics` 네임스페이스의 기능들을 사용할 수 있다. - System.Reflection - 런타임에 어셈블리, type 및 member에 대한 메타데이터 접근 기능 제공 - 주요 클래스 : Assembly, Type, MethodInfo - System.Diagnostics - 런타임에 application을 모니터링하고 디버깅할 수 있는 기능 제공 - 주요 클래스 : Process, StackTrace, StackFrame, Debug 예를들어 로그 찍을때 - 현재 class명 : `MethodBase.GetCurrentMethod()..

## 개요 오랜만에 닷넷 및 C# 개발로 돌아왔더니 옛날에 공부했던 내용들이 가물가물해서 프로그램 설계시 주요 키워드들을 다시 정리해보도록 한다. (keywords : compiler에게 알려주기위해 미리정의된(predefined) 예약된(reserved) 식별자(identifiers)) ## 접근제한자(Access Modifier) - public : 접근 제한없음 - protected : 파생type까지만 접근 가능 - internal : 현재 어셈블리에서만 접근 가능 - private : 현재 type에서만 접근가능 - protected internal이나 private protected는 개인적으로 잘 안쓰고 가독성도 떨어진다고 생각하기에 패스 접근제한자는 되도록 default보다 명시적으로 선언..

개요 GitHub은 일반적으로 개방과 공유를 중시하는 오픈소스 지향 저장소지만 private한 저장소로도 활용되며, 제 3자가 repository에 등록된 창작물을 사용할때의 특정권한 및 제약사항을 license를 통해 행사할 수 있다. 보편적으로 사용되는 license의 종류와 어떤 경우에 어떤 license를 적용하는게 효과적인지 알아보도록 한다. License License의 사전적 의미는 "(공적으로) 허가하다"이다. 예를들어 국가에서 운전을 하도록 허가하는 경우, 운전허가증인 운전면허증(Driver's license)을 발급한다. 운전면허증은 임의로 수정하거나 타인에게 양도할 수 없으며, 운전자는 교통법규에 명시된 규약을 지키며 운전해야할 의무가 있다. 이는 창작물에서도 동일하다고 볼 수 있다...
개요 개발환경의 스타일 일원화를 위한 세팅작업 - Theme : `Dark+` - Font family : "'Cascadia Mono', D2Coding, Consolas, 'Courier New', monospace" - Default font : `Cascadia Mono` (ligatures 제거 버전) - Font size : VS2022(11), VSCode(15), Notepad++(11, Regular), Notepad(11, Regular) - Cascadia Mono가 표시 안되는 문제 : CMD(D2Coding, 16), PowerShell(D2Coding, 16) - Font style : Regular (SemiLight도 괜찮은데 고해상도 모니터에서는 default설정인 Regu..

개요 Git 및 GitHub은 기본적으로 `git commit`(및 `git tag`)의 name 및 email만 체크하고 보안적인 측면은 고려하지 않는다. 이는 의도하지 않은 제3자가 name 및 email만 알면 commit을 통한 repository의 변경이 가능하다는 의미이며, 이를 검증하고 방어하기 위해 Git 및 GitHub에서는 GPG 등을 통해 서명(signing)하는 방식을 사용한다. 이를통해 Git v1.8.3 이후 버전부터는 서명하지 않았거나 신뢰할 수 없는 사람이 서명한 commit이 있다면 `git merge`와 `git pull`을 통한 Merge를 허용하지 않을 수 있다. 또한 GitHub에서는 "Branch protection rules"의 "Require signed com..

개요 보통 프로젝트의 규모나 성격에 따라 branch workflow를 가져가는 전략은 다양하지만 개인적으로는 git-flow 변형을 해용하고 있다. 이 경우 특정 branch (e.g. main, develop)의 경우 직접 commit이 안되도록 보호 설정을 해주면 실수를 예방할 수 있는데 GitHub에서 해당 설정을 하려면 유료계정으로 전환이 필요하다. 유료계정 저렴해서 왠만하면 하는게 전환하는게... 마침 VSCode v1.69.0 에서 클라이언트에서나마 보호를 걸어주는 유용한 기능이 추가되어서 간단하게 소개해본다. Long-Running Branches 전략 개인 프로젝트에서 아래와 같은 long-running branch 전략을 사용중이라고 가정하자. master브랜치는 최신 배포버전이며 de..
개요 GitHub에서 여러 프로젝트를 하다보면 신규 Repo 생성시마다 Label 등 설정을 다시 해주는것은 귀찮은 일이다. Label 복제를 위해서 오픈소스를 소개하기도 하지만 여기서는 GitHub CLI 에서 제공하는 기본 기능을 사용해 Label을 복제하도록 한다. GitHub CLI 설치 https://cli.github.com/ GitHub CLI Take GitHub to the command line cli.github.com 다운받아 설치해주도록 한다. 설치 후 커맨드창을 열어 "gh --version"을 통해 잘 설치된 것을 확인할 수 있다. 작업중인 Git프로젝트 폴더에서 CLI를 동작시키면 해당 Repo에 기본적으로 동작하게 된다. GitHub CLI 로그인 기본적으로 CLI의 명령들..
- Total
- Today
- Yesterday
- Debug
- .net
- Singleton
- VS2022
- C#
- coroutine
- firestore
- logging
- Python
- RuntimeInitializeOnLoadMethod
- Addressables
- 코루틴
- 싱글톤
- git
- initialize
- selenium
- github
- framework
- gcp
- 유니티
- Visual Studio Code
- 비동기
- Scraping
- 닷넷
- async
- await
- 환경설정
- unity
- vscode
- Custom Package
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |