api 문서, 2.3.3 → 3.0.8 table_calendar 라이브러리가 3.0.0 버전에서 큰 업데이트를 하면서 기존의 속성들이 대부분 삭제되고 새로운 속성들이 등장했다. 문제는 이전 속성들의 이름이 뭘로 바뀌었다는 내용이 없다는 것이다. 그래서 3
Git 커밋 메시지 컨벤션(이하 커밋 컨벤션)은 일관된 형식의 커밋 메시지를 작성하기 위한 규칙이다.프로젝트 상황에 맞게 수정할 수 있다.커밋 메시지: 코드 변경 사항을 요약하는 역할한 프로젝트에 여러 개발자가 서로 다른 방식의 커밋 메시지를 작성한다면 여러 문제를 겪
타입과 함께 매개변수를 선언한다. 해당 매개변수는 함수내에서만 사용된다.함수가 반환하는 값이 없을 때 함수 앞에 void 키워드를 붙인다. 함수가 값을 반환한다면 값의 타입을 함수 앞에 작성하면 된다.화살표 함수를 사용하면 화살표 다음이 반환되는 값이된다.함수 호출 시
print 함수를 통해 콘솔을 찍을 수 있다.(JS의 console.log) dart는 뒤에 꼭 세미콜론을 붙여야 한다.var는 모든 타입을 할당할 수 있고 재할당 또한 가능하다. 하지만 첫 할당한 타입과 다른 타입으로 재할당이 불가능하다. dynamic은 어떤 타입이
Dart는 구글이 개발한 프로그래밍 언어이며 주로 플러터 앱 개발에 사용되는 언어이다.왜 많고 많은 언어중에 flutter는 Dart를 선택했을까? 초기 플러터 팀은 12개 이상의 언어중 UI 구축 방식이 일치하는 dart를 선택했다. dart는 아래의 기준에서 높은
링크에 접속해 자신의 OS에 맞게 다운로드를 진행하면 된다. 링크로 접속해 밑으로 내리다 보면 OS 버전에 맞게 다운로드 할 수 있는 화면이 나온다.apple silicon인 경우 Mac(64-bit, ARM)을 선택하면 된다.설치가 됐다면 flutter 확장 프로그램
SSH는 “원격 접속 프로토콜”로 원격지 컴퓨터에 접속하기 위해 사용되는 인터넷 프로토콜이다.따라서 이를 이용해 다른 지역의 컴퓨터 또는 서버를 관리할 수 있고 파일 공유도 가능하다.SSH는 대표적으로 데이터 전송(ex: github), 원격 제어(ex: AWS)에 사
HTTP 상태 코드는 클라이언트 요청의 상태를 나타내기 위해 서버에서 반환하는 3자리 숫자이다.응답은 5개의 그룹으로 나뉜다.요청을 받았고 처리 중이다.서버가 요청을 성공적으로 처리했다. 주로 서버가 요청한 페이지를 제공한다.요청을 성공했고 결과로 새 리소스가 생성되었
CORS는 Cross Origin Reasource Sharing의 약자로 직역하면 교차 출처 리소스 공유라는 뜻이다.CORS는 추가 HTTP 헤더를 사용하여, 한 출처에서 실행 중인 웹 애플리케이션이 다른 출처의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라우
💡 GET 메소드는 리소스를 조회하는데 사용된다.GET은 요청 전송 시 필요한 데이터를 쿼리스트링을 통해 전송한다. 따라서 body와 Content-type이 비어있다. 쿼리스트링을 사용하면 URI에 조회 조건을 표시해서 링크, 북마크가 가능하다.쿼리스트링: URL
브라우저는 DNS 조회 전 캐시 계층을 먼저 확인한다.Browser cache: 브라우저가 이전에 방문했던 사이트의 DNS record를 일정 시간 보관한다.OS cache: Browser cache에 없다면, system call을 통해 OS가 저장하는 DNS rec
HTTP는 클라이언트와 서버가 정보를 텍스트로 주고 받는데 이 때 탈취를 당하면 데이터 유출이 발생한다. 이러한 보안 취약점을 보완하기 위해 HTTP에 SSL을 추가해 주고 받는 정보를 암호화하하는 HTTPS 프로토콜이 등장했다.💡 SSL과 TLSSSL은 웹사이트와
REST는 Representational State Transfer의 약자로 웹 상에서의 통신 체계에 있어 범용적인 스타일을 규정한 아키텍쳐로 자원을 이름(자원의 표현)으로 구분하여 해당 자원의 상태(정보)를 주고 받는 모든 것을 의미한다. 구체적인 개념은 HTTP U
공통적으로 자바스크립트 엔진들이 소스 코드를 기계어로 만들기까지 수행하는 과정은 아래와 같다.💡 자바스크립트 엔진: 자바스크립트 코드를 실행하는 프로그램 또는 인터프리터이다.자바스크립트 엔진은 소스 코드를 파싱(구문분석)해서 코드를 토큰이란 작은 단위로 분해한다.ex
컴퓨터는 0과1로 이루어진 이진수만 이해할 수 있다. 따라서 우리가 작성하는 프로그래밍 언어를 컴퓨터(CPU)가 이해할 수 있는 기계어(비트 단위의 저급 언어)로 번역해야 한다.이 때 번역을 해줄 번역기가 컴파일러와 인터프리터이며 둘은 차이점이 존재한다.컴파일러는 코드
웹 브라우저 구조 웹 브라우저 마다 구조는 상이하나 공통 구조는 아래와 같다. 1. User Interface 요청한 페이지를 제외한 모든 부분으로 주소 표시 줄, 뒤로/앞으로 버튼, 북마크 메뉴 등이 있다. 2. Browser Engine UI와 렌더링 엔
💡 CDN: Content Delivery Network의 약자로 지리적 제약 없이 콘텐츠를 효율적으로 제공하는 기술이다.CDN은 세계 각지에 캐시 서버를 두는데 이를 통해 지리적 제약 없이 사용자들에게 빠르게 콘텐츠를 제공할 수 있다. 예를 들어 미국 사용자가 한국
💡 캐시(Cache)는 데이터나 값을 미리 복사해 놓는 임시 저장소이다.캐시는 언제 사용하면 좋을까?캐시 접근 시간에 비해 원래 데이터를 접근하는 시간이 오래 걸리는 경우값을 다시 계산하는 시간을 절약하고 싶은 경우반복적으로 동일한 결과를 돌려주는 경우(이미지나 썸네
JWT(Json Web Token)는 인증에 필요한 정보들을 토큰에 담아 암호화 시켜 사용하는 토큰이다.앱은 쿠키,세션이 없어 앱과 서버가 통신, 인증할 때 많이 사용된다.세션과 다른 점은 서명된 토큰이라는 점 그리고 유저 데이터를 유저가 관리해 서버 부담을 줄일 수
클라이언트 측에 데이터를 저장하는 방식 쿠키 로컬스토리지 세션스토리지 IndexedDB WebSQL (deprecated) 💡 HTTP 프로토콜의 특성이자 약점을 보완하기 위해서 쿠키와 세션을 사용한다. HTTP 프로토콜은 connectionless, state