はじめに
こんにちは。 IT エンジニア部の川口です。
スマホアプリ開発の技術について、弊社にカルチャーフィットするかどうかを 再 検討したので紹介します。
今までの記事はこちらです。
- 【FY2021 2Q】スマホアプリ開発の技術調査報告 - エムティーアイ エンジニアリングブログ
- 【FY2021 3Q】スマホアプリ開発の技術調査報告 - エムティーアイ エンジニアリングブログ
- 【FY2021 4Q】スマホアプリ開発の技術調査報告 - エムティーアイ エンジニアリングブログ
- 【FY2022 1Q】スマホアプリ開発の技術調査報告 - エムティーアイ エンジニアリングブログ
注意
- 2022/03/09 時点での情報を元に考えた
- FY2022 1Q からの変更点のみ 太字 で記載している
- その他の注意は FY2021 2Q と同様である
技術戦略表
今までと同様、スマホアプリ開発で使う技術を 4 つの分類に分けました。
凡例は FY2021 2Q と同様です。
iOS
開発言語
Stable | Experimental | Neutral | Deprecated |
---|---|---|---|
Swift (5.5.2 以上) | Swift (5.6 以上) | - | Objective-C Swift (5.5.2 未満) |
- Swift
- Stable を 5.5 から 2022/03/09 現在の最新バージョンである 5.5.2 へ更新した
- Experimental におそらく来週リリースされる 5.6 を追加した
UI フレームワーク
Stable | Experimental | Neutral | Deprecated |
---|---|---|---|
UIKit SwiftUI |
- | - | - |
- FY2022 1Q から変更なし
Android
開発言語
Stable | Experimental | Neutral | Deprecated |
---|---|---|---|
Kotlin (1.6.10 以上) | - | - | Java Kotlin (1.6.10 未満) |
- Kotlin
- Jetpack Compose が Kotlin 1.6 系に対応した *1 ので、1.6.10 以上を使うべき
UI フレームワーク
Stable | Experimental | Neutral | Deprecated |
---|---|---|---|
XML Jetpack Compose (1.1.0 以上) |
- | - | Jetpack Compose (1.1.0 未満) |
- Jetpack Compose
- 1.1 系がリリースされたので、特別な事情がない限りは 1.1 系の最新バージョン(2022/03/09 現在は 1.1.0)を使うべき
Cross Platform
Stable | Experimental | Neutral | Deprecated |
---|---|---|---|
Xamarin.Forms (5.0 以上) .NET Standard (2.1 以上) C# (8.0 以上) |
Xamarin.Forms .NET (5.0 以上) C# (9.0 以上) MAUI .NET (6.0 以上) C# (10.0 以上) |
Xamarin Native Uno Platform |
Xamarin.Forms (5.0 未満) .NET Standard (2.1 未満) C# (8.0 未満) |
- | - | Flutter | - |
- | - | React Native | - |
- | - | KMM | - |
- MAUI
- 2022/03/09 現在、まだ正式リリースされていない
- Xamarin.Forms
- FY2022 1Q から変更なし
技術選定
Swift Concurrency や SwiftPM によるマルチモジュール構成は、Swift 5.6 がリリースされてから対応しても遅くないと思います。
Xamarin.Forms のアクセシビリティ対応について、Xamarin Community Toolkit *2 を使うといいです。
それでも対応するのは難しいので、MAUI に期待したいです。
おわりに
スマホアプリ開発における技術戦略の紹介でした。
少しでも参考になれば幸いです。
逆に適切でない箇所などがありましたら、何らかの形でご指摘いただけると嬉しいです。
採用情報
現在弊社が募集している職種の一覧です。
興味がありましたらぜひご応募ください。