こんにちは、先日レーシック手術を受けて視界が大変良好な @imaizume です。
間違いなく人生変わるのでおすすめです(笑)
さて3月7日に、新オフィスで初のエンジニア向けイベントとなるROPPONGI.swift #7を開催しました!!
ROPPONGI.swift は主に六本木周辺にある企業さんで行われる、Swiftの地域勉強会&コミュニティです。
Diverseのオフィスは溜池山王にあるため六本木からは少し離れていたのですが、主催者の方たちに快諾いただけたため無事開催の運びとなりました。
また同月21日に開催されたtry! Swift Tokyo 2019のプレイベントとしても登録していたただき、同イベントに参加・登壇される方とのトークも楽しむことができました。
ドリンクを片手に和やかな雰囲気で始まった本イベント。
最初のトークは @alligator_tama さんの「XCUITestにおける状態制御について考える」。
XCUITestでの状態制御を、起動時だけでなくテスト中に動的に与える仕組みをDarwin notificationsを使って実装されたお話でした。
Watch開発なども経験がない自分にとって、Darwin Notification自体の仕様はもちろんアプリ間での通知の送信ができるというのも初耳だったので、大変興味深かったです。
次に、私 @imaizume が「シングルトンではじめる状態管理と依存注入」というタイトルで発表させていただきました。
アプリの設計がしっかりとしてない状況で、内部状態管理が煩雑になった場合に、一時的にシングルトンパターンで状態を集約するというテクニックを紹介しました。
もちろん最終的にはFluxなどの設計レベルで解決することが望ましいですが、それができないケースではまず管理を一元化し依存注入できるようにすることである程度シンプルな形に実装できるのではないかと思います。
続いて3番目の発表は @ushisantoasobu さんの「24時間でMacアプリを作ってスベってきた話」でした。
Japan Hack Day 2018 に参加した際に開発された、macのカメラを用いた居眠り検知アプリに関するお話で、ライブデモでアプリの動く様子も見せていただきました。
Vision FrameworkとFirebaseを使って、iOSとは大きく異なる作法やFirebase側APIの対応状況などと格闘した話は、普段iOSメインで開発している方にとってなかなか経験することのない貴重なお話でした。
4番目の発表は @hatakenokakashi さんの「Introduction Fluid Interface」でした。
2018年のWWDCにてAppleが提唱した "Fluid Interface" について、ハーフモーダルUIを例に大変分かりやすく解説していただきました。
@hatakenokakashi さんはPEAKSで販売中の iOS 12 Programming での執筆に加え、4月の技術書典でもFluid Interfaceに関する書籍を出されるとのことですので、ぜひ皆さんもチェックしてみてください!
そして最後の発表は、try! Swift Tokyo 2019でも登壇された @izm256 さんによる「レイアウト実装方法の比較ポイント」でした。
レイアウトをStoryboardでやるか、Xibでやるか、それともコードでやるかについては、iOSエンジニアにとっての永遠の問題の一つであるかと思います。
初期化の仕方や再利用性、チーム開発のしやすさといった様々な観点で実装方法を比較されていて大変分かりやすかったです、さらにプロダクションでは現在全ての方法を混在させているという点も驚きでした。
設計やテスト、UI、Macアプリなどトークのテーマも様々で、どの発表も大変有意義で参考になるものばかりでした。
発表後は懇親会に加えて、Diverseの新オフィスを見学する社内ツアーも開催いたしましたが、参加者の方からはお昼寝スペースやOKRスペース、窓から見える景色といった点に大変好評をいただくことができました!!
@imaizume さんと新しいDiverseさんのオフィス!オフィスツアーも良かった。働きやすそう
— SatoTakeshi 【4/14技術書典6 け01 Fluid Interface本】 (@hatakenokakashi) March 7, 2019
#roppongiswift pic.twitter.com/7jhqNbP6T5
今後もDiverseでは様々なイベントを開催していくほか、オフィスツアーも継続して行っていきたいと思いますので、ぜひ公式TwitterやFacebookのフォローをよろしくお願いします!
直近でオフィスツアーが行われるイベントとして、4月24日にMatching Dev Meetup #3のDiverseでの開催が決定しています!
matching-dev-group.connpass.com
Matching Dev Meetupは主にマッチング業界のエンジニア・デザイナーによる勉強会&交流イベントで、今回はデザイナーによる発表がメインとなります。
もちろんマッチング以外の業界の方も大歓迎ですし、普段聞けないプロダク制作の裏話なども聞けるチャンスですのでぜひ上記のconnpassページからお申し込みください!!
またイベント時以外でも @imaizume をはじめDiverse社員にお声がけいただければご案内いたしますので、みなさんぜひぜひきれいになったDiverseオフィスに遊びに来てくださいね!