최근 포스트

[클린코드]11.시스템

7 분 소요

이번 장은 시스템 전반에 대해서 다루고 있어서, 깊은 내용을 다루지는 않았지만 기존에 알지 못하는 내용들이 있어서 많은 자료를 찾아가며 공부했다. 코드 단위를 넘어서 시스템 아키텍처의 내용 또한 중요하다는 사실을 알게 되었다. 《클린 아키텍처》 책도 가지고 있는데, 《클린코드》를...

[클린코드]10.클래스

9 분 소요

예전에 한 번 《클린코드》를 읽은 후 코드 단위에서는 많은 것들을 실천하려고 노력했다. 하지만 클래스나 아키텍처 단위에서는 여전히 어려움을 느꼈고, 대부분 돌아가는데만 초점을 맞추었었다. 두 번째 읽는 것인데, 첫 번째 읽은 후와 똑같아서는 안 된다. 클래스 단위에서의 클린코드 작...

[클린코드]9.단위 테스트

7 분 소요

《클린코드》에서는 테스트를 매우 중요하다고 말한다. 꼭 이 책 뿐만 아니라 TDD의 중요성에 대해서는 익히 들어서 알고 있다. 그러나 현재 맡고 있는 업무의 시스템에 테스트 코드가 전혀 존재하지 않는다. 자연스럽게 나도 테스트를 기반으로 프로그램을 짜는 것에 익숙하지 않다. 개인적...

[클린코드]8.경계

8 분 소요

지금 당장 작동하는 코드를 작성하는데 집중한다면, 경계 인터페이스는 소홀하기 쉬운 영역인 듯 하다. Map을 클래스로 한 번 더 감싸는 방식이나, ADAPTER 디자인 패턴을 적용하는 방법을 적용하기 위해서는 늘 어떤 식으로 변화가 발생할 수 있을지를 예상해봐야 할 것 같다. 쉽지...

[클린코드]7.오류 처리

8 분 소요

《클린코드》를 읽기 전까지, 나 또한 예외보다는 오류 코드로 프로그램을 다루는데에 더 익숙했다. 처음부터 그렇게 배웠다기 보다 기존의 코드들이 오류 코드를 이용하는 게 많았기 때문이다. 오류 코드보다는 예외를 사용하도록 하자! 그 어떤 프로그램도 언제든지 오류가 발생할 수 있다. ...

[클린코드]6.객체와 자료구조

8 분 소요

개발을 잘 한다는 것이 어려운 이유가 정답이 없기 때문이다. 객체와 자료 구조 또한 어느 것이 우월하다는 정답이 없다. 각각의 장단점이 존재하므로 개발자의 판단이 중요하다. 그리고 그 판단은 경험에 의거해서 이루어진다. 물론 경험을 통해 객체와 자료 구조의 차이를 잘 체득했을 때 ...

[클린코드]5.형식 맞추기

7 분 소요

시스템을 운영하다보면 자주 기존의 코드를 들여다보게 되는데, 작성한 사람에 따라서 형식이 모두 다르면 가시성도 좋지 않고, 실제로 코드의 흐름을 따라가는게 더 어렵다. 그래서 유지보수 할 때마다 통일된 형식으로 작성을 하려고 하는데, 제일 중요한 것은 처음부터 잘 맞춰서 작성하는 ...

[클린코드]4.주석

6 분 소요

예전에 《클린코드》를 읽고 나서 운영하는 시스템의 코드를 유지보수할 때마다 많은 주석을 삭제했다. 실제로 유지보수하면서 주석이 크게 도움되지 않았기 때문이다.

[클린코드]3.함수

9 분 소요

원칙을 아는 것만으로 함수 코드를 클린하게 작성하는 것은 쉽지 않아 보인다. 클린한 코드를 많이 접하고, 내가 작성한 코드를 다시 돌아보면서 비교해보고 리팩터링하는 과정이 반복되어야 숙달이 될 듯하다. 함수는 늘, 언제나, 항상 작성한다. 그만큼 연습의 기회가 많은 것이니 단순히 ...

[클린코드]2.의미있는 이름

7 분 소요

개발을 하다보면 변수, 클래스, 메서드의 이름을 깊게 고민하지 않을 때가 많다. 왜냐하면 일단 동작하도록 하는 데에 급급하기 때문이다. 하지만 결국 대충 지은 변수, 클래스, 메서드의 명칭은 나의 발목을 잡는다. 좋은 이름에 정답은 없다. 하지만 대부분의 프로그래머들이 경험적으로 ...