본문 바로가기

반응형

Programming

(91)
C# Func vs Action vs Predicate Func delegate return value linq 예시 var ids = list.Select(d => d.Id); Action delegate linq 예시 list.ForEach(d => { d.SomeProperty + 1; }); Predicate Func public delegate bool Predicate(T obj); ref : https://github.com/microsoft/referencesource/blob/master/mscorlib/system/action.cs microsoft/referencesource Source from the Microsoft .NET Reference Source that represent a subset of the .NET Framewor..
EditorConfig 사용하여 코드 컨벤션 정의하기 개요 VisualStudio 상에서 텍스트 편집기 메뉴를 통해 코드 컨벤션을 설정할 수 있다. 하지만 이 설정은 해당 PC에서만 유효하다. 이때 프로젝트에 .editorconfig 파일을 추가하여 같은 프로젝트를 베이스로 작업하는 사람들의 코드 컨벤션을 일관성 있게 유지할 수 있다. EditorConfig msdn link 사용법 1. 코드 컨벤션을 정의한 .editorconfig 파일을 만든다. 빈 파일을 만들 수도있고 .NET 기본 컨벤션이 들어가있는 파일을 만들수 도 있다. .editorconfig에 설정되어 있지 않은 항목들은 자연스럽게 2순위(텍스트 편집기 설정 내용) 값을 사용하므로 처음 사용해본다면 빈 파일에 필요한 부분만 추가해서 사용하는 것을 추천한다. 2. .editorconfig 파일..
GitHub Arctic Code Vault Contributor GitHub 아카이브 프로그램의 일환으로 GitHub에 존재하는 일부 repository들이 오픈소스 프로젝트 보존 목적으로 일련의 과정을 거쳐 북극에 아카이빙 되었다. GitHub Archive Program Link 이때 아카이빙에 포함된 repository들의 기여자들에게 위와 같은 Arctic Code Vault Contributor라는 배지를 수여했다. repository 선정 조건은 아래와 같다. (관련 정보 더보기 : 링크) Any commits between the announcement at Universe on November 13, 2019, and February 2, 2020 At least one star and any commits from the year before the ..
C# reverse string use linq 알고리즘 문제풀이 중 문자열을 뒤집고 싶었고 Reverse 함수가 있길래 별생각 없이 사용했다가 문제를 발견했다. 간략한 예제로 아래 코드에 대한 내 예상결과는 "tseT"였다. string word = "Test"; Debug.Write(word.Reverse()); 하지만 실제 결과는 타입 정보 문자열이 출력되고 있다. 원인과 해결방법은 아래와 같다. 원인 Reverse 메서드를 F12(정의로 이동)로 확인해보니 음..? Linq에 있는 Enumerable 클래스의 Reverse 메서드였다. public static IEnumerable Reverse(this IEnumerable source); 즉, string 타입이 기본으로 제공하는 Reverse 메서드가 없었고 Enumerable의 확장(ex..
[File name changer] 파일명 일괄 변경 프로그램 소개 및 사용법 Description : 파일명에서 특정 문자열이 존재한다면 입력한 문자열로 바꿔준다. .NET 에서 Localization에 사용할 리소스 파일명에는 ko-kr 같은 Language Code가 들어가있는데 이 Code를 바꿔야할 일이 생겨 일일히 바꿔주기 귀찮아서 만들었다. Github : https://github.com/soejdtodxn/FileNameChanger [Download link] Preview : How to use : 1. 변경할 파일들이 있는 폴더 선택 2. 검색할 문자열과 대체할 문자열 입력 3. (선택) 파일명이 어떻게 변경될지 보고싶다면 Preview 클릭 4. Change 버튼을 눌러 파일명 변경
C# Property Vs Field and ref keyword 아무 생각 없이 Class의 Property를 함수의 ref 타입 파라미터로 넘기려다가 아래 에러를 만났다. error[kr] : 속성 또는 인덱서는 out 또는 ref 매개 변수로 전달할 수 없습니다. error[en] : A property or indexer may not be passed as an out or ref parameter. Q1. 왜 넘길 수 없는가? 왜 넘길 수 없는지 이해하려면 먼저 Property가 기본적으로 어떻게 동작하는지 알아야 한다. 아래와 같은 Property를 가정해보자 public int TestProperty { get; set; } 컴파일러는 컴파일타임에 아래와 비슷한 모양으로 testProperty라는 필드 생성 및 Get, Set 메서드를 생성한다. 이후 T..

반응형