개발/리팩토링

개발/리팩토링

클린 코드 독서 노트

클린 코드 책에서 기억할만하거나 인상 깊었던 내용을 발췌한 내용임 클린 코드에 대한 정의 비야네스트롭스트룹 논리가 간단해야 버그가 숨어들지 못한다. 깨끗한 코드는 한가지를 제대로 한다. 그래디 부치 깨끗한 코드는 결코 설계자의 의도를 숨기지 않는다. 오히려 명쾌한 추상화와 단순한 제어문으로 가득하다. 함수 작게 만들어라! 가로 150자 이하 세로 20줄도 길다! 들여쓰기가 2단을 넘어서는 안된다 한가지만 해라! 함수당 추상화 수준은 하나로! 플래그 인수는 추하다 한수가 한꺼번에 여러가지를 한다는걸 그대놓고 공표하는 셈임 명령과 조회를 분리하라! 함수는 객체 상태 변경 아니면 객체 정보 반환 둘 중 하나를해야 혼란이 없다. 형식 맞추기 서로 밀접한 개념은 세로로 가까이 둬야 한다. 변수는 사용 위치에 최대..

개발/리팩토링

클린 코드 - 2장 의미 있는 이름 요약

클린 코드 - 2장 의미 있는 이름 - 의도를 분명히 밝혀라 - 좋은 이름을 지으려면 시간이 걸리지만 그로 인해 절약하는 시간이 훨씬 더 많다. - 이름을 통해 존재 이유, 수행 기능, 사용 방법에 대한 답을 해야 한다. - 그릇된 정보를 피하라 - 나름대로 절리 쓰이는 의미 있는 단어를 다른 의미로 사용하면 안된다. - 실제 List가 아니라면 accountList라는 식으로 네이밍하지 않는다. accountGroup, bunchOfAccounts, Accounts 식으로 네이밍한다. - 혼동할 수 있기 때문에 서로 흡사한 이름을 사용하지 않는다. - 의미 있게 구분하라 - 연속된 숫자를 덧붙이거나 특별한 정보를 주지 못하는 Info, Data, variable 같은 단어를 추가하는 방식은 적절하지 않..

개발/리팩토링

네이밍 관련 글 정리

다음 글들의 내용을 취합해서 정리한 내용입니다. https://a-nickels-worth.blogspot.kr/2016/04/a-guide-to-naming-variables.html http://journal.stuffwithstuff.com/2009/06/05/naming-things-in-code/ http://nikas.praninskas.com/javascript/2016/11/28/naming-things-handlers/ http://codelegance.com/semantic-method-naming/ http://codebuild.blogspot.kr/2012/02/15-best-practices-of-variable-method.html # 클래스, 인터페이스 - 명사여야 한다. : ..

개발/리팩토링

읽기 좋은 코드가 좋은 코드다 - 노트

책 '읽기 좋은 코드가 좋은 코드다 ' 내용 중 기억에 남는 내용이나 잘 몰랐던 부분에 대해서 정리한 내용임. 변수/메소드명 지을 때 쓸 수 있는 상황에 더 적합한 '화려한' 단어의 예시send : deliver, dispatch, announce, distribute, routefind : search, extract, locate, recoverstart : launch, create, begin, openmake : create, set up, build, generate, compose, add, new인덱스 변수로 i, j, k를 쓰는 것은 좋지만 중첩 루프로 어떤 변수에 어떤 인덱스 변수가 사용되는지 알기 힘들다면, 인덱스 변수명에 사용될 변수의 앞자리를 붙여서, ci, mi, ui 이런식으로..

개발/리팩토링

자바 코드 리팩토링 시 주의해야할 점 몇 가지

레거시 코드를 리팩토링 하는 경우 코드를 읽기 쉽고 유지보수하기 쉽게 하는 것도 중요하지만 기존 기능을 유지하고 에러가 나지 않게 하는 것도 중요합니다. 리팩토링 시 주의해야할 점 몇 가지에 대해서 정리해봅니다. 1. 미사용 메소드 삭제할 때 call hierarchy만 확인하면 낭패를 당할 수 있다. java에는 리플렉션이 있기 때문이다. 어디에선가 리플렉션으로 호출하고 있을 수도 있다. 그렇게 사용하는 경우는 많지 않겠지만 call hierarchy 상에 없다고 해서 100% 쓰이는 곳이 없다고 단언할 수는 없는 것이다. 리플렉션을 사용했다면 메소드 호출을 위해 메소드명을 스트링으로 코드 어딘가에서 사용하고 있을텐데그런 경우라면 찾기 쉽지만 만약 그 데이터를 데이터베이스에서 관리하고 있다면 여간 곤욕..

bebeside77
'개발/리팩토링' 카테고리의 글 목록