レギュラートーク(30分)

iOSの理想的なUIを考える

fuwamaki24 fuwamaki

色んなアプリを使っていて「メニューがなぜモーダル表示?ドロワー表示の方が良いのでは?」など、UIに疑問を覚えたことありませんか?
しかしUIを考える側になってみると、ユーザからUIの指摘を受けるなんてこと、よくあるのではないでしょうか。
私はWWDC18に参加してAppleのデザイナーに直接質問してきました。そこで得た知見をもとに「〇〇の場合に理想的なUIは△△ではないか」という話をしたいと思います。

レギュラートーク(15分)

iOSの理想的なUIを考える

fuwamaki24 fuwamaki

色んなアプリを使っていて「メニューがなぜモーダル表示?ドロワー表示の方が良いのでは?」など、UIに疑問を覚えたことありませんか?
しかしUIを考える側になってみると、ユーザからUIの指摘を受けるなんてこと、よくあるのではないでしょうか。
私はWWDC18に参加してAppleのデザイナーに直接質問してきました。そこで得た知見をもとに「〇〇の場合に理想的なUIは△△ではないか」という話をしたいと思います。

LT(5分)

新規事業を成功させる為にエンジニアとして大切にすべきこと

作ったものがリリースされないまま終わることもある新規事業。
リリースまでの道のりはまさに茨の道で、様々な課題が待ち構えている。
スケジュールの遅延、設計の見直し、作りたい機能の肥大化、ビジネス側との調整...。トラブルはつきもの。
場合によっては何かを犠牲にしなくてはいけないかもしれない。

限られた時間の中で、エンジニアとしてどう行動し、何を大切にすべきなのか。
新規事業立ち上げに携わった経験を基にお話します。

LT(5分)

4年放置していたアプリをリニューアルした話

fromkk Kazuya Ueoka

昔々、勉強がてら作っていた個人アプリを最近リニューアルしました。データは元々アプリ内のSQLiteに保存しており、それらを全てFirebaseに移して、コードは全てSwiftで書き直し、勉強の為にRxSwiftを導入しました。いざリリースしたら「元に戻して」とレビューや問い合わせを頂いてしまい今後どの様に対応していくのか。

LT(5分)

ツールとして利用するUIテスト

fromkk Kazuya Ueoka

Xcode 9よりXCTestにスクリーンショット撮影機能が実装されました。XCTestはテストコードから地域や言語を指定する事が可能で、xcodebuildで複数のシミュレーターでテストが実行可能なので、様々な画面サイズと条件のスクリーンを集める事が出来るのです。デザイン崩れ等はUIテストでも判別が難しい物の一つですが、半自動的にデザイン崩れを解消する事が可能になったので発表したいと思います。

LT(5分)

機械学習したいけどCreateMLじゃ物足りない?TuriCreateがあるよ

fromkk Kazuya Ueoka

macOS MojaveとXcode 10の組み合わせからPlaygroundで簡単にCoreMLのモデルが作成出来るようになりました。ただ、現在のところ画像分類、文章の分類、表形式データの推定のみです。特に機械学習で画像を取り扱う場合、物体認識機能や画像変換機能は魅力的な機能かと思います。機械学習の知識が全く無い人が、TuriCreateを試してみてこれらの機能が如何に簡単に実装出来るか紹介したいと思います。

レギュラートーク(15分)

RxSwfitを採用したプロジェクトにおけるテストパターン

takehilo_kaneko Kaneko Takehiro

RxSwiftを採用したプロジェクトでは、多くの関数をObservableを返す関数として実装します。Observableを返す関数は通常の関数と違い、ユニットテストに少し工夫が必要になります。
このトークでは、日々Observableな関数に対してユニットテストを書いている中で見えてきたテストのパターンについてご紹介します。

※関連ライブラリ
Quick、Nimble、RxTest、RxBlocking、Mockingjay

LT(5分)

業務で開発したアプリを改めてRxSwiftへの書き換えにチャレンジしてみた話

fumiyasac Fumiya Sakai

以前業務で新規機能を開発したアプリがあり、そのアプリを改めてRxSwiftに書き直すチャレンジに取り組んだ記録をお話できればと思います。そのアプリでは以前にReactive系のライブラリを入れて開発していた経緯があり、今はMVCパターンで構成しています。改めて書き換える中で「良かった点・悪かった点」や事前に考慮しておいた方が良さそうなことをお伝えできればと幸いです。

LT(5分)

NavigationBarってどうしたらいいの?

ec16091g_cap Atsushi

アプリで普通に使うNavigationBar。
NavigationBarがある画面から、ない画面に遷移したり、NavigationBarを消して、NavigationBarっぽいものを描画したり。。
どのように設計すればいいのかわからなくなってしまいがちです。
画面サンプルを元に、NavigationBarの作り方について議論します。iOS開発初心者向けです。

iOSDCルーキーズ LT(5分)

NavigationBarってどうしたらいいの?

ec16091g_cap Atsushi

アプリで普通に使うNavigationBar。
NavigationBarがある画面から、ない画面に遷移したり、NavigationBarを消して、NavigationBarっぽいものを描画したり。。
どのように設計すればいいのかわからなくなってしまいがちです。
画面サンプルを元に、NavigationBarの作り方について議論します。iOS開発初心者向けです。

iOSエンジニアに聞いて欲しいトーク(30分)

iOS エンジニアに知ってほしい AWS 入門

toricls toricls

いまどきの iOS エンジニアに知ってほしい AWS についての情報をまとめてお届けします!そもそもクラウドとは?といった基本的なところを押さえた上で、あなたの iOS アプリを一味違うものにするための各種サービスを紹介します。

LT(5分)

今こそ見直したいUITextContentTypeによる入力補完機能

m_orishi m_orishi

WWDC2018にて「Automatic Strong Passwords and Security Code AutoFill」というセッションが行われました。
かゆいところに手が届くその内容に喜んでいる方も多いのではないでしょうか。

このトークでは、UITextContentTypeによってどのような入力補完が出来るのかについての見直しと、
新たにiOS12から可能になる2つの種別に関して可能な限り紹介をします。

レギュラートーク(15分)

今こそ見直したいUITextContentTypeによる入力補完機能

m_orishi m_orishi

WWDC2018にて「Automatic Strong Passwords and Security Code AutoFill」というセッションが行われました。
かゆいところに手が届くその内容に喜んでいる方も多いのではないでしょうか。

このトークでは、UITextContentTypeによってどのような入力補完が出来るのかについての見直しと、
新たにiOS12から可能になる2つの種別に関して可能な限り紹介をします。

レギュラートーク(30分)

ドメインモデルをレイヤードアーキテクチャに落し込む為の実践的アプローチ

satoshin21 Satoshi Nagasaka

ドメイン駆動設計においてキモとなるのは、そのDDDの概念を元に如何にプロダクトの対象領域であるドメインをモデル化し
そしてそれをどのようにプログラム設計に落し込むかどうか、だと思います。
このセッションではまずDDDを知らない方の為にその概念を説明し、そして弊社のiOSアプリに対してどのように落とし込んでいるのかについてお話できればと思います。

レギュラートーク(30分)

Textureは部分的に導入はできますか?

muukii0803 muukii

巷で噂となっているPinterestによって開発されている、UIが猛烈に高速化されるTexture(AsyncDisplayKit)ですが、
非常に巨大なフレームワークであり、UIKitをラップする形でAPIが提供されています。
既存のアプリで「UIが重い!Textureを入れて速くしたい!」「でも途中から導入できるものなの?」という問題に対し、
実際のところ、導入は可能なのか?どのように?についてお話しします。

iOSエンジニアに聞いて欲しいトーク(30分)

快適なUIを持つアプリを作るために
できること

muukii0803 muukii

アプリは快適に使えるほど良いものですよね。
しかし、修正・改善を重ねていくごとに開発者の気づきにくいところで快適さ(品質)は落ちてしまうことがあります。
「クラッシュはしないけど、うまく動作していない😱」など。
このような問題に対して、実際にPairsで行なっている対策となる様々なアプローチを紹介します。

レギュラートーク(15分)

Pairs海外版iOSアプリで実践しているModelレイヤーの設計について

muukii0803 muukii

アプリ内のコードにおいて、サーバー連携とUIレイヤーを支えるModelレイヤーについて話します。安定したUIを実現するためにMVVMやFluxなどが存在していますが、それらはバックエンドとなるModelレイヤーについては詳しくは言及していません。ですが、大きなアプリケーションではModelレイヤーの設計と管理が要になります。今回はPairs 海外版iOSアプリで実際に使用している設計をアイデアのひとつとして皆さんに共有します。

レギュラートーク(30分)

金属っぽい名前のやつから鳥っぽい名前のやつへの移行

watura watura

ReactNative流行ってますね

ところで,覚えてますか?
金属っぽい名前のクロスプラットフォームアプリがJSで作れるぜ!って言っていた開発環境

以前Zaimアプリはそれで書かれていました.そして,昨年3月Swiftに完全移行しました
なぜ,移行を決心したのか.いかに苦しみ苦しみ抜いてリリースしたのか.果たしてZaimのエンジニアはSwiftにして幸せになれたのか
移行や改善をしていく上で得られた知見を発表します

レギュラートーク(15分)

業務と両立できる!開発環境の改善!

hicka04 佐藤 光

普段の業務の中ではどうしてもリリース優先になってしまい、
リファクタリング等の改善活動になかなか時間を割けていない方も多いのではないでしょうか?
弊社では毎月2日間、継続的に開発できるよう開発環境の改善を行っています。
おかげで今ではテストコードを用いたテストができるようになりました。
今回はその中で効果のあった改善施策と、その改善活動をチーム全体で推進するためのポイントについてご紹介します。

1
レギュラートーク(30分)

Swift製画像ライブラリを作ったらスターが200以上ついたので、その魅力を語り倒す

koher Yuta Koshizawa

Swiftが発表されてその言語仕様を知ったとき、これを使えば理想の画像ライブラリを作れると思いました。その理想を詰め込んで作ったのがEasyImagyです。画像周りはややこしいことが多いですが、EasyImagyを使えば驚くほど簡単に、Swiftyに画像を編集することができます。この1年でGitHubのスターも200を超えたので、初歩的な使い方から作者だけが知る便利な新機能まで、30分かけてEasyImagyの魅力を語り倒します。