🤜 Serialiazer를 이용해서 직렬화/역직렬화 과정을 이해하기!또는 Pycharm에서 제공하는 Python Console을 사용한다.CategorySerializer를 사용할 것이고 3개의 필드로 구성되어있다.Category 모델의 데이터를 조회하면 3개의 데이
🔖 오늘 읽은 범위 : 9장, 단위 테스트 (p.152 ~p.169)😃 책에서 기억하고 싶은 내용을 써보세요.TDD 법칙 세 가지실패하는 단위 테스트를 작성할 때까지 실제 코드를 작성하지 않는다.컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작
🔖 오늘 읽은 범위 : 7장, 오류 처리 (p.130 ~p.142)😃 책에서 기억하고 싶은 내용을 써보세요.오류 코드보다 예외를 사용하라 (p.130)오류가 발생하면 예외를 던지는 편이 낫다. 그러면 호출자 코드가 더 깔끔해진다.Try-Catch-Finally 문
🔖 오늘 읽은 범위 : 6장, 객체와 자료구조(p.118 ~p.128)😃 책에서 기억하고 싶은 내용을 써보세요.자료 추상화 (p.119)추상 인터페이스를 제공해 사용자가 구현을 모른 채 자료의 핵심을 조작할 수 있어야 진정한 의미의 클래스다.자료를 세세하게 공개하
🔖 오늘 읽은 범위 : 5장, 형식 맞추기 (p.96 ~ p.116)😃 책에서 기억하고 싶은 내용을 써보세요.팀으로 일한다면 팀이 합의해 규칙을 정하고 모두가 그 규칙을 따라야 한다. (p.96)오늘 구현한 코드의 가독성은 앞으로 바뀔 코드의 품질에 지대한 영향을
🔖 오늘 읽은 범위 : 4장, 주석 (p.68 ~ p.94)😃 책에서 기억하고 싶은 내용을 써보세요.사실상 주석은 기껏해야 필요악이다. (p.68)우리는 코드로 의도를 표현하지 못해, 그러니까 실패를 만회하기 위해 주석을 사용한다.주석을 달 때마다 자신에게 표현력이
🔖 오늘 읽은 범위 : 3장, 함수 (p.40 ~ p.65)😃 책에서 기억하고 싶은 내용을 써보세요.함수를 만드는 첫째 규칙은 ‘작게!’다. 함수를 만드는 둘째 규칙은 ‘더 작게!’다. (p.42)각 함수가 이야기 하나를 표현했다. 각 함수가 너무도 멋지게 다음 무
🔖 오늘 읽은 범위 : 2장, 의미 있는 이름 (p.22 ~ p.38)😃 책에서 기억하고 싶은 내용을 써보세요.좋은 이름을 지으려면 시간이 걸리지만 좋은 이름으로 절약하는 시간이 훨씬 더 많다. (p.22)변수의 존재 이유는? 수행 기능은? 사용 방법은? 따로 주석
🔖 오늘 읽은 범위 : 1장, 깨끗한 코드 (p.11 ~ p.20)😃 책에서 기억하고 싶은 내용을 써보세요.데이브는 깨끗한 코드란 다른 사람이 고치기 쉽다고 단언한다. (p.11)테스트 케이스가 없는 코드는 깨끗한 코드가 아니다. 아무리 코드가 우아해도, 아무리 가
🔖 오늘 읽은 범위 : 1장, 깨끗한 코드 (p.1 ~ p.10)😃 책에서 기억하고 싶은 내용을 써보세요.기계가 실행할 정도로 상세하게 요구사항을 명시하는 작업, 바로 이것이 프로그래밍이다. (p.2)하지만 어느 순간에는 정밀한 표현이 필요하다. 그 필요성을 없앨
🔖 오늘 읽은 범위 : 추천사 ~ 들어가면서😃 책에서 기억하고 싶은 내용을 써보세요.사소한 곳에서 발휘하는 정직은 사소하지 않다. (p.xxii)책임 있는 전문가라면 프로젝트를 시작할 때 생각하고 계획할 시간을 확보해야 한다 (p.xxii)훌륭한 소프트웨어 기법은
서버에 있는 페이지들 중 어떤 것이 클라이언트에게 맞는지 판단하는 세 가지 다른 방법이 있다.클라이언트 주도 협상 서버 주도 협상 투명한 협상 클라이언트가 요청을 보내면, 서버는 클라이언트에게 선택지를 보내주고, 클라이언트가 선택 장점 서버 입장에서
서버는 클라이언트에게 문서의 문자와 언어를 HTTP Content-Type charset 매개변수와Content-Language 헤더를 통해 알려준다.동시에, 클라이언트는 서버에게 사용자가 어떤 언어를 이해할 수 있고 어떤 알파벳의 코딩 알고리즘이브라우저에 설치되어 있
인증(기본, 다이제스트)과 메시지 무결성(qop="auth-int")을 제공하는 방법은 대체로 쓸만하지만보안에 강력하지는 않다. 더 중요한 트랜젝션을 위해서, HTTP와 디지털 암호화 기술을 결합해야한다.다음음 제공해 줄 수 있는 HTTP 보안 기술이 필요하다.서버 인
HTTP는 사용자 인증을 하는 데 사용하는 자체 인증요구/응답 프레임워크를 제공한다.웹 애플리케이션이 HTTP 요청 메시지를 받으면, 서버는 요청을 처리하는 대신에 현재 사용자가누구인지를 알 수 있게 비밀번호 같이 개인 정보를 요구하는 '인증 요구'로 응답할 수 있다.
현대의 웹 사이트들은 개인화된 서비스를 제공하고 싶어한다. 네트워크로 연결된 사용자들에 대해 더 많이 알고 싶어하고 사용자들의 검색 내용 등을 기록하고 싶어한다. 그러한 내용을 바탕으로 사이트를 개인화시켜서 사용자에게 제공한다.개별 인사개인에게 맞춰져 있는 것 처럼 보
웹 로봇은 사람과의 상호작용 없이 연속된 웹 트랜젝션들을 자동으로 수행하는 소프트웨어 프로그램크롤러, 스파이더, 웜, 봇 등 다양한 이름으로 불린다. 웹 로봇의 몇 가지 예를 들어보자.주식시장 서버에 매 분 HTTP GET 요청을 보내고, 얻은 데이터를 활용해 주가
모든 리소스를 한 개의 애플리케이션으로만 처리할 수 없는 문제를 해결하기 위해인터프리터 같이 리소스를 받기 위한 경로를 안내하는 역할을 하는 게이트웨이를 고안해냈다.게이트웨이는 요청을 받고 응답을 보내는 포털 같이 동작하는데, 동적인 콘텐츠 생성 및 데이터 베이스에 질
복수의 클라이언트가 자주 쓰이는 원 서버 페이지에 접근할 때, 서버는 클라이언트들에게 각각 한 번씩 전송하게 된다. 같은 내용의 데이터 전송이 반복적으로 이루어진다.이 불필요한 데이터 전송은 네트워크 대역폭을 잡아먹고, 전송을 느리게 하며, 웹 서버에 부하를 준다. 캐
웹 프락시 서버는 클라이언트 입장에서 트랜젝션을 수행하는 중개인이다.HTTP 프락시 서버는 웹 서버이기도 하며 웹 클라이언트이기도 하다.!\[&하나의 클라이언트만을 위한 프락시를 개인 프락시라고 부르며, 여러 클라이언트가 함께 사용하는 프락시는 공용 프락시라 부른다.공