본문 바로가기

IT 기록/클린코드3

클린코드 #2 어디나 쓰이는 이름 의미있게 짓는 방법! 소프트웨어에서 이름은 어디나 쓰인다. 이렇듯 많이 사용하는 이름을 잘 지으면 여러모로 편하다. 이 장에서는 이름을 잘 짓는 간단한 규칙을 몇 가지 소개한다. 의도를 분명히 밝혀라 좋은 이름을 지으려면 시간이 걸리지만 좋은 이름으로 절약하는 시간이 훨씬 더 많다. 그러므로 이름을 주의 깊게 살펴 더 나은 이름이 떠오르면 개선하기 바란다. 변수(혹은 함수나 클래스)의 존재 이유는? 수행 기능은? 사용 방법은? 주석이 필요하다면 의도를 분명히 드러내지 못했다는 말이다. 그릇된 정보를 피하라 프로그래머는 코드에 그릇된 단서를 남겨서는 안 된다. 그릇된 단서는 코드 의미를 흐린다. 나름대로 널리 쓰이는 의미가 있는 단어를 다른 의미로 사용해도 안 된다. 서로 흡사한 이름을 사용하지 않도록 주의한다. 유사한 개념은.. 2020. 3. 18.
클린코드 #1 깨끗한 코드가 필요한 이유! 과거에 비해 코드를 작성하는데 들어가는 사람의 노력은 점점 적어지고 있다. 대부분의 툴이 표준화된 코드를 작성할 수 있도록 가이드해준다. 심지어는 이제 더 이상 사람이 코딩을 하지 않을 것이라고 바라보는 사람들도 있다. 이처럼 코드 자동화라는 말이 나오고 있는 시대에 코드를 다루는 것이 시대에 뒤떨어진다고 생각할 수 있다. 하지만 코드가 사라질 가망은 없다. 코드는 요구사항을 상세히 표현하는 수단이니까. 코드를 편리하게 작성하게 해주는 단계까지 왔지만 어느 수준에 이르면 코드의 도움없이 요구사항을 상세히 표현하기란 불가능하다. 추상화도 불가능하다. 정확히 명시하는 수밖에 없다. 기계가 실행할 정도로 상세하게 요구사항을 명시하는 작업, 바로 이것이 프로그래밍이다. 이렇게 명시한 결과가 바로 코드다. 결국 .. 2020. 3. 9.
클린코드 #0 장인 정신을 익히는 방법! 비전공자로 IT 기업에 취업한 지 어느덧 4년 차가 되었다. 시스템을 운영과 유지보수하면서 개발도 같이 진행했다. 시스템을 운영하면서 보통 다른 사람들이(프로젝트를 진행한) 짠 코드를 보게 되는데, 그 수준이 천차만별이다. 코드를 읽으면 바로 어떤 프로세스를 수행하는지 직관적으로 이해되는 코드가 있다. 반면 대체 왜 이렇게 작성을 했는지 의도를 알 수 없어서 함부로 손대기 두려워지는 코드들도 있다. 그러다 내가 개발한 코드를 한참 뒤에 다시 보면서 '이걸 왜 이렇게 짰을까?'라는 생각을 한 적이 있다. 항상 시간에 쫓기다보니 코드에 대한 고민을 하기보다는 기능이 동작하면 넘어갈 때도 많았다. 나 또한 안 좋은 코드를 양산해내고 있었다. 어떻게 코드를 짜는 게 좋은 것인지 확실히 익히고, 습관을 제대로 들.. 2020. 3. 6.