Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back

[TIL] 5장.구부러지거나 부러지거나

#pragmatic
4년 전
690

오늘 TIL 3줄 요약

  • 결합도를 줄이는 것은 역시 ETC!!!

  • 변환으로 생각하는 접근방식을 가지자

  • 상속을 대신하는 방식을 익히자!

TIL (Today I Learned) 날짜

2022. 03. 26

오늘 읽은 범위

5장.구부러지거나 부러지거나

책에서 기억하고 싶은 내용을 써보세요.

결합도 줄이기

  • 유연함을 유지하는 한 가지 좋은 방법은 물론 가능한 한 코드를 적게 작성 하는 것이다.

  • 높은 결합도는 변경의 적

  • 소프트웨어의 구조는 유연해야함

  • 메서드 호출을 엮지 말라

  • 전역 데이터는 여러 가지 방법으로 코드의 결합도를 높임

  • 전역적이어야 할 만큼 중요하다면 API로 감싸라

  • 결국은 ETC!!! 직접적으로 아는 것만 다루는 부끄럼쟁이 코드를 계속 유지하라!

변환 프로그래밍

  • 프로그램이란 입력을 출력으로 바꾸는 것! 이라는 사고방식을 가져라


    구조는 명확해지고 더 일관적으로 오류를 처리하게 되어 결합도 대폭 줄어듬

  • 요구사항에서 시작하는 게 변환을 찾는 가장 쉬운 방법,
    요구사항에서 입력과 출력이 무엇인지 찾기

  • 파이프라인 연산자를 사용하면 자동으로 데이터 변환의 관점에서 생각하게 됨

  • 코드를 일련의 (중첩된) 변환으로 생각하는 접근 방식은 프로그래밍을 해방 시킴

상속세

  • 상속도 일종의 결합

  • 더 나쁜 것은 다중 상속 문제

  • 상속을 쓸 필요가 없게 해주는 세 가지 기법
    - 인터페이스와 프로토콜
    - 위임
    - 믹스인과 트레이트

설정

  • 외부 설정으로 애플리케이션을 조정할 수 있게 하라

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

  • 아직 프로그램에 대한 경험이나 지식이 부족한 것 같다 내용중에 반절은 제대로 이해를 못했지만 그래도 알아가는 것은 확실하게 새기고 이해 못한 부분은 다음에 또 보면서 이해하자.

궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.

  • 유한 상태 기계?

  • 감시자 패턴?

  • 게시-구독?