SlideShare a Scribd company logo
1 of 141
1 2 3 4 5
Overview
Expressions
& statements
Function & Object
Event & Library
Storage & Network
& SCM(git)
Learn Programming with Web Language
For non-developers
아들바보
프로그래밍이란?
“값”를 목적에 따라!
처리하는 일련의 과정
언어 구성 요소
토큰
의미를 가지는 가장 작은 단위
연산자
산술, 논리 등 연산 수행 지정자
식별자
이름 짓기 규칙에 따라!
프로그래머가 만든 이름
문(文)
실행할 동작을 지정하는 것!
!
대입문, 비교문, 반복문 등 !
많은 종류가 있다
0 1 2 3 4 5 6 7 8 9
a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
+ - * / % _ “ ‘ { } ( ) [ ] ~ ! | & = . ; ? < > , 
Javascript 에서 사용되는 문자들
break function return var case delete if else switch
catch do in this while const instanceof throw with
continue finally let try debugger for new typeof …
Javascript 언어에서!
미리 선점한 예약어
예약어들은 정해진 용도 이외의 다른!
용도로 사용할 수 없음
1. 문과 문의 구분은 ; (세미콜론)으로 한다!
2. 대소문자를 구분한다!
3. 이름(식별자)는 영문자, _(언더바), $로만 시작될 수 있다!
4. 토근과 토큰 사이의 공백, 줄바꿈, 탭 문자는 무시한다
기본 규칙 1
문과 문의 구분은 ; (세미콜론)으로 한다!
ㄴ 생략시 일정한 규칙에 의해 세미콜론을 자동으로 부여한다!
ㄴ 자동 부여 방식의 이해가 없다면 생략하지 않으면 된다
기본 규칙 1!
*예외
코드가 나타나는 즉시 해석되고 실행됨. 특별한 시작 지점 없음
기본 규칙 2
console.log(‘run code 1’);!
console.log(‘run code 2’);!
console.log(‘run code 3’);!
console.log(‘run code 4’);!
console.log(‘run code 5’);
void sub() {!
printf(“run code 1”);!
printf(“run code 2”);!
}!
void main() {!
printf(“run code 1”);!
printf(“run code 2”);!
}
* Javascript * C
처음부터!
순서대로!
실행
main 으로!
시작점이!
정해져있음
다루기 어려운 형식은 !
다루기 쉬운 형식으로 바꾼다
“
”
한 가지 기억해 두세요
컴퓨터가 다루기 쉬운 형식을 말합니다!
자료구조라는 학문에서 배우지요!
“큐”, “스텍”, “트리”, “리스트” 등의!
외계어들이 존재합니다
다루기 쉬운 형식이란?
특별한 이야기가 아닙니다!
“일상다반사”
실습 준비
실습 준비
두 개의 파일을 만들고, 각 각 내용을 입력합니다.
*sample.html *sample.js
두 개 파일 모두 같은 폴더에 저장합니다.
시작합니다
첫 번째 외계어를 살펴 봅시다
그냥 한번 읽어볼까요?
나이(age)가 0 이고, 이름
이 Jobs입니다. 그는 살아
(isAlive) 있습니다.
살아있는 동안 나이를 1살
씩 먹습니다. 만약 나이가
56이 되면 살아있다는 것
은 거짓입니다.
그냥 한번 읽어볼까요?
슬픔이 밀려오네요…
그냥 한번 읽어볼까요?
어때요? 읽을만 하지 않나요?
문(文)의 구조를 알아봅시다
세미콜론을 기준으로 한 문장이
완성되며 문(文)이라 합니다.
여러 문을 포함하는 블럭을 구
문의 마지막은 세미콜론으로 끝
나지 않습니다.
구문은 여러개의 토큰으로 이루
어집니다. 토큰은 의미를 가지
는 가장 작은 단위입니다.
var age = 0;
5개의 토큰으로!
구성된 문
문(文)의 구조를 알아봅시다
공백(스페이스)의 역할
공백은 토큰의 의미를 명시하기
위해 사용합니다. 공백이 없어
도 의미가 명확하다면 생략이
가능합니다.
varage = 0;
*오류 : varage 이름의!
변수가 만들어짐
var age=0;
*정상 : 공백이 없어도 토큰!
분리가 가능함
이 소스 코드는 순차적으로 실행됩니다
1, 2, 3 … 맨 앞에 숫자는 코드 에디터가 자
동 부여해 주는 라인 표시입니다. 프로그래
머가 작성한 부분이 아닙니다.
나와, 남을 위해 코드를 설명하는 주석
/* 문자와 */ 문자 사이의 내용들은 모두 주석
으로 인식하여 실행되지 않습니다.



컬러가 회색으로 표시되는 이유는 에디터의
기능 중 일부이며 “이 부분은 주석이어서 실
행되지 않습니다”라는 의미입니다. 즉, 코드
에디터는 코드의 형태를 “인식”합니다.
값을 저장하는 저장소 “변수”
var 는 변수를 만드는 지시
어입니다. var 다음에 프로
그래머가 명명한 변수를 작
성합니다.
어떤 값을 담고 있는지 알 수 있도록!
의미있는 변수명을 사용하세요
a1 = 15;	

!
!
temperature = 15;
나빠요!
좋아요!
“값”을 저장한다? 값을 유지한다? 저장소?
변수는 생성된 후 소멸될 때 까지 값을 유지하고 있는 공간.

변수의 값을 읽을 수 있으며 변수의 값은 변경할 수 있다.
생성
참조(읽기)
변경(대입)
“값” 과 그것을 저장하는!
저장소인 “변수”에 대해!
상세히 알아둘 필요가 있습니다
변수를 만드는 방법
?
me
10
me
10
me
undefined
var me;	

!
me = 10;	

var me = 10;
변수를 만드는 방법
10
me
10
you
10
me
20
you
var me = you = 10; var me = 10, you = 20;
변수의 형태를 좀더 자세히 봅시다
10
me
값
undefined
 
null
 
number
 
string
 
function
 
object
{
변수(틀)
Javascript의
 변수는
 
무엇이든
 담을
 수
 있는
 
마법상자
이름
Javascript
 식별자
 이름
 명명
 
 
규칙에
 맞게
 이름을
 지을
 수
 있다
하나의 이름을 공유하는 변수 “배열”
10
me
20 30 40
0 1 2 3
이름
원소
 번호
배열을 만들고 다루는 방법
10
me
20 30 40 ? 50
{
무슨일이
 
일어난걸까?
var me = [10, 20, 30, 40];	

var me1 = me[1];	

var meMax = me.length;	

me[5] = 50;	

0 1 2 3 4 5
값과 변수에 대하여 다양한 프로그래밍 언어의 형태를!
학습하면 좀 더 쉽게 이해할 수 있습니다.
Javascript C++ Python
인터프리터 언어와 컴파일러 언어의 변수 생성 방식이!
다른 것을 알 수 있습니다. 어떤 부분이 다른가요?
Javascript C++ Python
인터프리터 인터프리터컴파일러
일반적으로 인터프리터 언어들은 !
변수의 형식이 존재하지 않습니다.
그럼 값의 형식은 어디에? !
“값”스스로 형식을 지정합니다.
컴파일러 언어들은 값의 형식을!
변수에 지정합니다.
변수의 형식이 존재하는 언어는!
변수에 저장할 수 있는 “값”의 형식이 변수의!
형식으로 제한됩니다.
값의 형식이란?
정수, 실수, 문자, 문자열, 논리값(참,거짓)등!
기본 형식(Primitive type) 및!
이후에 학습하게될 다양한 종류의!
참조형 값을 의미한다
값의 형식은 왜 필요한가?
값의 형식이 필요한 이유를 !
알기 위해 “프로그램 실행” 의!
의미를 이해햐야 합니다.
“실행”이란 무엇인가?
실행을 이해하기위해 먼저!
컴퓨터의 뚜껑을 열어봅시다
역시, 기계는 복잡합니다.
일단, 우리의 관심사를 CPU, 메모리, 

하드디스크로 좁혀봅니다.
프로그램. 즉, 소프트웨어는 어떻게 실행될까?
적재(로딩)실행
소프트웨어를 실행시키기 위해서 실행할 !
코드와 데이타를 메모리로 이동시켜야 합니다.
그럼 메모리에 어떻게 적재하는가?
메모리는 일정한 크기로 나뉘어져 각각 고유의
주소가 할당되어 있습니다.
8bit 컴퓨터!
16bit 컴퓨터!
32bit 컴퓨터!
64비트 컴퓨터
}
1000 0000
1101 1100
0010 1001
1001 1011
1100 1100
1011 1001
1010 0110
0111 1001
0010 1100
1010 1111
0001 0110
1010 1011
1100 0101
0010 1011
0xFFFF FFFF
0x0000 0000
0x0000 0001
0x0000 0002
0x0000 0003
0x0000 0004
.!.!.
.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.
Memory Address
고정된 크기로!
분할된 공간
크기가 다른!
여러개의 값
크기와 형태가 각기 다른 수 많은 데이타를 크기가 일정한
저장소에 “나누어” 담고 읽어야 하는 일의 동작 방식
형태!
가공
값은 그 형태에 따라 메모리에 위치하는 방식과
크기가 다르다. 이것의 의미는 값을 읽고, 쓰고,
삭제하기 위한 처리 기준이 필요함을 의미한다.
그 처리 기준이 바로 값의 형(타입) 이다.
값의 형식
*값형식 지정 언어
값 형식을 명시적으로 지정함으로서 프로그램 실행시
주소 계산 과정을 빠르게 수행할 수 있다. 따라서 프로
그램 실행 속도가 빠르다.
변수가 저장할 수 있는 값의 형식을
명시한다는건 투명한 유리잔에 담긴
물과 같다. 변수를 사용하기전 이미
담겨져있는 내용이 “투명한 물”이라
는 정보를 알려주기 때문이다.
*값형식 미지정 언어
값 형식을 지정하지 않고 프로그래머는 값의 형식을 맞출
필요가 없으므로 변수를 보다 자유롭고 유연하게 운용할 수
있다. 그러나, 그 대가는 오류의 가능성, 매번 반복되는 형
검사 및 변환 등으로 인한 느린 속도다.
변수가 저장할 형식을 제한하지 않
는다는건 불투명한 컵과 같다. 뚜껑
을 열고 들여다 보기 전엔 내용이 무
엇인지 알 수 없다.(추측만 할 뿐)!
약속되지 않은 값 형식이 저장되어
있을 가능성이 항상 존재하며 이는
오류가 날 가능성을 의미한다.
이제 값을!
“유지”한다는 것의!
의미에 대해 알아봅시다
변수는 언제 만들어지고!
언제 사라질까?
“변수의 인생”
Life Cycle
”
“
생성
사용
참조
삭제
Life Cycle
“변수”
생성
사용
참조
삭제
Life Cycle
“변수” 위치가 존재
사용하는 것에 !
영향을 미침
생성
사용
참조
삭제
Life Cycle
“변수” 위치
이것을 범위, !
스코프라 한다
생성
Scope
변수는 생성된 범위 내에 알려지며, 사용된다
Javascript는 모든 범위를!
포함하는 영역을 제공하며 이를 전역이라 한다
Global Scope
전역
10
you
전역 범위에서!
만들어진 변수는!
전역변수
범위는 프로그래머 임의로 만들어 낼 수 있다!
이렇게 만들어진 범위를 지역 범위라 한다
Global Scope
전역
지역 범위에서!
만들어진 변수는!
지역변수
20
me
10
you
전역 범위에서!
만들어진 변수는!
전역변수
지역
Local Scope
범위는 n개가 될 수 있고, 전역이 지역을 포함하듯
지역은 다른 지역을 몇 번이라도 포함할 수 있다.
Javascript에선 지역 범위는 함수로 만들어지며 !
함수의 호출, 반환과 함께 생성되고 소멸된다
function x(){
!
}
function y(){
!
!
!
!
!
}
function y1() {
!
}
function y2() { 

}
함수 만들기
함수 이름 입력 (아규먼트)
출력(반환) 처리
다양한 형태의 함수 만들기
이름과 아규먼트로!
구성된 함수 기본형
JS는 함수를 값으로!
취할 수 도 있음
이름이 없는 !
익명 함수
함수 사용(호출)하기
처리 결과 저장
*입력값이 없어도 !
괄호는 생략할 수 없음
변수, 범위 그리고 함수 정리
변수(상자)는 어디에 만들어지는가?
function x { }
a x z t
s v
f r w e b c
function y { }
function z { }
Javascript
 에서
 스코프를
 만드는
 
 
유일한
 방법은
 “함수”다
유효
 
범위
이미 만들어진 ㅁㅁ 스코프가 있다
function x { }
a x z t
s v
f r w e b
c
function y { }
function z { }
global
전역
a b
/*최초로
 등장한
 변수들
 */
*Javascript
 에서
 변수를
 
만드는
 지시어
 var
 는
 생략될
 
수
 있다.
 그럴경우
 변수는
 
전역
 공간에
 생성된다
a = 10;	

b =‘yes’;
Javascript 값의 종류와 표현 방식
100
100.12
0
-100
100e10
“정수, 실수”
Javascript 값의 종류와 표현 방식
‘Jobs’
“Hello World”
‘100’
“I'm a genius”
“문자열”
* 문자열은 ‘’ 또는 “” 로 감싸진 모든 값이다. 그 내용이 숫자일 지라도 문자열이된다.
Javascript 값의 종류와 표현 방식
true
false
“논리값”
Javascript 값의 종류와 표현 방식
undefined
null
“특수한 의미의 값”
Javascript 값의 종류와 표현 방식
function
object
“심지어 함수, 객체도 값”
Javascript 값의 종류와 표현 방식
typeof 값
“값의 형식을 알고싶을 때 ”
값의 연산
+ - * / %
- +
++ --
덧셈 뺄셈 곱셈
나눗셈
나머지
음수 양수
1씩
 증가 1씩
 감소
“산술 연산자”
값의 연산
“산술 연산 식(式)”
연산자 우선순위가 존재.

명시적 우선순위 지정을 위해
괄호를 사 사용
값의 연산
“대입문(文)”
연산자의 결합 방식
모든 연산자는 우선순위가 있다. 곱셈은 덧셈, 뺄셈보
다 우선순위가 높다. 즉, 덧셈 뺄셈 보다 먼저 수행된다
모든 연산자는 결합 방향을 가진다. 대입 연산자는 오른
쪽에서 왼쪽으로, 뺄셈은 왼쪽에서 오른쪽으로, 증감 연
산자(++, --)는 결합 방향을(전치, 후치) 변경할 수 있다.
x 의 값은 -2이다.!
덧셈, 뺄셈의 우선순위는!
같기 때문에 좌측에서 우측으로 !
결합되며 수행된다.
y의 값은 7이다. 9라고 예상한다면 !
수식의 의도를 우선순위와 결합방향과 !
다르게 표현했기 때문이다.
x = 1 + 2 - 5;
y = 1 + 2 * 3;
연산자의 결합 방식
y 값이 7이 되는 과정. 곱셈의 우선순위가 높기 때문에 먼저
수행된 후 그 결과를 다음 우선순위인 덧셈과 결합된다.
1
2
y 값이 9가 되는 “의도” 가 있다면 그 의도를 괄호로 표현
하라. 괄호는 결합 우선순위를 명시적으로 지정할 수 있다.
2
1
y = 1 + 2 * 3;
y = (1 + 2) * 3;
문맥에 따라 기능이 달라지는 연산자
y 의 값은 각각 20, ‘1010’ 이다.!
어떻게 이런 결과가 나오는 것일까?
+연산자는 좌변과 우변이 모두 숫자 (or 숫자를 담고있는 변
수)인 경우 산술 연산을 수행하고 하나라도 문자인 경우 숫자
를 문자형으로 변환(Type Casting)한 후 “결합”된다
x = 10;	

y = x + 10;	

!
x = ’10’;	

y = x + 10;
명시적인 형변환 방법
y 의 값은 문자열 ‘1010’ 이다.!
값을 문자열로 변경하는 String() 함수를 이용하여!
x 값을 문자열로 변경한 후 + 로 우변과 결합한다.
y의 값은 20이다.!
문자 ’10’을 담고 있는 변수 x 에 !
+ (양수) 연산자를 이용하여 숫자로!
변환하는 형변환을 강제로 발생시킨 후!
우변과 사칙연산이 수행된다.
y의 값은 20이다.!
+x 방식과 동일하나 보다 명시적인 숫자 형변환 함수를 이용했다.
x = 10;	

y = String(x) + 10;	

!
x = ’10’;	

y = +x + 10;	

y = Number(x) + 10;
대입 연산자의 확장
+ - * / %
=
+= -= *= /= %=
x = x + 1;	

x += 1;
첫번째 실습. 유효범위의 동작을!
눈으로 확인해 봅시다!
sample.js 에 아래 내용을 입력합니다
sample.html 브라우저로 열고, 개발자 도구 실행
자바스크립트 코드에 브레이크 포인트 설정
실행 제어 버튼 (연속, 구문단위, 함수단위, 일시정지)
브레이크 포인트에 실행이 일시정지된 상태

More Related Content

What's hot

go + swaggerでAPIサーバーを作ってみる
go + swaggerでAPIサーバーを作ってみるgo + swaggerでAPIサーバーを作ってみる
go + swaggerでAPIサーバーを作ってみる虎の穴 開発室
 
iOS 15で通知はより見られなくなる
iOS 15で通知はより見られなくなるiOS 15で通知はより見られなくなる
iOS 15で通知はより見られなくなるDaiki Mogmet Ito
 
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?Yongho Ha
 
GoによるiOSアプリの開発
GoによるiOSアプリの開発GoによるiOSアプリの開発
GoによるiOSアプリの開発Takuya Ueda
 
김동건, 게임팅커가 되자, 2015년 데브캣 스튜디오 워크샵
김동건, 게임팅커가 되자, 2015년 데브캣 스튜디오 워크샵김동건, 게임팅커가 되자, 2015년 데브캣 스튜디오 워크샵
김동건, 게임팅커가 되자, 2015년 데브캣 스튜디오 워크샵devCAT Studio, NEXON
 
Crafted Design - Sandro Mancuso
Crafted Design - Sandro MancusoCrafted Design - Sandro Mancuso
Crafted Design - Sandro MancusoJAXLondon2014
 
코로나19로 인해 변화된 우리 시대의 데이터 트랜드
코로나19로 인해 변화된 우리 시대의 데이터 트랜드코로나19로 인해 변화된 우리 시대의 데이터 트랜드
코로나19로 인해 변화된 우리 시대의 데이터 트랜드Yongho Ha
 
김충효, 10년째 같은 회사를 다니고 있습니다
김충효, 10년째 같은 회사를 다니고 있습니다김충효, 10년째 같은 회사를 다니고 있습니다
김충효, 10년째 같은 회사를 다니고 있습니다devCAT Studio, NEXON
 
Domain Modeling with FP (DDD Europe 2020)
Domain Modeling with FP (DDD Europe 2020)Domain Modeling with FP (DDD Europe 2020)
Domain Modeling with FP (DDD Europe 2020)Scott Wlaschin
 
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점Wonha Ryu
 
フロントエンドの技術を刷新した話し。
フロントエンドの技術を刷新した話し。フロントエンドの技術を刷新した話し。
フロントエンドの技術を刷新した話し。Yutaka Horikawa
 
SpringMVC 전체 흐름 알아보기
SpringMVC 전체 흐름 알아보기SpringMVC 전체 흐름 알아보기
SpringMVC 전체 흐름 알아보기Myung Woon Oh
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」Takuto Wada
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話Koichiro Matsuoka
 

What's hot (20)

go + swaggerでAPIサーバーを作ってみる
go + swaggerでAPIサーバーを作ってみるgo + swaggerでAPIサーバーを作ってみる
go + swaggerでAPIサーバーを作ってみる
 
iOS 15で通知はより見られなくなる
iOS 15で通知はより見られなくなるiOS 15で通知はより見られなくなる
iOS 15で通知はより見られなくなる
 
파이썬으로 익히는 딥러닝
파이썬으로 익히는 딥러닝파이썬으로 익히는 딥러닝
파이썬으로 익히는 딥러닝
 
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?
 
Redux Thunk
Redux ThunkRedux Thunk
Redux Thunk
 
GoによるiOSアプリの開発
GoによるiOSアプリの開発GoによるiOSアプリの開発
GoによるiOSアプリの開発
 
김동건, 게임팅커가 되자, 2015년 데브캣 스튜디오 워크샵
김동건, 게임팅커가 되자, 2015년 데브캣 스튜디오 워크샵김동건, 게임팅커가 되자, 2015년 데브캣 스튜디오 워크샵
김동건, 게임팅커가 되자, 2015년 데브캣 스튜디오 워크샵
 
Crafted Design - Sandro Mancuso
Crafted Design - Sandro MancusoCrafted Design - Sandro Mancuso
Crafted Design - Sandro Mancuso
 
코로나19로 인해 변화된 우리 시대의 데이터 트랜드
코로나19로 인해 변화된 우리 시대의 데이터 트랜드코로나19로 인해 변화된 우리 시대의 데이터 트랜드
코로나19로 인해 변화된 우리 시대의 데이터 트랜드
 
SOLID Principles
SOLID PrinciplesSOLID Principles
SOLID Principles
 
김충효, 10년째 같은 회사를 다니고 있습니다
김충효, 10년째 같은 회사를 다니고 있습니다김충효, 10년째 같은 회사를 다니고 있습니다
김충효, 10년째 같은 회사를 다니고 있습니다
 
Domain Modeling with FP (DDD Europe 2020)
Domain Modeling with FP (DDD Europe 2020)Domain Modeling with FP (DDD Europe 2020)
Domain Modeling with FP (DDD Europe 2020)
 
Queues
QueuesQueues
Queues
 
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점
현업 엔지니어의 시각에서 본 알고리즘 공부의 장점과 단점
 
フロントエンドの技術を刷新した話し。
フロントエンドの技術を刷新した話し。フロントエンドの技術を刷新した話し。
フロントエンドの技術を刷新した話し。
 
SpringMVC 전체 흐름 알아보기
SpringMVC 전체 흐름 알아보기SpringMVC 전체 흐름 알아보기
SpringMVC 전체 흐름 알아보기
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
 
Tree in data structure
Tree in data structureTree in data structure
Tree in data structure
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
 
12 Phases of Web Development Life Cycle
12 Phases of Web Development Life Cycle12 Phases of Web Development Life Cycle
12 Phases of Web Development Life Cycle
 

Viewers also liked

비개발자를 위한 Javascript 알아가기 #3
비개발자를 위한 Javascript 알아가기 #3비개발자를 위한 Javascript 알아가기 #3
비개발자를 위한 Javascript 알아가기 #3민태 김
 
소프트웨어 교육용 자작로봇
소프트웨어 교육용 자작로봇소프트웨어 교육용 자작로봇
소프트웨어 교육용 자작로봇Kyung Man Shin
 
스크래치 4주차 강의자료
스크래치 4주차 강의자료스크래치 4주차 강의자료
스크래치 4주차 강의자료sookmyungvisual
 
외계어 스터디 3/5 function and object
외계어 스터디 3/5   function and object외계어 스터디 3/5   function and object
외계어 스터디 3/5 function and object민태 김
 
Toeic grammar &amp; vocab ข้อ 11 ถึง 20 วันที่ 30 3 2017
Toeic grammar &amp; vocab ข้อ 11 ถึง 20 วันที่ 30 3 2017Toeic grammar &amp; vocab ข้อ 11 ถึง 20 วันที่ 30 3 2017
Toeic grammar &amp; vocab ข้อ 11 ถึง 20 วันที่ 30 3 2017Aj Muu
 
외계어 스터디 4/5 Event & Library
외계어 스터디 4/5 Event & Library외계어 스터디 4/5 Event & Library
외계어 스터디 4/5 Event & Library민태 김
 
스크래치 3주차 강의 프리젠테이션
스크래치 3주차 강의 프리젠테이션스크래치 3주차 강의 프리젠테이션
스크래치 3주차 강의 프리젠테이션sookmyungvisual
 
잘하면고효율, 못하면가문의원수가되는 짝프로그래밍 (Effective Pair Programming with Lessons Learned)
잘하면고효율, 못하면가문의원수가되는 짝프로그래밍 (Effective Pair Programming with Lessons Learned)잘하면고효율, 못하면가문의원수가되는 짝프로그래밍 (Effective Pair Programming with Lessons Learned)
잘하면고효율, 못하면가문의원수가되는 짝프로그래밍 (Effective Pair Programming with Lessons Learned)Suwon Chae
 
비개발자를 위한 Javascript 알아가기 #5
비개발자를 위한 Javascript 알아가기 #5비개발자를 위한 Javascript 알아가기 #5
비개발자를 위한 Javascript 알아가기 #5민태 김
 
Digital Road for Kids
Digital Road for KidsDigital Road for Kids
Digital Road for Kidssookyung kong
 
스크래치 시작하기
스크래치 시작하기스크래치 시작하기
스크래치 시작하기program2live
 
송창규, unity build로 빌드타임 반토막내기, NDC2010
송창규, unity build로 빌드타임 반토막내기, NDC2010송창규, unity build로 빌드타임 반토막내기, NDC2010
송창규, unity build로 빌드타임 반토막내기, NDC2010devCAT Studio, NEXON
 
무엇을 만들 것인가_창의융합프로젝트_자유전공학부_2014_fall
무엇을 만들 것인가_창의융합프로젝트_자유전공학부_2014_fall무엇을 만들 것인가_창의융합프로젝트_자유전공학부_2014_fall
무엇을 만들 것인가_창의융합프로젝트_자유전공학부_2014_fallSeoul National University
 
Google Cloud Next 2017 Seoul Extended 1st Session.
Google Cloud Next 2017 Seoul Extended 1st Session.Google Cloud Next 2017 Seoul Extended 1st Session.
Google Cloud Next 2017 Seoul Extended 1st Session.Harrison Jung
 
내가 대학원에 들어왔을 때 알았더라면 좋았을 연구 노하우
내가 대학원에 들어왔을 때 알았더라면 좋았을 연구 노하우 내가 대학원에 들어왔을 때 알았더라면 좋았을 연구 노하우
내가 대학원에 들어왔을 때 알았더라면 좋았을 연구 노하우 Yoon Sup Choi
 
문과생 대상 파이썬을 활용한 데이터 분석 강의
문과생 대상 파이썬을 활용한 데이터 분석 강의문과생 대상 파이썬을 활용한 데이터 분석 강의
문과생 대상 파이썬을 활용한 데이터 분석 강의Kwangyoun Jung
 
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git버전관리를 들어본적 없는 사람들을 위한 DVCS - Git
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git민태 김
 
Programming for kids
Programming for kidsProgramming for kids
Programming for kidsYoun-Hee Han
 

Viewers also liked (20)

비개발자를 위한 Javascript 알아가기 #3
비개발자를 위한 Javascript 알아가기 #3비개발자를 위한 Javascript 알아가기 #3
비개발자를 위한 Javascript 알아가기 #3
 
소프트웨어 교육용 자작로봇
소프트웨어 교육용 자작로봇소프트웨어 교육용 자작로봇
소프트웨어 교육용 자작로봇
 
스크래치 4주차 강의자료
스크래치 4주차 강의자료스크래치 4주차 강의자료
스크래치 4주차 강의자료
 
Cryocar
CryocarCryocar
Cryocar
 
외계어 스터디 3/5 function and object
외계어 스터디 3/5   function and object외계어 스터디 3/5   function and object
외계어 스터디 3/5 function and object
 
Toeic grammar &amp; vocab ข้อ 11 ถึง 20 วันที่ 30 3 2017
Toeic grammar &amp; vocab ข้อ 11 ถึง 20 วันที่ 30 3 2017Toeic grammar &amp; vocab ข้อ 11 ถึง 20 วันที่ 30 3 2017
Toeic grammar &amp; vocab ข้อ 11 ถึง 20 วันที่ 30 3 2017
 
스크래치 6주차
스크래치 6주차스크래치 6주차
스크래치 6주차
 
외계어 스터디 4/5 Event & Library
외계어 스터디 4/5 Event & Library외계어 스터디 4/5 Event & Library
외계어 스터디 4/5 Event & Library
 
스크래치 3주차 강의 프리젠테이션
스크래치 3주차 강의 프리젠테이션스크래치 3주차 강의 프리젠테이션
스크래치 3주차 강의 프리젠테이션
 
잘하면고효율, 못하면가문의원수가되는 짝프로그래밍 (Effective Pair Programming with Lessons Learned)
잘하면고효율, 못하면가문의원수가되는 짝프로그래밍 (Effective Pair Programming with Lessons Learned)잘하면고효율, 못하면가문의원수가되는 짝프로그래밍 (Effective Pair Programming with Lessons Learned)
잘하면고효율, 못하면가문의원수가되는 짝프로그래밍 (Effective Pair Programming with Lessons Learned)
 
비개발자를 위한 Javascript 알아가기 #5
비개발자를 위한 Javascript 알아가기 #5비개발자를 위한 Javascript 알아가기 #5
비개발자를 위한 Javascript 알아가기 #5
 
Digital Road for Kids
Digital Road for KidsDigital Road for Kids
Digital Road for Kids
 
스크래치 시작하기
스크래치 시작하기스크래치 시작하기
스크래치 시작하기
 
송창규, unity build로 빌드타임 반토막내기, NDC2010
송창규, unity build로 빌드타임 반토막내기, NDC2010송창규, unity build로 빌드타임 반토막내기, NDC2010
송창규, unity build로 빌드타임 반토막내기, NDC2010
 
무엇을 만들 것인가_창의융합프로젝트_자유전공학부_2014_fall
무엇을 만들 것인가_창의융합프로젝트_자유전공학부_2014_fall무엇을 만들 것인가_창의융합프로젝트_자유전공학부_2014_fall
무엇을 만들 것인가_창의융합프로젝트_자유전공학부_2014_fall
 
Google Cloud Next 2017 Seoul Extended 1st Session.
Google Cloud Next 2017 Seoul Extended 1st Session.Google Cloud Next 2017 Seoul Extended 1st Session.
Google Cloud Next 2017 Seoul Extended 1st Session.
 
내가 대학원에 들어왔을 때 알았더라면 좋았을 연구 노하우
내가 대학원에 들어왔을 때 알았더라면 좋았을 연구 노하우 내가 대학원에 들어왔을 때 알았더라면 좋았을 연구 노하우
내가 대학원에 들어왔을 때 알았더라면 좋았을 연구 노하우
 
문과생 대상 파이썬을 활용한 데이터 분석 강의
문과생 대상 파이썬을 활용한 데이터 분석 강의문과생 대상 파이썬을 활용한 데이터 분석 강의
문과생 대상 파이썬을 활용한 데이터 분석 강의
 
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git버전관리를 들어본적 없는 사람들을 위한 DVCS - Git
버전관리를 들어본적 없는 사람들을 위한 DVCS - Git
 
Programming for kids
Programming for kidsProgramming for kids
Programming for kids
 

Similar to 외계어 스터디 2/5 - Expressions & statements

비개발자를 위한 Javascript 알아가기 #6
비개발자를 위한 Javascript 알아가기 #6비개발자를 위한 Javascript 알아가기 #6
비개발자를 위한 Javascript 알아가기 #6민태 김
 
Start IoT with JavaScript - 1.기초
Start IoT with JavaScript - 1.기초Start IoT with JavaScript - 1.기초
Start IoT with JavaScript - 1.기초Park Jonggun
 
Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리ETRIBE_STG
 
0.javascript기본(~3일차내)
0.javascript기본(~3일차내)0.javascript기본(~3일차내)
0.javascript기본(~3일차내)Sung-hoon Ma
 
Smalltalk at Altlang 2008
Smalltalk at Altlang 2008Smalltalk at Altlang 2008
Smalltalk at Altlang 2008daliot
 
자바프로그래머를 위한 스칼라
자바프로그래머를 위한 스칼라자바프로그래머를 위한 스칼라
자바프로그래머를 위한 스칼라Jong Gook Bae
 
Processing 기초 이해하기_20160713
Processing 기초 이해하기_20160713Processing 기초 이해하기_20160713
Processing 기초 이해하기_20160713Yong Joon Moon
 
모던 자바스크립트 Deep Dive Review
모던 자바스크립트 Deep Dive Review모던 자바스크립트 Deep Dive Review
모던 자바스크립트 Deep Dive ReviewDataUs
 
모어 이펙티브 c++ 1,2장 스터디
모어 이펙티브 c++ 1,2장 스터디모어 이펙티브 c++ 1,2장 스터디
모어 이펙티브 c++ 1,2장 스터디quxn6
 
스칼라와 스파크 영혼의 듀오
스칼라와 스파크 영혼의 듀오스칼라와 스파크 영혼의 듀오
스칼라와 스파크 영혼의 듀오Taeoh Kim
 
Chapter8 상속과다형성(윤현성)
Chapter8 상속과다형성(윤현성)Chapter8 상속과다형성(윤현성)
Chapter8 상속과다형성(윤현성)Hyun Sung Yoon
 
Chapter8 상속과다형성(윤현성)
Chapter8 상속과다형성(윤현성)Chapter8 상속과다형성(윤현성)
Chapter8 상속과다형성(윤현성)Hyun Sung Yoon
 
0327.web&ruby&rails
0327.web&ruby&rails0327.web&ruby&rails
0327.web&ruby&rails민정 김
 
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여iamprogrammerofficial
 

Similar to 외계어 스터디 2/5 - Expressions & statements (20)

비개발자를 위한 Javascript 알아가기 #6
비개발자를 위한 Javascript 알아가기 #6비개발자를 위한 Javascript 알아가기 #6
비개발자를 위한 Javascript 알아가기 #6
 
Start IoT with JavaScript - 1.기초
Start IoT with JavaScript - 1.기초Start IoT with JavaScript - 1.기초
Start IoT with JavaScript - 1.기초
 
Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리
 
Javascript
JavascriptJavascript
Javascript
 
0.javascript기본(~3일차내)
0.javascript기본(~3일차내)0.javascript기본(~3일차내)
0.javascript기본(~3일차내)
 
Smalltalk at Altlang 2008
Smalltalk at Altlang 2008Smalltalk at Altlang 2008
Smalltalk at Altlang 2008
 
자바프로그래머를 위한 스칼라
자바프로그래머를 위한 스칼라자바프로그래머를 위한 스칼라
자바프로그래머를 위한 스칼라
 
C review
C  reviewC  review
C review
 
Processing 기초 이해하기_20160713
Processing 기초 이해하기_20160713Processing 기초 이해하기_20160713
Processing 기초 이해하기_20160713
 
모던 자바스크립트 Deep Dive Review
모던 자바스크립트 Deep Dive Review모던 자바스크립트 Deep Dive Review
모던 자바스크립트 Deep Dive Review
 
모어 이펙티브 c++ 1,2장 스터디
모어 이펙티브 c++ 1,2장 스터디모어 이펙티브 c++ 1,2장 스터디
모어 이펙티브 c++ 1,2장 스터디
 
스칼라와 스파크 영혼의 듀오
스칼라와 스파크 영혼의 듀오스칼라와 스파크 영혼의 듀오
스칼라와 스파크 영혼의 듀오
 
Chapter8 상속과다형성(윤현성)
Chapter8 상속과다형성(윤현성)Chapter8 상속과다형성(윤현성)
Chapter8 상속과다형성(윤현성)
 
Chapter8 상속과다형성(윤현성)
Chapter8 상속과다형성(윤현성)Chapter8 상속과다형성(윤현성)
Chapter8 상속과다형성(윤현성)
 
ES6 for Node.js Study
ES6 for Node.js StudyES6 for Node.js Study
ES6 for Node.js Study
 
javascript01
javascript01javascript01
javascript01
 
You dont know_js
You dont know_jsYou dont know_js
You dont know_js
 
0327.web&ruby&rails
0327.web&ruby&rails0327.web&ruby&rails
0327.web&ruby&rails
 
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여
2015 나는 프로그래머다 컨퍼런스 (11) 염산악 - 가독성에 대하여
 
4-1. javascript
4-1. javascript4-1. javascript
4-1. javascript
 

More from 민태 김

웹을 지탱하는 차세대 기술 @한국웹20주년 컨퍼런스
웹을 지탱하는 차세대 기술 @한국웹20주년 컨퍼런스웹을 지탱하는 차세대 기술 @한국웹20주년 컨퍼런스
웹을 지탱하는 차세대 기술 @한국웹20주년 컨퍼런스민태 김
 
초보자를 위한 정규 표현식 가이드 (자바스크립트 기준)
초보자를 위한 정규 표현식 가이드 (자바스크립트 기준)초보자를 위한 정규 표현식 가이드 (자바스크립트 기준)
초보자를 위한 정규 표현식 가이드 (자바스크립트 기준)민태 김
 
비개발자를 위한 Javascript 알아가기 #7.1
비개발자를 위한 Javascript 알아가기 #7.1비개발자를 위한 Javascript 알아가기 #7.1
비개발자를 위한 Javascript 알아가기 #7.1민태 김
 
비개발자를 위한 Javascript 알아가기 #7
비개발자를 위한 Javascript 알아가기 #7비개발자를 위한 Javascript 알아가기 #7
비개발자를 위한 Javascript 알아가기 #7민태 김
 
비개발자를 위한 Javascript 알아가기 #6.1
비개발자를 위한 Javascript 알아가기 #6.1비개발자를 위한 Javascript 알아가기 #6.1
비개발자를 위한 Javascript 알아가기 #6.1민태 김
 
MEAN Stack 기반 모바일 서비스 개발 overview
MEAN Stack 기반 모바일 서비스 개발 overviewMEAN Stack 기반 모바일 서비스 개발 overview
MEAN Stack 기반 모바일 서비스 개발 overview민태 김
 
비개발자를 위한 Javascript 알아가기 #5.1
비개발자를 위한 Javascript 알아가기 #5.1비개발자를 위한 Javascript 알아가기 #5.1
비개발자를 위한 Javascript 알아가기 #5.1민태 김
 
비개발자를 위한 Javascript 알아가기 #4.1
비개발자를 위한 Javascript 알아가기 #4.1비개발자를 위한 Javascript 알아가기 #4.1
비개발자를 위한 Javascript 알아가기 #4.1민태 김
 
비개발자를 위한 Javascript 알아가기 #4
비개발자를 위한 Javascript 알아가기 #4비개발자를 위한 Javascript 알아가기 #4
비개발자를 위한 Javascript 알아가기 #4민태 김
 
비개발자를 위한 Javascript 알아가기 #2
비개발자를 위한 Javascript 알아가기 #2비개발자를 위한 Javascript 알아가기 #2
비개발자를 위한 Javascript 알아가기 #2민태 김
 
비개발자를 위한 Javascript 알아가기 #1
비개발자를 위한 Javascript 알아가기 #1비개발자를 위한 Javascript 알아가기 #1
비개발자를 위한 Javascript 알아가기 #1민태 김
 
Waterfall과 agile의 불편한 동거 public
Waterfall과 agile의 불편한 동거 publicWaterfall과 agile의 불편한 동거 public
Waterfall과 agile의 불편한 동거 public민태 김
 
AWS 구축 경험 공유
AWS 구축 경험 공유AWS 구축 경험 공유
AWS 구축 경험 공유민태 김
 
H3 경쟁력있는 웹앱 개발을 위한 모바일 js 프레임웍
H3 경쟁력있는 웹앱 개발을 위한 모바일 js 프레임웍H3 경쟁력있는 웹앱 개발을 위한 모바일 js 프레임웍
H3 경쟁력있는 웹앱 개발을 위한 모바일 js 프레임웍민태 김
 
Knockout.js Overview
Knockout.js OverviewKnockout.js Overview
Knockout.js Overview민태 김
 
스마트미디어 크로스플렛폼 개발 전략
스마트미디어 크로스플렛폼 개발 전략스마트미디어 크로스플렛폼 개발 전략
스마트미디어 크로스플렛폼 개발 전략민태 김
 
CANVAS, SVG, WebGL, CSS3, WebEvent
CANVAS, SVG, WebGL, CSS3, WebEventCANVAS, SVG, WebGL, CSS3, WebEvent
CANVAS, SVG, WebGL, CSS3, WebEvent민태 김
 
Html5 game programming overview
Html5 game programming overviewHtml5 game programming overview
Html5 game programming overview민태 김
 
What is Hybrid Apps
What is Hybrid AppsWhat is Hybrid Apps
What is Hybrid Apps민태 김
 

More from 민태 김 (20)

Git - Level 2
Git - Level 2Git - Level 2
Git - Level 2
 
웹을 지탱하는 차세대 기술 @한국웹20주년 컨퍼런스
웹을 지탱하는 차세대 기술 @한국웹20주년 컨퍼런스웹을 지탱하는 차세대 기술 @한국웹20주년 컨퍼런스
웹을 지탱하는 차세대 기술 @한국웹20주년 컨퍼런스
 
초보자를 위한 정규 표현식 가이드 (자바스크립트 기준)
초보자를 위한 정규 표현식 가이드 (자바스크립트 기준)초보자를 위한 정규 표현식 가이드 (자바스크립트 기준)
초보자를 위한 정규 표현식 가이드 (자바스크립트 기준)
 
비개발자를 위한 Javascript 알아가기 #7.1
비개발자를 위한 Javascript 알아가기 #7.1비개발자를 위한 Javascript 알아가기 #7.1
비개발자를 위한 Javascript 알아가기 #7.1
 
비개발자를 위한 Javascript 알아가기 #7
비개발자를 위한 Javascript 알아가기 #7비개발자를 위한 Javascript 알아가기 #7
비개발자를 위한 Javascript 알아가기 #7
 
비개발자를 위한 Javascript 알아가기 #6.1
비개발자를 위한 Javascript 알아가기 #6.1비개발자를 위한 Javascript 알아가기 #6.1
비개발자를 위한 Javascript 알아가기 #6.1
 
MEAN Stack 기반 모바일 서비스 개발 overview
MEAN Stack 기반 모바일 서비스 개발 overviewMEAN Stack 기반 모바일 서비스 개발 overview
MEAN Stack 기반 모바일 서비스 개발 overview
 
비개발자를 위한 Javascript 알아가기 #5.1
비개발자를 위한 Javascript 알아가기 #5.1비개발자를 위한 Javascript 알아가기 #5.1
비개발자를 위한 Javascript 알아가기 #5.1
 
비개발자를 위한 Javascript 알아가기 #4.1
비개발자를 위한 Javascript 알아가기 #4.1비개발자를 위한 Javascript 알아가기 #4.1
비개발자를 위한 Javascript 알아가기 #4.1
 
비개발자를 위한 Javascript 알아가기 #4
비개발자를 위한 Javascript 알아가기 #4비개발자를 위한 Javascript 알아가기 #4
비개발자를 위한 Javascript 알아가기 #4
 
비개발자를 위한 Javascript 알아가기 #2
비개발자를 위한 Javascript 알아가기 #2비개발자를 위한 Javascript 알아가기 #2
비개발자를 위한 Javascript 알아가기 #2
 
비개발자를 위한 Javascript 알아가기 #1
비개발자를 위한 Javascript 알아가기 #1비개발자를 위한 Javascript 알아가기 #1
비개발자를 위한 Javascript 알아가기 #1
 
Waterfall과 agile의 불편한 동거 public
Waterfall과 agile의 불편한 동거 publicWaterfall과 agile의 불편한 동거 public
Waterfall과 agile의 불편한 동거 public
 
AWS 구축 경험 공유
AWS 구축 경험 공유AWS 구축 경험 공유
AWS 구축 경험 공유
 
H3 경쟁력있는 웹앱 개발을 위한 모바일 js 프레임웍
H3 경쟁력있는 웹앱 개발을 위한 모바일 js 프레임웍H3 경쟁력있는 웹앱 개발을 위한 모바일 js 프레임웍
H3 경쟁력있는 웹앱 개발을 위한 모바일 js 프레임웍
 
Knockout.js Overview
Knockout.js OverviewKnockout.js Overview
Knockout.js Overview
 
스마트미디어 크로스플렛폼 개발 전략
스마트미디어 크로스플렛폼 개발 전략스마트미디어 크로스플렛폼 개발 전략
스마트미디어 크로스플렛폼 개발 전략
 
CANVAS, SVG, WebGL, CSS3, WebEvent
CANVAS, SVG, WebGL, CSS3, WebEventCANVAS, SVG, WebGL, CSS3, WebEvent
CANVAS, SVG, WebGL, CSS3, WebEvent
 
Html5 game programming overview
Html5 game programming overviewHtml5 game programming overview
Html5 game programming overview
 
What is Hybrid Apps
What is Hybrid AppsWhat is Hybrid Apps
What is Hybrid Apps
 

외계어 스터디 2/5 - Expressions & statements