- Item 01. 가변성을 제한해라
- Item 02. 변수의 스코프를 최소화해라
- Item 03. 최대한 플랫폼 타입을 피하라
- Item 04. 타입추론으로 return하지 말자
- Item 05. 예외를 활용해 코드에 제한을 걸어라
- Item 06. 사용자 정의 오류보다는 표준 오류를 사용해라
- Item 07. 결과 부족이 발생할 경우 null과 Failure를 사용하라
- Item 08. null 처리
- Item 09. Use() 를 사용해 리소스를 닫아라
- Item 10. 단위 테스트를 만들어라
- Item 11. 가독성을 목표로 설계하라
- Item 12. 연산자 오버로드를 할 때는 의미에 맞게 사용하라
- Item 13. Unit?을 리턴하지 말라
- Item 14. 변수타입이 명확하지 않은경우 확실하게 지정하라
- Item 15. 리시버를 명시적으로 참조해라
- Item 16. 프로퍼티는 동작이 아니라 상태를 나타내야한다
- Item 17. 네임드 아규먼트를 사용해라
- Item 18. 코딩컨벤션을 지켜라
- Item 19. knowledge 를 반복하여 사용하지 말라
- Item 20. 일반적인 알고리즘을 반복해서 구현하지 말라
- Item 21. 일반적인 프로퍼티 패턴은 프로퍼티 위임으로 만들어라
- Item 22. 일반적인 알고리즘을 구현할 때, 제네릭을 사용해라
- Item 23. 타입파라미터의 섀도잉을 피하라
- Item 24. 제네릭타입과 variance 한정자를 활용하라
- Item 25. 공통모듈을 추출해서 여러 플랫폼에서 재사용해라
- Item 26. 함수 내부의 추상화 레벨을 통일하라
- Item 27. 변화로부터 코드를 보호하려면 추상화를 사용하라
- Item 28. API 안정성을 확인해라
- Item 29. 외부 API를 래핑해서 사용하라
- Item 30. 요소의 가시성을 최소화해라
- Item 31. 문서를 규약으로 정의해라
- Item 32. 추상화 규약을 지켜라
- Item 33. 생성자 대신 팩토리 함수를 사용하라
- Item 34. 기본 생성자에 이름있는 옵션 아규먼트를 사용하라
- Item 35. 복잡한 객체를 생성하기 위한 DSL을 정의해라
- Item 36. 상속보다는 컴포지션을 사용하라
- Item 37. 데이터 집합 표현에 data 한정자를 사용하라
- Item 38. 연산 또는 액션을 전달할 때는 인터페이스 대신 함수 타입을 사용해라
- Item 39. 태그 클래스보다는 클래스 계층을 사용해라
- Item 40. equals의 규약을 지켜라
- Item 41. hascode의 규약을 지켜라
- Item 42. compareTo의 규약을 지켜라
- Item 43. API의 필수적이지 않는 부분을 확장함수로 추출하라
- Item 44. 멤버 확장 함수를 사용을 피하라
- Item 45. 불필요한 객체생성을 피하라
- Item 46. 함수 타입 파라미터를 갖는 함수에 inline 한정자를 붙여라
- Item 47. 인라인 클래스의 사용을 고려하라
- Item 48. 더 이상 사용하지 않는 객체의 레퍼런스를 제거하라
- Item 49. 하나 이상의 처리 단계를 가진 경우에는 시퀸스를 사용하라
- Item 50. 컬렉션 처리수를 제한하라
- Item 51. 성능이 중요한 부분에는 기본 자료형 배열을 사용하라
- Item 52. mutable 컬렉션 사용을 고려해라
-
Notifications
You must be signed in to change notification settings - Fork 0
jinia91/effect-kotlin-sandbox
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
이펙티브 코틀린 정리
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published