요즘 자료구조와 알고리즘에 대해 공부하고 문제를 풀어보면서 알고리즘은 가장 효율적인 방법을 찾기 위한 거라면 좋은 코드는 무엇을 말하는 걸까 라는 생각이 떠올랐다. 특히 프로젝트 때에 이 고민이 많아서 끝나고 꼭 찾아봐야지 했는데 다른 공부들을 하면서 잊고 있었다. 그래서 오늘 생각난 김에 찾아보며 정리해보았다. 한 줄로 정리하자면 코드 그 자체로 설명이 다 되는 코드인 것 같다. 협업에 있어서 매우 중요하고, 유지보수를 위해서도 필수적이라고 깨달았다.
그리고 프로젝트가 끝나고 나는 TIL을 멈추고 다시 노션에서 공부한 것들을 간단히 정리하고 말았는데 프로젝트 때 TIL을 쓰던 때보다 잘 기억에 안 남고 아쉬운 느낌이어서 간단히라도 다시 TIL을 열심히 쓰고자 한다! 추가로 더 확실히 정리하고 싶은 내용들은 따로 블로그에서 TIL 외 다른 카테고리에서 기록해보고도 싶다!
가장 기억에 남았던 드림코딩 엘리님의 영상에서는 코드 리뷰 시 자주 등장하는 용어(DRY, KISS, YAGNI)를 통해 클린 코드를 작성하는 팁을 다루어 배울 수 있었다.
1. DRY (Don't Repeat Yourself) : 반복하지 마라. 계속 반복되는 로직이 나오게 하지 말자. 라는 원칙이다. 재사용성과 유지보수성이 높아진다. 반대되는 말은 WET ( Write Every Time, Write Everything Twice, Waste Everyone's Time )!
2. KISS (Keep It Simple, Stupid) : 누구나 이해할 수 있도록 심플하고 간결하게 코드 작성, 한 가지의 책임만 담당할 수 있도록 최대한 심플하게 작성하자.
3. YAGNI (You Ain't Gonna Need It) : 필요없는 기능을 작성하지 말자. (필요하지 않은 기능, 사용하지 않는 기능, 지나치게 미래지향적인 기능 등), 시스템에서 야그니를 통해서 불필요한 요소들을 제거하고, 키스를 통해서 심플함을 추가하면 퀄리티 있는 코드, 시스템을 만들 수 있다.
내용 출처: https://youtu.be/jafa3cqoAVM
기본적으로 이 정도를 정리하고 결국은 이점을 잘 기억하며 내가 더 많이 해보고, 회사에서 팀원분들과 일하며 더 확실히 배우고 깨닫게 될 것이라고 생각했다. 그래서 시간이 지나서 다시 정리하는 시간을 가질 것이다. 그때 내가 생각이 달라졌는지, 잘 지키며 하고 있었는지에 대해 비교해보고 싶다!
'🔖 Daily > Today I Learned🌱' 카테고리의 다른 글
[16JUN, 2021] TIL (0) | 2021.06.16 |
---|---|
[15JUN, 2021] TIL (0) | 2021.06.15 |
[22APR, 2021] TIL (0) | 2021.04.23 |
[21APR, 2021] TIL (0) | 2021.04.22 |
[20APR, 2021] TIL (0) | 2021.04.21 |