Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Python Engineer First Book
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
hsekine
November 09, 2017
Technology
1
1.6k
Python Engineer First Book
Python Engineer First Book
hsekine
November 09, 2017
Tweet
Share
More Decks by hsekine
See All by hsekine
What I Learned from the Python Community
hsekine
1
52
What I Learned from the Python Community
hsekine
0
280
Python's Situation in Japanese Startups
hsekine
1
210
technology-of-squeeze
hsekine
0
2.9k
Vacation Rentals of Hiroshima
hsekine
1
860
Technology of Mister Suite
hsekine
0
190
PyCon JP 2015 Opening 02
hsekine
0
140
PyCon JP 2015 Closing 02
hsekine
0
46
PyCon JP 2015 Opening 01
hsekine
0
130
Other Decks in Technology
See All in Technology
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1k
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
1.6k
toCプロダクトにおけるAI機能開発のしくじりと学び / ai-product-failures-and-learnings
rince
6
5.5k
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
270
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
GSIが複数キー対応したことで、俺達はいったい何が嬉しいのか?
smt7174
3
140
Agile Leadership Summit Keynote 2026
m_seki
1
410
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
1
190
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
440
あたらしい上流工程の形。 0日導入からはじめるAI駆動PM
kumaiu
5
760
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
110
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
12k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
The browser strikes back
jonoalderson
0
360
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
52
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
110
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.9k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
300
Joys of Absence: A Defence of Solitary Play
codingconduct
1
290
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2k
Transcript
PythonΤϯδχΞ ϑΝʔετϒοΫ 2017/11/08 ؔࠜ༟ل ΈΜͳͷPythonษڧձ#30
ࣗݾհ • ؔࠜ༟ل • גࣜձࣾSQUEEZE • ຽധɺཱྀؗɺࣗࣾϗςϧͷӡӦ • ॓ധࣄۀऀ͚ͷαʔϏε •
Twitter: @checkpoint
ίϛϡχςΠ׆ಈ • PyCon JP 2014 ~ 2016 ελοϑ • Python͘͘ձͷओ࠵
• Pythonຊʢڞஶʣ
͓͢Δ͜ͱ • PythonΤϯδχΞϑΝʔετϒοΫͷհ • PythonͰͷWebΞϓϦέʔγϣϯ։ൃ
PythonΤϯδχΞϑΝʔετϒοΫ
എܠ • PythonΤϯδχΞཆಡຊʢ2લʣ • PythonͷΓ্͕ΓɺτϨϯυͷมԽ • Python3ରԠ • ϥΠϒϥϦɺπʔϧͷΞοϓσʔτ •
ΑΓࣄͰ͑Δ࣮ફతͳ༰ʹ͍ͨ͠
ஶऀ • 5ਓͷஶऀ • ීஈࣄͰPythonΛ༻͍ͯ͠Δϝϯόʔ • ͦΕͧΕͷϝϯόʔ͕1ষͣͭ୲
ରಡऀ • ϓϩάϥϛϯάͷܦݧ͕͋Δ • Pythonʹڵຯ͕͋ΓɺԿ͔ΛͬͯΈ͍ͨ • PythonͰɺ۩ମతʹԿ͕Ͱ͖Δ͔Γ͍ͨ
ಛ • ࣄͰ༻͢Δ্ͰͷϙΠϯτΛղઆ • ݴޠ༷ • ։ൃڥɺνʔϜ։ൃ • ۩ମతͳ׆༻ࣄྫ •
εΫϨΠϐϯάɺσʔλੳɺWeb։ൃ
શମͷ֓ཁ • ୈ1ষɹPythonͷಈ • ୈ2ষɹ࠷ݶ͓͖͍ͬͯͨPythonݴޠͷجຊ • ୈ3ষɹ։ൃڥͱνʔϜ։ൃ • ୈ4ষɹεΫϨΠϐϯά •
ୈ5ষɹPyDataೖΨΠυ • ୈ6ষɹWebΞϓϦέʔγϣϯ։ൃ
ୈ1ষɹPythonͷಈ • Pythonͷಛ • Pythonͷྺ࢙ • PythonͷίϛϡχςΟ
ୈ2ষ Pythonݴޠͷجຊ • Pythonͷσʔλܕʦجຊฤʧ • PythonͷσʔλܕʦίϨΫγϣϯฤʧ • ϑΝΠϧૢ࡞ͱϞδϡʔϧ • ඪ४ϥΠϒϥϦ
• αʔυύʔςΟύοέʔδ
ୈ3ষɹ։ൃڥͱνʔϜ։ൃ • GitͱGitHub • venv • ςετ • Sphinx •
PyCharm
ୈ4ষɹεΫϨΠϐϯά • εΫϨΠϐϯάͱ • αʔυύʔςΟύοέʔδ • εΫϨΠϐϯάϑϨʔϜϫʔΫ Scrapyೖ
ୈ5ষɹPyDataೖΨΠυ • PyDataͱ • ͡ΊͯͷJupyter Notebook • ࣮ફ Ϩΰσʔλੳʦσʔλ୳ࡧฤʧ •
࣮ફ ϨΰσʔλੳʦσʔλՄࢹԽɼੳฤʧ
ୈ6ষɹWebΞϓϦέʔγϣϯ։ൃ • WebϑϨʔϜϫʔΫೖ • DjangoΞϓϦέʔγϣϯͷ࡞ͱॳظઃఆ • ϏϡʔɼςϯϓϨʔτɼϧʔςΟϯά • ϞσϧɼཧαΠτ •
ϨΰཧΞϓϦέʔγϣϯͷ࡞
͜ͷຊͷྑ͍ͱ͜Ζ • ετʔϦʔͷ͋Δ׆༻ࣄྫ • ๛ͳαϯϓϧίʔυ • खΛಈ͔͢ࣄ͕େࣄ
PythonͰͷWebΞϓϦέʔγϣϯ։ൃ • PythonͰͷબࢶ • WebΞϓϦέʔγϣϯϑϨʔϜϫʔΫ • Djangoʹ͍ͭͯ
PythonͰͷબࢶ • CGI • WSGI • WebΞϓϦέʔγϣϯϑϨʔϜϫʔΫ
WSGIͱʁ • WebαʔόʔͱΞϓϦέʔγϣϯͷڞ௨ͷΠ ϯλʔϑΣʔε༷ • Java Servlet APIͷΑ͏ͳͷ • PEP333,
PEP 3333 • ඪ४ϥΠϒϥϦʹwsgiref ͕͋Δ
WebΞϓϦέʔγϣϯෳࡶ • DBΞΫηε • ςϯϓϨʔτඳը • ϧʔςΟϯά • ϑΥʔϜॲཧ •
ϑΝΠϧΞοϓϩʔυ • ηογϣϯཧ • ηΩϡϦςΟ • etc…
WebΞϓϦέʔγϣϯϑϨʔϜϫʔΫ • WebΞϓϦͷ։ൃʹඞཁͳػೳΛఏڙ • ॲཧͷྲྀΕΛϑϨʔϜϫʔΫଆͰ੍ޚ • ։ൃऀඞཁͳ෦ͷΈΛ։ൃ • ΫϥεΛ࡞Δ •
ςϯϓϨʔτΛॻ͘ Ϋϥε ςϯϓϨʔτ
PythonͷWebϑϨʔϜϫʔΫ • Pyramid • Tornado • Flask • Bottle •
Django
Pyramid • খ͘͞ɺૣ͘ɺݎ࣮ͳϑϨʔϜϫʔΫ • ͯ͢ͷػೳΛϑϨʔϜϫʔΫଆͰ༻ҙ͠ͳ ͍ • αʔυύʔςΟͷϥΠϒϥϦͱΈ߹Θͤ ͯ༻͢Δ
Tornado • FriendFeedʢݱFacebookʣ͕։ൃ • ඇಉظͷωοτϫʔΫI/OϥΠϒϥϦ • Jupyter NotebookͷWebαʔόʔ
Flask • ܰྔͳΞϓϦέʔγϣϯϑϨʔϜϫʔΫ • Werkzeug (WSGI utility library) • Jinja2
(Template Engine)
Bottle • ܰྔͳΞϓϦέʔγϣϯϑϨʔϜϫʔΫ • ҰͭͷPythonϑΝΠϧͰఏڙ • ϑϨʔϜϫʔΫͷֶशʹ࠷ద
Django • ϑϧελοΫͷϑϨʔϜϫʔΫ • ࠷৽όʔδϣϯ1.11 • υΩϡϝϯτɺςετ͕ॆ࣮ • ίϛϡχςΟ͕׆ൃ •
ࠃ֎ʹࣄྫ͕ଟ͍
Django͕ఏڙ͢Δػೳ • Ϟσϧ • Ϗϡʔ • ςϯϓϨʔτ • ϑΥʔϜ •
ཧαΠτ • ηΩϡϦςΟ • ࠃࡍԽ • Ϣʔβʔೝূ • ͦͷଞ
DjangoͰͷ։ൃͷྲྀΕ • ϓϩδΣΫτͷ࡞ • ΞϓϦέʔγϣϯͷ࡞ • ॳظઃఆ (settings.py) • Ϟσϧͷ࡞
• Ϗϡʔͷ࡞ • ςϯϓϨʔτͷ࡞ • ϧʔςΟϯάͷఆٛ
ཧαΠτ։ൃͷྲྀΕ • Ϟσϧͷ࡞ • ཧαΠτͷఆٛ • ͜Ε͚ͩͰศརͳཧαΠτ͕ߏஙͰ͖Δʂ
Ϟσϧͷఆٛ Ϣʔβ λΠτϧ ຊจ ࡞࣌ ߋ৽࣌
Ϟσϧͷఆٛ ϒϩά λΠτϧ ຊจ ΧςΰϦ Լॻ͖ ެ։࣌ ࡞࣌ ߋ৽࣌
ϚΠάϨʔγϣϯ
ཧαΠτͷઃఆ
ཧαΠτσϞ
ΞϓϦέʔγϣϯͷྲྀΕ ϒϥβ Ϗϡʔ ίϯτϩʔϥʔ Ϟσϧ %#ΞΫηεʣ ςϯϓϨʔτ ը໘ͷදࣔ
ΞϓϦέʔγϣϯ։ൃͷྲྀΕ • Ϟσϧͷ࡞ • ϑΥʔϜͷ࡞ • Ϗϡʔͷ࡞ • ςϯϓϨʔτͷ࡞ •
ϧʔςΟϯάͷఆٛ
࡞αΠτσϞ https://github.com/checkpoint/django_sample
ศརͳϥΠϒϥϦ • django-debug-toolbar • Django REST framework
͓͢͢ΊαΠτ • Django Girls Tutorial • https://www.djangopackages.com/
͓͢͢ΊίϛϡχςΟ • Python mini Hack-a-thon • TokyoDjangoMeetup • Python͘͘ձ
·ͱΊ • PythonΤϯδχΞϑΝʔετϒοΫ • PythonͰͷWeb։ൃʹ͍ͭͯ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠