🌊 객체 지향 프로그래밍 객체 지향 vs 절차 지향 객체 지향 (OOP) 절차 지향 (PP) 특징 캡슐화, 상속, 다형성, 추상화 순차적인 처리를 중요시되며, 프로그램 전체가 유기적으로 연결되도록 함 장점 재사용성, 생산성 향상, 자연적인 모델링, 유지보수의 우수성 빠른 실행 속도 단점 느린 개발 속도, 느린 실행 속도, 높은 난이도 유지보수의 어려움, 비효율적 언어 JAVA, Objective-C, Swift, C++, Python, etc. FORTRAN, C 자바스크립트는 객체 지향 언어는 아니지만, 객체 지향 패턴으로 작성할 수 있다. 객체 지향 프로그래밍 (Object Oriented Programming) 사람이 세계를 보고 이해하는 방법을 흉내 낸 방법론 OOP는 프로그램 설계 철학이다. O..
🌊 클래스와 인스턴스 객체지향 프로그래밍 하나의 모델이 되는 청사진을 만들고 → class 그 청사진을 바탕으로 한 객체를 만드는 → instance 프로그래밍 패턴 // class function Fishbread(ingredients) {} // instance let shouboong = new Fishbread('puff'); let redbeanboong = new Fishbread('redbean'); 새로운 인스턴스를 생성할 때 new 키워드를 사용하여 만든다. ES5와 ES6의 생성자 함수 생성자 함수는 return 값을 만들지 않는다. 최근에는 ES6 방식을 주로 사용한다. // 💡 ES5 function Fishbread(ingredient, time){ // 인스턴스가 만들어질 때 실..
🌊 함수 : 일련의 과정을 문으로 구현하고 코드 블록으로 감싸서 하나의 실행 단위로 정의한 것 함수는 몇 번이든 호출 할 수 있으므로 코드의 재사용의 측면에서 매우 유용하다. 함수의 특징 함수를 사용하는 이유 유지보수의 편의성 향상 코드의 신뢰성 향상 코드의 가독성 향상 함수 리터럴 // 변수에 함수 리터럴 할당 const calculate = function multifly(x, y) { return x * y; } 함수 이름 + 매개변수 + 함수 몸체로 이루어져있다. 함수 이름 함수 이름은 생략할 수 있으며 이름이 없는 함수를 '무명 함수'라고 부른다 함수 이름은 식별자이며 식별자 네이밍 규칙을 준수해야 한다. 매개변수 0개 이상의 매개변수를 소괄호로 감싸고 쉼표로 구분한다. 함수를 호출할 때 지정한..
🌊 Local Storage : localStrage는 웹 스토리지 객체로 브라우저 내 키-값 쌍으로 저장하도록 도와준다. localStorage에 저장한 자료는 페이지 프로토콜별로 구분된다. LocalStroage를 사용하면 페이지를 새로고침하거나 브라우저를 껐다 켜도 데이터가 사라지지 않고 남아있다. 사용법 myStorage = window.localStorage; setItem(key, value) : 키에 데이터 추가 getItem(key) : 키로부터 데이터 읽기 removeItem(key) : 키의 데이터 삭제 clear() : 키 전체 삭제 setItem(key, value) localStorage.setItem('datalist', data); localStroage는 value값을 문자열..
🌊 [javascript] 타입 변환과 단축 평가 타입 변환과 단축 평가 🌊 타입 변환이란? 개발자가 의도적으로 값의 타입을 변환하는 것을 명시적 타입 변환 또는 타입 캐스팅 개발자의 의도와는 상관없이 표현식을 평가하는 도중에 JS엔진 velog.io 타입 변환과 단축 평가 🌊 타입 변환이란? 개발자가 의도적으로 값의 타입을 변환하는 것을 명시적 타입 변환 또는 타입 캐스팅 개발자의 의도와는 상관없이 표현식을 평가하는 도중에 JS엔진에 의해 암묵적으로 타입이 변환 되는 것을 암묵적 타입 변환 또는 타입 강제 변환 이라 한다. // 명시적 타입변환 let x = 10; let str = x.toString(); console.log(typeof str, str); // string 10 // 암묵적 타입 ..
🌊 [javascript] 스코프스코프는 자바스크립트를 포함한 모든 프로그래밍 언어의 기본적이며 중요한 개념.자바스크립트의 스코프는 다른 언어의 스코프와 구별되는 특징이 있다.스코프는 velog.io스코프🌊 스코프란?스코프는 자바스크립트를 포함한 모든 프로그래밍 언어의 기본적이며 중요한 개념.자바스크립트의 스코프는 다른 언어의 스코프와 구별되는 특징이 있다.스코프는 변수 그리고 함수와 깊은 관련이 있다.모든 식별자 (변수 이름, 함수 이름, 클래스 이름 등)는 자신이 선언된 위치에 의해 다른 코드가 식별자 자신을 참조할 수 있는 유효 범위가 결정 된다.즉, 스코프란 식별자가 유효한 범위 파일과 폴더로 예시를 들면 구분하기 편하다.test라는 파일은 같은 폴더 내에선 1개만 존재할 수 있지만 폴더를 이..
🌊 [javascript] 객체 리터럴 자바스크립트는 객체 기반의 프로그래밍 언어이다.자바스크립트를 구성하는 거의 "모든 것" velog.io 객체 리터럴 🌊 객체란? 자바스크립트는 객체 기반의 프로그래밍 언어이다. 원시 값을 제외한 자바스크립트를 구성하는 거의 모든 것(함수, 배열, 정규표현식 등)이 객체다. 다양한 타입의 값을 하나의 단위로 구성한 복합적인 자료구조다. 객체는 변경 가능한 값이다. 객체는 0개 이상의 프로퍼티로 구성 된 집합이며 프로퍼티는 키(key)와 값(value)으로 구성 함수도 프로퍼티 값으로 사용할 수 있으며 프로퍼티 값이 함수일 경우 메서드(method)라고 부른다. 함수로 객체를 생성하기도 하며 함수 자체도 객체이다. let ogu = { age : '30', job : ..