MVCやMVVMといったViewとModelをいい感じに設計する方法が流行っています
モバイルアプリ開発では,VとMの関係性と同じくらいかそれ以上に,VとVの関係性,画面遷移の管理が大切です.何も考えずに開発するとVCやVMなどに画面遷移のコードを書いてしまい,コードは肥大化し,メンテナンス性が低下していきます.そこでCoordinatorという設計パターンを導入し,画面遷移をいい感じに管理していく手法について説明します
僕らの組織では複数のプロジェクトチームがひとつのアプリに機能を追加・修正するという体制で開発を行っており、リリース日程や実装機能の調整など、コミュニケーションにどうしても時間がかかっていました。この問題を解決するためにfastlaneを使ったタスクの自動化だけでなく、機械的なペースに合わせるリリースフローを実現しようとしているので紹介します。(発表する頃にはうまくいってるはず…)
僕らの組織では複数のプロジェクトチームがひとつのアプリに機能を追加・修正するという体制で開発を行っており、リリース日程や実装機能の調整など、コミュニケーションにどうしても時間がかかっていました。この問題を解決するためにfastlaneを使ったタスクの自動化だけでなく、機械的なペースに合わせるリリースフローを実現しようとしているので紹介します。(発表する頃にはうまくいってるはず…)
アプリの開発中にビルドしたアプリをCrashlyticsBetaやDeployGateなどにアップロードし、手元で動作確認できるようにしているチームは多いと思います。僕たちもそういったサービスを使ってきましたが、様々な課題が出てきたため自分たちの使い方にあったシステムを新しく作りました。どういった課題がありどういうツールを用意したのか、そしてどうリリースフローが改善されたか話します。
アプリの開発中にビルドしたアプリをCrashlyticsBetaやDeployGateなどにアップロードし、手元で動作確認できるようにしているチームは多いと思います。僕たちもそういったサービスを使ってきましたが、様々な課題が出てきたため自分たちの使い方にあったシステムを新しく作りました。どういった課題がありどういうツールを用意したのか、そしてどうリリースフローが改善されたか話します。
クックパッドには「技術部モバイル基盤グループ」というモバイルアプリの開発環境を整えることを専門に行う部署があります。ここでは開発効率向上のためのライブラリやツール、仕組みを作ったり、開発環境の整備といった様々な業務を行っています。直接アプリを作るわけではない珍しいチームだと思いますが普段どんな事を考えて仕事をしているのか、こういうアプリ開発への関わり方もあるんだよ、という話をしたいと思います。
毎日のように新たなアプリが生み出されている昨今。その中からユーザーに選んでもらい、喜んでもらえるのは至難の技です。
そこで、どのようにしたらAppStoreを上手に活用できるのかについて、Appleの開発者の知見をもとに紐解いていきます。
ここ最近の機械学習の波にのってiOS12にもCreate MLというMachine Learning(ML)のフレームワークが使えるようになりました。
また、みなさんおなじみのFirebaseでもML kitというモバイル向けのML サービスがβ版として提供されています。
本トークでは機械学習に興味があるエンジニアを対象に、この2つの機能の特徴を比較していきます
iOS7より登場した、テキストの音声読み上げAPIであるAVSpeechSynthesizer。スマートスピーカの登場をはじめとして「耳で情報を得る」機会は今後も増えていくのではないでしょうか。
iOS7登場時にリリース・運用してきたTwitter読み上げアプリの経験を通して、AVSpeechSynthesizerを用いたアプリの開発のポイントを発表できればと思います。
ついに発表されたApp Store Connect API。これを使えば何ができるのでしょうか?
公開されている情報からいくつかの業務改善のアイディアをお話しします。
また、実際にApp Store Connect APIクライアントを実装してみて、Swiftで簡単なタスクを記述する方法をお伝えします。
このトークの内容はトーク時にApp Store Connect APIが公開されているかによって変わります。
アプリを本格的にグロースしていこうとしたときに「最初に仕込んでおくべきだった...!!」みたいなものが結構あったりすると思います。わかりやすい例をあげると「強制アップデート」なんかがそれに当たると思います。こういった「最初から仕込んでおくべきだった」ものを、自身のこれまでの開発経験からピックアップして整理して発表できればと思います。
プロジェクトが大規模化していくと、さまざまな業務を自動化したくなってきます。同時にロジックが増え、特定の人しかメンテできなくなったFastfileにお悩みの方も多いでしょう。
このトークでは、実際の活用事例を交えながら、大規模プロジェクトにおける効果的なFastfileの書き方、プロジェクトの雑務自動化についてをお話しします。
そのほか、fastlaneコミッターによる明日から使える実践的なtipsも数多くお伝えします。
プロジェクトが大規模化していくと、さまざまな業務を自動化したくなってきます。同時にロジックが増え、特定の人しかメンテできなくなったFastfileにお悩みの方も多いでしょう。
このトークでは、実際の活用事例を交えながら、大規模プロジェクトにおける効果的なFastfileの書き方、プロジェクトの雑務自動化についてをお話しします。
そのほか、fastlaneコミッターによる明日から使える実践的なtipsも数多くお伝えします。
Swift、特にRxSwiftでの状態管理、コンポーネントへの情報の伝播に徐々に慣れた頃、React Nativeでアプリを作った僕は、宣言的に状態管理を行わず、コンポーネントが更新される様子を見て、状態管理への捉え方を変えざるを得ませんでした。
クロスプラットフォームの特性ではなく、あくまでiOS開発の側面で、React Nativeはマインドセットをどう変えていくのかというテーマで発表したいと思います。
2017年9月、PM1人とiOS/Android Engineer 2人の、計3人の小さな内製アプリチームが社内で立ち上がりました。
アプリ開発に関するノウハウがまったく無い中、日々試行錯誤し、時には社内からの圧力や厳しい意見に揉まれながら、2018年6月にリリースまでたどり着くことができました!
LTではその軌跡と我々のPassionをお伝えできればと思います。
iOSでは曲を再生する方法としてAVAudioPlayerやMediaPlayerなどがあります。しかし、それぞれのplayerごとに再生キューやライフサイクルを持っており、player間を跨いで連続再生をするのは直感的には実装できません。今回は上記2つ加えてyoutube iframe player・SpotifyPlayerのplayer間を跨いで連続再生できるmusic playerをprotocolを利用して実装した話をします。
iOSでは曲を再生する方法としてAVAudioPlayerやMediaPlayerなどがあります。しかし、それぞれのplayerごとに再生キューやライフサイクルを持っており、player間を跨いで連続再生をするのは直感的には実装できません。今回は上記2つ加えてyoutube iframe player・SpotifyPlayerのplayer間を跨いで連続再生できるmusic playerをprotocolを利用して実装した話をします。
DI機運が高まる昨今、AndroidではDagger2を採用する企業は多いかと思いますが、iOS開発においてみなさんはどのように依存性を注入していますか?
StoryBoardを採用するチームでは、VC初期化時に変数を渡せずに苦労して妥協することも多いと思います。
そこで今回のトークでは、DIライブラリ「Swinject」によるいい感じなDIのやり方をご紹介します。
iOS11から、Visionという画像認識フレームワークが利用可能になりました。その中の機能を使えば、iPhoneのカメラで顔を写すことで、リアルタイムで顔の各パーツの動きを取得することができます。それを使えば、ウインクするときゃるんと音が鳴ったり、目と口を見開いた時に爆発音が鳴ったり、そんなアニメの世界みたいなことが簡単に実現できます。そんなお話をしようと思います!