화성에서 온 개발자, 금성에서 온 기획자

Preview:

DESCRIPTION

개발자와 기획자, 디자이너가 서로를 이해하기 위한 자료 입니다. 이 자료는 (웹 서비스) 개발자들이 주로 사용하는 어휘들을 편하게 풀어 소개해 보았습니다.

Citation preview

화성에서 온 개발자 금성에서 온 기획자

2012.03.07 KTH 분산기술Lab 하용호

(yongho.ha@gmail.com, twitter : @yonghosee)

2

용 호 용 호

4층 클라우드 연구소 분산기술Lab에 있습니다.

화성에서 온 개발자 금성에서 온 기획자 ,디자이너, 총무팀, 인사팀,

기업문화팀, 우리 아버지 등등등

원문 : “괜찮아”

저의 해석 : ‘아. 괜찮구나’

실제 뜻 : ‘하나도 괜찮지 않다. 니가 어떻게 그럴 수 있냐’

: ‘하나도 괜찮지 않다. 니가 어떻게 그럴 수 있냐’ “괜찮아”

전문용어

개발자가 쓰는

전문용어들

HTTP

HTTPS

API

DNS API

JAVA

Python Ruby

PHP Spring

Django

Rails

Database Oracle

MySQL

NoSQL

SQL

Cache

IP MongoDB Cassandra

Web Server Application Server REST

Virtual Machine

Parsing FailOver

Replication

정신 사납죠?

저도 그래요

알고보면 늘 나오는게 나옵니다.

아! 질문 받습니다.

가봅시다!

http://www.google.co.kr/#hl=ko&q=화성

http://www.google.co.kr/#hl=ko&q=화성

도메인네임

URL

IP

HTTP,HTTPS

웹서버

http://www.google.co.kr/#hl=ko&q=화성

도메인네임

IP 74.125.71.94

아버지께서 스마트폰을 사셨습니다.

근데 아버지 전화번호 몰라요

전화번호

주소록

DNS(Domain Name Server)

Google.co.kr 74.125.71.94

Paran.com 211.113.13.88

Pudding.to 184.169.144.61

… …

세계가 공유하는 주소록

웹서버IP

DNS(Domainname Server)

http://www.google.co.kr/#hl=ko&q=금성

http://74.125.71.94/#hl=ko&q=금성

주소록을 전 세계가 동기화 한다면?

DNS 내용 변화가 실제로 전 세계에 반영되는데 1~2일 걸립니다.

“서버 IP가 바뀌어서 반영되는데 하루 이틀 걸려요” -요런 멘트들, 이런 이유 였습니다.

http://www.google.co.kr/#hl=ko&q=화성

http 이건 무슨 뜻?

HTTP 웹서버가 알아듣는 언어 (프로토콜)

http://pudding.to/

ftp://www.testdb.co.kr/

ssh://sample.com/

자 여러분이 식당에 왔습니다.

자 여러분이 식당에 왔습니다.

“참치김밥이요”

자 여러분이 식당에 왔습니다.

“보..봉주르..”

프랑스인 장 르노 씨 (61세, 웨이터, 신림동 거주)

이게 HTTP 입니다. 그래야 우리에게 밥(웹페이지)을 줍니다;;

웹서버

“프랑스 말 밖에 몰라효~”

HTTPS (secure)

https://www.wooribank.co.kr/login

HTTP는 기본적으로 소리치는 의사소통 “철수야 내 계좌비번은 4321이야”

계좌비번

꽝 1 깽 2 꽁 3 낑 4

미리 암호 규칙을 주고 받습니다

“낑꽁깽꽝!!”

찰떡같이 알아듣습니다.

“디테일하겐 퍼블릭 키, 프라이빗 키 뭐 이런건데 그냥 뭔가 주고 받는다만 기억하세용”

HTTPS는 서버에 부담이 있으니 필요한 곳(로긴, 결제)에만 적당히.

Static resources

Dynamic resources

WebServer

수저, 단무지, 젓가락, 밑반찬

김치찌개 맵게요

짜장면 곱배기요

미리 준비해놓고 바로 서빙

주문이 올때마다 만들어야 함 머리(CPU)도 많이 써야하고 주방(메모리) 커야함

Dynamic resources

김치찌개는 어떻게 끓이는가?

WebServer

프로그래머가 레시피(프로그램)를 짜서 미리 넘겨줍니다.

서버 사이드 언어들 (서버에서 돌아요)

C/C++

JAVA Python

PHP Ruby

C/C++

JAVA

Python

PHP Ruby

같은 일을 한다고 봤을 때

코드량 많다.

코드량 적다.

동작속도빠르다

동작속도느리다

C/C++

JAVA

수정해 주세요. 백번 이야기하면

화낸다

화 안낸다.

개발속도 느리다

개발속도 빠르다. Python

PHP Ruby

C/C++

JAVA

내가 배우려 시도했을 때

시도 않는게 좋다.

지금이라도 도전한다. Python

PHP Ruby

웹프레임웍들

Django

Rails CakePHP

Spring

“김치찌개가 주문 들어오면 김치부터 담급니다”

“된장찌개가 주문 들어오면 된장을 담급니다”

“떡볶이가 주문 들어오면 고추장을 담기 시작합니다”

음식은 어느 천년에 나오나요?

양념 및 밑재료 세트가 필요합니다.

간장, 고추장,된장, 두부, 육수 모음 웹프레임웍

JAVA

Python

PHP

Ruby

서버 사이드 언어들

웹프레임웍들

Django, Flask

Rails, Sinatra

CakePHP, Zend

Spring, Struts

어? 자바 스크립트는요?

Java Script

자바스크립트(Java Script)와 자바(JAVA)는 어떤 관계인가요?

바다코끼리 코끼리

자바스크립트(Java Script)와 자바(JAVA)는 어떤 관계인가요?

바다코끼리 코끼리

아무 관계 없어요

매출, 외상, 식재료 재고 관리 어떻게 할 것이냐?

포스트잇 쪼가리? 장부!

+

계장님

DB(RDBMS)엔진 종류 세상엔 어떤 계장님 들이 계시는가?

MySQL Oracle

(공짜, 꽤 괜찮다)

(비싸다, 좋다.)

그래서 왠만하면 다 MySQL씁니다.

그럼 NoSQL은 뭔가요?

계장님 언어(SQL) =임의의 요구사항도 잘 처리

=“작년 이맘때 쯤 김철수 씨가 삼성짬뽕 먹은 날 다음 날에 온 시각에 같이 들어온 손님이 먹은 메뉴의 총 가격”

근데 그정도 복잡한 건 잘 안쓰던데? SQL을 쓰지말고(NoSQL) 단순한 대신 빠른걸 만들자

=“오늘 김철수 짬뽕 먹었나?”

= 엄청 빠름, 대신 복잡한 질문은 프로그래머가 절차적으로 해결

SQL쓴다. SQL안쓴다.

MySQL

Oracle (대신 개발자가 약간 더 고생)

Cassandra

MongoDB

Redis

RDBMS NoSQL

엄청 빠름

많은 양을 잘 저장

오늘은 일단

여기까지

우린 모두 지구인 We are the world

질문 해주세요^^

Recommended