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のアプリ開発にElectronという選択肢
Search
massyuu
October 26, 2017
Programming
1
2.3k
Pythonのアプリ開発にElectronという選択肢
pyfukuoka #2
at 2017/10/26
in Fukuoka City
massyuu
October 26, 2017
Tweet
Share
More Decks by massyuu
See All by massyuu
僕が仕事を楽しむメンタルモデル
massyuu
0
250
自分のTwitter利用を振り返ってみる
massyuu
0
85
Vue×Nativeの開発を簡単にしたかったのです
massyuu
0
390
Authから始めるFirebaseの第一歩
massyuu
1
1.3k
RealWorldHTTPを読んでみた
massyuu
1
550
私の知らないPythonの世界
massyuu
1
520
Other Decks in Programming
See All in Programming
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
1
500
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
8
1.3k
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
140
DROBEの生成AI活用事例 with AWS
ippey
0
140
Domain-Driven Transformation
hschwentner
2
1.9k
pylint custom ruleで始めるレビュー自動化
shogoujiie
0
150
Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
delhi09
PRO
4
460
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
8
2.4k
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
220
PHPカンファレンス名古屋2025 タスク分解の試行錯誤〜レビュー負荷を下げるために〜
soichi
1
670
CSS Linter による Baseline サポートの仕組み
ryo_manba
1
150
Flutter × Firebase Genkit で加速する生成 AI アプリ開発
coborinai
0
170
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
4 Signs Your Business is Dying
shpigford
182
22k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Rails Girls Zürich Keynote
gr2m
94
13k
For a Future-Friendly Web
brad_frost
176
9.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Building an army of robots
kneath
303
45k
Transcript
1ZUIPOͷΞϓϦ࡞ʹ &MFDUSPOͱ͍͏બࢶ !NBTTZVV 1Z'VLVPLB
ࣗݾհ NBTTZVVʢϚγϡʔͱ͍͍·͢ʣ 1ZUIPOྺझຯͰϲ݄͘Β͍ ͔Β͕͋͛͋Εੜ͖͍͚ͯΔΤϯδχϟʔ ϑϩϯτ͔ΒόοΫΤϯυ·Ͱ͘ઙ͘ UXJUUFSNBTT@TTO
ͯ͞
1ZUIPOͱ͍͑ ɾػցֶश ɾσʔλղੳ ɾ8&#ΞϓϦέʔγϣϯ ɾεΫϨΠϐϯά ɾɾͱ͍͏Πϝʔδ͕݁ߏ͋Δ
σεΫτοϓΞϓϦΛ࡞Δʹ ,JWZ ϚϧνλονΞϓϦέʔγϣϯ։ൃͷͨΊͷ ΦʔϓϯιʔεϥΠϒϥϦ 1Z2U 2U ΫϩεϓϥοτϑΥʔϜͳ(6*πʔϧΩοτ ͷ 1ZUIPOόʔδϣϯ 1ZUIPOͰσεΫτοϓΞϓϦΛ࡞ΔϑϨʔϜϫʔΫ͋Δ
͕ɺ͔͠͠ 1ZUIPOͰ(6*Λ࣮ݱ͢Δͷͳ͔ͳ͔ࠎ͕ંΕͦ͏ ͬͯΔࣝͰͳΜͱ͔Ͱ͖ͳ͍͔ͳ͊ɾɾ
8&#ΞϓϦΛͲ͏ʹ͔ͯ͠ɾɾ ɾ8&#ΞϓϦͷσβΠϯ͕݁ߏ͖ʢݟ׳Εͨײʣ ɾσβΠϯηϯε͕ͳͯ͘6*ϑϨʔϜϫʔΫͰʂ ɹɹ#PPUTUSBQͱ͔0OTFO6*ͱ͔Ͷ ɾ8&#σεΫτοϓΞϓϦͱ͍͏ྲྀΕ͕ɾɾ
ͦ͜Ͱ&MFDUSPOΛͬͯΈΑ͏
&MFDUSPO KBWBTDSJQUIUNMDTTΛͬͯ ΫϩεϓϥοτϑΥʔϜΞϓϦΛ࡞Δ ΞϓϦέʔγϣϯΤϯδϯ 8JO.BDͰಈ࡞͢ΔΞϓϦΛ࡞ΕΔ "UPNͱ͔7JTVBM4UVEJP$PEFͳΜ͔&MFDUSPO
+4ϑϨʔϜϫʔΫ͑ΑͱݴͬͪΌͩΊ 1ZUIPOͰΔ͜ͱʹҙຯ͕͋Δʢͣʣ
,JWZ͑Α σβΠϯηϯε͕ΞϨͳͷͰ
ࠓճͬͨ͜ͱ 5XJUUFSͷϢʔβʔ*%ͱ݅Λೖྗ͢Δ ˣ ϢʔβʔͷͭͿ͖Λ݅औಘͯ͠දࣔ͢Δ
ԿΛ͏͔ /PEF KTʢ&MFDUSPOಈ͔͢ʣ &MFDUSPOʢ8&#σεΫτοϓΞϓϦʣ 'MBTLʢΞϓϦຊମʣ +JOKBʢςϯϓϨʔτΤϯδϯʣ 0OTFO6*ʢݟͨʣ 5XJUUFS"1*ʢػೳຊମʣ
/PEFKT αʔόʔαΠυͰKBWBTDSJQUΛಈ͔ͨ͢Ίͷڥ ࠓճ&MFDUSPOΛಈ͔ͨ͢Ίʹ༻
'MBTL 1ZUIPOͷܰྔ8&#ΞϓϦέʔγϣϯϑϨʔϜϫʔΫ ܰͯ͘ϧʔςΟϯάػೳ͕͋Ε͍͍ͱࢥͬͯ࠾༻ ࠓճͷΞϓϦͷຊମ from flask import Flask, request app
= Flask(__name__) @app.route("/", methods=['GET', 'POST']) def main(): if request.method == "POST" : # ϦΫΤετͷऔಘ user_name = request.form["username"] count = request.form["count"] IFMMPQZ
+JOKB 1ZUIPO༻ͷςϯϓϨʔτΤϯδϯ ϩδοΫͱ)5.-Λ͚ͯཧͰ͖Δ QZͷதͰ)5.-Λॻ͖ͨ͘ͳ͍ͷͰ࠾༻ {% if tweets != '' %}
<ons-page> <ons-toolbar> <div class="center">{{ user_name }} Tweet</div> <div class="right"><ons-button><a href="/">Back</a></ons-button></div> </ons-toolbar> <ons-scroller> <ons-list> {% for tweet in tweets %} <ons-list-item>{{ tweet.text }}</ons-list-item> {% endfor %} </ons-list> </ons-scroller> </ons-page> {% endif %} JOEFYIUNM
0OTFO6* 6*ϑϨʔϜϫʔΫ ؆୯ʹ͍͍ײ͡ͷ6*Λ࣮ݱͰ͖Δ σβΠϯηϯεͷͳ͍ࣗΛॿ͚ͯ͘ΕΔ <ul> {% for tweet in tweets
%} <li>{{ tweet.text }}</li> {% endfor %} </ul> <ons-list> {% for tweet in tweets %} <ons-list-item>{{ tweet.text }}</ons-list-item> {% endfor %} </ons-list> JOEFYIUNM
5XJUUFS"1* λΠϜϥΠϯΛऔಘ͢ΔͨΊʹ༻ $VTUPNFS,FZ"DDFTT5PLFOͳͲͷऔಘ͕ඞཁ 0"VUIೝূSFRVFTUT@PBVUIMJCΛ͏ͱָ ҙ ϦΫΤετNJOͷ੍ݶ͕͋Γ·͢
σϞ
ϋϚͬͨ͜ͱ σόοάํ๏ &MFDUSPOͱ'MBTLͷΈ߹ΘͤͨϓϩδΣΫτʹ ػೳΛΓࠐΜͰ͠·ͬͨ தී௨ͷ8&#ΞϓϦͳͷͰɺઌʹ'MBTLଆͰ ΞϓϦΛ࡞ΓࠐΜͰ͔ΒΈ߹ΘͤΔ͖ͩͬͨ ΤϥʔͷݪҼ͕ͲͪΒʹ͋Δ͔͔Γਏ͔ͬͨ
ϋϚͬͨ͜ͱ ੩తϑΝΠϧʢ$44KBWBTDSJQUʣͷಡΈࠐΈ 'MBTLϓϩδΣΫτͷʮTUBUJDʯϑΥϧμʹೖΕͯɺ VSM@GPSϞδϡʔϧͰಡΈࠐΊ0, ͍ɺʮ/PU'PVOEʯͳΜͰ͚͢Ͳɾɾ ʢࠓճ$%/ͰରԠͯ͠·͢ʣ
ϞόΠϧ &MFDUSPOʮσεΫτοϓΞϓϦʯ͕࡞ΕΔ ʮϞόΠϧΞϓϦʯͰͳ͍ $PSEPWBͱͷΈ߹Θͤࢼ͍͖͍ͯͨ͠ͱ͜Ζ $PSEPWBɿϞόΠϧΞϓϦ։ൃϑϨʔϜϫʔΫ
·ͱΊ 1ZUIPOͷσεΫτοϓΞϓϦ,JWZ1Z2UͰ࡞Δʂ ɾɾ͚ͩ͡Όͳ͘ɺผͷΞϓϩʔνͰ࣮ݱͰ͖Δ ٕज़ͷֻ͚ࢉͬͯ໘ന͍ΑͶ ʆɾТɾ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠