Published 2021. 5. 15. 09:35
반응형

사람들은 이건 좋은 코드야 이건 안좋은 코드야 라는 말을 합니다.

이에 대해 객체지향 생활체조 원칙, TDD, DDD 등 여러가지 기법들이 존재 합니다.

하지만 항상 저러한 이상적인 원칙을 따를 수는 없다고 생각 합니다.

각 상황마다 너무 너무 적용할 수 있는 사례들이 다르기 때문 입니다.

간단한 예로 반드시 객체지향 생활 체조 원칙의 else문을 사용하지 말아라. 들여쓰기는 1단계만 해라. 등과 같은 것들이 있습니다.

저는 이를 토이 프로젝트를 할 때는 더 심하게 지키려고 하지만 회사에서는 문화가 그렇지 않기 때문에 어느정도만 지키려고 합니다.

이는 핑계가 될 수도 있겠지만, 효율적인 것이라고 생각 합니다. SI에서 진행 하다보니 코드 구조를 제대로 알기가 힘듭니다.

코드의 역사를 제대로 알아야 과거 코드가 이렇게 짜진 이유도 알 수 있고, 그에 대해 리팩토링도 할텐데, SI 특성상 거의 불가능에 가깝다고 봅니다.

그래서 생각을 해봤습니다. 나는 좋은 코드를 만들고 싶은데.. 회사에서는 안되겠는데?? 그래서 개발문화가 잘 잡힌 곳을 가려고 하는구나!!

라고 느꼈습니다.

그래서 좋은 코드란 무엇일까?? 생각 해보게 되었습니다.

좋은 코드란 위의 이상적인 내용을 지키는 것이라면 베스트라고 생각 합니다. 하지만 그럴 수 없는 상황이라면 그 상황에 맞추어가는 것이 베스트라고

생각 합니다. 당연히 원칙적으로는 안좋은 코드이지만, 그러한 환경에서 바꾸기란 정말 힘듭니다. 우리의 서비스로써 꾸준히 리팩토링이 가능하다면

모르겠지만, 리팩토링이 공유가 되지 않는 SI환경이라면 오히려 더 좋게 코드를 짠다고 다른 방식으로 짜게 되면 코드는 더욱 규칙이 사라지게

되므로 매번 프로젝트가 진행될 때 마다, 혼란이 생기기 쉽다고 생각 합니다.

그래서 결국 좋은 코드를 짜고 싶은 사람들이 모은 곳을 가서 개발을 해야 한다고 생각 합니다.

결론

좋은 코드란 보통 이야기 하는 규칙들을 지키는 것도 맞지만, 항상 그럴 수는 없기 때문에 어느정도 타협은 필요하다.

정말 좋은 코드를 만들고 싶다면 그런 마음을 가진 사람들이 모인 곳, 그런 환경으로 가야 가능 하다고 생각 한다.

반응형

'기타 IT' 카테고리의 다른 글

싱글톤에서의 상태값  (0) 2021.09.26
IoC, DI 컨테이너  (0) 2021.09.26
라이브러리와 프레임워크 차이  (0) 2021.09.26
객체지향 프로그래밍이 뭔가요?  (0) 2021.05.15
개발 기본 개념들  (0) 2021.05.15
복사했습니다!