본문 바로가기

전체 글77

JavaScript - Primitive Type 자바스크립트에서는 원시 타입(Primitive Type)과 참조 타입(Reference Type)이라는 두 가지 자료형을 제공한다. Primitive type(원시 타입) 원시 타입은 자바스크립트에서 객체가 아닌 것들이며 값 자체로 저장된 것이라 볼 수 있다.(원시타입은 value로 저장, 객체들은 reference로 저장) 즉, 원시타입의 데이터는 변수에 할당이 될 때 메모리 상에 고정된 크기로 저장되고, 해당 변수가 원시 데이터 값을 보관한다. 원시 타입 자료형은 모두 변수 선언, 초기화, 할당 시 값이 저장된 메모리 영역에 직접적으로 접근한다. 변수에 새 값이 할당될 경우, 실제로 변수에 할당되었던 원시타입의 값이 바뀌는 것이 아니라 새로운 원시타입의 값이 들어가는 개념이다. 원시타입 값 자체는 절.. 2020. 9. 6.
JavaScript - Call Stack(호출 스택) Call Stack 자바스크립트는 싱글 스레드(single-threaded) 프로그래밍 언어이기 때문에, 콜 스택이 하나이다. 따라서 한 번에 하나의 일만 할 수 있다. 콜 스택은 함수의 호출들을 기록하는 자료구조이다. 기본적으로 우리가 프로그램 안에서 위치한 곳이다. 만약 어떤 함수를 실행시킨다면, 스택 위에 무언가를 올리는(push) 행위를 하는 것이다. 그리고 함수로부터 반환을 받을 때, 스택의 맨 위를 가져오는(pop) 행위를 하는 것이다. 위 코드가 실행되면 호출 스택은 아래와 같이 기록되게 된다. 호출 스택(call stack) 콘솔(console) console.log(d) d(); console.log(c) c(); console.log(b) b(); console.log(a) a(); '.. 2020. 9. 3.
JavaScript - JSON JSON(JavaScript Object Notation)은 ECMAScript 3rd 1999에서 쓰여진 object에서 큰 영감을 받아 만들어진 데이터 포맷이다. JSON 또한 {key : value}로 이루어져 있다. JSON은 브라우저 뿐만 아니라, 모바일에서 서버와 데이터를 주고받을 때 또는 서버와 통신을 하지 않아도 object를 파일 시스템에 저장할 때도 JSON 데이터 타입을 많이 이용하고 있다. 간략히 정리해보자면, 데이터를 주고 받을 때 쓸 수 있는 가장 간단한 파일 포맷이다. 텍스트 기반으로 가볍다. 읽기 편하다. key와 value로 이루어진 파일 포맷이다. 데이터를 서버와 주고받을 때 직렬화하고 전송할 때 쓰인다. 프로그래밍 언어나 플랫폼에 상관없이 쓸 수 있다. Object를 J.. 2020. 9. 2.
JavaScript - script async와 defer Index 1. async 2. defer 첫 번째 다음으로 많이 하는게 바로 body 제일 끝부분에 script를 추가하는 것이다. 이렇게 한다면 브라우저가 HTML을 다운로드하면서 준비가 된 다음에 스크립트를 만나서 서버에서 받아오고 실행하게 된다. 그래서 사용자들에게 js를 받기 전에도 이미 준비가 되어서 페이지 콘텐츠를 볼 수 있게 된다. 여기서 장점은 사용자가 기본적인 HTML의 콘텐츠를 빨리 볼 수 있다는 것이고, 만약 사용자가 보고 있는 웹사이트가 자바스크립트에 의존적이라면(자바스크립트를 통해 서버에 있는 데이터를 받아온다던지 또는 DOM요소를 이쁘게 꾸며준다던지) 사용자가 정상적인 페이지를 보기 전까지 서버에서 자바스크립트를 받아오는 시간도 기다려야 되고, 실행하는 시간도 기다려야 되는 단.. 2020. 8. 24.
Agile(애자일) 그리고 Scrum(스크럼) Agile 단어의 뜻은 다음과 같다. 1. 날렵한, 민첩한 (=nimble) 2. (생각이) 재빠른, 기민한 Agile은 쉽게 이해한다면 '유연하게 일하는 방식'이라 할 수 있다. Agile은 '연속적인 고객의 요구사항 변경'에 실패하는 프로젝트가 빈번하게 생기지 않도록 하기 위해 해결하고자 소프트웨어 세계의 거장들이 모여 선언문을 작성하게 되었다. 이것이 바로 애자일의 탄생 배경이 된 '애자일 소프트웨어 개발 선언'이다. 요구분석 → 설계 → 디자인 → 코딩 → 개발 순으로 순차적으로 이어지는 흐름인 워터폴 모델(Waterfal Model)의 반대로 Agile은 짧은 주기로 고객이 사용할 수 있는 소프트웨어를 만들어가면서 커뮤니케이션의 비용을 최소화하고 이슈 사항들을 바로바로 제거하면서 개발하는 방식이.. 2020. 8. 17.
WeCode - 2차 프로젝트(숨고) 현재 개발 학습을 하고 있는 부트캠프 WeCode에서 2차 프로젝트 진행했던 것을 기록. 프로젝트 소개 '숨은 고수'를 찾아 일반인과 이어주는 서비스 전문가 매칭(생활서비스 고수 매칭) 플랫폼인 숨고(Soomgo) 웹사이트 클론 프로젝트 프로젝트 기간: 2020년 7월 6일 ~ 7월 17일 (총 2주) 팀원: 3 Front-End, 3 Back-End 프로젝트 Github 주소 Front-End: https://github.com/wecode-bootcamp-korea/9-Chango-frontend Back-End: https://github.com/wecode-bootcamp-korea/9-Chango-backend 사용된 기술 Front-End HTML React.js(Class형 컴포넌트, 함수형.. 2020. 8. 16.