【イベントレポート】【LT発表】Swift/Kotlin合同勉強会

どうもukaznilです(ドメイン変更したばっかりで,この名乗り慣れませんね)

先日のエントリーでお知らせした通り,とある勉強会でLT発表してきました!
ちょっと日が遅くなってしまいましたが,私の発表も含めて,どんな発表があったのかを振り返ってみたいと思います(資料がまだアップされてないものは後日追記します)。

イベント概要

参加してきたのは2017/8/9(水)に開催された,このイベントです。

connpass

iOSのメイン開発言語「Swift」と、Android開発のニュースタンダード「Kotlin」の合同勉強会を開催します!…

最近はヒカリエで開催のイベント参加が多かったのですが,今回の勉強会は「オイシックスドット大地株式会社」さんに会場をご提供いただいての開催です。オイシックスドット大地さんは東大発のベンチャーで,有機野菜などをはじめとして食の「おいしい」を提供していく挑戦的な会社です。
場所は五反田。もうじき大崎にお引っ越しをするそうです。
オイシックス・ラ・大地株式会社コーポレートサイト

有機や特別栽培野菜など安全性に配慮した食品宅配のオイシックス・ラ・大地株式会社…

さて,それでは勉強会を俯瞰していきましょう!

発表詳細

この勉強会の面白いところは,「Swiftに入門してみたKotlinエンジニア枠」と「Kotlinに入門してみたSwifitエンジニア枠」にわけて登壇枠が用意されていたことです(聴衆枠も)。
以下で【Swift → Kotlin】は前者,【Kotlin → Swift】は後者を表します。

【Swift → Kotlin】はじめてのKotlin体験 by Shuhei Hayamiさん

<資料が公開され次第,追加します>

【Kotlin → Swift】Swiftは”””    ”””のか? by


はい,私です笑。
実は今回初めてのLT発表だったんですが,あんまり緊張せずに話せました。

詳しくは上の資料を見ていただければいいんですが(身も蓋もない笑),以下のようなことを話しました。

  • Kotlinは”””かわいい”””
    • Javaと比べてすごく記述量が減って幸せ
    • 「空気を読んでくれる」感がすごい
  • あちこちで「似てる」と言われるSwift,実際ホントにKotlinと似てるのか?
  • (Javaと比べて)Kotlinの便利な機能はSwiftでも似たようなことができるのか?(コードあり)
    • 制御構文 – if
    • 制御構文 – when
    • コンストラクタ
    • 文字列展開
    • null safety
    • smart cast
    • data class
    • 拡張関数
    • スコープ関数
  • (おまけ)KotlinよりもSwiftの方がスゴいと思うところ

もし気になる部分があれば,是非ご覧ください。10分くらいで話した内容なので,スライドだけなら5分くらいで見られますー。

【Swift → Kotlin】KotlinとSwiftによる有理数クラス by koishiさん


言語を練習する「お題」として,「分母」と「分子」を定義した有理数クラスを実装して各メソッドを実装してみた,という実践的LT。

扱っている内容は,Kotlinでいうと,

  • コンストラクタ
  • イニシャライザ(init句)
  • require句(確かにKotlin関係のLTでrequireNonNull()って触れられること少ないですよね。実際はすごく使うメソッドなんですけど)
  • 演算子オーバーロード
  • 拡張関数

などなど。一見の価値ありです!

【Kotlin → Swift】KotlinエンジニアがSwiftに入門したらちょっと戸惑った話 by AtsukoFukuiさん


(なんと私とKeynoteのテーマが被ってしまいました……ごめんなさいーー><)

Kotlinの使用歴などはなんとなく私と似ていそうだなという感じ。当然私は趣味レベルで,AtsukoFukuiさんはお仕事での経験なので,その深さは桁違いでしょうけども!

LTのテーマは「Swfitは概ねKotlinと同じノリでいける」と「KotlinにあってSwiftにないもの」。
特に後半の話が私にとっては目から鱗で,「Swiftにはネームスペースがない」と聞いて耳を疑いました笑。ちょっとiOSの勉強をしたときにコーディングが何故か気持ち悪かったのは,きっとこれが原因でしょう。なるほどーと唸りましたね。

あとは最後のページ。

Kotlinはかわいい

よくわかってらっしゃる!!!

休憩

会場をお貸しいただいているオイシックスドット大地さんから差し入れが!!

普段の野菜不足を差し引いたとしてもめっっっっちゃおいしい。

【Swift → Kotlin】○○ by akatsuki174さん

<資料が公開され次第,追加します>

【Kotlin → Swift】○○ by tsuyoyoさん

<資料が公開され次第,追加します>

【Swift → Kotlin】Blending Kotlin’s culture into Swift by ezuraさん


すごくデザインに気を配ってあるスライドでお洒落です。
扱っている内容はものすごく高度で,Kotlinで便利なsealed classをSwiftで実現するにはどうするか? という話です。
正直私もSwiftの記法がわからず理解し切れていない気がしますが,少なくともKotlinのsealed classは便利ですよね。

Swiftでプロダクト開発をする方にとってはすごく実践的かつ有用な技だと思いますー。

【Kotlin → Swift】私とKotlinとSwift by Hiroyuki Setoさん


Swfit,Kotlinという「言語」の枠に囚われることなく,iOS開発とAndroid開発の全体についても触れたLTです。例えば「Swiftすきじゃないところ」が「Xcode」とか。ホントにAndroid Studioは優秀ですからね……。

懇親会でSwift勢とも話したんですが,皆さん口を揃えて「Xcodeヤダ」と仰るので,私も課金してでもAppCode買っちゃおうかなぁと思ってきています笑。

JetBrains

An intelligent IDE for iOS/macOS development focused on code…

まとめ

今回の勉強会の開始の挨拶で,主催者の方からのメッセージに「視点の違いを楽しむ」というのがありました。実際に他の言語をメインとする方と話をする機会って意外と少ないので,すごく参考になった部分もありましたし,別の言語に取り組むモチベーションにもなりました。

私個人的に1番収穫だったのが,「Xcodeは使いづらい」という声が多く聞かれたことです笑。「iOS開発者たるものXcodeの意図を汲めるくらいまでにならないといけないのか」と戦々恐々としていた部分もあったので,開発者のナマの声が聴けたのは大きな安心材料になりました(まぁそれで開発しないままだと何の意味もないんですけどね……)。

最後に,LT発表について。
上にも書いたとおり,今回が私にとって初めてのLTでした。準備には結構時間もかかりましたし,内容を決めるまではあーでもないこーでもないと唸ることも多かったのですが,勇気を出してやってみたなりの成果は得られたように思います。
「LTドリブン」(LT申し込んでから発表内容自体を作ること)という言葉がありますが,それも言い得て妙だな,と。
知り合いも増えるし,某社さん的に言うと圧倒的当事者意識が高まるのを感じます。

告知

実は,来週もまたKotlin関係の勉強会でLTします。こちらは今回よりも大量の聴衆を前に発表しなきゃなので,より準備も抜かりなくしないといけません。

connpass

夏と言えばLT大会! ということで、まったりビール片手にLTしたり聞いたりしましょう! (ソフトドリンクのご用意もありま…

ちなみに,発表しようと思っている内容自体はおおよそフィックスしてますがスライドは1mmも作っていません。でも夏休みあるもんねー。きっと何とかなるもんねー。

4日間だけだけど。