kazu22002の技術覚書

PHPer, Golang, AWS エンジニアの日々

プログラミングをしてみてiOSは優秀だとさらに感じてる

最近プログラミングの幅がだんだんと広がってきました。
その中で、iOSは優秀だったんだと感じている。

その昔、Android開発にて

Androidのアプリ開発をしていた時期に、いつもiOSにはなぜか勝てる気がしていなかった。
理由はいくつかあったと思う。

戦力の差(主に人数)

Android開発 1人 VS iOS開発 2人

人数がまず少ないが、開発人数が違った。

だいたい同じ内容のものを作るのに、人的戦力の差は二倍(重要)。
ただ経験年数としては上だったので、真っ向勝負でやろうとしていたが、勝てた試しがなかった。。。

iOSのほうはどんどん機能が増えていく。
Androidについては、最低限の機能だけを作っていく。

二倍の時間を働きたかったが、そんなわけにもいかず。

「わたしはできない子です。。。とほほ」

早いは正義。時は金なり

iOSはアプリを公開するために、appleに申請を行う必要がある。
このため開発を早めに行う姿勢で取り組んでいた。

このために人数を多くしていたってのはある。(と思う。)
申請をしても、リジェクト(申請却下)の可能性があるからできるだけ高品質にする。

まぁ、力を入れるわけですよね。

対してAndroidはいつでも公開できる。
検索のインデックスに登録されるのが、2時間ぐらいなのかな?

そのためかある程度の余裕は持っていたりする。

登録すればいつでもアップデートできるAndroidと少しの修正でも公開まで時間のかかるiOSのアプリ。

優先度でみても勝てるわけもない。。。勝つ必要がなかったわけでw

選択の自由は保証されている。

あとは対応していた端末が多かったのは、きつかったとこなのかな。
iOSはある意味、少なかった。iPhoneという端末さえカバーできればだいたいOK!
対してAndroidは各社いろいろ出していた。

「試験終わったー!」「え、この端末で動かないよ」「こっちの会社の端末ではここでおちるよ」

SDKからいじるなよ!携帯端末各社!!

お客さんの端末ではテストするように心がけてたなぁー。いまはどうなんだろ。
対応するのは大変なのかな。。。それとも解消されたのかな。

そして現在

iOSAndroidを両方の開発に関われるようになり、いろいろ感じることはありますね。

iOSが圧倒的に開発のことを考えられていると感じる。
というか、ある程度簡単にできるようにしていると感じるようになった。
というかエラー系が楽!!

もうこれに限りますね。圧倒的にエラー系が考えられているから開発として楽に感じます。
あとはできること、できないことの制限がはっきりしているので無茶な要求は突っぱねる。
この最終手段が行使できるメリットは大きいです。

逆にAndroidはやっぱり開発者の実力がすごくでると感じる。

設計はもちろん、ライフサイクルに影響する部分で考慮することが多い。
かつ、ボタンも多いのでそのあたりの仕組みも理解して動作を検討する必要があるから、コード量が圧倒的に増える。。。

でもJavaだから読めるんだよなぁー。個人的には。
世の中的にもAndroidでしょうね。Javaが書ける人からすれば、Androidも余裕なんでしょうかね。

最後にいいたいこと。。。

コード量からすれば、圧倒的にサーバーです!!

こんなことですねw

スマホ開発からしたら、数倍のコードを余裕で必要としてるのですよ!
考えるより書く方が楽しいこともあるのです。。。

サーバー側のプログラムをなにか書きたいなぁー。と思うこの頃です。

タイトルにもありますが、本格的に触れた感じとしてiOSについては、コードが少なく書ける印象ですし、高機能でもAPIが用意されていることが多いので、優秀だと感じています。

swiftも触りたい。もう資料もいっぱい出てるし、挑戦してみます。