Coder Social home page Coder Social logo

bookreview's Issues

Effective C#

Effective C#

강력한 C# 코드를 구현하는 50가지 전력과 기법

좀 더 C#의 고급 기술이 궁금해서 읽기 시작한 책

다양한 기능들을 좀 더 유연하게 사용하고 싶어서 선정 한 가지 ITEM마다 깊게 들어갈 예정

Plan

300쪽 분량, 50개의 챕터로 구분

주에 2챕터씩 읽고 정리할 예정

총 25회 사이클, 약 25주 소요 예정

Index

  • #35
  • #37
  • #52
  • #60
  • #89
  • #90
  • #97
  • #111
  • #112
  • #118
  • #141
  • #142
  • #151
  • #152
  • #157
  • #158
  • #159
  • #160
  • #179
  • #180
  • #181
  • #182
  • 23. 타입 매개변수에 대해 메서드 제약 조건을 설정하려면 델리게이트를 활용하라
  • 24. 베이스 클래스나 인터페이스에 대해서 제네릭을 특화하지 말라
  • 25. 타입 매개변수로 인스턴스 필드를 만들 필요가 없다면 제네릭 메서드를 정의하라
  • 26. 제네릭 인터페이스와 논제네릭 인터페이스를 함께 구현하라
  • 27. 인터페이스는 간략히 정의하고 기능의 확장은 확장 메서드를 사용하라
  • 28. 확장 메서드를 이용하여 구체화된 제네릭 타입을 개선하라
  • 29. 컬렉션을 반환하기보다 이터레이터를 반환하는 것이 낫다
  • 30. 루프보다 쿼리 구문이 낫다
  • 31. 시퀀스에 사용할 수 있는 조합 가능한 API를 작성하라
  • 32. Action, Predicate, Function과 순회 방식을 분리하라
  • 33. 필요한 시점에 필요한 요소를 생성하라
  • 34. 함수를 매개변수로 사용하여 결합도를 낮추라
  • 35. 확장 메서드는 절대 오버로드하지 마라
  • 36. 쿼리 표현식과 메서드 호출 구문이 어떻게 대응되는지 이해하라
  • 37. 쿼리를 사용할 때는 즉시 평가보다 지연 평가가 낫다.
  • 38. 메서드보다 람다 표현식이 낫다
  • 39. function과 action 내에서 예외가 발생하지 않도록 하라
  • 40. 지연 수행과 즉시 수행을 구분하라
  • 41. 값비싼 리소스를 캡처하지 말라
  • 42. IEnumerable 데이터 소스와 IQueryable 데이터 소스를 구분하라
  • 43. 쿼리 결과의 의미를 명확히 강제하고, Single()과 First()를 사용하라
  • 44. 바인딩된 변수는 수정하지 말라
  • 45. 메서드가 실패했음을 알리기 위해서 예외를 이용하라
  • 46. 리소스 정리를 위해 using과 try/finally를 활용하라
  • 47. 사용자 지정 예외 클래스를 완벽하게 작성하라
  • 48. 강력한 예외 보증을 준수하는 것이 좋다.
  • 49. catch 후 예외를 다시 발생시키는 것보다 예외 필터가 낫다.
  • 50. 예외 필터의 다른 활용 예를 살펴보라

ETC

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.