Python Engineer First Book

Cb4bbcd7fc86bd164b016fec7651204d?s=47 hsekine
November 09, 2017

Python Engineer First Book

Python Engineer First Book

Cb4bbcd7fc86bd164b016fec7651204d?s=128

hsekine

November 09, 2017
Tweet

Transcript

  1. PythonΤϯδχΞ ϑΝʔετϒοΫ 2017/11/08 ؔࠜ༟ل ΈΜͳͷPythonษڧձ#30

  2. ࣗݾ঺հ • ؔࠜ༟ل • גࣜձࣾSQUEEZE • ຽധɺཱྀؗɺࣗࣾϗςϧͷӡӦ • ॓ധࣄۀऀ޲͚ͷαʔϏε •

    Twitter: @checkpoint
  3. ίϛϡχςΠ׆ಈ • PyCon JP 2014 ~ 2016 ελοϑ • Python΋͘΋͘ձͷओ࠵

    • Pythonຊʢڞஶʣ
  4. ͓࿩͢Δ͜ͱ • PythonΤϯδχΞϑΝʔετϒοΫͷ঺հ • PythonͰͷWebΞϓϦέʔγϣϯ։ൃ

  5. PythonΤϯδχΞϑΝʔετϒοΫ

  6. എܠ • PythonΤϯδχΞཆ੒ಡຊʢ2೥લʣ • Pythonͷ੝Γ্͕ΓɺτϨϯυͷมԽ • Python3ରԠ • ϥΠϒϥϦɺπʔϧͷΞοϓσʔτ •

    ΑΓ࢓ࣄͰ࢖͑Δ࣮ફతͳ಺༰ʹ͍ͨ͠
  7. ஶऀ • 5ਓͷஶऀ • ීஈ࢓ࣄͰPythonΛ࢖༻͍ͯ͠Δϝϯόʔ • ͦΕͧΕͷϝϯόʔ͕1ষͣͭ୲౰

  8. ର৅ಡऀ • ϓϩάϥϛϯάͷܦݧ͕͋Δ • Pythonʹڵຯ͕͋ΓɺԿ͔Λ΍ͬͯΈ͍ͨ • PythonͰɺ۩ମతʹԿ͕Ͱ͖Δ͔஌Γ͍ͨ

  9. ಛ௃ • ࢓ࣄͰ࢖༻͢Δ্ͰͷϙΠϯτΛղઆ • ݴޠ࢓༷ • ։ൃ؀ڥɺνʔϜ։ൃ • ۩ମతͳ׆༻ࣄྫ •

    εΫϨΠϐϯάɺσʔλ෼ੳɺWeb։ൃ
  10. શମͷ֓ཁ • ୈ1ষɹPythonͷಈ޲ • ୈ2ষɹ࠷௿ݶ஌͓͖͍ͬͯͨPythonݴޠͷجຊ • ୈ3ষɹ։ൃ؀ڥͱνʔϜ։ൃ • ୈ4ষɹεΫϨΠϐϯά •

    ୈ5ষɹPyDataೖ໳ΨΠυ • ୈ6ষɹWebΞϓϦέʔγϣϯ։ൃ
  11. ୈ1ষɹPythonͷಈ޲ • Pythonͷಛ௃ • Pythonͷྺ࢙ • PythonͷίϛϡχςΟ

  12. ୈ2ষ Pythonݴޠͷجຊ • Pythonͷσʔλܕʦجຊฤʧ • PythonͷσʔλܕʦίϨΫγϣϯฤʧ • ϑΝΠϧૢ࡞ͱϞδϡʔϧ • ඪ४ϥΠϒϥϦ

    • αʔυύʔςΟ੡ύοέʔδ
  13. ୈ3ষɹ։ൃ؀ڥͱνʔϜ։ൃ • GitͱGitHub • venv • ςετ • Sphinx •

    PyCharm
  14. ୈ4ষɹεΫϨΠϐϯά • εΫϨΠϐϯάͱ͸ • αʔυύʔςΟ੡ύοέʔδ • εΫϨΠϐϯάϑϨʔϜϫʔΫ Scrapyೖ໳

  15. ୈ5ষɹPyDataೖ໳ΨΠυ • PyDataͱ͸ • ͸͡ΊͯͷJupyter Notebook • ࣮ફ Ϩΰσʔλ෼ੳʦσʔλ୳ࡧฤʧ •

    ࣮ફ Ϩΰσʔλ෼ੳʦσʔλՄࢹԽɼ෼ੳฤʧ
  16. ୈ6ষɹWebΞϓϦέʔγϣϯ։ൃ • WebϑϨʔϜϫʔΫೖ໳ • DjangoΞϓϦέʔγϣϯͷ࡞੒ͱॳظઃఆ • ϏϡʔɼςϯϓϨʔτɼϧʔςΟϯά • Ϟσϧɼ؅ཧαΠτ •

    Ϩΰ؅ཧΞϓϦέʔγϣϯͷ࡞੒
  17. ͜ͷຊͷྑ͍ͱ͜Ζ • ετʔϦʔͷ͋Δ׆༻ࣄྫ • ๛෋ͳαϯϓϧίʔυ • खΛಈ͔͢ࣄ͕େࣄ

  18. PythonͰͷWebΞϓϦέʔγϣϯ։ൃ • PythonͰͷબ୒ࢶ • WebΞϓϦέʔγϣϯϑϨʔϜϫʔΫ • Djangoʹ͍ͭͯ

  19. PythonͰͷબ୒ࢶ • CGI • WSGI • WebΞϓϦέʔγϣϯϑϨʔϜϫʔΫ

  20. WSGIͱ͸ʁ • WebαʔόʔͱΞϓϦέʔγϣϯͷڞ௨ͷΠ ϯλʔϑΣʔε࢓༷ • Java Servlet APIͷΑ͏ͳ΋ͷ • PEP333,

    PEP 3333 • ඪ४ϥΠϒϥϦʹwsgiref ͕͋Δ
  21. WebΞϓϦέʔγϣϯ͸ෳࡶ • DBΞΫηε • ςϯϓϨʔτඳը • ϧʔςΟϯά • ϑΥʔϜॲཧ •

    ϑΝΠϧΞοϓϩʔυ • ηογϣϯ؅ཧ • ηΩϡϦςΟ • etc…
  22. WebΞϓϦέʔγϣϯϑϨʔϜϫʔΫ • WebΞϓϦͷ։ൃʹඞཁͳػೳΛఏڙ • ॲཧͷྲྀΕΛϑϨʔϜϫʔΫଆͰ੍ޚ • ։ൃऀ͸ඞཁͳ෦෼ͷΈΛ։ൃ • ΫϥεΛ࡞Δ •

    ςϯϓϨʔτΛॻ͘ Ϋϥε ςϯϓϨʔτ
  23. PythonͷWebϑϨʔϜϫʔΫ • Pyramid • Tornado • Flask • Bottle •

    Django
  24. Pyramid • খ͘͞ɺૣ͘ɺݎ࣮ͳϑϨʔϜϫʔΫ • ͢΂ͯͷػೳΛϑϨʔϜϫʔΫଆͰ༻ҙ͠ͳ ͍ • αʔυύʔςΟ੡ͷϥΠϒϥϦͱ૊Έ߹Θͤ ͯ࢖༻͢Δ

  25. Tornado • FriendFeedʢݱFacebookʣ͕։ൃ • ඇಉظͷωοτϫʔΫI/OϥΠϒϥϦ • Jupyter NotebookͷWebαʔόʔ

  26. Flask • ܰྔͳΞϓϦέʔγϣϯϑϨʔϜϫʔΫ • Werkzeug (WSGI utility library) • Jinja2

    (Template Engine)
  27. Bottle • ܰྔͳΞϓϦέʔγϣϯϑϨʔϜϫʔΫ • ҰͭͷPythonϑΝΠϧͰఏڙ • ϑϨʔϜϫʔΫͷֶशʹ΋࠷ద

  28. Django • ϑϧελοΫͷϑϨʔϜϫʔΫ • ࠷৽όʔδϣϯ͸1.11 • υΩϡϝϯτɺςετ͕ॆ࣮ • ίϛϡχςΟ͕׆ൃ •

    ࠃ಺֎ʹࣄྫ͕ଟ͍
  29. Django͕ఏڙ͢Δػೳ • Ϟσϧ • Ϗϡʔ • ςϯϓϨʔτ • ϑΥʔϜ •

    ؅ཧαΠτ • ηΩϡϦςΟ • ࠃࡍԽ • Ϣʔβʔೝূ • ͦͷଞ
  30. DjangoͰͷ։ൃͷྲྀΕ • ϓϩδΣΫτͷ࡞੒ • ΞϓϦέʔγϣϯͷ࡞੒ • ॳظઃఆ (settings.py) • Ϟσϧͷ࡞੒

    • Ϗϡʔͷ࡞੒ • ςϯϓϨʔτͷ࡞੒ • ϧʔςΟϯάͷఆٛ
  31. ؅ཧαΠτ։ൃͷྲྀΕ • Ϟσϧͷ࡞੒ • ؅ཧαΠτͷఆٛ • ͜Ε͚ͩͰศརͳ؅ཧαΠτ͕ߏஙͰ͖Δʂ

  32. Ϟσϧͷఆٛ Ϣʔβ λΠτϧ ຊจ ࡞੒೔࣌ ߋ৽೔࣌

  33. Ϟσϧͷఆٛ ϒϩά λΠτϧ ຊจ ΧςΰϦ Լॻ͖ ެ։೔࣌ ࡞੒೔࣌ ߋ৽೔࣌

  34. ϚΠάϨʔγϣϯ

  35. ؅ཧαΠτͷઃఆ

  36. ؅ཧαΠτσϞ

  37. ΞϓϦέʔγϣϯͷྲྀΕ ϒϥ΢β Ϗϡʔ ίϯτϩʔϥʔ Ϟσϧ %#ΞΫηεʣ ςϯϓϨʔτ ը໘ͷදࣔ

  38. ΞϓϦέʔγϣϯ։ൃͷྲྀΕ • Ϟσϧͷ࡞੒ • ϑΥʔϜͷ࡞੒ • Ϗϡʔͷ࡞੒ • ςϯϓϨʔτͷ࡞੒ •

    ϧʔςΟϯάͷఆٛ
  39. ࡞੒αΠτσϞ https://github.com/checkpoint/django_sample

  40. ศརͳϥΠϒϥϦ • django-debug-toolbar • Django REST framework

  41. ͓͢͢ΊαΠτ • Django Girls Tutorial • https://www.djangopackages.com/

  42. ͓͢͢ΊίϛϡχςΟ • Python mini Hack-a-thon • TokyoDjangoMeetup • Python΋͘΋͘ձ

  43. ·ͱΊ • PythonΤϯδχΞϑΝʔετϒοΫ • PythonͰͷWeb։ൃʹ͍ͭͯ

  44. ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠