나도 처음에 개발할 때는 클린코딩이나 리팩토링 이런걸 되게 중요하게 생각했었음
그런데 개발하면 할수록 클린하다는 개념 자체가 생각보다 꽤나 주관적이구나라는 생각이 들음. 클린코드에 대한 기준이 달라서 감정 상하는 경우도 종종 봤고 ㅋㅋ
또, 클린하게 짠답시고 이상하게 모듈화해놓거나, 언제든 깨질 수 있는 가정들 무리하게 만들어서 추상화해놓은 코드들을 실무에서 많이 접하게 되었음. 뭐 이건 내가 별로 좋지 않은 회사를 다닌 탓도 있겠지만 ㅜ
이렇게 모듈화할거면 차라리 풀어쓰는게 낫지않나 생각이 많이 들음. 실제로도 풀어쓴, 하드코딩된 코드들 읽거나 고치는게 훨씬 쉬웠었음
클린코드든 리팩토링이든 결국 좋은 비지니스와 소프트웨어를 위한 하나의 수단에 불과하다고 생각함. 근데 그거자체가 목적인 개발자들도 생각보다 많아보이더라. 자기가 클린하게 쓴다고 목에 힘들어간 사람들도 많이 봄.
여튼 그래서 요즘 클린코딩 이런 단어보면 거북한 느낌이 되게 많이 들음.. 스트레스다 이거때문에.
번외로 단순 자기만족을 위해서 유행하는 기술, 유행하는 아키텍쳐들을 실무에 무리하게 적용해서 팀 전체에 해를 끼치는 사례들을 종종 보다보면 유행하는 기술에 대한 나도 모를 반감이 생기더라.
내 역량이 부족한 탓인지 뭐.. 여러모로 감정적으로 쉽지 않다고 느끼는 요즘.
그런데 개발하면 할수록 클린하다는 개념 자체가 생각보다 꽤나 주관적이구나라는 생각이 들음. 클린코드에 대한 기준이 달라서 감정 상하는 경우도 종종 봤고 ㅋㅋ
또, 클린하게 짠답시고 이상하게 모듈화해놓거나, 언제든 깨질 수 있는 가정들 무리하게 만들어서 추상화해놓은 코드들을 실무에서 많이 접하게 되었음. 뭐 이건 내가 별로 좋지 않은 회사를 다닌 탓도 있겠지만 ㅜ
이렇게 모듈화할거면 차라리 풀어쓰는게 낫지않나 생각이 많이 들음. 실제로도 풀어쓴, 하드코딩된 코드들 읽거나 고치는게 훨씬 쉬웠었음
클린코드든 리팩토링이든 결국 좋은 비지니스와 소프트웨어를 위한 하나의 수단에 불과하다고 생각함. 근데 그거자체가 목적인 개발자들도 생각보다 많아보이더라. 자기가 클린하게 쓴다고 목에 힘들어간 사람들도 많이 봄.
여튼 그래서 요즘 클린코딩 이런 단어보면 거북한 느낌이 되게 많이 들음.. 스트레스다 이거때문에.
번외로 단순 자기만족을 위해서 유행하는 기술, 유행하는 아키텍쳐들을 실무에 무리하게 적용해서 팀 전체에 해를 끼치는 사례들을 종종 보다보면 유행하는 기술에 대한 나도 모를 반감이 생기더라.
내 역량이 부족한 탓인지 뭐.. 여러모로 감정적으로 쉽지 않다고 느끼는 요즘.
나도 클린 코딩은 좀 역함. 결국 내 클린과 니 클린은 다른데 내 클린만 맞다고 우기는 꼴이잖아 그래도 리팩토링과 테스트 코드는 정답이라고 생각하는 편임 이 두개는 내가 맞다고 우기는게 아니라 난 이렇게 생각한다는 표현 방식의 일종이라고 봐서
수단이 목적을 잡아먹어버리는 케이스 정말 많음
ㅇㅈ
소프트웨어 개발에 정답이 존재한다는 생각은 너무나도 위험하다. 왜냐하면 소프트웨어 개발은 어떤 길을 선택하든 좆같기 때문이다
내가 그래서 자바를 좀 싫어해. 쓸 때 없이 너무 길고 쓸 때 없이 너무 복잡하게 짜.
나도 리펙토링 과 테스트코드는 정답이라 생각해. 하지만 지나친 엄격함과 디자인 패턴은 과잉 설계를 유발하는 경우가 많아.
나도 여기에 동의. 리팩토링과 테스트코드는 옳다
본문에선 오버엔지니어링 문제로 보임
클린코딩이라는 말로 자신의 오버엔지니어링 설계를 밀어붙이는게 문제인거지 클린코딩은 죄가 없다.
외부랑 접촉이 많은 부분들은 그래도 단순한 레벨의 추상화 + 캡슐화를 해두면 비용절약에 도움이 되는것 같고 추상모듈은 깨질 확률이 높아서 많이 못하겠음. 그래서 추상레벨을 코드로 표현하지 않고 주석으로 표현하여 개념만 구현.
쓸데 없이 추상화하고 제약 걸어서 인생이 힘들어지는 걸 섣부른 추상화 Premature Abstraction라고 부르고 싶음..
C/C++ 유저들은 클린코드 읽고 걍 그럽갑다 하고 넘어가는데 다른 언어유저들은 신봉하는게 너무 좀 그래;;
내가 한번 리팩터링 신봉의 끝에 달해봤는데 크게 의미없더라. 팀단위의 뭔가는 기대 안하고 그냥 정원 가꾸는 느낌으로 내꺼 잘하자는 생각 정도
코드스멜을 줄이는 게 핵심인듯. 코드를 봤는데 이게 팀원중 누가 짠건지 딱 알아볼 수 있다면 문제가 있는 거임. 그 코드가 좋은 코드인지는 상관없음. 아무리 좋아도 혼자 동떨어진 코드는 안좋음. 팀 전체에 적용해야지 - dc App