👍 좋은 코드란...?
이런 애매한 주제로 구글링해봤다.
생각보다 괜찮은 답변인데...?
첫 번째로는 잘 동작해야한다. 잘돌아가는 쓰레기가 안돌아가는 예술품보다 낫다는 말이 있다.
기능이 제대로 구현되고 나서는 이제 사람마다 다른 의견이 많은데, 크게는 가독성, 유지보수성, 효율성 등등 각기 다른 주장이 많다.
가독성: 읽기 좋은 코드를 말한다. 개발자들은 코드를 쓰는 시간보다 읽는 시간이 많다고 하고, 내가 아닌 다른 사람이 내 코드를 보는 경우도 당연히 많기 때문에 좋은 개발자의 좋은 코드로는 당연한 덕목인 것 같다.
유지보수성: 마찬가지로 코드는 내일의 내가 보면 오늘의 코드는 다른 사람이 쓴 코드같이 느껴질 때가 많다. 유지보수를 쉽게 하는 방법에 대해서는 수없이 많은 책이 나와있다.
테스트 용이성: 테스트가 가능한 코드는 잘 짜여진 코드일 확률이 높다.
효율성: 기업의 입장에서는 개발자들의 시간도 인적 리소스로 모두 자원이다. 최소한 사람이 투입되어서 최고의 결과물을 쓸 수 있도록 하는 방법에 대해서도 생각해볼 필요가 있다. 무조건 코드의 품질만을 생각하는 것은 장인 정신에 가깝고, 기업 입장에서는 코드의 품질을 조금 포기하더라도 비용이 덜 드는 코드를 선호할 수도 있지 않을까..?
좋은 코드라... 언젠가 되지 않을까!
직접 하다보면....!
💋 좋은 코드를 작성하기 위해 노력할 일
1. 하고자하는걸 README에 정리하자! 생각하는 것보다 써서 보이는게 강력하다.
2. 커뮤니케이션을 많이 하면서, 다른 사람들의 노력을 들여다 보자.
3. 구조를 잡고 시작하자!!!
4. 일관성을 유지하자. 새로운 지식을 알았어도 기존 코드를 다 갈아엎으면 안된다.
5. 여러 상황(due, 시간안배, 체력, 비용)을 고려해서 최적의 코드를 작성하는 것이 훌륭한 프로그래머이다.
코드 품질이 중요한 이유는 무엇일까? 높은 연봉을 받기 위해서...?
코드 품질이 높은 코드를 작성하는 프로그래머가 좋은 프로그래머일까? 많은 시행착오를 겪어 그렇게 되었으므로!
또 코드를 보며 많은 경우의 수를 생각하는 능력을 지녔으므로 좋은 프로그래머라고 볼 수 있을 것 같다.
'우아한테크코스5기' 카테고리의 다른 글
[우테코] 웹 기초: HTML, CSS, JS를 사용해 자기소개 페이지 만들기 (0) | 2023.02.17 |
---|---|
[우테코] TDD (Test Driven Development): 테스트 주도 개발이 뭐지? 사용하는 이유? (0) | 2023.02.14 |
[우테코] 단위테스트: 좋은 단위테스트에 대한 고민... 단위테스트는 꼭 필요한 것일까? (0) | 2023.02.08 |
[우테코] 자바 쌩초보의 우아한테크코스 5기 최종 합격 후기 (11) | 2023.01.02 |
[우테코] 우아한테크코스 5기 프리코스 4주차 다리건너기 회고 (0) | 2022.11.22 |