본문 바로가기

5

당신의 완벽한 1년 당신의 완벽한 1년  1. 줄거리이 책은 두 명의 주인공의 이야기가 서로 다른 시간대에 교차되며 전개된다.한 명의 남자 주인공인 요르단은 고명한 출판사의 사장으로 물질적으로 부족함이 없이 지내며절제되고 완벽한 삶을 살아가는 것처럼 보인다. 하지만 그는 작중 초반에 아내와 이혼한 상태이며아내는 요르단의 친한 친구와 재혼한다. 또한 요르단은 출판사의 사장이지만 사실상 경영을 맡는 사람은 따로 있고요르단은 바지사장으로써 명목상으로만 사장의 역할을 하고 있을 뿐이다. 작중 초반의 요르단은 자신은 틀리지 않았다고 믿으며자신의 상황에 불합리함과 모종의 열등감을 품는다.또 한명의 여자 주인공인 한나는 매우 긍정적인 사고를 가진 평범한 시민이다.한나는 특유의 긍정적 사고와 행동력으로 어린이 교실을 창업하고 성공적으로 .. 2025. 1. 8.
9. 단위 테스트 단위 테스트 1. 단위 테스트의 필요성 실제 코드는 여러 가지 요인에 의해서 변하기 마련이다. 실제 코드를 변경하면 상황에 따라 테스트 코드 또한 변경해 줘야 할 필요가 있다 하지만 작성되어 있는 테스트 코드가 가독성이 낮고, 복잡하게 구성되어 있다면 테스트 코드를 변경하기에는 어려움이 따르고 실제 코드를 변경하는데 걸림돌이 될 수 있다. 역으로 보기 좋게 작성된 단위 테스트는 코드에 유연성, 유지 보수성, 재사용성을 제공한다. 앞서 언급된 것처럼 가독성이 낮고 복잡한 테스트 코드는 실제 코드 변경에 어려움을 겪게 한다. 하지만 잘 짜인 단위 테스트는 실제 코드의 변경에 따른 변경사항과 사이드 이펙트를 쉽게 파악할 수 있게 해 준다. 또한 실제 코드의 변경에 따라 단위 테스트 역시 유연하게 수정될 수 있.. 2023. 6. 23.
6. 객체와 자료 구조 객체와 자료 구조 (어떤) 시스템을 구현할 때, 새로운 자료 타입을 추가하는 유연성이 필요하면 객체가 더 적합하다. 다른 경우로 새로운 동작을 추가하는 유연성이 필요하면 자료 구조와 절차적인 코드가 더 적합하다. 우수한 소프트웨어 개발자는 편견 없이 이 사실을 이해해 직면한 문제에 최적인 해결책을 선택한다. -요약- 어설픈 캡슐화를 지양하고 추상화를 활용해라. 객체와 자료 구조를 명확히 구분하고 사용해라. 1. 객체 지향 1.1 모든 필드에 get과 set을 만들지 마라 모든 필드에 get()과 set()을 만든다면 이 객체는 자료 구조와 다를 바 없다. 형식적인 캡슐화를 하지말고 추상화를 통해 객체 내부의 값을 숨기고 역할을 부여하자 이런 방식은 더 유연하고 확장 가능한 코드를 작성하는데 도움이 된다... 2023. 6. 18.
5. 형식 맞추기 형식 맞추기 뚜껑을 열었을 때 독자들이 코드가 깔끔하고, 일관적이며, 꼼꼼하다고 감탄하면 좋겠다. 질서 정연하다고 탄복 하면 좋겠다 모률을 읽으며 두 눈이 휘둥그래 놀라면 좋겠다. 전문가가 짰다는 인상을 심어주면 좋겠다. 그 대신에 술 취한 뱃사람 한 무리가 짜놓은 듯 어수선해 보인다면 독자들은 프로젝트의 다른 측면도 똑같이 무성의한 태도로 처리했으리라 생각할 것이다. -요약- 읽히기 편한 코드 형식을 추구해라. 팀이 정한 규칙을 준수하고 일관성을 유지하라. 1. 읽히기 편한 코드 형식 1.1 신문 기사처럼 코드를 작성하라 신문은 가장 중요한 기사가 상단에 있고 아래로 내려가면서 그에 대한 세부적인 기사들이 나열된다. 코드 또한 추상화단계가 높은 코드가 상단에 위치하고 그에 종속되는 코드가 바로 아래에 .. 2023. 6. 18.