목록CS (6)
게으른개발너D
1. RESTful API RESTful API는 두 컴퓨터 시스템이 인터넷을 통해 정보를 안전하게 교환하기 위해 사용하는 인터페이스이다. 1.1 API API (Application Programming Interface)는 다른 소프트웨어 시스템과 통신하기 위해 따라야하는 규칙을 정의한다. 개발자는 다른 애플리케이션이 프로그래밍 방식으로 애플리케이션과 통신할 수 있도록 API를 표시하거나 생성한다. 웹 API는 클라이언트와 웹 리소스 사이의 gateway(출입구, 통로)라고 할 수 있다. 1.1.1 클라이언트 클라이언트는 웹에서 정보에 접근하려는 사용자이다. 클라이언트는 API를 사용하는 사람이거나 소프트웨어 시스템일 수 있다. 1.1.2 리소스 리소스는 다양한 애플리케이션이 클라이언트에게 제공하는 ..
Client(browser)에서 서버에 Request를 하면 서버는 Response를 보낸다. 적절한 처리가 이루어져서 성공 응답과 함께 결과 값을 보내주기도 하고, 정상적인 처리가 되지 않은 경우에는 실패 응답과 함께 에러 정보를 보내주기도 한다. HTTP 서버 응답 코드는 100번대 단위로 구분되어 있다. 세자리 숫자의 첫번째 숫자(Response Class)만 보고도 어떤 종류의 응답인지 알 수 있다. Response Class Response Class Code Response Class 의미 설명 1 Informational Request를 받고 처리중에 있음 2 Success Request를 정상적으로 처리함 3 Redirection Request 완료를 위해 추가 동작이 필요함 4 Clien..

Flux 패턴 등장 배경 Flux 패턴은 대규모 애플리케이션에서 데이터 흐름을 일관성 있게 관리함으로써 프로그램의 예측가능성 (Predictablility)를 높이기 위해 등장했다. 기존 애플리케이션들이 보편적으로 많이 쓰던 MVC 패턴을 살펴보자. Model과 View는 데이터를 양방향으로 전달할 수 있는데, 애플리케이션의 구조가 커짐으로써 Model의 개수가 많아질수록 각 Model에서 발생한 이벤트가 애플리케이션 전체로 퍼져나갈 때 이를 예측하기가 어려워진다. 가장 많이 알려진 버그는 Facebook의 알림 버그이다. 로그인하면 메세지 아이톤 위에 알림이 표시되는데, 그걸 클릭하면 새 메세지가 표시되지 않는다. 그 다음 사이트를 몇 번 클릭한 후 몇 분 후에 알림이 다시 표시되지만 클릭하면 새 메세..

아토믹 패턴은 컴포넌트를 잘 관리하기 위한 방법론으로 View를 원자(Atoms), 분자(Molecules), 유기체(Organisms), 템플릿(Templates), 페이지(Pages) 순으로 작은 것들을 만들고 결합해 더 큰 단위의 View를 그리는 방법이다. 단계별로 추상적인 것에서 구체화하는 단계를 가진다. 이 과정을 통해 일관성을 가지고 확장하면서 최종 콘텐츠를 보여줄 수 있다. 원자 : button, input, font 등 가장 작은 구성요소 분자 : 여러 개의 원자 요소의 구성으로, 여기서부터 복잡한 요소를 구성하고 재사용하기 시작함 유기체 : 사용자에게 더 의미 있는 정보를 제공하거나 인터랙션하는 정교한 인터페이스를 구성하는 원자 또는 분자의 조합 템플릿 : 실제 콘텐츠가 입혀지기 전에 ..

컴퓨터 시간은 어떤 원리로 동작할까? 시간이 결정되는 법칙은 세 가지가 있다. 1. 물리량 시간은 물리학 관점에서 봤을 때 시각과 시각 사이 간격을 표현하는 단위를 뜻한다. ex) 지금 이 순간 (Instant)은 빅뱅 (Epoch) 이후 시간이 얼마나 흘렀는가? 2. 위치 시간은 위치에 따라 다르게 표현될 수 있다. ex) 경도 0도(UTC)가 정오일 때 동경 135도의 시각은? (경도상 위치) ex) 런던이 정오일 때 미국의 시각은? (국가, 지역) 3. 천문 현상 지구자전속도의 불규칙성, 지구의 자전주기와 공전주기 등 천문 현상으로 인한 시간 보정이 필요하다. ex) 윤초, 윤달, 윤년 물리 법칙이 아닌 협의에 따른 표현도 있다. 1. 문화 문화에 따라 시간 표현이 다를 수 있다. ex) 태양력, ..

브라우저에 URL을 입력하면 무슨 일이 발생할까? 브라우저 주소창에 tistory를 입력하면, 잠깐의 로딩 후에 tistory 사이트가 보이게 된다. 잠깐의 로딩 사이에 도대체 어떤 일이 발생하길래 웹사이트가 이동하게 되는걸까?! Step 1. URL을 해석한다. schema://:@:/ 예시 http://example.com:8761/members ftp://admin:1q2w3e4r@example.com/image.png mailto:kciter@naver.com http:programmers.co.kr url은 스키마, 계정정보, 호스트, 포트, 패스 정보로 이루어져 있다. 여기서 스키마는 프로토콜이 들어가는 영역이다. 계정정보는 ftp를 이용한 사람이라면 잘 알 것이다. 말 그대로 인증이 요구되는..