본문 바로가기

카테고리 335

Cookie, Session Connectionless, Stateless Server의 자원은 한정되어있으므로 server-client의 접속을 계속 유지하지는 않는다. 따라서 서버는 클라이언트의 요청에 응답한 후 연결을 지속하지 않고 끊는다. 연결(Connection)을 유지하지 않고 끊기 때문에 connectionless라 한다. 서버는 클라이언트의 정보(state)도 저장하지 않는다. 만약 클라이언트의 정보를 서버에서 관리한다면 무조건 해당 클라이언트는 해당 서버와 통신이 이루어져야 하기 때문이다. 이는 서버의 증설(scale-out)/관리를 어렵게한다. 이러한 특성을 stateless라 한다. Cookie, Session의 필요성 클라이언트의 로그인 정보나 특정 상태를 저장하고 유지해야할 때가 있다. 그런데 서버가 클라이언.. 2023. 3. 31.
CI/CD CI/CD 배경 기존에 비해 프로젝트/코드의 규모가 매우 커졌고, 형상관리나 배포 등을 수동으로 하기 어려워졌다. 때문에 개발자가 직접 코드를 통합하고 관리하는 것보다는 자동화시키는 것이 필요해졌다. CI/CD CI/CD = Continuou Integration (지속적인 통합) + Continuous Delivery/Deployment (지속적인 배포) CI/CD는 앱 개발을 자동화해서 더 짧은 주기로 고객에게 서비스를 제공하는 방법이다. 한번에 모든 기능을 테스트하는 것이 아니라, 분할하여 테스트를 진행함으로써 이를 도모한다. 장점 더 작은 단위로 더 자주 빌드~배포하기 때문에 아래와 같은 이점을 얻을 수 있다. 빌드 타임 ↓ 품질 ↑, 고객 만족도 ↑ 실패율 ↓ 개발자 생산성 ↑ : 빌드/배포에 .. 2023. 3. 30.
[CSS] 스타일 우선순위 CSS Style 우선순위 전체적으로 !important 키워드를 사용한 스타일 inline style id class, 수도 클래스 tag, 수도 엘리먼트 동일 우선순위 중 같은 파일 내에서 나중에 작성된 것 (파일 아래에 있는 것) 먼저 작성된 것 (파일 위에 있는 것) 2023. 3. 27.
[JavaScript] 브라우저 로드 트리거 : DOMContentLoaded vs load DOMContentLoaded, load 호출 시점 DOMContentLoaded HTML이 모두 로드되고 DOM 트리가 완성된 후, 외부 리소스 (img src 등)가 아직 로드되지 않았을 때 실행한다. DOM이 준비 상태이기 때문에 DOM 노드를 제어할 수 있다. jQuery에서의 ready와 유사하다. IE8 이하에서는 지원하지 않았기 때문에 잘 사용되지 않았다. load 브라우저에 모든 리소스(img, style, script 등)이 로드되었을 때 실행한다. DOMContentLoaded보다 로드되는 시점이 늦다. 모든 리소스가 로드된 상태이기 때문에 리소스들의 속성(이미지 크기 등)을 얻을 수 있다. 주요 차이 DOMContentLoaded jQuery에서의 ready와 유사하다. DOM이 준비.. 2023. 3. 27.
[Javascript] 함수 선언 아래와 같은 방식으로 선언하여 사용할 수 있다. function 함수이름 { // ... return 반환값; } 다만, Java에서의 메소드 오버로딩(참고)과 같은 것을 허용하지 않기 때문에 같은 이름의 함수는 하나만 정의하는 것이 좋다. 인수 전달 방식 원시형 타입(number, string, boolean)은 값(call by value)으로 전달된다. 반면, 객체는 참조(call by reference)로 전달된다. Return return이 없으면 암묵적으로 undefined를 반환한다. 익명 함수, 기명 함수 함수를 표현식처럼 사용할 수 있다. 주로 이벤트 처리를 위해 많이 사용되는 방법이다. 익명 함수와 기명 함수로 구분할 수 있는데 함수 내부에서 스스로 호출할 수 있는지/없는지가 가.. 2023. 3. 22.