일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 디자인패턴
- 영화
- 자바스크립트
- 노드
- Express
- web
- nodejs
- 주짓떼로
- 하프가드
- 개발자
- 프로그래밍
- REACT
- development
- 리액트
- Node
- 영화리뷰
- 클로즈가드
- JavaScript
- git
- 주짓수
- 웹개발
- 엄티로드
- 파이썬
- Redux
- 영화감상
- 솔로드릴
- 개발
- 드릴
- 주짓떼라
- graphQL
- Today
- Total
목록프로그래밍 (8)
As i wish
클로저란? 클로저는 함수와 함수가 선언된 어휘적 환경의 조합이다. 무슨말인지 모르겠다.... MDN web docs를 보면 조금 이해가 편하다. 클로저 클로저는 함수와 함수가 선언된 어휘적 환경의 조합이다. 클로저를 이해하기 위해서는 자바스크립트가 어떻게 변수의 유효범위를 지정하는지(Lexical scoping)를 먼저 이해해야 한다. developer.mozilla.org function init() { var name = "Mozilla"; // name은 init 에 의해 생성된 지역변수다 function displayName() { // displayName() 은 내부 함수이며,클로저다 alert(name); // 부모 함수에서 선언된 변수를 사용한다 } displayName(); } init(..
오늘은 가위바위보 게임을 바탕으로 React에 라이프 사이클, 고차 함수, Hooks useEffect에 대하여 포스팅 해보겠습니다. 계속 해서 언급 하지만 제 포스팅은 '제로초' 님의 리액트 강좌를 바탕으로 합니다. 제로초님의 웹게임 강좌 리액트 무료 강좌(웹게임) - YouTube www.youtube.com 먼저 라이프사이클에 대하여 알아보겠습니다. 리액트 라이프 사이클은 하나의 component의 생명 주기를 의미 하는데요. 처음 component가 rendering 되고 없어 질 때 까지 를 의미 합니다. 여러가지가 있는데, 기본적으로 componentDidMount, componentDidUpdate, componentWillUnMount 요 3가지가 가장 중요하죠. 대략적인 의미는 다음과 같..
You don't know JS에 PART 1에 마지막 장인 '작동 위임'에 대하여 포스팅해보겠습니다. 지금 까지 [[Prototype]]에 대하여 공부하였고 '클래스'나 '상속'의 맥락에서 [[Prototype]] 이 적절하지 않은 지 공부했습니다. 따라서 [[Prototype]] 은 자바스크립트에서 여타 다른 클래스 지향 언어들과 달리 한 객체가 다른 객체를 참조하기 위한 내부 링크라고 정의할 수 있죠. 또한 참조하는 객체에 존재하지 않는 프로퍼티/메서드를 참조하려고 할 경우 엔진은 [[Prototype]] 링크를 따라가며 연결된 객체마다 프로퍼티/메서드가 있는지 뒤져보고 발견되지 않으면 다음 [[Prototype]] 링크에 연결된 객체를 타고 이동하는데 이것을 '프로토타입 연쇄'라고도 정의하였습니다..
안녕하세요. 오늘은 컴포지트 패턴에 대하여 공부해보겠습니다. 컴포지트 패턴 객체들을 트리 구조로 구성하여 부분과 전체를 나타내는 계층구조로 만들수 있다. 클라이언트에서 개별 객체와 다른 객체들로 구성된 복합 객체(composite)를 똑같은 방법으로 다룰 수 있다. 쉽게 말해 컴퓨터의 디렉토리 구조라고 생각하시면 됩니다. 컴퓨터에 어떤 디렉토리가 있다고 가정 했을 때, 디렉토리 안에는 디렉토리가 있을 수도 있고, 파일이 있을수도 있죠. 근데 클라이언트 입장에서는 이게 디렉토리인지, 파일인지 구분 없이 만들 수 있게 되어야 합니다. 즉, 클라이언트는 개별 객체(파일), 복합 객체(디렉토리) 를 같은 방법으로 다룰 수 있어야 합니다. 그럼 저는 헤드퍼스트에 나온 예제를 참고하여, 메뉴로 구성해 보겠습니다. ..
이번장에선 이론적인 설명이 많았습니다. 기존 객체지향 기반의 언어가 아닌 JS를 객체지향 언어처럼 쓰기 위한 노력들이 담겨 있었죠. 간단히 정리를 해보겠습니다. 1. 클래스 이론 클래스, 인스턴스에 대한 이론들은 사실 충분히 다른 포스팅에서 볼 수 있어요. 그렇기 때문에 크게 언급은 하지 않고 넘어가겠습니다. 간단히 말하면 제일 이해하기 쉬운게 붕어빵이죠. 붕어빵 틀을 클래스, 틀을 통해 나오는 붕어빵들을 인스턴스라고 생각하면 됩니다. 객체, 클래스, 인스턴스란...? [Java 용어정리] Object(객체), Class(클래스), Instance(인스턴스) 란? [Java 용어정리] Object, Class, Instance 란? object 객체, class 클래스, instance 인스턴스 에 대해..
오늘은 이터레이터 패턴에 대하여 포스팅해보겠습니다. 일단 정의부터 보시죠. 이터레이터 패턴 컬렉션을 표현하는 방법을 노출시키지 않으면서도 집합체 내에 있는 모든 객체들에 하나씩 접근하는 방법을 제공합니다. 반복자를 이용하여 내부 구조를 드러내지 않으면서도 클라이언트로부터 컬렉션 안에 들어 있는 모든 원소들을 접근할 수 있게 만듭니다. 예를 들어 설명해 보겠습니다. 어떤 컬렉션에서는 List로 아이템 원소들을 관리하고, 다른 컬렉션에서는 Dictionary로 아이템을 관리한다고 했을 때에 클라이언트 입장에서는 두 개의 원소들을 나열하려고 할 때 각기 다른 방법으로 나열해야 합니다. 하지만 이터레이터 패턴을 사용하면, 어떤 식으로 내부 구조가 짜여있던지 상관없이 클라이언트는 반복자를 이용하려 아이템을 나열할..
You don't know JS에 3 장 객체에 대하여 포스팅해보겠습니다. 앞서 this에 관해 포스팅했었는데 참고해주세요. 3.1 객체 정의 일반적으로 JS에서 객체는 선언적(리터럴) 형식과 생성자 형식, 두 가지로 정의할 수 있습니다.. // 선언적(리터럴) 형식 var myObj = { key: value // ... } // 생성자 형식 var myObj = new Object(); myObj.key = value; 두 형식 모두 생성되는 객체는 같습니다. 그러나 리터럴 형식은 한 번의 선언으로 다수의 키/값을 추가할 수 있고, 생성자는 한 번에 한 프로퍼티만 추가 할 수 없어요. 3.2 타입 자바스크립트는 대략 7가지 정도 타입이 있는데, null undefined boolean number s..
기본은 모르고 자꾸 개발만 하다 보니 이상하게 제 지식이 역삼각형 형태가 되는 것 같아서. 기본적인 책을 사서 읽어보고 정리를 하려고 합니다. 책은 한빛미디어에서 나온 "You don't know JS - 카일 심슨"의 책을 바탕으로 정리해보겠습니다! 우선 this는 모든 함수 스코프 내에 자동으로 설정되는 특수한 식별자입니다. 일단 스코프란 링크를 참조해 주세요. 일단 this 가 사용된 코드를 보겠습니다. function identify() { return this.name.toUpperCase(); } function speak() { var greeting = 'Hello, Im ' + identify.call(this); } var me = { name: 'Kyle' }; var you = { ..