Diverse developer blog

株式会社Diverse(ダイバース) 開発者ブログです。

DroidKaigi 2018 Reject ConferenceでAndroidエンジニアがiOS開発で力を発揮する方法をお話してきました

DroidKaigi 2018にはCfP(Call for papers、審査用の概要)を3本出して全部落ちました。 id:kikuchy です。

先日開催されたDroidKaigi 2018 Reject Conferenceにて、『AndroidエンジニアがiOS開発でも即戦力になる方法』と題しまして、AndroidエンジニアがiOSアプリ開発をすることになったときに既存のスキルを活かす方法をお話させていただきました。

connpass.com



docs.google.com

(今回のスライドはSlideShareにアップロードできなかったためページ内表示ができませんでした…)

Androidの世界から見るとiOSの世界には似たものもあれば違うものもあります。
「似ている」「違う」という関連を知ることで、iOS開発に必要なものをすぐに覚えたり思い出したりすることができます。

そうした学習の一助になれば幸いです。


スライド中でお話した「iOSでテストが普及していないようにみえるのは、Mockitoのようなライブラリが無いからではないか」ということについて、すたぜろさんから便利なツールがあるという情報をいただきました。感謝!

Java/KotlinでMockitoを使ったテストに慣れていると、Swiftのみの環境下でスタブを手で作るのは非常に時間がかかって(気力も削がれて)困るので、こうしたライブラリがあると助かりますね!


懇親会ではiOS開発の辛いところ、マルチプラットフォーム開発の夢についてたくさんの方とお話する事ができました。


iOSアプリの署名まわりはやはり難解ということで大多数の方の意見が一致しました。
もっと簡単になってくれればよいのですけれど…

また、Kotlin/NativeのMultiplatform Projectsは(Xamarin.Forms登場以前のXamarinと同様に)ドメインロジックの記述を共通化できるというものであって、これだけでマルチプラットフォームアプリを作成できる訳ではない、ということも話題に上がりました。

Kotlin/Nativeの知識だけでマルチプラットフォームアプリを作れるわけではないとなると少々ガッカリしてしまうかもしれません。
マルチプラットフォーム開発をスピーディーに行いたい場合、FlutterやReactNativeを使用した方がよいと私も思います。
しかし、各OSで頻繁に使用するAPIを抽象化したもの(java.io.*やjavax.crypto.*などに相当するようなAPIのKotlinで記述されたexpectと、各OS用のactualのセット)が用意されると、また状況が変わってくるかもしれません。


Diverseは今後もAndroidエンジニアの皆様に知見を共有してゆきます!°˖✧◝(⁰▿⁰)◜✧˖°

AndroidエンジニアもiOSエンジニアも募集中です。
未来のデーティング、人と人との出会いを一緒に作ってゆきませんか?
興味がある方は @kikuchy または他の弊社エンジニアへ、お気軽にDMやリプライをください!