Development.

[DEV] 신인 프로그래머가 알아야 할 프로그래밍 6선

Chuuu_DevCamp:) 2020. 8. 17. 19:49
반응형

KISS - Keep It Simple, Stupid

코드 작성할 때 "단순성"과 "간결함"을 가장 중요한 항목으로 한다.

코드는 자연에 맡겨 수정 해가면 무질서 하게 되고, 복잡해질 수 있다.
그 결과, 구현 된 코드 읽기가 어렵고, 수정하기가 어려워 진다.
코드를 간단하게 유지하는 것 만으로도 수정하기가 용이해 진다.

프로그래밍을 할 때, "동작을 위한 가장 단순한 것은 무엇인지" 자주 물어보는 것이 필요하다.

DRY - Don't Repeat Yourself

같은 코드를 중복해서 쓰지 말자.
왜냐하면, 코드의 개선이 어려워지기 때문이다.
같은 코드가 여럿 있는 것으로 양적으로 더 많은, 질적으로 더 복잡한 코드가 되기 때문에, 코드 읽는 작업이 어려워 진다.
또한, 수정할 때도 중복해서 쓴 코드에 대해서 빠짐없이 고쳐야 한다.

따라서, 중복 코드 "함수화" 및 "모듈화"를 하고, 의미 있는 이름을 붙여 정의하는 것이 중요하다.

YAGNI - You Are not Going to Need It.

코드를 최소한으로 작성하자.
미리 다양한 사태에 대비하여 코드를 작성 해도, 결국엔 사용되지 않는 코드가 많다.
그리고 그것에 의해 코드에 쓸데없는 복잡성을 담아 내기 때문에, KISS의 원칙에도 역행한다.

단순 코드가 범용성이 더 좋다. 구체적으로 보편성 보다는 단순성을 생각하는 것이 중요하다. 따라서 "지금" 필요한 것만 우선 집중하자.

PIE - Program Intently and Expressively

코드는 의도가 분명히 표현 되게 작성해야 한다.
코드는 사람이 읽기 위한 것이며, 코드만이 소프트웨어 동작을 정확하고 완전하게 알기 위한 단서이다.
따라서, 소프트웨어의 동작을 파악하는 데는 쉬운 코드를 쓰고, 코드에서 그 의도를 전하는 수 밖에 없다.
구체적으로는 코드를 쓸 때 "쓰기 쉬움" 보다 "읽기 쉬움"을 중시해야 한다.

SLAP - Single Level of Abstraction Principle

코드를 쓸 때 높은 수준의 추상화 개념과 낮은 수준의 추상화 개념을 분리하자.
왜냐하면, 코드가 수준에 어울리는 함수로 분할됨으로써 "요약성"과 "열람성"을 동시에 충족시킬 수 있다.
같은 곳에는 같은 추상도의 처리와 같이 코드가 통일됨으로써, 코드는 거침없이 흐르고 이해하기 쉽다.

구체적으로 함수를 구조화하는 것이 중요하다.
하나의 함수에서 어느 부분에서는 DB 접속 처리, 다른 부분에서 Businees logic 실행이라는 높은 수준의 처리를 하지 않도록 하는 것이 중요하다.

출처: https://qiita.com/ryotanatsume/items/018cae5c5be8faba367a

'Development.' 카테고리의 다른 글

[DEV] CRT 라이브러리 사용하여 메모리누수 찾기  (0) 2023.08.29
[DEV] Google Test  (0) 2023.08.28