Swift3奮闘記

iOS

皆さま、Swift3への移行は済んでるでしょうか? ええ、済んでますよね。当たり前ですよね。

「今更、Swift2からSwift3への移行なんてあり得ない。Swift4が出てて、今年はSwift5が出るのに、今更Swift2から3への移行なんて遅すぎる。プークスクス!」

という世の中のiOS開発者やSwift使いの笑い声が頭の中に響きます(幻聴)。

ええ、分かりますとも。自分もそう思っているし、正直いまでは「なぜに今更Swift3対応をしてるのか?」と疑問に思っているくらいです。

ですが、いま自分が携わっている仕事がSwift2ー>Swift3というお仕事で、まだ経験年数1年ほどの新米プログラマでかつSwiftの経験半年ほどのベビィでは、中々にハードな案件で四苦八苦してるのが現状です。

なのでいまさら需要は全然ないと思いますが、Swift2からSwift3の時に味わった苦しみや絶望、苦悩などを書いてければと思っています(現在進行系で味わっている)。

ちなみに、Swift3への変更は「破壊的変更」と呼ばれるほどSwift2からの変更があったそうで、世の中のSwift使い、iOS開発者は当時だいぶ苦悩や絶望を感じながら対応していたみたいで、参考記事からは「Swift3への対応は諦めて、Swift2.3への対応で済ませた」という個人開発者もいたようで(後々、Swift3に対応したが時間があまりにもかかるらしい)。

そんなことも知らない自分は、Swift3への対応を軽く考えていたのと、「廃止されたライブラリーを変えればそんな大変じゃない」と言っていた、凄腕のエンジニアにも言われたので、本当に、ほんとーうに甘く考えていました。

いま思い返せば、凄腕のエンジニアの方が「そう大変じゃない」と言ってるだけであって、自分の立場や腕を考えていなかった。自分は経験の浅いプログラマであり、ロクな研修も受けてないプログラマである。

凄腕のエンジニアの方が言ってるのと、自分が考えているのでは驚くほどのギャップがあり、現にギャップが大きすぎてマジで悩んでる日々を送っている。

・Xcode7、8、9のそれぞれの違い。そもそもSwift3へのバージョンアップ対応自体が初めてで、手探り状態でやってること。
・コードが驚くほど読めないし書けない。ライブラリのコードは自分にはハードルが高すぎて複雑で読みきれない。
・ほんの手違いでフレームワークを外してしまい、循環参照? を起こしてしまいビックリするほど慌てた。
・同時にgitも使いこなせてないので、エラーが出ると死ぬほどテンパる。
・「コンバートってなに? 勝手にコードを変換してくれる!? やだなにそれスゴイ!!」と思ってたら、安定してない上に余計な部分まで改悪してくれる。
・そもそも参考記事がいまから見ると古いのと、そもそもプロジェクトの規模の違いで「簡単だー」と言う意見もあれば、「マジで死ぬほどツライ……」という声もあるし、現状自分が知りたい情報が載ってない。
・参考記事は、テックブログを書いている聞けば「あー、あの会社のエンジニアさん!!」とわかる人たちが対応してるので、自分みたいな駆け出しプログラマが知りたい情報がないパターンが多い。
・何でXcode7で立ち上げたアプリをその後、Xcode8で開くとアプリが落ちるんねん!!
・そもそも文法が変わりすぎてての書き換えが大変。
・なんなら、Objective-Cも読めん!!

……等など、上げればキリがないのですが、とりあえず自分が受けた苦悩はザッとこんな感じです。

まだ見ぬ自分と同じ悩みや苦しみを抱えている人(ほぼいないと思うが)の参考になればと思いますので、宜しくお願いします。

*余談ですが、Swift3からSwift4への対応は驚くほど少ないそうで。それは救いだ。


詳解 Swift 第4版

タイトルとURLをコピーしました