DEV book/Clean Code

DEV book/Clean Code

[Clean Code] 3장 함수 (1)

프로그램을 만들 때 함수를 설계하는 것은 간단하지만 매번 어려운 작업이다. 함수를 만들고 나면 너무 많은 기능이 포함되어있는 것 같아 함수를 분리해야할 필요성을 자주 느낀다. 또, 변수 이름을 짓는 것만큼 함수 이름을 짓는 것도 매번 고뇌이다. 이러한 문제점들을 3장의 내용을 통해 해결의 실마리를 찾고 싶고, 어렴풋이 알고 있었던 "구조적 프로그래밍"의 개념도 확실히 익히고자 한다. 작게 만들어라 ! 필자는 Sparkle 이라는 자바/스윙 프로그램을 예시로 들어 적은 양의 코드의 중요성을 알려준다. Swing 은 자바의 GUI 컴포넌트의 한 종류이다. 이 프로그램은 각 함수가 명백하고, 각 함수가 이야기 하나를 표현한다. if, else, while문에 들어가는 블록은 한 줄이어야 한다. 그 줄에서 다른..

DEV book/Clean Code

[Clean Code] 2장 의미 있는 이름

아주 간단한 프로그램을 만들 때도 네이밍을 하는 것이 가장 고뇌이다. 이 장에서는 변수, 객체, 클래스, 함수 등 작명을 해야할 때 유념해야 할 규칙을 설명해주고 있다. 의도를 분명히 밝혀라 변수나 함수, 클래스의 이름에는 아래 질문에 답할 수 있는 정보가 포함되어야 한다. 변수(혹은 함수, 클래스)의 존재 이유는 ? 수행 기능은 ? 사용 방법은 ? 주석 없이 이름만으로 읽는 사람이 해당 자원의 정보를 캐치할 수 있도록 작명해야 한다. 코드는 단순하기보다는 함축적이어야 한다. 코드 맥락이 코드 자체에 명시적으로 드러나야하며, 이를 다양한 기법으로 구현할 수 있다. 아래 예시를 보자 ! public List getFlaggedCells(){ List flaggedCells = new ArrayList();..

DEV book/Clean Code

[CleanCode] 1장 깨끗한 코드

이전에 회사 인턴 면접을 볼 때, "좋은 코드"가 무엇인가? 에 대한 질문을 받았다. 돌아가기만 하는 코드를 짜왔던 나에게 좋은 코드에 대해서 깊이 생각해 본적이 없어서, "추후 유지보수 시 리팩토링하기 용이한 코드", "다른 개발자들이 읽기 쉬운 코드"라고 두루뭉술하게 답변했다. 추상적으로 말했지만, 구체적으로 프로그래밍 시 좋은 코드를 만들어 내는 방법을 알지는 못하였다. 어떻게 좋은 코드를 짤 수 있을지 개발자로서 한 번도 생각하지 못한게 나중에 실이 될 것 같아 "클린 코드"라는 책을 사서 읽게 되었다. 코드가 존재하리라 책에서도 언급했다시피, chatGPT와 같이 자동으로 코드를 생성해주는 시대가 왔다. 그러나 코드는 요구사항을 상세히 표현하는 수단이다. 따라서 인간의 창의력과 직관, 감정을 가..

MINGYUM
'DEV book/Clean Code' 카테고리의 글 목록