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
React-nativeの紹介
Search
裕美 吉田
July 02, 2016
Technology
1
1.8k
React-nativeの紹介
React-nativeの紹介。yidel 第24回勉強会で発表
裕美 吉田
July 02, 2016
Tweet
Share
More Decks by 裕美 吉田
See All by 裕美 吉田
React.jsの紹介
yuumi3
2
850
即戦力になるRubyエンジニアの作り方教えます
yuumi3
0
530
iOS 開発者のためのバックエンド入門 (2)
yuumi3
1
4.1k
iOS 開発者のためのバックエンド入門 (1)
yuumi3
15
8.7k
LoopBackに付いて少し
yuumi3
0
1.8k
Ruby開発者を増やすための教育について (8年間のRuby教育で得た知見)
yuumi3
7
4k
クラウドxスマフォ時代のRuby on Rails入門
yuumi3
2
240
真のWebプログラマー向け RubyMotion フレームワーク
yuumi3
4
1.5k
CLandMK
yuumi3
1
130
Other Decks in Technology
See All in Technology
GSIが複数キー対応したことで、俺達はいったい何が嬉しいのか?
smt7174
3
120
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
230
あたらしい上流工程の形。 0日導入からはじめるAI駆動PM
kumaiu
4
690
IaaS/SaaS管理における SREの実践 - SRE Kaigi 2026
bbqallstars
4
1.3k
分析画面のクリック操作をそのままコード化 ! エンジニアとビジネスユーザーが共存するAI-ReadyなBI基盤
ikumi
0
120
Introduction to Bill One Development Engineer
sansan33
PRO
0
360
無ければ作る! バイブコーディングで作ったものを一気に紹介
tatsuya1970
0
110
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
1
860
システムのアラート調査をサポートするAI Agentの紹介/Introduction to an AI Agent for System Alert Investigation
taddy_919
2
1.4k
AI時代、1年目エンジニアの悩み
jin4
1
140
2026年はチャンキングを極める!
shibuiwilliam
8
1.8k
2人で作ったAIダッシュボードが、開発組織の次の一手を照らした話― Cursor × SpecKit × 可視化の実践 ― Qiita AI Summit
noalisaai
1
340
Featured
See All Featured
Odyssey Design
rkendrick25
PRO
1
480
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
370
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
620
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
290
How STYLIGHT went responsive
nonsquared
100
6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
The Cost Of JavaScript in 2023
addyosmani
55
9.5k
Designing for humans not robots
tammielis
254
26k
Darren the Foodie - Storyboard
khoart
PRO
2
2.3k
WCS-LA-2024
lcolladotor
0
430
Java REST API Framework Comparison - PWX 2021
mraible
34
9.1k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
Transcript
3FBDUOBUJWF ͷհ ٢ా༟ඒ
ࣗݾհ
٢ా༟ඒ :PTIJEB:VVNJ ༗ݶձࣾ&:0⒏DF IUUQXXXFZP⒏DFDPN #MPHIUUQZVVNJIBUFOBCMPHDPN 5XJUUFS!ZVVNJ 3
աڈ େֶͷֶ෦ଔۀ ଔۀݚڀͰ-JTQॲཧܥʹؔΘΔ ࠐܥͷձࣾʹब৬ $"%ͷϕϯνϟʔاۀʹస৬ $"%ͷίΞ෦ͷ։ൃ γϦίϯόϨʔΛ๚ͨ͠ΓɺถࠃਓͱࣄΛ ܦݧ 4
̌ੈل͕ऴΘΔͷͰಠཱ ΧϦϑΥϧχΞͷ੨͍ۭΛΈͨ ͋·ΓձࣾʹೃછΊͳ͍ਓͩͬͨ ωοτͷ࣌ʹͳͬͨ 5 IUUQCMPHMFYVFTDPKQIUNM͔Β
&:0⒏DF ʹಠཱ ։ൃ 8FC 3VCZPO3BJMT J1IPOF ڭҭ ͓٬༷ͷΛղܾ͢Δ*5ڭҭ 3VCZPO3BJMT
J04 6 3FBDUKT
&:0⒏DF։ൃ 8FC 7 w ΞδΞϦʔάΞΠεϗοέʔ wIUUQXXXBMIPDLZKQ wνʔϜɾબखͷूܭ w1FSMಠࣗϑϨʔϜϫʔΫ wΞϩϋύʔΫ wIUUQQBSLBMPIB
TUSFFUDPN w4/4 w+BWB4FBTBS wωοτγϣοϓ wIUUQXXXCPSPDPKQ w3BJMTK2VFSZ w34QFD$VDVNCFS w๖͑τʔΫ ༏ͱ4LZQF Ͱ͓ wIUUQXXXNPFUBMLKQ w༏ͱͷձ༧༧ w3BJMTK2VFSZ w34QFD3FRVFTU
&:0⒏DF։ൃ J1IPOF 8 ֆຊΞϓϦ J1IPOFJ1BE 5XFFUͳ͏ ແྉ ڭ͑ࢠ͕࡞ͬͨΞϓϦ ϦϦʔε͞Εͳ͔ͬ ͨ"ࣾΞϓϦ
ࣥච 9
ߨԋ 10 RubyKaigi2008 Ruby World Conference 2013 Ruby Business Users
Conference 2014, 2015
࠷ۙͷࣄ 11 ສߦͷK2VFSZϕʔεͷ41"Λ 3FBDUKTҠߦ IUUQZVVNJIBUFOBCMPHDPNFOUSZ
3FBDUOBUJWF
3FBDU/BUJWF +4 3FBDUͰεϚϑΥΞϓϦΛߏங ͢ΔͨΊͷϑϨʔϜϫʔΫ J04 "OESPJEʜରԠ σόΠε (14 Χϝϥʜ ར༻Ͱ͖Δ
IUNMͷເΑ͏Ұʁ 13
14 3FBDU/BUJWF ίʔυɿIUUQTHJUIVCDPNZVVNJSFBDU@KZBOLFO CSBODISFBDUOBUJWF σϞ
ͦ͏͍͏ͷੲ͋ͬͨΑͶ 5JUBOJVN 1IPOF(BQ $PSEPWB ʜ 15
ੲͱԿ͕ҧ͏ͷʁ 3FBDUKT 3FBDUOBUJWFͷ3FBDU3FBDUKT ͷ3FBDU 16
3FBDUKTͱ
·ͣ41" ࠷ۙͷ8FCαΠτ 4JOHMF1BHF"QQMJDBUJPO
ݹ͖ྑ͖8FCΞϓϦ 19 controller model view HTML (css, image) request HTML
Server Browser
"KBYγϯϓϧ 20 controller model view HTML (css, image) request HTML
Server Browser JS request HTML
"KBYෳࡶ 21 controller model view HTML (css, image) request HTML
Server Browser JS request HTML state, data
41" 22 controller model request Server Browser JS controller model
view HTML css, image JSON iOS / Android request JSON $MJFOUTJEF.7$ͱݺΕΔࣄ͋Δ
23 ຖͷΑ͏ʹ৽͍͠ϥΠϒϥϦʔɾ ϑϨʔϜ͕ొ͍ͯͨ͠ 41"ϥΠϒϥϦʔɾϑϨʔϜϫʔΫ
3FBDUKT 24 ͔͠͠ɺ41"ϥΠϒϥϦʔɾϑϨʔ ϜϫʔΫͷউऀ͕ܾ·Γ·ͨ͠
3FBDUKT 3FBDUJTBHBNFDIBOHJOHJOOPWBUJPO
&:0⒏DF 3FBDUKT γϯϓϧͳϓϩάϥϛϯάϞσϧͱੑೳ Λཱ྆ ϝϯςφϯεੑ͕ߴ͍ίʔυ͕ॻ͚Δ 'BDFCPPL͕࣮ࡍʹ͍ͬͯΔ࣮ 26
&:0⒏DF 3FBDUKT γϯϓϧͳϓϩάϥϛϯάϞσϧͱੑೳΛཱ྆ 27 override func viewDidLoad() { super.viewDidLoad() self.instance
= XXXX1 ͍Ζ͍Ζઃఆ } @IBAction func pushButton(sender: AnyObject) { self.instance = XXXX2 ඞཁͳॴΛॻ͖͑Δ } ը໘ͷঢ়ଶΛॳظԽ ը໘શମΛදࣔ Ұ෦Λ࠶දࣔ ը໘ͷঢ়ଶΛมߋ Button J04 K2VFSZʜ Πϕϯτ
&:0⒏DF 3FBDUKT γϯϓϧͳϓϩάϥϛϯάϞσϧͱੑೳΛཱ྆ 28 class Top extends Component { constructor(props)
{ super(props) this.state = { . . . } } render() { <શը໘දࣔ༻ίʔυ> } onClick(event) { this.stat.xxx = {XXXX} } } ը໘ͷঢ়ଶΛॳظԽ ը໘શମΛදࣔ ࣗಈతʹҰ෦ͷΈ Λ࠶දࣔ ը໘ͷঢ়ଶΛมߋ Button 3FBDUKT Πϕϯτ
&:0⒏DF 3FBDUKT 7JSUVBM%0. 3FBDUKTͷද͕ࣔߴԽͰ͖Δٕज़ ϝϞϦʔ্ʹͷมߋલޙͷ%0.Λ࣋ͪɺ มߋ͕͋ͬͨ෦Λݕग़͠ɺຊʹมߋ͕ ඞཁͳ෦ͷΈΛը໘ʹө͢Δ 29
3FBDUKT ίϯϙʔωϯτ $PNQPOFOUΛܧঝͨ͠Ϋϥε ϑϧػೳ ؔ දࣔͷΈͷίϯϙʔωϯτ 30
3FBDUKT 31 IUUQUFSPQBJOGPCMPHDIBOHFBOEJUTEFUFDUJPOJOKBWBTDSJQUGSBNFXPSLTIUNM ΑΓ 7JSUVBM%0. ϒϥβʔ ը໘ +4 ϝϞϦʔ
&:0⒏DF 3FBDUKT ϝϯςφϯεੑ͕ߴ͍ίʔυ͕ॻ͚Δ ίϯϙʔωϯτࢦ +4ͷதʹ)5.-Λॻ͘+49Λ࠾༻ 32
3FBDUKT 33
34 3FBDUKT ??
Ͱɺ+BWB4DSJQUͬͯ͋ ͷμα͍ݴޠͰ͠ΐ͏ ͋ͳͨɺݱࡏͷ+BWB4DSJQUΛͬ ͍ͯ·͔͢ʁ 35
&4 &4
&4 &4 +BWB4DSJQUͷ৽͍༷͠ &$."4DSJQU ͷ ൛ ैདྷ&4ͱݺΕ͍ͯͨͷ ͪͳΈʹݱࡏͷ+4&4 Ϋϥεʑͷ৽͍͠จ๏͕ಋೖ͞Εॻ͖ ͕͢͞େ෯ʹ্ͨ͠
&4 &4 ࠷༷͕ۙ֬ఆ 37
38 &4 &4 var PI = 3.141592 function square(x) {
return x * x; } function tax(n, rate) { if (rate == undefined) rate = 0.08; return Math.floor(n * rate); } const PI = 3.141592 square = (x) => x * x tax = (n, rate = 0.08) => Math.floor(n * rate) &4 &4
39 &4 &4 Jyanken = (function() { function Jyanken(hand) {
this.hand = hand; } jyanken.prototype.poi = function() { return this.hand = Math.floor(Math.random() * 3); }; jyanken.prototype.judge = function(your) { if (this.hand === your.hand) { return "Ҿ͖͚"; } else if ( ..লུ.. ) { return "উͪ"; } else { return "ෛ͚"; } }; return Jyanken; })(); class Jyanken { constructor(hand) { this.hand = hand } poi() { this.hand = Math.floor(Math.random() * 3) } judge(your) { if (this.hand === your.hand) { return "Ҿ͖͚" } else if ( ..লུ.. ) { return "উͪ" } else { return "ෛ͚" } } } &4 &4
&4 &4 ݱ࣌Ͱϒϥβʔͷαϙʔτશ Ͱͳ͍ ಛʹεϚϑΥͷϒϥβʔμϝ ݱࡏ&4͔Β&4ʹม͢Δπʔϧ ද#BCFM Ͱม͠ར༻͞Ε͍ͯΔ 40
IUUQTLBOHBYHJUIVCJPDPNQBUUBCMFFTΑΓ
41 &4 &4 +BWB4DSJQU"MUFSOBUJWFT $P⒎F4DSJQU ͏Ε·͠ΐ͏ 5ZQF4DSJQU ܕ͕͖ 4XJGU ͳํ͍·͠ΐ͏
7JTVBM4UVEJP 8FC4UPSN #BCFMͳ Ͳ͕ରԠ
3FBDUKT
43 3FBDU/BUJWF ίʔυɿIUUQTHJUIVCDPNZVVNJSFBDU@KZBOLFO CSBODISFBDUOBUJWF ίʔυ
3FBDUKTϕετϓϥΫςΟε 44 ίϯϙʔωϯτ ίϯϙʔωϯτࢠ ίϯϙʔωϯτଙ σʔλ QSPQT Πϕϯτ TUBUF
&:0⒏DF 3FBDUOBUJWFKT ใݯ IUUQTGBDFCPPLHJUIVCJPSFBDUOBUJWF 45
͓·͚ɺ&MFDUSPO ϚϧνϓϥοτϑΥʔϜͷ(6*ΞϓϦΛ ࡞ΔͨΊͷϑϨʔϜϫʔΫ 8JOEPXT .BD -JOVY /PEFKT $ISPNJVNϕʔε ͱͱ"UPNΤσΟλʔͷҰ෦ͩͬͨ ࣮ࡍʹΘΕ͍ͯΔ
46
47 &MFDUSPO
3FBDUKTྑ͍Αʂ 3FBDUOBUJWF༻్͕߹͑ͬ ͯΔͱྑ͍ͷͰ 48 ·ͱΊ ίʔυɿIUUQTHJUIVCDPNZVVNJSFBDU@KZBOLFO
͓Βͤ &:0⒏DF3FBDUKTͷڭҭ Λ։࢝͠·ͨ͠ɻ 49