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
Xamarinで最終的に ソシャゲーを作った話
Search
ueda megumu
December 09, 2019
Technology
0
700
Xamarinで最終的に ソシャゲーを作った話
2019/12/09 JXUGでお話しした内容です
ueda megumu
December 09, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
配列に見る bash と zsh の違い
kazzpapa3
3
170
コミュニティが変えるキャリアの地平線:コロナ禍新卒入社のエンジニアがAWSコミュニティで見つけた成長の羅針盤
kentosuzuki
0
130
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
170
SchooでVue.js/Nuxtを技術選定している理由
yamanoku
3
210
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
1.1k
AIエージェントに必要なのはデータではなく文脈だった/ai-agent-context-graph-mybest
jonnojun
1
250
猫でもわかるKiro CLI(セキュリティ編)
kentapapa
0
120
AWS DevOps Agent x ECS on Fargate検証 / AWS DevOps Agent x ECS on Fargate
kinunori
2
230
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
ECS障害を例に学ぶ、インシデント対応に備えたAIエージェントの育て方 / How to develop AI agents for incident response with ECS outage
iselegant
4
430
Cloud Runでコロプラが挑む 生成AI×ゲーム『神魔狩りのツクヨミ』の裏側
colopl
0
150
Greatest Disaster Hits in Web Performance
guaca
0
300
Featured
See All Featured
Writing Fast Ruby
sferik
630
62k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Designing Powerful Visuals for Engaging Learning
tmiket
0
240
Designing for Performance
lara
610
70k
Everyday Curiosity
cassininazir
0
130
How GitHub (no longer) Works
holman
316
140k
Code Review Best Practice
trishagee
74
20k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
72
Un-Boring Meetings
codingconduct
0
200
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
950
Transcript
XamarinͰ࠷ऴతʹ ιγϟήʔΛ࡞ͬͨ ্ాܙ
ࣗݾհ ্ాܙɹ @megyo9 ▸ ԬࡏॅɹSIerۈ ▸ QiitaͷXamarinλάͷϥϯΩϯάͰ2൪ʂ ▸ ۀͰ͍ͬͯΔٕज़ ▸
Windows Form / WPF / Xamarin ▸ Angular / React / Knockout, SCSS/ LESS ▸ Serverless Framework (AWS) ▸ ܾ͍ͯ͜͠ͳͯ͠ΔΘ͚Ͱͳ͍Ͱ ͢ɾɾɾ
ࠓͷ༰ XamarinͰ࠷ऴతʹιγϟήʔΛ࡞ͬͨ ▸ Qiitaʹߘͨ͠Ͱ͢
ୈ̍ ࢝·Γಥવʹ
ୈ̍ ࢝·Γಥવʹ
ୈ̍ ࢝·Γಥવʹ ೋ໊ͭΛදࣔ͢Δ͚ͩͷΞϓϦ Ͳ͏ͩΖ͏͔ʁ
ୈ̎ ։ൃ ▸ ʮAͳBʯͱ͍͏දهʹͳΔΑ͏ʹAͱBͷϦετΛ༻ҙ ▸ ݾͷਥೋපͷݶΓΛਚͯ͘͠೧Γग़͠ɺΈ߹Θͤ૯ 2500Ҏ্·Ͱߟ͑ͨ ࠇ͖ ࣫ࠇͷ ҉ࠇͷ
ৗҋͷ ڰઓ࢜ ຐԦ Ԧ ڰؾ ×
ୈ̏ ܾઓ ▸ ͨ͠ͷͰ৹ࠪʹ͛Δ
ୈ̐ ৹ࠪͷߦํ ▸ NG
ୈ̑ ωόʔΪϒΞοϓ ▸ Կ͔ػೳΛՃ͢Δඞཁ͕͋Δ
ୈ̑ ωόʔΪϒΞοϓ ▸ Կ͔ػೳΛՃ͢Δඞཁ͕͋Δ ▸ ඞࡴٕΛՃ
ୈ̒ Ճ͢Δ։ൃ ▸ ಉ͡ઃܭͰϦετΛՃ ▸ ͍ͭͰʹաڈཤྺՃ
ୈ̓ ܾઓ࠶ͼ ▸ ΞϓϦ໊ΛʮEternal Glowʯʹ໊લΛมߋ ετΞʹਃͨ͠ΞϓϦઆ໌จ
ୈ̔ ৹ࠪͷઌʹ͋Δͷ ▸ ৹ࠪʹ௨ͬͨ
ୈ̔ ৹ࠪͷઌʹ͋Δͷ ▸ ৹ࠪʹ௨ͬͨ ▸ ͏1ݸɺ̑W1Hͷ༧ݴΞϓϦΛ࡞Δ ৹ࠪ௨Δ When Who Where
Why How What
ୈ̔ ৹ࠪͷઌʹ͋Δͷ ▸ ৹ࠪʹ௨ͬͨ ▸ ͏1ݸɺ̑W1Hͷ༧ݴΞϓϦΛ࡞Δ ৹ࠪ௨Δ ݁ɿ͠ΐ΅͍ΞϓϦͰ৹ࠪʹ௨Δ
ୈ̔ ৹ࠪͷઌʹ͋Δͷ ʮ͠ΐ΅͍ʯͷཁ݅ʹ σβΠϯ͕͋ͬͨͷ͔
ୈ̕ ڥքςετ ▸ ৽نΞϓϦ͕͠ΐ΅ͯ͘OK
ୈ̕ ڥքςετ ▸ ৽نΞϓϦ͕͠ΐ΅ͯ͘OK ▸ ͰΞοϓσʔτͰผ(ιγϟήʔ)ʹͨ͠ΒͲ͏ͳΔ͔ʁ
ୈ̕ ڥքςετ ▸ ৽نΞϓϦ͕͠ΐ΅ͯ͘OK ▸ ͰΞοϓσʔτͰผ(ιγϟήʔ)ʹͨ͠ΒͲ͏ͳΔ͔ʁ
ୈ̕ ڥքςετ ▸ Ͳ͏͍͏ήʔϜʹ͢Δͷ͔݁ߏΜͩ ▸ ͦͦιʔγϟϧήʔϜɺ΄΅ͨ͜͠ͱͳ͍ ▸ ͩΜͩΜϑϨϯυΛ͍ͬͯͬͯ࠷ޙҰਓʹͳΔιʔ γϟϧήʔϜͱ͔ʁ ▸
ٯʹɺͩΜͩΜΈΜͳ͕ࣗʹͳͬͯ࠷ޙΈΜͳࣗʹ ͳͳΔιʔγϟϧήʔϜͱ͔ʁ
ୈ̕ ڥքςετ ▸ Ͳ͏͍͏ήʔϜʹ͢Δͷ͔݁ߏΜͩ ▸ ͦͦιʔγϟϧήʔϜɺ΄΅ͨ͜͠ͱͳ͍ ▸ ͩΜͩΜϑϨϯυΛ͍ͬͯͬͯ࠷ޙҰਓʹͳΔιʔ γϟϧήʔϜͱ͔ʁ ▸
ٯʹɺͩΜͩΜΈΜͳ͕ࣗʹͳͬͯ࠷ޙΈΜͳࣗʹ ͳΔιʔγϟϧήʔϜͱ͔ʁ ࣗͰݴͬͯͯҙຯ͕Θ͔Βͳ͍ɾɾɾ
ୈ̍̌ શશྶ ▸ ͱΓ͋͑ͣֆΛඳ͍ͯΞϓϦΠϝʔδΛΒ·ͤΔ
ୈ̍̌ શશྶ ▸ ͱΓ༷͋͑ͣΛඳ͍ͯΞϓϦΠϝʔδΛΒ·ͤΔ Adobe XD ͨͩσβΠϯΛඳ͚ͩ͘Ͱͳ͘จষؾ࣋ͪྑ͘ॻ͚Δ
ୈ̍̌ શશྶ ▸ ΫϥΠΞϯτɺαʔόʔɺΠϥετɺԻָɺԻΛશͯ࡞ ▸ ։ൃظؒ̏ϲ݄ ▸ ͜Ε·Ͱʹ࡞ͨ͠ΞϓϦͷ͓Αͦ90ഒͷ։ൃظؒ
ୈ̍̌ શશྶ ▸ αʔόʔ ▸ σʔλͷอଘɺ௨Firebaseʹ͢Δ͜ͱʹ ▸ αʔόʔϨεʹ͍ͨ͠͠ɺՄೳͳݶΓFunctions͢Βॻ͖ͨ͘ͳ͍ ▸ Functions૬ͳ͠Ͱσʔλߋ৽Ͱ͖ΔͷFireStore͔AppSync
͙Β͍ ▸ AppSyncεΩʔϚఆ͕ٛ݁ߏखؒͩ͠ɺResolver→SNS or Pinpointखؒ
ୈ̍̌ શશྶ ΫϥΠΞϯτଆͷ σʔλอଘॲཧྫ Xamarin.Formsͷܕ͔ΒiOSͷܕʹม͢Δͷ͕গ͠໘
ୈ̍̌ શશྶ σʔλߋ৽࣌ͷ Notificationૹ৴ྫ
ୈ̍̌ શશྶ Update Notification Update Trigger Send ςʔϒϧ2͚ͭͩ ୭͔ͱઓ͏ ઓಆ͕͋ͬͨࢫͷ௨
ୈ̍̌ શશྶ ▸ ઓಆ݁Ռͷॻ͖ࠐΈʢ͔ͳΓదઃܭˍ࣮ʣ ▸ ઓಆͨ͠ਓ͕ࣗͰ݁ՌΛॻ͖ࠐΜͰอଘʢಁաతʹϦ ϞʔτͷFireStoreʹอଘʣ ▸ อଘΛτϦΨʔʹFunctions͕ಈ͍ͯରઓ૬खʹ NotificationΛඈ͢
▸ Silent NotificationΛ֤ͬͯࣗͰόονॲཧΛͬ ͯΒ͏͜ͱ࣮ݕ౼ͯͨ͠ɾɾɾ
ୈ̍̌ શશྶ ▸ ར༻ϥΠϒϥϦ
ୈ̍̌ શશྶ ▸ Πϥετ ▸ ֤18छͷཱͪֆ ▸ iPad ProͰ͓ֆඳ͖ ΩϟϥΫλը૾
ଐੑʹԠͨ͡৭ ଐੑʹΑͬͯΩϟϥ ͷ৭͕มΘΔ
ୈ̍̌ શશྶ https://www.pinterest.jp/pin/804596289654339946/ ▸ PinteresͰݟ͔͚ͨσβ Πϯ͕ؾʹೖͬͨͷͰ ͻΐͬ͜ΓΜελΠϧ ͷΠϥετʹ
ୈ̍̌ શશྶ https://www.pinterest.jp/pin/804596289654339946/ ▸ PinteresͰݟ͔͚ͨσβ Πϯ͕ؾʹೖͬͨͷͰ ͻΐͬ͜ΓΜελΠϧ ͷΠϥετʹ ීஈ͔ΒσβΠϯͷετοΫΛ ࡞͓ͬͯ͘ͷେࣄ
ୈ̍̌ શશྶ ▸ Իָ/Ի ▸ ̑छྨͷԻָ ▸ جຊతʹGarageBandͷϧʔϓૉࡐฒ͚ͨͩ ▸ ̑छྨͷԻ
▸ ࣗͱಉ྅ͷ ▸ Adobe AuditionͰՃ
ୈ̍̌ શશྶ ؾεʔύʔϝσΟΞΫϦΤΠλʔ
ୈ̍̌ શશྶ σϞ
ୈ̍̍ ϥάφϩΫ ▸ ৹ࠪʹ͛Δ ετΞʹਃͨ͠ΞϓϦઆ໌จ
ୈ̍̎ ϋοϐʔΤϯυ ▸ ৹ࠪʹ௨Δ
ୈ̍̏ ֶͼಘͨͷ ▸ Xamarinʹ͍ͭͯ ▸ ਖ਼ɺήʔϜ։ൃʹΘͳͯ͘ྑ͍͔ ▸ WPFͱ͔Silverlightͬͯͨͱͯ͠ࠓͰHTML/CSS ΑΓXamlͷํ͕ॻ͖͍͢ ▸
pngͷಁաLottieΛ͑ɺͬͱྑ͍ݟͤํͰ͖ ͦ͏ͳؾ͕͢Δ
ୈ̍̏ ֶͼಘͨͷ ▸ ήʔϜੑʹ͍ͭͯ ▸ ੑ͕ͳ͍ͷָ͘͠ͳ͍ ▸ ௨͕དྷΔͷָ͍͠ ▸ ݟͯΔ͚ͩˍΞχϝʔγϣϯʹ͍͠ઓಆΓ্͕Βͳ͍
▸ ճ੍ݶʴࠂήʔϜੑͱͯ͠େࣄ ▸ ϧʔϓԻ࡞Δͷ؆୯ ▸ ԻࣗͰҙ֎ͱ͍͚Δ
None
࣍ճ༧ࠂ FNOΤλʔφϧ
࣍ճ༧ࠂ FNOΤλʔφϧ ▸ AndroidରԠ ▸ ݩʑɺFirebaseपΓҎ֎શͯXamarin.FormsͰॻ͍ͯΔ ▸ ήʔϜੑͷٻ ▸ ͷ͋ΔήʔϜʢνʔϜઓɺΫϥενΣϯδʣ
▸ ௨͔Βܸ ▸ ͬͱ্खͳֆ ▸ BGMʹՎΛೖΕ͍ͨ