Takahiro Octopress Blog

-1から始める情弱プログラミング

レバテック キャリアにて本ブログが紹介されました!

はじめに

先日、レバレジーズ株式会社 様より『レバテックキャリア』の『Swift』に関する記事にて、本ブログを紹介したいとご連絡頂きました。
ブログを始めて4年半、こういったお誘いを頂くことは初めてで、正直全く想定していませんでした。

今回は、紹介記事を逆に紹介すると共に、当時のことを深掘りしながら振り返ってみたいと思います。

紹介記事について

今回掲載された紹介記事はプログラミング学習の参考に!パワフルかつ直感的な言語”Swift”に関する記事特集です。
この記事のテーマは『これからSwiftを用いたiOSアプリ開発を志す人達へのお役立ち情報を提供すること』と筆者は捉えました。
その中で本ブログは 『(5) Swiftを使ってアプリを作ろう!!』 で紹介されています。

記事の内容としては、Swiftを使って、iBeaconのCentralアプリを作ろう!!で、
当時、筆者がObjective-CをメインにiOSアプリを開発していた頃にSwiftを勉強しようと思い立った時のものです。

当時の状況

あの頃はSwiftも登場したばかりで、iOSアプリ開発の現場ではObjective-Cが主流でした。
( 会社の業務ではSwiftを扱うことはありませんでした。 )
と同時に、筆者は正直なところ、

  • これからはSwiftがiOSアプリのメイン言語として受け入れられていくかもしれない…
  • Objective-Cと全然違う言語っぽいので、パット見、書き方がよくわからない…
  • これまでの知識を全て捨てて0からiOSエンジニアを目指さなくてはならないのだろうか…

と戦々恐々としていました。

そんな気持ちがあるからこそ、早めにキャッチアップした方が良いだろうということでSwiftの勉強を始めたのだと思います。
勉強の題材としては、当時、業務で触れる機会の多かったiBeaconを選択しました。
勉強の目的を達成するための最良な選択は、現場に近い題材を扱うことだと思ったためです。

Swift思考へシフトしてわかったこと

続いて、Objective-CからSwiftに脳をシフトして苦労したこと、良かったことなどについて振り返りたいと思います。

苦労したこと

筆者がSwiftの勉強を開始して特に苦労した点は以下でした。

  • Optional型Optional型のアンラップ の理解
  • 様々な文法の省略記法 (クロージャなど) の理解

今思えば、その魅力には絶賛せざるを得ないのですが、なにせ当初はObjective-C脳だったので、苦労しました。
打開策はただひたすら、その魅力や意味を理解するためにサンプルを書き続けたことだと思います。

良かったこと

Swiftを勉強して特に良かったと感じることは以下でしょうか。

  • Java8やKotlinでのOptionalの理解が早い
  • 様々な現場でSwiftの書けるiOSエンジニアが求められているが、そこにも入っていける

SpringBootでのサーバサイド開発でJava8を利用することがあったり、
アプリ開発時は往々にしてiOSとAndroidを並行して進めることが多いので、Androidでどんな感じに書いているのか見に行くのが楽だったりしました。

もちろんiOS開発単体での素晴らしさはあると思いますが、派生して行けるのが強みなのかなと思ったりします。

現在のiOSアプリ開発の現場

今、私が所属している現場ではバリバリSwiftを書いています。
Objective-Cも当然ありますが、私の業務で言うと、ソースコードをたまに見るくらいですかね。

因みに、Swiftを利用していると一言で言っても、以下のように状況が分かれている場合もあるようです。

  • Swift2.xを継続利用している
  • Swift3.xを継続利用している
  • Swift4を継続利用している
  • Swift4.1に対応できている

この辺りもObjective-C時代には気にしなくても良かったところですね。
特にSwift2.xからSwift3.xへの移行はコストもかかるため、どっぷりSwift化してしまったプロダクトは困っていることでしょう…
圧倒的にSwift3およびSwift4以降の方がコーディングが楽なので、Swift2.xは辛そう…

まとめ

さて、今回は思わぬ本ブログの紹介依頼を起点に、当時を振り返ってみました。
1つ改めて思い出したことは、時代の流れに乗って、常に新しいことを勉強することは大切だということです。
忙しくてなかなかブログを更新できないこともありましたが、やっぱり『継続は力なり』ですね。

と言ったところで本日はここまで。

Comments