Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
新規アプリ開発で Xamarin導入を見送った話
Search
Chooyan
February 01, 2019
Technology
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
新規アプリ開発で Xamarin導入を見送った話
初心者歓迎XamarinのLT会!Xamarin入門者の集い #5 で発表させていただいたLTの資料です。
Chooyan
February 01, 2019
More Decks by Chooyan
See All by Chooyan
Riverpod 移行を支えた LivMap のアーキテクチャ
chooyan244
0
1.3k
Azureもくもく会 #21 成果発表LT資料
chooyan244
0
310
CodeYourRubyでRubyを仕事にする全てのエンジニアに貢献する
chooyan244
1
310
CodeYourRubyでRubyを仕事にする全てのエンジニアに貢献する.pdf
chooyan244
0
280
Other Decks in Technology
See All in Technology
Azure Copilot Resiliency Agentをいろいろ試してみる
tomokusaba
0
140
【Findyテック文化祭ワークショップ】新卒エンジニア&採用担当と作る、 なりたい姿と今やるべき一歩
dip_tech
PRO
0
150
Claude Designがめちゃくちゃ便利なので使ってほしい
diggymo
0
130
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
sanghyuk
0
240
生成AIを使って「人が」考える技術 ― AI時代の人機共想と実践ノウハウ|UNITT AC2026
ishiirikie
0
420
.NET WebAssemblyで実現するクライアントサイドAI推論:NuGetからViteまで、2つのエコシステムを繋ぐビルド戦略
yamachu
1
1.1k
Oracle Cloud Infrastructure(OCI):Onboarding Session(はじめてのOCI/Oracle Supportご利⽤ガイド)
oracle4engineer
PRO
3
21k
Kiro Meetup #8 Kiro アップデート (2026/3/21〜2026/9/24)
katzueno
1
300
地方移住と都心キャリアの両立は「金・時間・人」のリソースをフル活用すれば実現できる!〜Snowflake女子会 vol.8
snowwmn0824
0
130
なぜAI任せのゲームは面白くならないのか?
hirohasuyoutube
0
300
形式手法を使って仕様をコーディングしよう
mikanichinose
0
130
Swap and Memory Reclaim - Squeezing Out More RAM
ennael
PRO
1
1.2k
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
710
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
290
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.8k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
600
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
270
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
510
Building an army of robots
kneath
307
47k
Transcript
フリーランスソフトウェアエンジニア 中條 剛(ちゅうじょう つよし) Twitter : @chooyan_i18n GitHub : @chooyan-eng Qiita :
@chooyan_eng 新規アプリ開発で Xamarin導入を見送った話
自己紹介 • フリーランスでAndroid/iOSアプリの開発や講師などをしています • Xamarin歴1ヶ月程度です • 2018年は「オークメモリーズ」アプリ を作りました
Xamarinでの開発を見送った話 • 状況 ◦ 会社初のアプリ開発。 Webがメイン。 ◦ アプリ開発者は自分ひとり ◦ 自分もiOSアプリ開発は初めて
◦ ワイヤーフレームも何もない状態からの開発スタート • 結論 ◦ Xamarinではなくネイティブ(AndroidはKotlin、iOSはSwift)で開発する ◦ AndroidをリリースしてからiOSに着手する方針(自分の経験の都合)
Xamarinを使うメリット • ひとつの言語、ひとつのコードベース ◦ コードを共通化することで同じロジックを Kotlin / Swiftで2度書く必要がなくなる ◦ プラットフォームごとの仕様差分、実装差分が減らせる
◦ ひとりの開発者がAndroidもiOSも幅広く担当できる ◦ 開発を効率化できる
Xamarinを使うリスク ① • エンジニア見つけられない問題 ◦ メンバーを追加しようと思ったときに、 Xamarinができる人が見つからないのではないか? ◦ 主に知り合いづてでメンバーを探していたため、マッチする人を見つけるのが大変そう
Xamarinを使うリスク ② • 学習コスト高い問題 ◦ 例えばiOSアプリ開発をする際、 C# -> Xamarin ->
iOSプラットフォームをそれぞれ学ばなければな らないのではないか。ネイティブなら Swift -> iOSプラットフォームのみ。 ◦ 問題の原因や解決方法の調査をする際、結局 SwiftやObjective-Cも読むことになりそう。 ◦ 新しいアプリ開発者が入るたびに C# -> Xamarinを覚えなければならない。
Xamarinを使うリスク ③ • 思ったより共通化の効果が大きくなさそう問題 ◦ ロジックの大半はサーバーサイドでも共通化できるのではないか ◦ 各プラットフォーム「らしさ」を考えると UIはあまり共通化できないのではないか ▪
CustomRendererというのがあるらしい(まだ調べられていない、、、) ◦ 共通化した部分と共通化できない部分を繋げる設計が必要になるのではないか。たぶん。
Xamarinが適したプロジェクトを考えてみた • 開発者が確保できる ◦ Xamarinができる開発者が見つかる見込みがある ◦ Xamarinを「追加で」学習するコストが支払える • 共通のUIをデザインできる ◦
タブバー、ナビゲーションドロワーなどのプラットフォーム固有の UIに頼らず、 Android / iOSどちらのプラットフォームでも使いやすい UIをデザインできる ◦ (Xamarin.Forms的にどの程度UIに差を出しても大丈夫なのかは要調査) • 「アプリ側に」たくさんのロジックを実装する必要がある ◦ ローカルでデータを処理する、センサーや地図を扱うなど、サーバー側へ処理を任せられない機能 が多い
オークメモリーズでは? • 開発者が確保できる ◦ Xamarinができる開発者が見つかる見込みがある ◦ Xamarinを「追加で」学習するコストが支払える • 共通のUIをデザインできる ◦
タブバー、ナビゲーションドロワーなどのプラットフォーム固有の UIに頼らず、 Android / iOSどちらのプラットフォームでも使いやすい UIをデザインできる ◦ (Xamarin.Forms的にどの程度UIに差を出しても大丈夫なのかは要調査) • 「アプリ側に」たくさんのロジックを実装する必要がある ◦ ローカルでデータを処理する、センサーや地図を扱うなど、サーバー側へ処理を任せられない機能 が多い ちょっと難しそう、、、 ちょっとできなそう、、、 ちょっと分からない、、、 ほぼサーバーのAPI叩くだけ
ありがとうございました マルチプラットフォームはロマン! 懇親会でみなさんの意見や経験談を聞かせてください!