개발자 99% 커뮤니티에서 수다 떨어요!
TIL (Today I Learned)
2022.02.19
오늘 읽은 범위
1장. 깨끗한 코드
책에서 기억하고 싶은 내용을 써보세요.
코드 : 기계가 실행할 정도로 상세하게 요구사항을 명시하는 작업(프로그래밍) 결과
작업 기한을 맞추기 위해 나쁜 코드를 작성하면 나쁜 코드로 인해 반복적으로 비효율적인 코드 작성을 하게 되는 악순환이 생김. 나쁜 코드는 업무 속도를 늦추게 되는 것을 알면서도 나쁜 코드를 작성하지 않기 위한 시간을 들이지 않는 것이 문제다.
클린 코드란?
- 세세한 사항까지 꼼꼼하게 처리하는 코드 (철저한 오류 처리)
- 잘 쓴 문장처럼 읽히는 가독성이 좋은 코드
- 다른 사람이 고치기 쉬운 코드
- 단위 테스트 케이스와 인수 테스트 케이스가 존재
- 중복이 없는 코드
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
코드를 짤 때 원하는 기능만 수행하게 된다면 더 이상 코드 개선을 하지 않았었는데, 이 행동이 잘못됐다는 것을 깨달았다. 지금은 작은 기능을 하는 프로그램이나 알고리즘을 작성하니까 치명적인 문제는 경험하지 못했는데, 규모가 커질수록 나쁜 코드로 인한 악영향은 거대하기 때문에.. 개선하는 방법을 고민하고 코드를 구체적이면서 깔끔하게 작성하는데 시간을 더 써야겠다고 생각했다
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
추상화 :
구체적인 것을 감추고, 보고 싶어하는 전체적인 특성을 드러내는 것.
생각의 단위를 묶어서 그룹으로 만들 수 있으며, 그것이 무엇을 의미하는지를 알 수 있도록 해줌
소프트웨어 개발에서의 추상화
인터페이스에 의존하고, 구체적인 구현에는 의존하지 않는 것
ex) 함수
가. 테스트 케이스(Test Case)의 정의
- 특정 프로그램의 부분 및 경로를 실행해보거나, 요구사항에 준수하는지 확인하기 위해 개발된 입력 값, 조건, 예상된 결과 세트
나. 테스트 케이스의 중요성
- 오류감소, 비용감소, 의사소통