다섯 줄 코드의 DEV3L - 어떻게, 언제 재구성

재구성 마니아들은 적당한 단원 테스트가 없으면 재구성할 수 없다는 것을 알려줄 것이다. 다섯 줄 코드는 사용할 수 있는 테스트가 없다고 가정하고 (높은 격려를 받았음에도 불구하고) 실용적인 인코딩 모드 (XP/Clean Code/Refactoring) 를 제공하며, IDE와 컴파일러를 이용하여 '안전한 것' 이라고 여긴다.
크리스티안 클로슨(Christian Clausen)은 기술이 민첩하고 실천적인 기초 지식을 한데 엮는 데 뛰어나다. 이런 기초 지식은 초보자에게는 이해하기 쉽지만 우리 중 가장 나이가 많은 개에게 사고를 불러일으키고 기교를 가르치기에 충분하다.

재구성 - 코드를 파괴하지 않는 상황에서 나쁜 코드를 좋은 코드로 바꾸는 규칙.만약 네가 자주 이렇게 한다면 효과가 가장 좋고 원가가 가장 낮을 것이다.

좋은 부호

  • 인간가독
  • 유지 관리
  • 예상 작업 수행
  • Time is expensive, make easy to read Make change easy, then make easy change가독성-코드가 의도를 전달하는 능력
    서비스 용이성-고유의 위험 변경
    Readability over Performance
    (except when performance matters)
    

    규칙.


    규칙-오행

  • 5행 미만
  • 제한이 있는 것보다 중요하지 않은 특정 제한
  • 추출 방법
  • 댓글이 제취제처럼 엉망진창인 코드에 쓰여요.

    규칙 - 호출 또는 통과

  • 동시 호출 또는 통과가 아니라 호출 또는 통과
  • 동일 추상 수준 유지
  • 이름을 곰곰이 생각하다

    규칙. - 처음에만.

  • if는 함수 중의 첫 번째 일일 것이다

  • 규칙 - If 및 Else 사용 안 함


  • 제어되지 않은 데이터 형식을 검사하지 않는 한
  • if-else 하드코딩으로 결정
  • Push Code Into Classes 재구성 모드는 Replace Type Code With Classes의 확장으로

    규칙-영원히 스위치를 사용하지 마라


  • 어떠한 상황에서도 기본값과 반환이 없는 경우
  • 규칙 - 인터페이스에서만 상속

  • 공유 코드로 결합
  • Favor object composition over inheritance
    
    IDE는 사용되지 않은 코드를 나타냅니다. 삭제합니다!

    규칙 - 일반 조건 사용

  • 명령 및 쿼리 분리
  • 재구성은 모든 코드를 이해할 필요가 없다.

    전략 모델은 강력한 재구성 도구다.

    규칙. - 하나밖에 없는 인터페이스.

  • 인터페이스 신호 변화;없으면 심지 모델에 비용 증가
  • 규칙 - Getter 또는 setter를 사용하지 마십시오.

  • 강제 푸시 기반의 체계 구조, 유형 행위

  • Law of Demeter - Don't talk to strangers
    Getters mask violations
    

    규칙-영원히 공통된 접미사는 없어야 한다

  • 코드에 공통된 접두사나 접두사가 있어서는 안 된다
  • 진실한 세계


    실행 순서
  • 시퀀스 불변/시간 결합 제거
  • 구조 함수/생명주기 이벤트 이용
  • Listen to compiler's output, including its warnings다중 스레드로 가변 데이터 공유 방지
    제로 컴파일러 경고 - 파창 이론
    주석은sus, 냄새이며, 불결한 코드의 제취제로 사용할 수 없습니다
    코드만 논평할 수 없는 내용--왜 평론을 해요, 평론이 아니라.Code is a liability"복잡성 추가-""기술 채무"""
  • 무지
  • 폐기물
  • 채무
  • 저항
  • - 80/20
    그 어떠한 미사용 물건도 잠재력이 어떻든지 간에 일종의 지출일 뿐이다

    공통성과 최적화는 단순성을 희생한다. 불리한 영향을 최소화하기 위해 예방 조치를 취한다.
    상상 속의 문제가 아니라 눈앞의 문제만 해결하다Maximize amount of work not done별도의 증명이 없는 한 코드는 유효합니다. 읽을 수 있는 대가로 너무 빠른 성능 최적화를 피하고 최적화가 필요할 때 성능 테스트를 설정합니다.
    격리 최적화 코드 # 마력
    만약 그것을 좋아지게 할 수 없다면, 그것을 돋보이게 해라
    코일 복잡도는 테스트 횟수의 하한선이다. 코드의 모든 경로에 코일 복잡도가 있다.
    Improving through small steps is what refactoring is about
    

    규칙 개요

  • 5행
  • 호출 또는 통과
  • if 시작할 때만
  • ifelse 함께 사용하지 마십시오.
  • 사용하지 마십시오switcth
  • 인터페이스
  • 만 상속
  • 사용 순 조건
  • 인터페이스가 없고 1개만 가능
  • Getter 또는 setter
  • 를 사용하지 마십시오.
  • 공통된 접미사가 없었다

  • 참고 간행물 이벤트:,

    좋은 웹페이지 즐겨찾기