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
[ConSalad 05] from banksalad import python
Search
Sunghyun Hwang
August 24, 2019
Technology
200
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
[ConSalad 05] from banksalad import python
[5회차 콘샐러드]에서 발표한 [from banksalad import python] 발표 자료입니다.
Sunghyun Hwang
August 24, 2019
More Decks by Sunghyun Hwang
See All by Sunghyun Hwang
MongoDB in Banksalad
sunghyunzz
0
490
from banksalad import python
sunghyunzz
0
850
사실주의 베이컨
sunghyunzz
1
120
Clean Architecture (in Android) Revised
sunghyunzz
1
1k
학습하는 조직과 Python: 뱅크샐러드 사례를 중심으로
sunghyunzz
2
2.1k
The Secrets of Cooperation
sunghyunzz
0
540
Pragmatic Python
sunghyunzz
1
210
Practical FP in Kotlin
sunghyunzz
4
1.3k
Akka (Actor) in Practice
sunghyunzz
0
530
Other Decks in Technology
See All in Technology
コネクションをピン留めさせずに SELECTクエリのタイムアウトを設定した話
codmoninc
0
200
AI for Science時代を切り開く、政府の次世代HPC戦略の展望
gpuunite_official
0
200
MulticaとPi Coding Agentで、小規模OSSを30本同時運用した流れ
eiei114
0
140
関東Kaggler会発表資料
takoi
1
280
地震情報アプリを作ってみた
yama3133
1
110
トークンマネジメントでAIにとって働きやすい環境を実現する
hikaruegashira
0
130
AIにブラウザを触らせて、E2EテストをPlaywrightで書く
koji_kawamura
0
330
長期運営で肥大化したExcelマスターデータの解消に向けた移行事例
gree_tech
PRO
0
100
【GCC2026】鉄拳8でのVFX開発事例
bandainamcostudios
PRO
0
220
SmartHR Engineering Team Deck
smarthr
1
3.3k
国家プロジェクトを支える「さくらONE」 大規模LLM開発におけるGPU障害を乗り越えるクラスター運用戦略
gpuunite_official
0
240
Genie Codeハンズオン応用編
taka_aki
0
140
Featured
See All Featured
How to Talk to Developers About Accessibility
jct
2
520
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
380
Chasing Engaging Ingredients in Design
codingconduct
0
280
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
210
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.1k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
GraphQLとの向き合い方2022年版
quramy
50
15k
Transcript
from banksalad import python Sunghyun Hwang
• I ❤ Python (2014~) • I " ߛ࢟۞٘ (2014
~) • ߛ࢟۞٘ ࢲ࠺झ ୡӝ ѐߊਸ • ߛ࢟۞٘ ݃۽ ࢲ࠺झ ߈ ࢸ҅ ߂ ѐߊਸ • Twitter @_sunghyunzz / GitHub @sunghyunzz ߊ
য়ט ߊח 1. ߛ࢟۞٘ܳ ୡӝী ٜ݅ݴ ղ۷؍ ӝࣿ ࢎѾਸ ࢸݺೞҊ
2. Ӓ җীࢲ য Pythonਸ ইب ੜ ॳҊ ח 3. ӒܻҊ ߛ࢟۞٘ য٣ী যڌѱ Pythonਸ ഝਊೞҊ ח
2014-2015
2015 ߛ࢟۞٘ ߡ 1 • द 5ݺ • ۠ Ѣ
ٜ݅যࠁݶ যڄө? • ٘ ୶ୌ ࢲ࠺झ
2015 ߛ࢟۞٘ ߡ 1 • द 5ݺ • ۠ Ѣ
ٜ݅যࠁݶ যڄө? • ٘ ୶ୌ ࢲ࠺झ
2015 ߛ࢟۞٘ ߡ 1 • द 5ݺ • ۠ Ѣ
ٜ݅যࠁݶ যڄө? • ٘ ୶ୌ ࢲ࠺झ
None
""
None
୶ୌ࢚ো ഥ ୶ୌࣗਃदр T݅
୶ୌ࢚ো ഥ ୶ୌࣗਃदр T݅
" "
୶ୌ࢚ো ഥ ୶ୌࣗਃदр T݅
" "
୶ୌ࢚ো ഥ ୶ୌࣗਃदр T݅
" "
ߡ 1 যܳ ੜޅ Ҏۄ ݎೡ ഛܫ ҳܽ ࢲ࠺झܳ ٜ݅য
ݎೡ ഛܫ
ߡ 1 যܳ ੜޅ Ҏۄ ݎೡ ഛܫ ҳܽ ࢲ࠺झܳ ٜ݅য
ݎೡ ഛܫ A P D O
ߡ 1
ߡ 1 • ٘ ୶ୌਸ ೞ۰Ҋ ٘ܳ DBীࢲ ࠛ۞য়חؘ दр
х • ܻо ߓ Ѫ • ഌఖਸ ҅ೞӝ ী ٘ ؘఠо ցޖ ழࢲ पदрਵ۽ ഝਊೞӝ ൨ٜ • Ѥ ੌױ DB ؘఠܳ যڌѱ ࡅܰѱ ܻೡ Ѫੋী ೠ ޙઁҳա
ߡ 2 • DBীࢲ ؘఠܳ оઉয়ח ѱ ইפۄ ҅ оמೠ
ഋక۽ நय೧ࢲ ࢎਊ • ٘ ഌఖ ؘఠח ࠼ߣೞѱ ߄Շח ؘఠо ইש
ߡ 2 • Redis/Memcached vs Ӗ۽ߥ • Ӗ۽ߥ ഛप উ౭
ಁఢ • Ӓؘ۠ উ౭ ಁఢ ٸޙী ݎೡө? (ࢲ࠺झо ҳ۰ࢲ ݎೞ ঋਸө?) • ೞܖۄب ࡈܻ పझ೧ࠁҊ ࢎস ח ѱ ի ঋਸө?
ߡ 2 • Redis/Memcached vs Ӗ۽ߥ • Ӗ۽ߥ ഛप উ౭
ಁఢ • Ӓؘ۠ উ౭ ಁఢ ٸޙী ݎೡө? (ࢲ࠺झо ҳ۰ࢲ ݎೞ ঋਸө?) • ೞܖۄب ࡈܻ పझ೧ࠁҊ ࢎস ח ѱ ի ঋਸө?
ߡ 2 • Redis/Memcached vs Ӗ۽ߥ • Ӗ۽ߥ ഛप উ౭
ಁఢ • Ӓؘ۠ উ౭ ಁఢ ٸޙী ݎೡө? (ࢲ࠺झо ҳ۰ࢲ ݎೞ ঋਸө?) • ೞܖۄب ࡈܻ పझ೧ࠁҊ ࢎস ח ѱ ի ঋਸө?
ߡ 2 • Redis/Memcached vs Ӗ۽ߥ • Ӗ۽ߥ ഛप উ౭
ಁఢ • Ӓؘ۠ উ౭ ಁఢ ٸޙী ݎೡө? (ࢲ࠺झо ҳ۰ࢲ ݎೞ ঋਸө?) • ೞܖۄب ࡈܻ పझ೧ࠁҊ ࢎস ח ѱ ի ঋਸө? A P D O
ߡ 2 • Redis/Memcached vs Ӗ۽ߥ • Ӗ۽ߥ ഛप উ౭
ಁఢ • Ӓؘ۠ উ౭ ಁఢ ٸޙী ݎೡө? (ࢲ࠺झо ҳ۰ࢲ ݎೞ ঋਸө?) • ೞܖۄب ࡈܻ పझ೧ࠁҊ ࢎস ח ѱ ի ঋਸө? A P D O
ߡ 2 • Ӗ۽ߥ dictীࢲ ч ࠛ۞৬ যڌѱٚ ҅ೞب۾ ݅ٝ
• ই ބद וܻ݅ ೠ 10ୡ ӝܻݶ Ѿҗо աয়ӟ ೣ
ߡ 2 • Ӗ۽ߥ dictীࢲ ч ࠛ۞৬ যڌѱٚ ҅ೞب۾ ݅ٝ
• ই ބद וܻ݅ ೠ 10ୡ ӝܻݶ Ѿҗо աয়ӟ ೣ
ߡ 2
ߡ 2 • ೠߣ द೧ࠁפ ೠ ׳ী 100ݺ ب ॹ
(যڌѱ য়न Ѥ ցޖ नӝ) • ҅ ۽ ߡӒ ৻ী ޙઁח হ
None
None
ߡ 2 • ܻо ߓ Ѫ • ࢎਊח ݒ ݅
য૰ٚ ޥо ߓח ѱ ח ೞܖೞܖ • ਃۧѱ ߄Բפ ജਯ ۧѱ غחҳա! • ࢎਊ݅ ખ ݆ਵݶ (ই ) ݒ զ ࣻח ਸ Ѫ эؘ?
• ؊ ݆ ࢎਊо ॶ ࣻ যঠ ೠ (Ӓۡ оо
য ࠁ) • Ә ࢿמ ޙઁ ࠗ࠙ ো • DBח Ӗ۽ߥਸ ਬೠ (Ӗ۽ߥ పܳ ೱ೧) ߡ 3
• CPython ࢿמীࢲ ডೠ ޙઁ ਬഋٜ • ܻࣻ ো? numpy,
numba ١ (Ӕؘ ইש) • ա ۽Ӓې߁ Ӓր ؊ ੜ ٜ݅যঠ ೞҊ যо ࢿמ જইঠ ߡ 3
• द ঌҊ્ܻ ࢸ҅ • ঌҊ્ܻ ഥ ࢚ࣻ न... •
࠙ ߧੋੌ ܻ হয... Ӓۧݶ.... • Pythonਸ աܳ ܻ ݽفо ߧੋ ߡ 3
• فֱ ಽоز • Python vs {Go, C++, Java, Scala,
... } • Python উীࢲ হਸө? • ܻ णਸ 3ѐਘ ب ܙ ݅ఀ оח Ѿੌө? ߡ 3
ߡ 3
• Cython • .pyx۽݅ ߄Լب ઑӘ ࡈۄ ӝ࠙ • ೨ब
غח ۽ਸ Cythonਵ۽ ҳഅ ژח Cܳ (ই ࠗ࠙ਵ۽) ࢴӝ द ߡ 3
• ܻо Ѫ • ٘ ୶ୌ ߡౡਸ ־ܰݶ 4~5ୡ
റী Ѿҗо աৡ • উੋ ࢲ࠺झ ਸ য۵ѷ • Ӓؘ۠ ب о աয়֎? ߡ 3
• ܻо Ѫ • ਵ۽ ݒ ߊࢤ • оמࢿਸ
ੋ߉ই ై ਬ. хࢎפ ߡ 3
• উҊ ࢿמ જ ࢲ࠺झܳ ݅٘ח Ѥ ࠺Ү ഛपೠ ߑߨٜ
ઓೠ • স҅ de facto standard, best practicesח ઓೞҊ աח ӒѦ ঌইղݶ ػ • (ো) ݺഛೞҊ ए Ѥ ইפ. উࢿ ט য۰ ب җઁ. ߡ 3
• (߈ݶী) ࢎۈٜ ૌѹ ࢎਊೞח ઁಿਸ ݅٘ח Ѥ ۧ ೡ
উ হ • ؊ٞ؊ٞ ߑೱਸ ઑೞݴ оঠ ೣ • ܻ ѐߊ ۚ যڌѱ ೞݶ ߑೱਸ ࡈܻ ઑೡ ࣻ ਸө? • ӡ ੜޅػ ӡۄח Ѧ যڌѱ ೞݶ ؊ ࡈܻ ঌ ࣻ ਸө? ߡ 3
2016
2016֙ Ҋ • ؊ ݆ ࢎۈ ٘ ୶ୌਸ ߉ওਵݶ •
নҗ ജਯ ل ӓਵ۽ ৢܻҊ रয
2016֙ Ҋ • पܻ ߖܻ झఋੌ۽ Ҧੋ ഄन ই٣য •
"؊ ࢚ ٘ܳ ݃ࣁਃ. ೧ઉ Ҋ ք Ҋܰӝ݅ ೞݶ ظ" • ࢎۈٜ ࣗ࠺ ؘఠܳ ߄ఔਵ۽ о જ ٘о ೦࢚ ҅ػ ࢚క۽
2016 ߡ 1 • ࣗ࠺ ؘఠܳ যڌѱ ? • ੌױ
Android ӝળਵ۽ ٘ Ѿઁ ޙܳ ഝਊೞݶ যٸ? • Ӓۢ iOSח? • ੌױ աী ࢤпೞ
2016 ߡ 1 • ড 2׳ ѐߊೞҊ दө 3׳ •
ޙܳ ੍য৬ ա ղਸ ޥо ӭՔೞҊ ࢁѱ ࠁৈળ • য٥о ൩-೧!
2016 ߡ 1 • ঌѱ ػ Ѫ • জਸ ੜ
ࢎਊೞח ࢎۈٜ ٘ܳ ୶ୌ߉Ҋ ੜ ॵ • ৵? • d • ż
2016 ߡ 1 • ঌѱ ػ Ѫ • Ӓؘ۠ জਸ
ੜ ࢎਊೞח ࢎۈ হ • ৵? • ٘ܳ ୶ୌೞ۰Ҋ ݅ٚ о҅ࠗ জ • ܻח ۠ Ѧ 'ҕә ब' 'ब ӝദ'ۄҊ ݺݺ
2016 ߡ 1 • ঌѱ ػ Ѫ • Ӓؘ۠ জਸ
ੜ ࢎਊೞח ࢎۈ হ • ৵? • ٘ܳ ୶ୌೞ۰Ҋ ݅ٚ о҅ࠗ জ • ܻח ۠ Ѧ 'ҕә ब' 'ब ӝദ'ۄҊ ݺݺ
2016 ߡ 2 • ٘ ୶ୌ (ੌױ) ߡܽ • ೠҴ
о҅ࠗ ࢎਊٜ ݈ જইೞח о҅ࠗ জਸ ೠߣ ٜ݅যࠁ • (ৡ/য়ۄੋী) ݆ ࢎیਸ ߉ח о҅ࠗܳ ઑࢎೞח ؘ • (Ѣ о҅ࠗ ҕೞन٠ೠ) о҅ࠗ ࠺ ਬ 30ݺ ب ੋఠ࠭ • ݈ хࢎפ
2016 ߡ 2 • ٘ Ѿઁ ޙ ӝ߈ • ই
࢜۽ ష۽(Kotlin) Android জਸ ࢜۽ ݅ٝ • ޛۿ ҅ࣘ ࢲߡח Python ӝ߈ • ড 3~4׳ ب ѐߊ റ द • рр ղࠗ दܳ ా೧ ࢎਊٜ ೖ٘ߔ
2016֙ ߛ࢟۞٘ • (೯) Ԩ ҡଳ জ غযх •
ੌױ ࢎਊਸ दೞݶ Ԩ ݆ ࢎਊо ҅ࣘ ࢎਊೠ • ܻо ঌѱ ػ Ѫ • о҅ࠗ৬ ٘ ୶ୌ Ҿ Ԩ ҡଳ • о҅ࠗ ࢎਊٜ ਗೞח о҅ࠗ জ ݽणਸ (ઑӘ) ঌѷ
2017→2019
അ ߛ࢟۞٘ח • о҅ࠗ জਸ ֈয ݽٚ ҃ઁ ੋҳ ت
ҙܻ জਵ۽ աইоח • ܻ تҗ ҙ۲ೠ নೠ بݫੋ ؘఠܳ ੜ ݽਵҊ ੜ ܻೞח ؘ
ߛ࢟۞٘ח बয 10% 5% 15% 70% Python Scala Others Node
• 70% ࢚ ٘о Pythonਵ۽ ࢿ • ۽ ࠗ࠙ ࢲߡܳ Pythonਵ۽ ࢿೣ • ױࣽ CRUD • Ԩ ࠂೠ ࠺ૉפझ ۽ ܻө • Ӓ ৻ যח п ࢎ • ইө աৡ ٘ ୶ୌ ࢲߡח ѾҴ Scala۽ ѐߊ (ref. ֙ ߊ ଵҊ)
ߛ࢟۞٘ח बয • Әਲ਼ࢎ৬ ޙ ాनب ରѱ Pythonਵ۽ • TMI:
ࠗ࠙ Java ӝ߈ਵ۽ ݆ ೣ • Pythonীࢲ ޙ ాन ખ ಞೞѱ ೞ۰Ҋ য়ࣗझب ݅ٝ • Rainist/K-Format • $ pip install K-Format
ߛ࢟۞٘ח बয • ٘ Ѿઁ ܻ ࢲ࠺झب ରѱ Pythonਵ۽ •
iamport хࢎפ • OOO ࢲ࠺झب ରѱ 100% Pythonਵ۽ ҳഅ • فӔفӔ ࠺࠺ ࢲ࠺झ
ߛ࢟۞٘ MSA • ݈ নೠ بݫੋ ઓೞҊ пп ਃҳ ࢎ೦
ݽف ܴ • ߛ࢟۞٘ ࢲ࠺झ ୡӝࠗఠ MSA ҳઑ۽ ٜ݅য য়ח • જ MSA ജ҃ ӝמ ױਤ۽ ࢲ࠺झо ੜѱ աҊ • ಞചীࢲ য়ח য۰ दझమ ࠁઑೞח ݽण
ߛ࢟۞٘ MSA • ࢜۽ ࢲ࠺झܳ ݅٘ח ѱ ݒ औ ঋਵݶ
ࢲ࠺झܳ ٜ݅ ঋח • ஞ MSAо ইפۄ ݻݻ ࢲߡо য়ࣚبࣚ ࢎજѱ ղח ݽण ػ • ۧѱ غݶ ࢲ࠺झо ߈ਵ۽ ࠺೧Ҋ दझమ ࠺ਊ ૐо
ߛ࢟۞٘ MSA • ࢎۈ טҊ بݫੋ טҊ ٘о טҊ ۨನо
טযաפ • ٘ܳ ੍ਸ ੌ ݒ ݆ইҊ • ٘ ܻ࠭о झఋੌ ਤ۽ ൗ۞оח উ જ ն࢜
ߛ࢟۞٘ MSA • ࢎۈ טҊ بݫੋ טҊ ٘о טҊ ۨನо
טযաפ • ࢜۽ ࢲ࠺झܳ ٜ݅ ٸ݃ ܻ ֢ೞܳ • ҳী ೧ ޙࢲܳ ੍যঠ݅ णغח ഋక۽ • ҕਬೞח Ѫ ࠺ബਯ
ߛ࢟۞٘ MSA • Python Project Template • Cookie Cutterܳ
ਊ • Rainist/python • Rainist/cookiecutter-sanic • ؊ ࣁೠ Ѥ @ѹש ߊ ଵҊ (YouTubeী 'ߛ࢟۞٘')
ߛ࢟۞٘ח খਵ۽ • ܽ ৈ (ࡅܰѱ) ࢿ ੋ ઑҊ ҅ࣘ
णೞח ઑ • ӒܻҊ ۠ ઑਸ ਬೞח ࢚ (ই݃) Python ҅ࣘ ਃ যੌ Ѫ • Ӓ۞ա അ ߛ࢟۞٘ח ࢎਊب ݆Ҋ ࢲ࠺झ ӏݽب ࢚క • ղࠗীࢲח ݃۽ ࢲ࠺झ ౭য݂ਸ ా೧ п ࢲ࠺झ ౭যܳ ݒӝח • ࢲ࠺झী ೱਸ ՙח ౭য 0 ࢲ࠺झী ೧ࢲח ખ ؊ উtype-safeҊ ࢿמী ъ ח ܲ য द Ҋ۰
ߛ࢟۞٘ח খਵ۽ • ܻо ੌೞח ߑध • ߛ࢟۞٘ۄח ܴ
ইې 10ݺ ӏݽ झఋসٜ • п ઑ ߛ࢟۞٘о ୡӝী Ѧযৡ Ѫҗ э ࡅܰѱ णী • ѾҴ ߛ࢟۞٘ח Python ਸ ҅ࣘ ӓਵ۽ ഝਊೞӝܳ ਗೡ Ѫ
؊ ݆ ࠁח • Ӓېࢲ ߛ࢟۞٘ীࢲ Python ࢲߡ ۨਕח? •
ઑӘ റী ਸ [The Right Frameworks for the Right Time] ࣁ࣌ • ߛ࢟۞٘ ղ Python ࢎਊ Ե ҳࢳҳࢳ • YouTubeী 'ߛ࢟۞٘' Ѩ࢝ റ 3ഥର ࢟۞٘ ѹש ߊ ࢚ ࠁӝ • Rainist GitHub ߑޙ (https://github.com/Rainist) • ӝࣿ ୶ҳೞח оח Rainist/awesome-rainist • ߛ࢟۞٘ ࠗझ ߑޙ (ݣܻ ࠁח ୡ۾࢝ܳ ٮۄ...)
഻ঁ ؊ ݆ ࠁח
We Want You Python • Server Side Engineer • DevOps
Engineer • Data Engineer • Data Scientist • Data Analyst • Machine Learning Engineer • Test Automation Engineer And... • Android Engineer • iOS Engineer • Web Engineer • QA Engineer • SRE • Infra Engineer • System Engineer • Security Engineer ❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤ ❤❤❤❤❤❤❤❤❤❤❤❤❤❤❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ❤ ഻ঁ ؊ ݆ ࠁח