본문 바로가기

전체 글122

모두의 네트워크 : 네트워크 첫걸음 네트워크에 대해서 1. 네트워크란? 네트워크는 다양한 기능이 결합되어 있고 그 기능은 계층(레이어) 형태로 구성 계층 구조를 이해하면 문제가 발생한 원인이 네트워크 장비인지 애플리케이션인지 판단 가능 2. 네트워크 구조 a. 컴퓨터 네트워크란? a-1. 컴퓨터 네트워크 컴퓨터 간의 네트워크를 연결한 것 컴퓨터를 두대 이상 연결해 서로 데이터 전송할 수 있는 통신망 컴퓨터 간에 필요한 데이터(정보) 서로 주고 받음 컴퓨터 간의 데이터(파일) 전송, 웹사이트 열람, 메일 송수신을 할 수 있음 a-2. 인터넷 인터넷은 전세계의 큰 네트워크부터 작은 네트워크까지 연결하는 거대한 네트워크 인터넷 : TCP/IP 프로토콜을 사용하는 세계 최대 규모 네트워크 전세계의 컴퓨터를 서로 연결해 정보 교환할 수 있도록 만든.. 2023. 11. 3.
모던 자바스크립트 : 전역 변수의 문제점 전역 변수의 문제점에 대해서 1. 변수의 생명 주기 a. 지역 변수의 생명 주기 변수에 생명 주기가 없다면 한번 선언된 변수는 프로그램을 종료하지 않는 한 영원히 메모리 공간 점유 변수는 자신이 선언된 위치에서 생성되고 소멸함 지역 변수는 함수가 호출되면 생성되고 함수가 종료하면 소멸 함수 내부에서 선언한 변수는 함수가 호출된 직후 함수 런타임 전 실행됨 지역 변수의 생명주기는 함수의 생명주기와 일치 지역변수가 함수보다 오래 생존하는 경우 변수의 생명 주기는 메모리 공간이 확보된 시점 ~ 메모리 공간이 해제되어 가용 메모리 풀에 반환되는 시점 함수내부지역변수는 함수가 생성한 스코프에 등록됨 변수는 자신이 등록된 스코프가 소명(메모리 해제)될때까지 유효함 할당된 메모리 공간은 아무도 참조하지 않을 때 가비.. 2023. 11. 2.
모던 자바스크립트 : 스코프 스코프에 대해서 1. 스코프란? 스코프(유효범위)는 자바스크립트를 포함한 모든 프로그래밍 언어에 적용되는 개념 식별자는 자신이 선언된 위치에 의해 자신이 유효한 범위, 다른 코드가 변수 자신을 참조할 수 있는 볌위 결정 스코프 : 식별자가 유효한 범위 식별자 결정 : 자바스크립트 엔진이 이름이 같은 두개의 변수 중 어떤 변수를 참조할 것인지 스코프를 통해 결정하는 것 스코프란 자바스크립트 엔진이 식별자를 검색할 때 사용하는 규칙 자바스크립트 엔진은 코드를 실행할 때 문맥을 고려함 렉시컬 환경 : 코드가 어디서 실행되며 주변에 어떤 코드가 있는지 코드의 문맥은 렉시컬 환경으로 이뤄지고 모든 코드는 실행 컨텍스트에서 평가 되고 실행된다 식별자는 어떤 값을 구별할 수 있어야하므로 유일해야함 => 중복 불가능 .. 2023. 11. 2.
모던 자바스크립트 : 함수 자바스크립트의 함수에 대해서 1. 함수란? a. 함수의 구성 요소 함수 : 일련의 과정을 문으로 구현하고 코드 블록으로 감싸서 하나의 실행 단위로 정의한 것 매개변수 parameter : 함수 내부로 입력을 전달받는 변수 인수 argument : 입력 반환값 : 출력 b. 함수의 특징 함수는 값 여러개 존재할 수 있으므로 특정 함수를 구별하기 위해 식별자인 함수 이름 사용 함수는 함수 정의를 통해 생성됨 함수 호출 : 인수를 매개변수를 통해 함수에 전달해 함수의 실행을 명시적으로 지시해야 함수가 실행됨 2. 함수를 사용하는 이유 a. 유지보수 편의성 ↑, 코드의 신뢰성 ↑ 함수는 필요할 때 여러번 호출 가능 => 재사용 가능, 중복 억제 b. 코드의 가독성 ↑ 함수는 객체 타입의 값 => 식별자 붙여 어.. 2023. 11. 2.
모던 자바스크립트 : 원시값과 객체의 비교 원시타입과 객체 타입의 차이에 대해서 원시 타입 값 객체 타입 값 변경 유무 변경 불가능한 값 변경 가능한 값 변수(확보된 메모리 공간)에 할당 변수에 실제 값 저장 변수에 참조값 저장 복사 값에 의한 전달 : 다른변수에 할당하면 원본의 원시값이 복사되어 전달됨 참조에 의한 전달 : 다른변수에 할당하면 원본의 참조값이 복사되어 전달 1. 원시값이란? a. 변경 불가능한 값 a-1. 원시값 원시 타입의 값은 변경불가능한 값, 한번 생성된 원시값은 읽기 전용 값으로 변경 불가능 a-2. 변수 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 변수는 언제든지 재할당을 통해 변수 값을 변경할 수 있음 a-3. 값 변수에 저장된 데이터 변경불가능 한 값은 변수가 아니라 값에 대한 것 원시값 자체를 변경할 수 없.. 2023. 11. 1.
모던 자바스크립트 : 실행 컨텍스트의 생성과 식별자 검색 과정 실행 컨텍스트의 생성과 식별자 검색 과정에 대해서 1. 전역 객체 생성 전역객체는 전역 코드 평가 전 생성됨 전역 객체 = 빌트인 전역 프로퍼티, 빌트인 전역 함수, 표준빌트인 객체 추가 + 동작 환경(클라이언트, 서버)에 따라 클라이언트 사이드 Web API (DOM, BOM, Canvas, XMLHttpRequest, fetch, requestAnimationFrame, SVG, Web Storage, Web Component, Web Worker 등) 또는 특정 환경을 위한 호스트 객체 포함 전역 객체도 Object.prototype 상속 받음 = 전역 객체도 프로토타입 체인의 일원 2. 전역 코드 평가 a. 소스코드 로드 -> 자바스크립트 엔진이 전역 코드 평가 시작 전역 실행 컨텍스트 생성 전역.. 2023. 10. 31.