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
hsekine
November 09, 2017
Technology
1.6k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Python Engineer First Book
Python Engineer First Book
hsekine
November 09, 2017
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
230
technology-of-squeeze
hsekine
0
3k
Vacation Rentals of Hiroshima
hsekine
1
880
Technology of Mister Suite
hsekine
0
190
PyCon JP 2015 Opening 02
hsekine
0
150
PyCon JP 2015 Closing 02
hsekine
0
52
PyCon JP 2015 Opening 01
hsekine
0
140
Other Decks in Technology
See All in Technology
“全部コピーしない”ファイルデータの活用 : — FSx for ONTAP × S3 Tables × Icebergで作るメタデータカタログ
yoshiki0705
0
510
記録をかんたんに、提案をパーソナルに ── AIであすけんが目指すもの
oprstchn
0
160
Zoom2Youtube.Claude
kawaguti
PRO
2
440
知見・人・API・DB・予算 ─ ナイナイ尽くしだった人事データ整備 with dbt、5年間の学び
ken6377
1
160
美しいコードを書くためにF#を学んでみた話
yud0uhu
1
230
Why is RC4 still being used?
tamaiyutaro
0
300
Claude Codeとハーネスについて考えてみる
oikon48
18
8.6k
End-to-Endで考える信頼性 —LINEアプリにおけるクライアント開発×SRE連携の実践
maruloop
3
1.4k
AI Agent SaaS を支える自社仮想化基盤への挑戦と実運用 / ai-agent-saas-virtualization
flatt_security
2
1.7k
プロダクトだけじゃない、社内プロセスにおける自動化・省力化ノススメ
kakehashi
PRO
1
890
最近評価が難しくなった
maroon8021
0
250
デジタル・デザイン:次の50年を描く「進化する青写真」
y150saya
0
820
Featured
See All Featured
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
230
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
410
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
1.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The Limits of Empathy - UXLibs8
cassininazir
1
390
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
340
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
A designer walks into a library…
pauljervisheath
211
24k
Mind Mapping
helmedeiros
PRO
1
280
Evolving SEO for Evolving Search Engines
ryanjones
0
240
Are puppies a ranking factor?
jonoalderson
1
3.7k
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։ൃʹ͍ͭͯ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠