전체 글

Gyoogle (규글)
객체 지향(Object-Oriented)이란?
·정보
객체 지향 개념사람은 포유류에 속하는 '동물'이다.사람이 다른 동물과 구별되는 고유한 특징은?'상징 체계'를 만들고 공유하는 능력 - 언어, 음악, 문자, 수학 등등..사람은 상징 체계를 만들고 발전시켜서 다음 세대에게 물려준다! 이것을 가능하게 만든 것이 바로 '추상화'(abstraction) 능력즉, 추상화는 대상에서 특징만을 뽑아낸 것을 말한다.인간은 '추상'을 만들고, 공유하고, 발전시키는 고유한 능력이 있다. 객체 지향(Object Oriented)이란?여기서 Oriented는 '위주' 혹은 '선호'에 가깝다. (방향성 X)따라서 '객체 위주'라고 이해하는 것이 편함 흔히 약자로 많이 불리는 OOA, OOD, OOP와 같은 것들은 이렇게 정리할 수 있다.OOA(Object Oriented Ana..
[자바스크립트] call by value vs call by reference
·자바스크립트
call by value vs call by reference call by valueargument로 value(값)이 넘어온다.이때, 넘어올 때는 '복사된 값'이 넘어온다.caller(호출하는 자)가 인자를 복사해서 넘겨줬기 때문에 callee(호출된 자)에서 받은 인자를 아무리 수정하더라도 caller는 영향 받지 않음예시var a = 1; var func = function(b) { // callee b = b + 1; } func(a); // caller console.log(a); // 1기본적으로 자바스크립트는 원시값을 arguments로 넘겨주면 call by value로 작동이처럼 caller가 1을 argument로 넘겨줘도 복사되어 넘어오기 때문에 callee가 어떤 연산을 하더라도 ..
[React] 1주차 - 리액트 인트로, 간단 리액트 소스 작성 실습
·React
리액트란?자바스크립트 라이브러리이며, 페이스북에서 만들고 사용중인 오프소스 프로젝트앵귤러와 달리, 프레임워크는 아님프론트엔드 UI를 만드는데 사용 (MVC 중 View)컴포넌트 형식으로 구현하여 재사용이 가능함 virtual DOM실제 DOM에 적용되기 전에, 가상의 DOM에 먼저 적용시키고 최종 단계에 달라진 부분만 실제 DOM으로 전달해준다.기존의 DOM은 변화가 생기면, 렌더 트리를 재생성하고 (모든 요소의 스타일이 다시 계산) 레이아웃을 만들고 페인팅을 하는 과정을 다시 처음부터 반복하게 됨특히 SPA에서는 DOM 조작이 많이 발생하므로, 브라우저의 연산량이 늘어나고 전체적인 프로세스를 비효율적으로 만들 수도 있기에 virtual DOM이 탄생한 것 디지털 시계를 통해 확인해보기기존의 DOM을 활..
[자바스크립트] 4. 프로토타입 & 배열
·자바스크립트
프로토타입자바스크립트의 모든 객체는 '자신의 부모 역할을 하는 객체와 연결'되어 있음(객체지향의 상속 개념과 같은 것)이러한 부모 객체를 자바스크립트에서는 '프로토타입'이라고 부른다.console.dir(foo); 객체 리터럴로 생성한 프로퍼티와 함께 proto 프로퍼티가 존재함이 프로퍼티가 foo객체의 부모 프로토타입 객체를 가리킴모든 객체는 자신의 프로토타입을 가리키는 [[Prototype]]이라는 숨겨진 프로퍼티를 가진다. 배열다른 언어와 달리 배열의 크기를 지정하지 않아도 된다. (굿..)어떤 위치에 어느 타입의 데이터를 저장하더라도 에러가 발생하지 않는다. (구웃..) 배열 리터럴var arr = ['a', 'b', 'c']; console.log(arr[0]); // a배열 내 인덱스값을 넣어..
[자바스크립트] 3. 객체
·자바스크립트
객체 생성객체 생성에는 3가지 방법이 있다.Object() 객체 생성자 함수 이용(기본 제공)var foo = new Object(); // Object()를 이용해 빈 객체 생성 ​ foo.name = 'foo'; // 객체 프로퍼티 생성 foo.age = 25; foo.gender = 'male'; ​ console.log(typeof foo); // object (객체니까!) console.log(foo); // { name: 'foo', age:25, gender: 'male'}객체 리터럴 이용객체를 생성하는 표기법을 의미var foo = { name : 'foo', age : 25, gender: 'male' }; ​ console.log(typeof foo); // object (객체니까!) ..
[자바스크립트] 2. 데이터 타입
·자바스크립트
데이터 타입 기본 타입숫자(number)자바스크립트는 하나의 숫자형만 존재 (int, float 등 모두 number!)64비트 부동 소수점 형태로 저장 (double과 유사하다고 생각하면 된다.)var num = 5 / 2; ​ console.log(num); // 2.5 console.log(Math.floor(num)); // 2 문자열(string)' '나 " "로 문자열 생성 가능한 번 정의된 문자열은 변하지 않는다.var str = 'test'; // 문자열 생성 console.log(str[0], str[1], str[2]); // tes ​ str[0] = 'T'; // 배열로 변경 시도? console.log(str); // test이처럼 배열로 문자열 변경을 시도해도 변하지 않는다.불린..
[자바스크립트] 1. 소개
·자바스크립트
자바스크립트(javascript)(학습 자료 : 인사이트 자바스크립트(2014년)) 소개자바스크립트는 웹 브라우저에서 동작하는 스크립트 언어다.웹이 점점 발전하면서, 웹 아키텍처에 변화가 일어났고 서버에서 담당하던 역할들이 상당 부분 웹 브라우저로 이동했다. 이 중심에는 자바스크립트가 있었고, jQuery가 등장하여 쉽게 DOM을 핸들링하게 되면서 폭발적인 성장을 보이게 된다.현재는 브라우저 기반의 자바스크립트 리이브러리뿐만 아니라, Node.js와 같은 서버 기반의 환경에서 동작할 수 있는 라이브러리도 쏟아져 나오고 있다. 이제 자바스크립트만으로 클라이언트와 서버 개발을 동시에 할 수 있는 수준에 도달한 것이다. 핵심 개념 요약앞으로 배우게 될 자바스크립트에서 핵심적인 개념들 객체자바스크립트의 거의 모..
[git] error: failed to push some refs to
·정보
git pull --rebase origin mastergit push origin masterpull로 rebase 처리해서 local에도 새로 적용된 내용을 넣어준 이후 git push를 진행하면 에러가 해결된다.
[Node.js] Mysql 시퀄라이즈 요약
·Node.js
[Node.js] Mysql 시퀄라이즈 요약 시퀄라이즈는 Mysql 작업을 쉽게 할 수 있도록 도와주는 라이브러리입니다. ORM(객체 관계 매핑)으로 분류되는데요. 자바스크립트 객체와 데이터베이스의 릴레이션을 매핑해주는 도구 역할을 합니다. 시퀄라이즈를 사용하는 이유? 자바스크립트 구문을 알아서 SQL로 바꿔줍니다. 따라서 SQL 언어를 직접 사용하지 않아도 자바스크립트만으로 MySQL을 조작할 수 있습니다. 시퀄라이즈 설치express learn-sequelize --view=pug 폴더로 이동해 npm 패키지 설치cd learn-sequelizenpm i 시퀄라이즈에 필요한 패키지 설치 (sequelize, mysql2)npm i sequelize mysql2npm i -g sequelize-cli ..
[Node.js] 핵심 요약
·Node.js
1. 파일 속 데이터는 버퍼 형식으로 저장된다. 따라서 이를 읽기 위해서는 toString()을 통해 문자열로 반환시키자. 2. readFile : 파일 읽기 / writeFile : 파일 만들기 3. 동기와 비동기 : 함수가 바로 return 되는지에 따라 나뉨 블로킹과 논블로킹 : 백그라운드 작업 완료 여부에 따라 나뉨 동기와 블로킹, 비동기와 논블로킹이 같이 쓰인다. 4. Port는 프로세스를 구분하기 위함. 사이트 별로 80포트가 base. 그래서 80포트는 따로 url에 써주지 않아도 접속 가능 5. 쿠키는 헤더에 저장한다. 6. HTTP 상태코드 2XX : Success 3XX : Redirection 4XX : Request Error 5XX : Server Error 7. npm outda..
Gyoogle
Gyoogle (규글)