VIPERというアーキテクチャに魅力を感じ、社内の合意を得て新規アプリへの導入に至ったその一連の経緯と、実際にVIPERで1本アプリを作って感じたその魅力や実装上の反省点などについて体験談を交えながらお話しします。
2017年Instagram, TwitterなどのモバイルサイトがPWAを採用し話題になりましたね!またiOS11.3からPWAに対する一部の機能が追加で利用できるようになり、Webの技術を用いネイティブと遜色ないUI/UXに近づいて来ているのでは無いかと思います。
本トークでは、ネイティブエンジニアから見たPWAの脅威とは、どのような場面で最適な選択肢となるのかを発表します。
DBサーバーと通信するアプリは多いと思います。
開発やデバッグをする時にサーバーとの通信を行う時にその通信内容を確認、またはレスポンスの内容を改竄したり、
開発環境のホストを動的に変えたい場合なんてのもあると思います。Xcode・Swiftの操作をせずにこれらのことを実現できるソフトウェアである、mitmproxyの使い方を簡単に紹介できたらいいなと思います
MeasurementとUnitは、iOS10からFoundationフレームワークに追加された、数量と単位を扱う仕組みです。
これらを使うことで、国や地域ごとに単位の表示を気にすることなくアプリを開発できるようになります。
特に、世界展開してるアプリやヘルスケア・ワークアウト系のアプリと相性が良いです。
MeasurementとUnitの概要と使い方、そしてカスタマイズ方法までの全てを紹介します。
I will describe common techniques about writing unit test in swift for the UI.
Also how to using snapshot testing to write easy unit tests for the UI, and the logic behind it.
AppCodeとはAndroidだとAndroid Studioを開発で使うと思いますが、そちらのベースになったIntelliJなどの派生のプロダクトで、
iOS開発に特化したものです。
xibやstoryboardファイルなどはXcodeでしか開けないのですが、便利な機能が盛りだくさんで開発は捗ります。
今回はiOS開発をAppCodeから始めて1年以上経つ私がその便利機能やハマりどころを紹介します。
同じミッションのもと、プロダクトづくりに励んでいるのに、前提知識の不一致や仕組みのせいでどちらも歯がゆい思いをしてしまったことはありませんか?
英単語アプリmikan・ビットコインウォレットYenomの開発で出てきた課題や、対応方法を具体例に明日から使えるハウツーをご紹介します。
iOSアプリのUIテストをどのように導入したらいいのか、どのように運用にのせるのか悩んだことはありませんか。
本トークでは、仕様も知らない実際のアプリに対して、iOSアプリのUIテストを1から実装していく流れを説明します。
関数型プログラミングと聞くと、難しそう、学ぶことによってどのようなメリットがあるのか中々想像が出来ないかと思います。本セッションでは関数型プログラミングの定義はもちろん、Swiftの関数型プログラミングを支える技術の紹介、またそれらを日々のiOS開発においてどのような活かしていくのかをパターンと実例を踏まえ紹介していきます!
深層学習を用いてサーバー側で学習後、エッジ側で推論を行うといった形でAIのエッジ上での利用が今後加速していくと予想される。しかし、膨大な計算量をどう処理するかが問題となる。
本講演では、領域分割や画像生成などの最先端AIアルゴリズムのiOS上における実装方法を紹介し、リアルタイムに動作可能であることを実演を通して実証する。また、AIとARとの組合せによる新しい未来の形について紹介する。
数年以内に、皆さんのうちの何割かは、WebやクラウドのAPIを叩くのではなく、ブロックチェーンを叩くアプリケーションを開発するようになるでしょう。そして皆さんのうちほぼ全員が、そのようなアプリケーションを利用するようになるでしょう。
分散型アプリケーションクライアントとしてのiOSアプリの未来をご紹介します。
社内で使うためSwiftでSDKを一から実装しました。
そこにはいくつもの関門と調査と発見がありました。
SDKを作るにはどうするのか、考慮すべき点とは、苦労した点とは、解決した課題は。
聞き終えたらSDKを作り出したくなるような、一つの物語を共有したいと思います。
SourceryはテンプレートからSwiftのコードを生成するライブラリです。
Wantedly Visitでは、Sourceryを使ってコード生成を行うことで、ボイラープレートを減らし生産性を大きく向上させることに繋がりました。
このトークではWantedly Visitのアプリで導入した経緯と実装例、Sourceryの基本と応用についてご紹介します。
Wantedly Visitのプロフィール画面には多くの項目があり、それぞれに編集画面があります。
Wantedly Visitではプロフィールの項目1つ1つに編集画面を実装するのではなく、ジェネリクスを使って汎用的に構築することで実装コストを下げることができました。
このトークでは、Wantedly Visitのプロフィール画面におけるジェネリクスの利用例をご紹介します。
オートフォーカスや手振れ補正、ホワイトバランス、後からフォーカスを合わせるなど一眼レフや高機能カメラにありがちな機能をiOSアプリで真似して実装してみます。
設計パターンを明確にすることには多くのメリットがありますが、プロダクトに対してどの設計パターンが最適なのかを決定付ける絶対的な条件はありません。それ故に、経験の浅い初学者からすると、どの設計パターンを利用してよいのか迷うことが常だと思います。
そこで、私がプロダクトの再設計時に整理した、設計パターンに迷ったらこういう点を見直してみようという意見を、個人的な独断と偏見でお伝えします。
Swiftにおけるパッケージ管理ツールとして、Swift Package Manager(以下、SPM)が存在します。
しかし、SPMはCLI(Command Line Interface)ツールの開発にも利用することができます。
本トークではライブコーディングを交えながら、SPMでCLIツール開発を始める手順について説明します。
日頃のちょっとした手作業を自動化するツールをSwiftで作ってみるのも面白いのではないでしょうか?
iOS界隈にもリアクティブプログラミングが浸透してきてはや数年。多くの人がRxSwiftなどを当たり前のように使っている時代になりました。ですが、まだまだ「なんとなく書いているけど本当のところあまりよくわかっていない」というな声をよく聞くことも事実です。本セッションではリアクティブプログラミングについて1から確認していき、自信を持ってリアクティブプログラミングを使える状態を目指します。
開発してて、Xcodeにはないちょっとした機能を使いたくなることはありませんか?
他のアプリを起動して、作業するのも面倒ですよねー😞
そんなときは、Xcode Source Editor Extension を使うのです。
このトークでは、 Xcode Source Editor Extension を使って機能開発した実例を発表します。
FeatureFlagsの機能を使うための社内SDKをSwiftで実装しました。そこにはいくつもの関門と調査と発見がありました。
SDKを作るにはどうするのか、考慮すべき点とは、苦労した点とは、解決した課題は。
完成に至るまでの物語と知見を是非聞いてください。