일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- js
- OS
- 자바스크립트
- Round Robin
- spring boot
- spring
- Depromeet
- Git
- 에프랩
- time slice
- 생활코딩
- Hot Publish
- 버전관리
- 파이썬
- CLI
- js 개발자라면 알아야하는 핵심 컨셉
- 디프만
- 큐시즘
- RxJava
- github
- 원격 저장소
- Hot Publisher
- Cold Publisher
- 마블 다이어그램
- flab
- 멘토링 후기
- CPU Scheduling
- 건국대학교
- OOAD
- Observable
- Today
- Total
목록Development/기타 (9)
글쓰는 개발자

js 개발자라면 알아야 하는 핵심 컨셉 33개, 8번째 순서는 IIFE & Modules and Namespace에 관한 이야기이다. INDEX IIFE? IIFE, 왜 쓰는걸까? JS Browser Module 1)IIFE? 먼저 IIFE라 함은 Immediately-Invoked Function Expressions의 약자인데, 한국어로 번역을 하면 다음과 같다. 그렇다. 어려워 보이는 데 해석하면 별게 없다. 그냥 선언함과 동시에 실행이 되는 함수 식이다. 사용 방법은 간단하다. 함수 선언을 할 때처럼 함수를 작성해주고, 바깥에 괄호를 씌운 후 함수 실행을 표시하는 ()를 작성해주면 된다. 익명 함수로도 작성이 가능하다. 2)IIFE, 왜 쓰는 걸까? IIFE를 어떻게 쓰는지 알아보았다. 근데 이거..

js 개발자라면 알아야하는 핵심 컨셉 33개, 7번째 개념은 Expression과 Statement에 대한 이야기이다. Expression vs Statement Expression은, value를 return하는 어떤 것을 의미한다. 위의 경우 function add는 2개의 인자를 넘겨받아 두 인자의 합을 return한다. 따라서 add는 Expression이다. ※참고로 함수에 return값을 명시하지 않더라도 Expression이 아닌 것은 아니다. 이와 같은 경우에도 함수의 결과 값은 undefined를 return하기 때문에, Expression이라고 할 수 있다. JS는 Expression을 return되는 Value로 대체한다. 위의 경우에 JS는 1+1이 Expression이기 때문에 1..

잠시 이전의 포스팅들을 살펴보자. #1.Call Stack #2.Primitive Types #3.Value Types and Reference Types #4.Type Coercion #5.Typeof 초반 부분에서는 변수들의 특성에 대해 나열하려 하는 듯하다. js 개발자라면 알아야 하는 핵심 컨셉 6번째는 scope이다. scope를 번역하면 '유효범위'가 된다. 선언된 변수들의 유효 범위를 뜻한다. 위의 코드에서 얻어갈 부분이 많다. if문 내부에서 var, let, const 세 가지 변수가 선언되었으나 var로 선언된 변수만 정상적으로 동작한다. 이유는 var는 Functional Scope이고, let과 const는 Block Scope이기 때문이다. Block Scope는 기본 단위가 Bl..

개발하다보면, 사용하고 있는 데이터의 타입 정보가 필요한 경우가 생긴다. 이런 경우를 위해 JS에서는 typeof라는 함수를 제공한다. js 개발자라면 알아야하는 핵심 컨셉 33개, 그 5번째는 typeof이다. typeof에 대해서는 크게 깊게 다뤄야 할 부분은 몇 개 없지만, 자바스크립트에서 발생하는 일종의 버그 케이스가 몇가지 있어 소개하려고 한다. typeof는 대부분의 primitive types에서 작동한다. Boolean, String, Number, Function, Undefined등의 type을 string 형태로 반환해주는 것을 확인할 수 있다. 다음 예시를 보자. 무슨 경우일까. 결과부터 얘기하자면 설계가 잘못된(?) 버그라고 할 수 있겠다. typeof null이 "null"을 r..

오늘의 주제는 Type Coercion, 직역하면 '형 변환'이다. 강의자에 따르면 JS는 매우 forgiving한 언어이기 때문에, 위와 같은 멍청한(?) 코드를 작성해도 오류를 내지 않고 적당한 조치를 취한 후에 결과를 나타내는데 이때 '적당한 조치'가 바로 '형 변환'이다. 다음 코드부터 살펴보자. console.log(66+true); //67 console.log(66+false); //66 console.log(66-true); //65 66+true(false)를 계산할 때, JS는 true(false)를 1(0)로 변환시키고 66+1(0)을 더하여 콘솔에 출력한다. 따라서 결과는 67(66)이 된다. 마이너스의 경우에도 동일하게 작동한다. Boolean 자료형을 Number 자료형과 +,-..

[이론]js 개발자라면 알아야하는 핵심 컨셉 33개 #2.Primitive Types를 먼저 읽는다면 좋을 것 같다. js 개발자라면 알아야 하는 핵심 컨셉 33개, 그 세 번째는 Value Types & Reference Types이다. 개발을 해 본 사람이라면 자주 들어봤을 법한 이야기이다.(이 부분은 워낙에 말이 많아서 살짝 부담스럽기도 한 주제.. 태클 환영입니다.) 그럼, 두 가지에 대한 이야기를 해보자 간단하게 코드를 작성해보자. 위의 예시를 보면, Reference Type을 이해하고 있는 사람은 결과를 이해할 것이고 그렇지 못한 사람은 왜 false가 나오지? 라고 생각할 것이다. 이 포스팅을 읽고 저러한 결과가 도출된 이유를 알아보자. 다음 코드를 작성해보자. let a=50; let b..

js 개발자라면 알아야 하는 핵심 컨셉 33개, 두 번째 주제는 primitive types(기본 자료형)이다. 어떠한 언어를 알아갈 때에 가장 먼저 알아야 할 것 중 하나가 자료형이지 않을까. 최신 ECMAScript 표준은 다음과 같은 7개의 자료형을 정의한다.(MDN 자료 참고) 기본 자료형 (Primitive) 인 여섯 가지 데이터 타입 Boolean Null Undefined Number String Symbol (ECMAScript 6에 추가됨) 별도로 Object 도 있음 symbol과 object를 제외한 5개의 자료형에 대해 이야기해보겠다. 1)Boolean Boolean은 논리 자료형으로, true/false를 나타낸다. 1==1의 경우 참이므로, true를 출력한다. 1!=1의 경우 ..

최근에 github에서 핫한 게시물이었던, 자바스크립트 개발자라면 알아야 하는 핵심 컨셉 33개라는 repository를 보게 되었다. 그것에 대해 공부하고, 정리할 겸 남기는 포스팅이다. 아직 js를 접한지 얼마 되지 않은 나로선 혼자 번역하면서 공부까지 하기에는 힘든감이 있어서 Nomad Coders의 동영상 강의 및 다른 번역본들을 참조하여 정리한다. js 핵심 컨셉의 첫 번째는 call stack이다. 사실 call stack이란게 js만의 컨셉은 아닌데, 뭐 핵심 컨셉이라고는 하니 짚어보자. 위키백과에서 가져온 call stack의 의미는 다음과 같다. -콜 스택(call stack) : 컴퓨터 프로그램에서 현재 실행 중인 서브루틴에 관한 정보를 저장하는 스택 자료구조. 쉽게 얘기하자면 프로그램..

요즈음 파이썬을 이용해서 크롤링을 공부하고 있다. 공부한 지 한 1~2달 정도 된 것 같다. 크롤링을 공부하는 과정에서 웹에서 정보를 어떤 식으로 주고받는지 조금씩 알아가고 있는 중이라 뿌듯하다. 공부한 것들을 정리할 겸, 또 누군가에게 도움이 될 수도 있지 않을까 하여 그 과정을 초보자의 입장에서 풀어써보려 한다. [개발환경] 언어 : python 3.5.2 OS : Ubuntu 16.04 오늘은 공부하는 과정에서 조금 난관을 겪었지만 배운 점이 많았던 다음 주식정보 긁어오기다. 이게 내 입장에서 왜 어려웠냐면, 크롤링을 처음 배우는 단계에서는 그냥 터미널 환경에서 request를 날리고 response를 받아 BeautifulSoup 같은 라이브러리를 이용해서 잠깐 만지작대다 보면 쉽게 데이터를 가공..