기존의 코드와 상관없이 독립적인 개발을 진행 할 수 있음git 데이터를 변경사항으로 저장하지않고 일련의 스냅샷으로 기록함.커밋은 현 stage area 데이터의 스냅샷 + 포인터 + 저자 + 메타데이터 등을 포함하는커밋객체를 저장한다. 따라서 현재 커밋이 이전 커밋을
객체들에 명확하게 정의된 책임과 역할을 지녀야한다. 책임과 역할이 흐려진다면 객체간의 어떤 협력도 없을것이다.
창발적 설계의 4가지 규칙을 지키면 소프트웨어의 품질이 높아진다.1순위 - 모든 테스트를 실행2순위 - 중복을 없앤다3순위 - 의도를 표현4순위 - 클래스와 메서드를 최소화테스트를 철저히 거쳐 모든 테스트를 항상 통과하면 "테스트가 가능한 시스템"이다테스트가 가능한 시
외부코드를 사용할때 우리 코드와 깔끔하게 통합하는 방법에 대해 알아보자 우리는 종종 외부 코드(ex라이브러리)를 사용하면서 우리의 코드와 외부 코드간의 경계에서 복잡한 상황 또는 에러에 봉착한다. 캡슐화 책에서 Map인터페이스의 예시를 들었는데 Map을 여기저기에
좋고 나쁜 주석의 내용에 대해 알아보자.간결한 정리를 위하여 코드를 \~\~~로 생략하고 주석을 // 주석내용 통일한다.프로그래밍 언어 자체의 표현력이 풍부하다면 주석은 필요없다주석을 어떻게 쓸지 고민할 시간에 코드의 표현력에 신경써라지저분한 로직에 주석을 달기보단,
http 통신의 근간인 https메시지에 대해 알아보자 메시지의 흐름 인바운드 : 클라이언트 -> 프락시 -> 서버 아웃바운드 : 서버 -> 프락시 -> 클라이언트 즉, request를 인바운드, response를 아웃바운드로 보자. > http 메시지의 흐름은 다
하나의 페이지를 가져오고, 그 페이지가 가르키는 모든 페이지를 가져오는 방식을 재귀적으로 동작웹을 돌아다니며 끌어 모은 데이터를 DB에 저장하여 검색기능지원루트집합 이라는 출발점의 URL 집합을 가진다. 루트집합은 여러 페이지로 연결되는 아주 큰 사이트와 고립된 아주
http 는 여러 언어와 문자로 된 국제문서의 전송을 지원해야한다. 엔터티 본문은 단순 비트들로 채워져있는데, 이 장에서는 이를 문자언어로 지원해주는 문자집합 인코딩과 언어태그에 관해 알아보자서버는 아래 헤더를 통해 문서의 문자와 언어를 알려준다 Content-Type