HI! EveryOne!


  • 04 Sep 2019
    ITEM 44 :: EFFECTIVE C#

    안녕하세요, 44번째 시간입니다. 이번 내용은 어쩌다보니 굉장히 짧습니다. ;_; 이번 챕터는 바인딩된 변수는 수정하지 말라, 입니다. 바인딩되어있다는 말에서 이미 수정하면 문제가 발생할 것 같은 느낌은 저만 받나요? 설명 바인딩된 변수라는 것은 클로저로 캡쳐되어있는 변수와 같은 맥락이다. C# 컴파일러는 쿼리표현식을 변환할 때 새롭게 추가된 어셈블리를 사용하기는 하나, 새로운 CLR기능에 의존적이지 않다.... Read more?

  • 03 Sep 2019
    ITEM 43 :: EFFECTIVE C#

    안녕하세요, 43번째 시간입니다. 이번 챕터는 쿼리 결과의 의미를 명확히 강제하고, Single()과 First()를 사용하라, 입니다. 음…이건 시작해봐야 알 것 같네요. 설명 LINQ 라이브러리를 살펴보면 대부분이 시퀀스를 반환하도록 설계되었으나, 단일의 값을 반환하는 메서드도 포함하고 있다. Single()은 정확히 1개의 요소만을 반환한다. 요소가 없거나 1개보다 많을경우 예외를 던지게된다. 이는 개발자의 의도를 나타낼 수 있는... Read more?

  • 02 Sep 2019
    ITEM 42 :: EFFECTIVE C#

    안녕하세요, 42번째 시간입니다. 자주 보다보니 반가운 제네릭이 나왔습니다. 이번 챕터는 Ienumerable 데이터 소스와 Iqueryable 데이터 소스를 구분하라, 입니다. 이 두 개의 제네릭을 구분하는 이유는 LINQ식으로 변환할 때 각 제네릭 별로 내부 수행과정과 그 결과가 다르기 때문이라고 생각합니다만, 그게 맞을지는 시작해봐야 알 것 같네요. 설명 둘은 굉장히 비슷한 API 정의를 지녔고... Read more?

  • 01 Sep 2019
    ITEM 41 :: EFFECTIVE C#

    안녕하세요, 41번째 시간입니다. 이제 9개밖에 안 남았어요! 이번 챕터는 값비싼 리소스를 캡처하지 말라, 입니다. 리소스에 관한 부분인 만큼 실제로 개발하는 부분에서 많은 부분을 차지하는 부분일거라 예상합니다. 자, 시작해볼까요? 설명 클로저라는 기능은, 클로저에 바인딩된 변수를 포함하는 객체를 생성한다. 클로저는 정확히 말하자면 함수 블록 내에서 함수 블록 바깥의 변수를 사용할 때 그... Read more?

  • 31 Aug 2019
    ITEM 40 :: EFFECTIVE C#

    안녕하세요, 40번째 시간입니다. 이번 챕터는 지연 수행과 즉시 수행을 구분하라, 입니다. 예전에 봤던 단어가 또 나왔네요. 지연 수행과, 즉시 수행 아마도, 이 두 방식에 대한 장단점과 사용해야 할 때에 대해서 서술되었을 것 같네요. 설명 선언적 코드는 해설적이며 무슨 작업을 해야 하는지를 정의한다. 명령형 코드는 어떻게 작업을 수행해야하는지에 대한, 단계별로 세분화... Read more?