์ฉ์ด - ํด๋ผ์ด์ธํธ / ์๋ฒ / API ๊ฐ๋
-ํด๋ผ์ด์ธํธ : ์์ฒญ์ ๋ณด๋ด๋ ๊ณณ (๋, ๋ด์ปดํจํฐ, ํฌ๋กฌ๋ฑ์ ํด๋ผ์ด์ธํธ๋ผ๊ณ ํจ)
-์๋ฒ : ์์ฒญ์ ๋ฐ์์ ์๋ตํด ์ฃผ๋ ๊ณณ (์ธํฐ๋ท์์ ํ๋์ ํ๊ณ ๋ ํ์ ์ด๋ค์ง๋ ๋ง์ ๊ณผ์ ์ ์ฒ๋ฆฌํจ ex: ๋ก๊ทธ์ธ, ๋ก๊ทธ์์, ๊ธ ์์ฑ ๋ฑ)
-API : ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ์ฃผ๊ณ ๋ฐ์์ง๋ฅผ ์ ํ ์ฝ์
์น์ ๋์ ๊ตฌ์กฐ
ํ์ด์ง๋ฅผ ๋ฐ๋ ๊ฒฝ์ฐ :
HTML, CSS, Javascrip๊ฐ ์์ฌ์๋ ํ์ด์ง (๊ตฌ๊ธ, ๋ค์ด๋ฒ ๋ฑ)
๋ฐ์ดํฐ๋ง ๋ฐ๋ ๊ฒฝ์ฐ :
ํ์ด์ง๋ ํ๋ฉด์ ํ์ ์๊ณ ๋ฐ์ดํฐ๋ง ํ์ (๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์๋ฃ๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฑ)
Python ๊ธฐ์ด ๋ฌธ๋ฒ (ํ์ด์ฌ ๋ฐ์ดํฐํ์ )
ex)
my_name = "taein"
my_lang = "Python"
(์ผ์ชฝ์ ๋ณ์, ์ค๋ฅธ์ชฝ์ ๋ณ์์ ์ ์ฅํ ๊ฐ)
ex)
num1 = 1234
num2 = -500
pi = 3.14
num4 = 12.34
(์ ์, ์์ ๊ฐ๋ฅ)
ex)
my_name = 'kim'
num_string = '123'
ex)
a = ['a', 'b', 'c', 'd']
a.append('e')
ex)
my_var = {'name':'kim', 'age':'35'}
Python ๊ธฐ์ด ๋ฌธ๋ฒ -2 (์กฐ๊ฑด๋ฌธ๊ณผ ๋ฐ๋ณต๋ฌธ)
ex)
if ์กฐ๊ฑด:
์กฐ๊ฑด์ด ์ฐธ์ด๋ฉด ์คํ
else:
์กฐ๊ฑด์ด ๊ฑฐ์ง์ด๋ฉด ์คํ
<์กฐ๊ฑด ๋น๊ต์ฐ์ฐ์>
x < y ---> x๊ฐ y๋ณด๋ค ์๋ค
x > y ---> x๊ฐ y๋ณด๋ค ํฌ๋ค
x == y ---> x๊ฐ y์ ๊ฐ๋ค
x != y ---> x๊ฐ y์ ๊ฐ์ง ์๋ค
x >= y ---> x๊ฐ y๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๋ค
x <= y ---> x๊ฐ y๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค
ex)
for ๋ณ์ in ๋ฆฌ์คํธ:
์คํ ํ ๋ฌธ์ฅ
Python ๊ธฐ์ด ๋ฌธ๋ฒ -3 (ํจ์์ ํด๋์ค)
ex)
def ํจ์๋ช
('๋งค๊ฐ๋ณ์'):
์คํ ํ ๋ฌธ์ฅ๋ค
ex)
def my_sum(a, b): #a, b๋ ๊ณผ์ผ
result = a + b # ์ถ๋ ฅํ ๊ฒฐ๊ณผ
return result # ์ ์ฅํ ๊ฒฐ๊ณผ
a = my_sum(50, 60) #ํจ์๋ฅผ ์คํ์์ผ ๊ณผ์ผ(๊ฐ)์ ๋ฃ์ด ์ถ๋ ฅ ํ ๋ณ์์ ์ ์ฅ
print(a) #์ถ๋ ฅ
class marine: #ํด๋์ค ์ ์ธ
hp = '' #ํด๋์ค ์์ฑ(ํน์ง)
attack = '' #ํด๋์ค ์์ฑ(ํน์ง)
speed = '' #ํด๋์ค ์์ฑ(ํน์ง)
marine1 = marine() #marin1์ด๋ผ๋ ๋ณ์์ marineํด๋์ค ๋์
marine.hp = '20' #์์ฑ ์
๋ ฅ
marine.attack = '5' #์์ฑ ์
๋ ฅ
marine.speed = '3' #์์ฑ ์
๋ ฅ
print(marine1) #๋ณ์ ์ถ๋ ฅ
# <__main__.marine object at 0x104569100> ๊ฐ์ฒด ์ถ๋ ฅ ํํ **(Object)**
print(marine1.hp) #์์ฑ ์ถ๋ ฅ
print(marine1.attack) #์์ฑ ์ถ๋ ฅ
print(marine.speed) #์์ฑ ์ถ๋ ฅ
Python์ Web Framework!?
ํ์ด์ฌ ์นํ๋ ์์ํฌ
๐ ๊ฐ๋ฐ์ ๋์์ฃผ๋ ํ๋์ ํด
๋น์ทํ ๋ฐฉ๋ฒ์ผ๋ก ํ์ ๋ง์ถฐ ์ผ์ ํ ํํ๋ก ๋ง๋ค ์ ์๋ ์ฅ์
ํ์ด์ฌ ์นํ๋ ์์ํฌ ์ข
๋ฅ
Flask, Pyramid (์ต์ํ์ ๊ธฐ๋ฅ์ ์ ๊ณต ์ฒ ํ์ ๊ฐ์ง๊ณ ์์)
Django (๋ง์ ๊ธฐ๋ฅ๋ค์ ์ ๊ณตํ๊ณ ์์)
Django VS Flask Pyramid
Django | Flask,Pyramid |
---|---|
๊ฑฐ๋ํ ํ๋ ์ ์ํฌ | ๊ฒฝ๋ ํ๋ ์์ํฌ |
๋ง์ ์ ํธ(๊ธฐ๋ฅ) ์ ๊ณต | ์ต์ํ์ ๊ธฐ๋ฅ ์ ๊ณต |
DB, ๋ก๊ทธ์ธ, Admin, ํจ์ค์๋ ์ํธํ ๋ฑ ์ ๊ณต | ๋ก๊ทธ์ธ, DB๋ฑ ๊ด๋ฆฌ ์ง์ ํด์ผํจ |
์ปค๋ฎค๋ํฐ์ ๋ฌธ์ ์๋์์ | ๊ด๋ฆฌ์ํ์ด์ง ๊ตฌ์ถ ๋ณ๋ |
Django ์ดํด๋ณด๊ธฐ
M (Model)
๋ฐ์ดํฐ ๋ฒ ์ด์ค์ ๋ชจ๋ธ(ORM)
์ ์ฅ๋๊ณ ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ์ ํํ
T (Template)
์ฌ์ฉ์์๊ฒ ๋ณด์ฌ์ง๋ ๋ถ๋ถ
ํ๋ฉด
V (View)
์ค์ง์ ํ๋ก๊ทธ๋จ ๋์ ๋ถ๋ถ
url ์์ฒญ -> ์๋ตํ๋ ์ฌ์ด์ ์ผ์ด๋๋ '์๋น์ค'๋ค์ด ์กด์ฌํ๋ ๊ณณ
Django ์ ORM์ ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ ํํ๋ฅผ Class๋ก ๋ํ๋ด์ค
ORM์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ค๋ฃจ๊ธฐ์ํด ์ฌ์ฉ๋๋ '์ฟผ๋ฆฌ'๋ฅผ ์์ฑํ์ง ์์๋ ๋จ
ex) ์ฅ๊ณ ์ ๋ํ ORM Class
Class Post:
id = intergerField()
title = CharField()
author = CharField()
context = textField()