SlideShare a Scribd company logo
1 of 48
Copyright © DeNA Co.,Ltd. All Rights Reserved.
DebugHeadを使った
iOSアプリ開発手法
February 10, 2017
平野 朋也
モバイルソーシャルインキュベーション事業部
DeNA Co., Ltd.
Copyright © DeNA Co.,Ltd. All Rights Reserved.
自己紹介
2
平野朋也(id: noppefoxwolf)
2016年 新卒入社
モバイルソーシャルインキュベーション事業部配属
2016年 画面録画Androidアプリ Mirracleの開発・運営
2016年〜 iOS向けライブ配信アプリの開発・運営
〜2016年 モバイルソーシャルインキュベーション事業部
インターンとしてiOSアプリの開発
Copyright © DeNA Co.,Ltd. All Rights Reserved.
3
オープンソースライブラリのDebugHeadの紹介と、
DebugHeadを使ってiOSアプリ開発を円滑に行う方法を紹介
します。
DebugHeadを使うことで開発時の無駄を省きつつ、
素早くアプリケーションを開発することが出来るようになり
ます。
Copyright © DeNA Co.,Ltd. All Rights Reserved.
4
DebugHead
Copyright © DeNA Co.,Ltd. All Rights Reserved.
5
アプリ画面上にデバッグメニューを開くボタンを配置するライブラリ
デバッグメニューに配置する機能は自分で追加出来るほか、
プラグイン形式でも提供されている。
iOS 8.0- / Swift 3 / cocoapods
https://github.com/malt03/DebugHead
DebugHead
MSI村田・平野のプライベートプロジェクト
実際の新規サービスの開発で採用し開発効率の向上を感じたので
今回ご紹介します。
Copyright © DeNA Co.,Ltd. All Rights Reserved.
6
DebugHead
Copyright © DeNA Co.,Ltd. All Rights Reserved.
7
DebugHead
Copyright © DeNA Co.,Ltd. All Rights Reserved.
8
DebugHeadをプロジェクトに組み込む
Copyright © DeNA Co.,Ltd. All Rights Reserved.
9
DebugHeadをプロジェクトに組み込む
$ pod install
Copyright © DeNA Co.,Ltd. All Rights Reserved.
10
menuClasses - DebugMenuプロトコルに準拠したクラス
DebugHeadをプロジェクトに組み込む
Copyright © DeNA Co.,Ltd. All Rights Reserved.
11
debugMenuTitle: DebugHeadのメニューに表示するタイトル
debugMenuAccessoryType: DebugHeadのメニューセルのアクセサリ
debugMenuDangerLevel: 実行における危険性を宣言
debugMenuSelected: 遷移するViewControllerを返す
DebugHeadをプロジェクトに組み込む
Copyright © DeNA Co.,Ltd. All Rights Reserved.
12
debugMenuDangerLevel:
DebugHeadをプロジェクトに組み込む
.none
.low
.high
.extreme
Copyright © DeNA Co.,Ltd. All Rights Reserved.
13
iOSアプリ開発をする上での課題を
DebugHeadを使って解決する
Copyright © DeNA Co.,Ltd. All Rights Reserved.
14
課題①:現在のアプリの状態が
把握できない
課題②:任意のタイミング
でイベントを発火させたい
課題③:深い階層のViewControllerの
実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
15
課題①:現在のアプリの状態が
把握できない
課題②:任意のタイミング
でイベントを発火させたい
課題③:深い階層のViewControllerの
実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
16
課題①:現在のアプリの状態が把握できない
Copyright © DeNA Co.,Ltd. All Rights Reserved.
17
課題①:現在のアプリの状態が把握できない
動作検証時にadhocで配布したアプリでサーバーからダウンロードしたはずの
画像が見れない。
今すぐホームディレクトリの状態が見たいが、
Application supports iTunes file sharingがオフになっているので
オンにしてもう一回ビルド・配布しないと…
Copyright © DeNA Co.,Ltd. All Rights Reserved.
18
課題①:現在のアプリの状態が把握できない
Xcodeに繋がれていない状態の端末ではアプリの状態を把握するのが難しい。
取得の難しい情報の例
・UserDefaultの値
・realmのDB状態
・ビルド番号
・接続先のサーバー
・ファイルシステムの状態
Copyright © DeNA Co.,Ltd. All Rights Reserved.
19
課題①:現在のアプリの状態が把握できない
・DebugHeadからいつでも見れる状態にしておく
再現性の低い問題に対して
より多くの情報を提供
ビルドをせずにトライ条件
を変えられる
ファイルシステムなど、外部から参照する際に
パーミッションを緩和する必要があったり
printデバッグで分かりにくい箇所を表示
Copyright © DeNA Co.,Ltd. All Rights Reserved.
20
課題①:現在のアプリの状態が把握できない
DebugHeadのメニューはプラグインで機能提供されているものもあります
malt03/DebugMenuUserDefaultsBrowser
NSUserDefaultのキーバリューを表示するプラグイン
malt03/DebugMenuGPUImageDumper
GPUImageの結合状態を表示するプラグイン
noppefoxwolf/DebugMenuFileBrowser
ファイルブラウザを呼び出すプラグイン
malt03/DebugMenuRealmBrowser
実機上で実行できるrealmブラウザ
Copyright © DeNA Co.,Ltd. All Rights Reserved.
21
課題①:現在のアプリの状態が
把握できない
課題②:任意のタイミング
でイベントを発火させたい
課題③:深い階層のViewControllerの
実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
22
課題②:任意のタイミングで
イベントを発火させたい
Copyright © DeNA Co.,Ltd. All Rights Reserved.
23
課題②:任意のタイミングでイベントを発火させたい
debugMenuSelected(:UIView,:UITableViewController) -> UIViewController?
nilを返す事も出来るので、このタイミングでイベントを発火出来る
Copyright © DeNA Co.,Ltd. All Rights Reserved.
24
課題②:任意のタイミングでイベントを発火させたい
通知やイベントを発行
Copyright © DeNA Co.,Ltd. All Rights Reserved.
25
課題②:任意のタイミングでイベントを発火させたい
NSNotificationCenterの発火テスト
アプリ通知の受信テスト
キャッシュのクリア
設定値の初期化
いままで設定画面やXcodeを介して行っていた作業を、直接呼び出すことで
検証時間を短縮したり再現性チェックを簡略化したりできる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
26
課題①:現在のアプリの状態が
把握できない
課題②:任意のタイミング
でイベントを発火させたい
課題③:深い階層のViewControllerの
実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
27
課題③:深い階層のViewControllerの
実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
28
実装の確認がしたいViewController ↓
たどり着くまでに操作する必要のあるViewController
↑ ↑ ↑
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
29
UIテストで操作を自動化する
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
30
→コストに見合わない場合が多い
課題③:深い階層のViewControllerの実装チェックに時間がかかる
UIテストで操作を自動化する
Copyright © DeNA Co.,Ltd. All Rights Reserved.
31
→コストに見合わない場合が多い
AppDelegateで最初の画面を切り替える
課題③:深い階層のViewControllerの実装チェックに時間がかかる
UIテストで操作を自動化する
Copyright © DeNA Co.,Ltd. All Rights Reserved.
32
→コストに見合わない場合が多い
AppDelegateで最初の画面を切り替える
→他の画面が見たい場合にBuild/Runが必要
課題③:深い階層のViewControllerの実装チェックに時間がかかる
UIテストで操作を自動化する
Copyright © DeNA Co.,Ltd. All Rights Reserved.
33
提案策
DebugHeadで一気に呼び出す
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
34
DebugMenuにViewControllerを表示する手順
課題③:深い階層のViewControllerの実装チェックに時間がかかる
・ViewControllerにDebugMenuプロトコルに準拠させる
・DebugHeadのprepareメソッドでクラスを登録する
Copyright © DeNA Co.,Ltd. All Rights Reserved.
35
課題③:深い階層のViewControllerの実装チェックに時間がかかる
DebugMenuにViewControllerを表示する手順
・ViewControllerにDebugMenuプロトコルに準拠させる
・DebugHeadのprepareメソッドでクラスを登録する
Copyright © DeNA Co.,Ltd. All Rights Reserved.
36
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
37
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
38
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
39
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
40
DebugMenuにViewControllerを表示する手順
課題③:深い階層のViewControllerの実装チェックに時間がかかる
・ViewControllerにDebugMenuプロトコルに準拠させる
・DebugHeadのprepareメソッドでクラスを登録する
Copyright © DeNA Co.,Ltd. All Rights Reserved.
41
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
42
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
43
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
44
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
45
課題③:深い階層のViewControllerの実装チェックに時間がかかる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
46
課題③:深い階層のViewControllerの実装チェックに時間がかかる
・深い階層のViewControllerも素早く開発が可能に
・画面ごとに並行して開発することが可能に
・通知や3DTouchといった通常時以外からの呼び出しに強いコードになる
Copyright © DeNA Co.,Ltd. All Rights Reserved.
47
DebugHeadを使ったiOSアプリ開発手法
DebugHeadを使うことで、実装を実際の画面で確認しながら
開発中にかかる無駄な時間を削減できます。
DebugHeadで出来る事はシンプルですが工夫次第で、
より開発を円滑に進められるようになります。
興味のある方は是非使い始めてください
https://github.com/malt03/DebugHead
Copyright © DeNA Co.,Ltd. All Rights Reserved.
48
ありがとうございました
DebugHeadを使ったiOSアプリ開発手法

More Related Content

What's hot

Anyca におけるUIフレームワークと スマホによるドア操作の仕組み
Anyca におけるUIフレームワークとスマホによるドア操作の仕組みAnyca におけるUIフレームワークとスマホによるドア操作の仕組み
Anyca におけるUIフレームワークと スマホによるドア操作の仕組みShuhei Kawasaki
 
Anyca(エニカ)のC2Cビジネスを支えるシステムと運用 #denatechcon
Anyca(エニカ)のC2Cビジネスを支えるシステムと運用 #denatechconAnyca(エニカ)のC2Cビジネスを支えるシステムと運用 #denatechcon
Anyca(エニカ)のC2Cビジネスを支えるシステムと運用 #denatechconDeNA
 
これからの Microservices
これからの Microservicesこれからの Microservices
これからの MicroservicesToru Yamaguchi
 
DeNAが取り組む Software Engineer in Test
DeNAが取り組む Software Engineer in TestDeNAが取り組む Software Engineer in Test
DeNAが取り組む Software Engineer in TestMasaki Nakagawa
 
DeNA内製ゲームエンジンの現状と目指す未来 #denatechcon
DeNA内製ゲームエンジンの現状と目指す未来 #denatechconDeNA内製ゲームエンジンの現状と目指す未来 #denatechcon
DeNA内製ゲームエンジンの現状と目指す未来 #denatechconDeNA
 
革新的ブラウザゲームを支えるプラットフォーム技術
革新的ブラウザゲームを支えるプラットフォーム技術革新的ブラウザゲームを支えるプラットフォーム技術
革新的ブラウザゲームを支えるプラットフォーム技術Toru Yamaguchi
 
技術選択とアーキテクトの役割 (要約版)
技術選択とアーキテクトの役割 (要約版)技術選択とアーキテクトの役割 (要約版)
技術選択とアーキテクトの役割 (要約版)Toru Yamaguchi
 
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜Daiki Kawanuma
 
夏サミ 2013 A2 セッション資料 #natsumiA2
夏サミ 2013 A2 セッション資料 #natsumiA2 夏サミ 2013 A2 セッション資料 #natsumiA2
夏サミ 2013 A2 セッション資料 #natsumiA2 智治 長沢
 
でぶさみ夏2013 キーノート オレンジレンジャーの資料
でぶさみ夏2013 キーノート オレンジレンジャーの資料でぶさみ夏2013 キーノート オレンジレンジャーの資料
でぶさみ夏2013 キーノート オレンジレンジャーの資料Tomohiro Fujii
 
【DevOpsDaysTokyo2021】「ログイン画面が開きません」から始まるチーム改革の軌跡
【DevOpsDaysTokyo2021】「ログイン画面が開きません」から始まるチーム改革の軌跡【DevOpsDaysTokyo2021】「ログイン画面が開きません」から始まるチーム改革の軌跡
【DevOpsDaysTokyo2021】「ログイン画面が開きません」から始まるチーム改革の軌跡Naomichi Shimazu
 
2013年08月 夏サミ2013-A5「DevOpsってどうなのよ?」
2013年08月 夏サミ2013-A5「DevOpsってどうなのよ?」2013年08月 夏サミ2013-A5「DevOpsってどうなのよ?」
2013年08月 夏サミ2013-A5「DevOpsってどうなのよ?」Serverworks Co.,Ltd.
 
長寿なゲーム事業におけるアプリビルドの効率化
長寿なゲーム事業におけるアプリビルドの効率化長寿なゲーム事業におけるアプリビルドの効率化
長寿なゲーム事業におけるアプリビルドの効率化gree_tech
 
Visual Studio OnlineとUnityを使った バージョン管理と 継続的インテグレーション
Visual Studio OnlineとUnityを使ったバージョン管理と継続的インテグレーションVisual Studio OnlineとUnityを使ったバージョン管理と継続的インテグレーション
Visual Studio OnlineとUnityを使った バージョン管理と 継続的インテグレーションKaoru NAKAMURA
 
マルチテナントECシステムにおける拡張性と最新性の両立
マルチテナントECシステムにおける拡張性と最新性の両立マルチテナントECシステムにおける拡張性と最新性の両立
マルチテナントECシステムにおける拡張性と最新性の両立水野 謙
 
自チームのLychee redmine活用例
自チームのLychee redmine活用例自チームのLychee redmine活用例
自チームのLychee redmine活用例agileware_jp
 
Ricoh UCS for iPad でみる エンタープライズ アジャイル開発
Ricoh UCS for iPad でみる エンタープライズ アジャイル開発Ricoh UCS for iPad でみる エンタープライズ アジャイル開発
Ricoh UCS for iPad でみる エンタープライズ アジャイル開発Naoki Umehara
 
セキュリティを重視した本格ビジネスサイトをWordPressで作るためのセミナー
セキュリティを重視した本格ビジネスサイトをWordPressで作るためのセミナーセキュリティを重視した本格ビジネスサイトをWordPressで作るためのセミナー
セキュリティを重視した本格ビジネスサイトをWordPressで作るためのセミナーSPIRAL Inc.
 
Enterpriseでもモバイル開発
Enterpriseでもモバイル開発Enterpriseでもモバイル開発
Enterpriseでもモバイル開発Mitch Okamoto
 

What's hot (20)

Anyca におけるUIフレームワークと スマホによるドア操作の仕組み
Anyca におけるUIフレームワークとスマホによるドア操作の仕組みAnyca におけるUIフレームワークとスマホによるドア操作の仕組み
Anyca におけるUIフレームワークと スマホによるドア操作の仕組み
 
Anyca(エニカ)のC2Cビジネスを支えるシステムと運用 #denatechcon
Anyca(エニカ)のC2Cビジネスを支えるシステムと運用 #denatechconAnyca(エニカ)のC2Cビジネスを支えるシステムと運用 #denatechcon
Anyca(エニカ)のC2Cビジネスを支えるシステムと運用 #denatechcon
 
これからの Microservices
これからの Microservicesこれからの Microservices
これからの Microservices
 
DeNAが取り組む Software Engineer in Test
DeNAが取り組む Software Engineer in TestDeNAが取り組む Software Engineer in Test
DeNAが取り組む Software Engineer in Test
 
DeNA内製ゲームエンジンの現状と目指す未来 #denatechcon
DeNA内製ゲームエンジンの現状と目指す未来 #denatechconDeNA内製ゲームエンジンの現状と目指す未来 #denatechcon
DeNA内製ゲームエンジンの現状と目指す未来 #denatechcon
 
革新的ブラウザゲームを支えるプラットフォーム技術
革新的ブラウザゲームを支えるプラットフォーム技術革新的ブラウザゲームを支えるプラットフォーム技術
革新的ブラウザゲームを支えるプラットフォーム技術
 
技術選択とアーキテクトの役割 (要約版)
技術選択とアーキテクトの役割 (要約版)技術選択とアーキテクトの役割 (要約版)
技術選択とアーキテクトの役割 (要約版)
 
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
SI現場のテスト自動化への挑戦〜フルコンテナ構成のCI/CD環境〜
 
夏サミ 2013 A2 セッション資料 #natsumiA2
夏サミ 2013 A2 セッション資料 #natsumiA2 夏サミ 2013 A2 セッション資料 #natsumiA2
夏サミ 2013 A2 セッション資料 #natsumiA2
 
でぶさみ夏2013 キーノート オレンジレンジャーの資料
でぶさみ夏2013 キーノート オレンジレンジャーの資料でぶさみ夏2013 キーノート オレンジレンジャーの資料
でぶさみ夏2013 キーノート オレンジレンジャーの資料
 
【DevOpsDaysTokyo2021】「ログイン画面が開きません」から始まるチーム改革の軌跡
【DevOpsDaysTokyo2021】「ログイン画面が開きません」から始まるチーム改革の軌跡【DevOpsDaysTokyo2021】「ログイン画面が開きません」から始まるチーム改革の軌跡
【DevOpsDaysTokyo2021】「ログイン画面が開きません」から始まるチーム改革の軌跡
 
2013年08月 夏サミ2013-A5「DevOpsってどうなのよ?」
2013年08月 夏サミ2013-A5「DevOpsってどうなのよ?」2013年08月 夏サミ2013-A5「DevOpsってどうなのよ?」
2013年08月 夏サミ2013-A5「DevOpsってどうなのよ?」
 
長寿なゲーム事業におけるアプリビルドの効率化
長寿なゲーム事業におけるアプリビルドの効率化長寿なゲーム事業におけるアプリビルドの効率化
長寿なゲーム事業におけるアプリビルドの効率化
 
Visual Studio OnlineとUnityを使った バージョン管理と 継続的インテグレーション
Visual Studio OnlineとUnityを使ったバージョン管理と継続的インテグレーションVisual Studio OnlineとUnityを使ったバージョン管理と継続的インテグレーション
Visual Studio OnlineとUnityを使った バージョン管理と 継続的インテグレーション
 
Bambooによる継続的デリバリー
Bambooによる継続的デリバリーBambooによる継続的デリバリー
Bambooによる継続的デリバリー
 
マルチテナントECシステムにおける拡張性と最新性の両立
マルチテナントECシステムにおける拡張性と最新性の両立マルチテナントECシステムにおける拡張性と最新性の両立
マルチテナントECシステムにおける拡張性と最新性の両立
 
自チームのLychee redmine活用例
自チームのLychee redmine活用例自チームのLychee redmine活用例
自チームのLychee redmine活用例
 
Ricoh UCS for iPad でみる エンタープライズ アジャイル開発
Ricoh UCS for iPad でみる エンタープライズ アジャイル開発Ricoh UCS for iPad でみる エンタープライズ アジャイル開発
Ricoh UCS for iPad でみる エンタープライズ アジャイル開発
 
セキュリティを重視した本格ビジネスサイトをWordPressで作るためのセミナー
セキュリティを重視した本格ビジネスサイトをWordPressで作るためのセミナーセキュリティを重視した本格ビジネスサイトをWordPressで作るためのセミナー
セキュリティを重視した本格ビジネスサイトをWordPressで作るためのセミナー
 
Enterpriseでもモバイル開発
Enterpriseでもモバイル開発Enterpriseでもモバイル開発
Enterpriseでもモバイル開発
 

Viewers also liked

DeNAのAIとは #denatechcon
DeNAのAIとは #denatechconDeNAのAIとは #denatechcon
DeNAのAIとは #denatechconDeNA
 
DeNAのプログラミング教育の取り組み #denatechcon
DeNAのプログラミング教育の取り組み #denatechconDeNAのプログラミング教育の取り組み #denatechcon
DeNAのプログラミング教育の取り組み #denatechconDeNA
 
強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechcon
強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechcon強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechcon
強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechconDeNA
 
その後のDeNAのネイティブアプリ開発 #denatechcon
その後のDeNAのネイティブアプリ開発 #denatechconその後のDeNAのネイティブアプリ開発 #denatechcon
その後のDeNAのネイティブアプリ開発 #denatechconDeNA
 
ログ分析で支えるゲームパラメータ設計 #denatechcon
ログ分析で支えるゲームパラメータ設計 #denatechconログ分析で支えるゲームパラメータ設計 #denatechcon
ログ分析で支えるゲームパラメータ設計 #denatechconDeNA
 
Unityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechconUnityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechconDeNA
 
DeNAの動画配信サービスを支えるインフラの内部 #denatechcon
DeNAの動画配信サービスを支えるインフラの内部  #denatechconDeNAの動画配信サービスを支えるインフラの内部  #denatechcon
DeNAの動画配信サービスを支えるインフラの内部 #denatechconDeNA
 
DeNA private cloudのその後 #denatechcon
DeNA private cloudのその後 #denatechconDeNA private cloudのその後 #denatechcon
DeNA private cloudのその後 #denatechconDeNA
 
深層学習による機械とのコミュニケーション
深層学習による機械とのコミュニケーション深層学習による機械とのコミュニケーション
深層学習による機械とのコミュニケーションYuya Unno
 
実世界の人工知能@DeNA TechCon 2017
実世界の人工知能@DeNA TechCon 2017 実世界の人工知能@DeNA TechCon 2017
実世界の人工知能@DeNA TechCon 2017 Preferred Networks
 
Abortion witouth apology whole book
Abortion witouth apology whole bookAbortion witouth apology whole book
Abortion witouth apology whole bookJaco Ba
 
SAGE | IOB CORPORATE - MAPEAMENTO DE RISCOS - ESOCIAL
SAGE | IOB CORPORATE - MAPEAMENTO DE RISCOS - ESOCIALSAGE | IOB CORPORATE - MAPEAMENTO DE RISCOS - ESOCIAL
SAGE | IOB CORPORATE - MAPEAMENTO DE RISCOS - ESOCIALMartcom Digital
 
Cuadernillo de ejercicios para unidad i
Cuadernillo de ejercicios para unidad iCuadernillo de ejercicios para unidad i
Cuadernillo de ejercicios para unidad iivan_antrax
 

Viewers also liked (16)

DeNAのAIとは #denatechcon
DeNAのAIとは #denatechconDeNAのAIとは #denatechcon
DeNAのAIとは #denatechcon
 
DeNAのプログラミング教育の取り組み #denatechcon
DeNAのプログラミング教育の取り組み #denatechconDeNAのプログラミング教育の取り組み #denatechcon
DeNAのプログラミング教育の取り組み #denatechcon
 
強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechcon
強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechcon強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechcon
強化学習を利用した自律型GameAIの取り組み ~高速自動プレイによるステージ設計支援~ #denatechcon
 
その後のDeNAのネイティブアプリ開発 #denatechcon
その後のDeNAのネイティブアプリ開発 #denatechconその後のDeNAのネイティブアプリ開発 #denatechcon
その後のDeNAのネイティブアプリ開発 #denatechcon
 
ログ分析で支えるゲームパラメータ設計 #denatechcon
ログ分析で支えるゲームパラメータ設計 #denatechconログ分析で支えるゲームパラメータ設計 #denatechcon
ログ分析で支えるゲームパラメータ設計 #denatechcon
 
Unityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechconUnityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechcon
 
DeNAの動画配信サービスを支えるインフラの内部 #denatechcon
DeNAの動画配信サービスを支えるインフラの内部  #denatechconDeNAの動画配信サービスを支えるインフラの内部  #denatechcon
DeNAの動画配信サービスを支えるインフラの内部 #denatechcon
 
DeNA private cloudのその後 #denatechcon
DeNA private cloudのその後 #denatechconDeNA private cloudのその後 #denatechcon
DeNA private cloudのその後 #denatechcon
 
深層学習による機械とのコミュニケーション
深層学習による機械とのコミュニケーション深層学習による機械とのコミュニケーション
深層学習による機械とのコミュニケーション
 
実世界の人工知能@DeNA TechCon 2017
実世界の人工知能@DeNA TechCon 2017 実世界の人工知能@DeNA TechCon 2017
実世界の人工知能@DeNA TechCon 2017
 
definicao pmi pmp pmbok
definicao pmi pmp pmbokdefinicao pmi pmp pmbok
definicao pmi pmp pmbok
 
Sociedad del conocimiento
Sociedad del conocimientoSociedad del conocimiento
Sociedad del conocimiento
 
Listado
ListadoListado
Listado
 
Abortion witouth apology whole book
Abortion witouth apology whole bookAbortion witouth apology whole book
Abortion witouth apology whole book
 
SAGE | IOB CORPORATE - MAPEAMENTO DE RISCOS - ESOCIAL
SAGE | IOB CORPORATE - MAPEAMENTO DE RISCOS - ESOCIALSAGE | IOB CORPORATE - MAPEAMENTO DE RISCOS - ESOCIAL
SAGE | IOB CORPORATE - MAPEAMENTO DE RISCOS - ESOCIAL
 
Cuadernillo de ejercicios para unidad i
Cuadernillo de ejercicios para unidad iCuadernillo de ejercicios para unidad i
Cuadernillo de ejercicios para unidad i
 

Similar to DebugHeadを使ったiOSアプリ開発手法 #denatechcon

kintone 連携スマホアプリの開発・配布体験
kintone 連携スマホアプリの開発・配布体験kintone 連携スマホアプリの開発・配布体験
kintone 連携スマホアプリの開発・配布体験アシアル株式会社
 
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」アシアル株式会社
 
kintone連携スマホアプリの開発・配布体験_生形 可奈子氏
kintone連携スマホアプリの開発・配布体験_生形 可奈子氏kintone連携スマホアプリの開発・配布体験_生形 可奈子氏
kintone連携スマホアプリの開発・配布体験_生形 可奈子氏kintone papers
 
TECHJUMP勉強会_スマホアプリの作り方(導入編)
TECHJUMP勉強会_スマホアプリの作り方(導入編)TECHJUMP勉強会_スマホアプリの作り方(導入編)
TECHJUMP勉強会_スマホアプリの作り方(導入編)techjump
 
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1schoowebcampus
 
Androidプログラミング入門
Androidプログラミング入門Androidプログラミング入門
Androidプログラミング入門OESF Education
 
【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!
【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!
【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!natsumo
 
サイネージを使う顧客創出のシナリオ
サイネージを使う顧客創出のシナリオサイネージを使う顧客創出のシナリオ
サイネージを使う顧客創出のシナリオCRI Japan, Inc.
 
みゆっき☆Think#3 「androidに触ってみるよ!」
みゆっき☆Think#3 「androidに触ってみるよ!」みゆっき☆Think#3 「androidに触ってみるよ!」
みゆっき☆Think#3 「androidに触ってみるよ!」techtalkdwango
 
Adobe セッション for Enterprise x HTML5 Web Application Conference 2014
Adobe セッション for Enterprise x HTML5 Web Application Conference 2014Adobe セッション for Enterprise x HTML5 Web Application Conference 2014
Adobe セッション for Enterprise x HTML5 Web Application Conference 2014Tsuyoshi Nakao
 
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 EastiOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 Eastirgaly
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向Tsutomu Ogasawara
 
ゲーム開発環境、もっと楽にできるよ♬ マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!
ゲーム開発環境、もっと楽にできるよ♬  マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!ゲーム開発環境、もっと楽にできるよ♬  マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!
ゲーム開発環境、もっと楽にできるよ♬ マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!Hiroko Umetsu
 
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)アシアル株式会社
 
チラシルiOSでの広告枠開発
チラシルiOSでの広告枠開発チラシルiOSでの広告枠開発
チラシルiOSでの広告枠開発Satoshi Takano
 
X dev 20121106
X dev 20121106X dev 20121106
X dev 20121106Ken Azuma
 
【18-E-2】Android6.0 対応! モバイルアプリセキュリティの最新トレンド
【18-E-2】Android6.0 対応! モバイルアプリセキュリティの最新トレンド【18-E-2】Android6.0 対応! モバイルアプリセキュリティの最新トレンド
【18-E-2】Android6.0 対応! モバイルアプリセキュリティの最新トレンドDevelopers Summit
 
Adobe Web 統合開発環境のご紹介
Adobe Web 統合開発環境のご紹介Adobe Web 統合開発環境のご紹介
Adobe Web 統合開発環境のご紹介Tsuyoshi Nakao
 
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送Google Cloud Platform - Japan
 

Similar to DebugHeadを使ったiOSアプリ開発手法 #denatechcon (20)

kintone 連携スマホアプリの開発・配布体験
kintone 連携スマホアプリの開発・配布体験kintone 連携スマホアプリの開発・配布体験
kintone 連携スマホアプリの開発・配布体験
 
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
デブサミ2015「実践!クロスプラットフォーム モバイルアプリ開発」
 
kintone連携スマホアプリの開発・配布体験_生形 可奈子氏
kintone連携スマホアプリの開発・配布体験_生形 可奈子氏kintone連携スマホアプリの開発・配布体験_生形 可奈子氏
kintone連携スマホアプリの開発・配布体験_生形 可奈子氏
 
TECHJUMP勉強会_スマホアプリの作り方(導入編)
TECHJUMP勉強会_スマホアプリの作り方(導入編)TECHJUMP勉強会_スマホアプリの作り方(導入編)
TECHJUMP勉強会_スマホアプリの作り方(導入編)
 
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
 
Androidプログラミング入門
Androidプログラミング入門Androidプログラミング入門
Androidプログラミング入門
 
【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!
【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!
【Monaca×mobile backend】 プッシュ通知をカンタン実装! スピード感ある開発をしよう!
 
Android0422
Android0422Android0422
Android0422
 
サイネージを使う顧客創出のシナリオ
サイネージを使う顧客創出のシナリオサイネージを使う顧客創出のシナリオ
サイネージを使う顧客創出のシナリオ
 
みゆっき☆Think#3 「androidに触ってみるよ!」
みゆっき☆Think#3 「androidに触ってみるよ!」みゆっき☆Think#3 「androidに触ってみるよ!」
みゆっき☆Think#3 「androidに触ってみるよ!」
 
Adobe セッション for Enterprise x HTML5 Web Application Conference 2014
Adobe セッション for Enterprise x HTML5 Web Application Conference 2014Adobe セッション for Enterprise x HTML5 Web Application Conference 2014
Adobe セッション for Enterprise x HTML5 Web Application Conference 2014
 
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 EastiOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
 
ゲーム開発環境、もっと楽にできるよ♬ マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!
ゲーム開発環境、もっと楽にできるよ♬  マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!ゲーム開発環境、もっと楽にできるよ♬  マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!
ゲーム開発環境、もっと楽にできるよ♬ マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!
 
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
JINS MEME DEVELOPER HANDS-ON (Monaca / Apache Cordova編)
 
チラシルiOSでの広告枠開発
チラシルiOSでの広告枠開発チラシルiOSでの広告枠開発
チラシルiOSでの広告枠開発
 
X dev 20121106
X dev 20121106X dev 20121106
X dev 20121106
 
【18-E-2】Android6.0 対応! モバイルアプリセキュリティの最新トレンド
【18-E-2】Android6.0 対応! モバイルアプリセキュリティの最新トレンド【18-E-2】Android6.0 対応! モバイルアプリセキュリティの最新トレンド
【18-E-2】Android6.0 対応! モバイルアプリセキュリティの最新トレンド
 
Adobe Web 統合開発環境のご紹介
Adobe Web 統合開発環境のご紹介Adobe Web 統合開発環境のご紹介
Adobe Web 統合開発環境のご紹介
 
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(e-Learning) 2018年3月15日 放送
 

More from DeNA

DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
DRIVE CHARTの裏側  〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜DRIVE CHARTの裏側  〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜DeNA
 
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用DeNA
 
Can We Make Maps from Videos? ~From AI Algorithm to Engineering for Continuou...
Can We Make Maps from Videos? ~From AI Algorithm to Engineering for Continuou...Can We Make Maps from Videos? ~From AI Algorithm to Engineering for Continuou...
Can We Make Maps from Videos? ~From AI Algorithm to Engineering for Continuou...DeNA
 
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】DeNA
 
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】DeNA
 
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】DeNA
 
仕様起因の手戻りを減らして開発効率アップを目指すチャレンジ 【DeNA TechCon 2020 ライブ配信】
仕様起因の手戻りを減らして開発効率アップを目指すチャレンジ 【DeNA TechCon 2020 ライブ配信】仕様起因の手戻りを減らして開発効率アップを目指すチャレンジ 【DeNA TechCon 2020 ライブ配信】
仕様起因の手戻りを減らして開発効率アップを目指すチャレンジ 【DeNA TechCon 2020 ライブ配信】DeNA
 
DeNA データプラットフォームにおける 自由と統制のバランス【DeNA TechCon 2020 ライブ配信】
DeNA データプラットフォームにおける 自由と統制のバランス【DeNA TechCon 2020 ライブ配信】DeNA データプラットフォームにおける 自由と統制のバランス【DeNA TechCon 2020 ライブ配信】
DeNA データプラットフォームにおける 自由と統制のバランス【DeNA TechCon 2020 ライブ配信】DeNA
 
リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】
リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】
リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】DeNA
 
MOV の機械学習システムを支える MLOps 実践【DeNA TechCon 2020 ライブ配信】
MOV の機械学習システムを支える MLOps 実践【DeNA TechCon 2020 ライブ配信】MOV の機械学習システムを支える MLOps 実践【DeNA TechCon 2020 ライブ配信】
MOV の機械学習システムを支える MLOps 実践【DeNA TechCon 2020 ライブ配信】DeNA
 
コンピュータビジョン技術の実応用〜DRIVE CHARTにおける脇見・車間距離不足検知〜【DeNA TechCon 2020 ライブ配信】
コンピュータビジョン技術の実応用〜DRIVE CHARTにおける脇見・車間距離不足検知〜【DeNA TechCon 2020 ライブ配信】コンピュータビジョン技術の実応用〜DRIVE CHARTにおける脇見・車間距離不足検知〜【DeNA TechCon 2020 ライブ配信】
コンピュータビジョン技術の実応用〜DRIVE CHARTにおける脇見・車間距離不足検知〜【DeNA TechCon 2020 ライブ配信】DeNA
 
DeNA の Slack 導入と活用の事例紹介
DeNA の Slack 導入と活用の事例紹介DeNA の Slack 導入と活用の事例紹介
DeNA の Slack 導入と活用の事例紹介DeNA
 
タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]
タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]
タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]DeNA
 
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ
オートモーティブ領域における 位置情報関連アルゴリズムあれこれオートモーティブ領域における 位置情報関連アルゴリズムあれこれ
オートモーティブ領域における 位置情報関連アルゴリズムあれこれDeNA
 
後部座席タブレットにおけるMaaS時代を見据えた半歩先のUX設計」 [MOBILITY:dev]
後部座席タブレットにおけるMaaS時代を見据えた半歩先のUX設計」 [MOBILITY:dev]後部座席タブレットにおけるMaaS時代を見据えた半歩先のUX設計」 [MOBILITY:dev]
後部座席タブレットにおけるMaaS時代を見据えた半歩先のUX設計」 [MOBILITY:dev]DeNA
 
ドライブレコーダ映像からの3次元空間認識 [MOBILITY:dev]
ドライブレコーダ映像からの3次元空間認識 [MOBILITY:dev]ドライブレコーダ映像からの3次元空間認識 [MOBILITY:dev]
ドライブレコーダ映像からの3次元空間認識 [MOBILITY:dev]DeNA
 
MOVで実践したサーバーAPI実装の超最適化について [MOBILITY:dev]
MOVで実践したサーバーAPI実装の超最適化について [MOBILITY:dev]MOVで実践したサーバーAPI実装の超最適化について [MOBILITY:dev]
MOVで実践したサーバーAPI実装の超最適化について [MOBILITY:dev]DeNA
 
MOV お客さま探索ナビの GCP ML開発フローについて
MOV お客さま探索ナビの GCP ML開発フローについてMOV お客さま探索ナビの GCP ML開発フローについて
MOV お客さま探索ナビの GCP ML開発フローについてDeNA
 
課題ドリブン、フルスタックAI開発術 [MOBILITY:dev]
課題ドリブン、フルスタックAI開発術 [MOBILITY:dev]課題ドリブン、フルスタックAI開発術 [MOBILITY:dev]
課題ドリブン、フルスタックAI開発術 [MOBILITY:dev]DeNA
 
DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA の AWS アカウント管理とセキュリティ監査自動化DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA の AWS アカウント管理とセキュリティ監査自動化DeNA
 

More from DeNA (20)

DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
DRIVE CHARTの裏側  〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜DRIVE CHARTの裏側  〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
 
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
 
Can We Make Maps from Videos? ~From AI Algorithm to Engineering for Continuou...
Can We Make Maps from Videos? ~From AI Algorithm to Engineering for Continuou...Can We Make Maps from Videos? ~From AI Algorithm to Engineering for Continuou...
Can We Make Maps from Videos? ~From AI Algorithm to Engineering for Continuou...
 
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
 
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
 
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
 
仕様起因の手戻りを減らして開発効率アップを目指すチャレンジ 【DeNA TechCon 2020 ライブ配信】
仕様起因の手戻りを減らして開発効率アップを目指すチャレンジ 【DeNA TechCon 2020 ライブ配信】仕様起因の手戻りを減らして開発効率アップを目指すチャレンジ 【DeNA TechCon 2020 ライブ配信】
仕様起因の手戻りを減らして開発効率アップを目指すチャレンジ 【DeNA TechCon 2020 ライブ配信】
 
DeNA データプラットフォームにおける 自由と統制のバランス【DeNA TechCon 2020 ライブ配信】
DeNA データプラットフォームにおける 自由と統制のバランス【DeNA TechCon 2020 ライブ配信】DeNA データプラットフォームにおける 自由と統制のバランス【DeNA TechCon 2020 ライブ配信】
DeNA データプラットフォームにおける 自由と統制のバランス【DeNA TechCon 2020 ライブ配信】
 
リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】
リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】
リアルタイムリモートデバッグ環境によるゲーム開発イテレーションの高速化【DeNA TechCon 2020 ライブ配信】
 
MOV の機械学習システムを支える MLOps 実践【DeNA TechCon 2020 ライブ配信】
MOV の機械学習システムを支える MLOps 実践【DeNA TechCon 2020 ライブ配信】MOV の機械学習システムを支える MLOps 実践【DeNA TechCon 2020 ライブ配信】
MOV の機械学習システムを支える MLOps 実践【DeNA TechCon 2020 ライブ配信】
 
コンピュータビジョン技術の実応用〜DRIVE CHARTにおける脇見・車間距離不足検知〜【DeNA TechCon 2020 ライブ配信】
コンピュータビジョン技術の実応用〜DRIVE CHARTにおける脇見・車間距離不足検知〜【DeNA TechCon 2020 ライブ配信】コンピュータビジョン技術の実応用〜DRIVE CHARTにおける脇見・車間距離不足検知〜【DeNA TechCon 2020 ライブ配信】
コンピュータビジョン技術の実応用〜DRIVE CHARTにおける脇見・車間距離不足検知〜【DeNA TechCon 2020 ライブ配信】
 
DeNA の Slack 導入と活用の事例紹介
DeNA の Slack 導入と活用の事例紹介DeNA の Slack 導入と活用の事例紹介
DeNA の Slack 導入と活用の事例紹介
 
タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]
タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]
タクシーxAIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて [SRE NEXT 2020]
 
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ
オートモーティブ領域における 位置情報関連アルゴリズムあれこれオートモーティブ領域における 位置情報関連アルゴリズムあれこれ
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ
 
後部座席タブレットにおけるMaaS時代を見据えた半歩先のUX設計」 [MOBILITY:dev]
後部座席タブレットにおけるMaaS時代を見据えた半歩先のUX設計」 [MOBILITY:dev]後部座席タブレットにおけるMaaS時代を見据えた半歩先のUX設計」 [MOBILITY:dev]
後部座席タブレットにおけるMaaS時代を見据えた半歩先のUX設計」 [MOBILITY:dev]
 
ドライブレコーダ映像からの3次元空間認識 [MOBILITY:dev]
ドライブレコーダ映像からの3次元空間認識 [MOBILITY:dev]ドライブレコーダ映像からの3次元空間認識 [MOBILITY:dev]
ドライブレコーダ映像からの3次元空間認識 [MOBILITY:dev]
 
MOVで実践したサーバーAPI実装の超最適化について [MOBILITY:dev]
MOVで実践したサーバーAPI実装の超最適化について [MOBILITY:dev]MOVで実践したサーバーAPI実装の超最適化について [MOBILITY:dev]
MOVで実践したサーバーAPI実装の超最適化について [MOBILITY:dev]
 
MOV お客さま探索ナビの GCP ML開発フローについて
MOV お客さま探索ナビの GCP ML開発フローについてMOV お客さま探索ナビの GCP ML開発フローについて
MOV お客さま探索ナビの GCP ML開発フローについて
 
課題ドリブン、フルスタックAI開発術 [MOBILITY:dev]
課題ドリブン、フルスタックAI開発術 [MOBILITY:dev]課題ドリブン、フルスタックAI開発術 [MOBILITY:dev]
課題ドリブン、フルスタックAI開発術 [MOBILITY:dev]
 
DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA の AWS アカウント管理とセキュリティ監査自動化DeNA の AWS アカウント管理とセキュリティ監査自動化
DeNA の AWS アカウント管理とセキュリティ監査自動化
 

Recently uploaded

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成Hiroshi Tomioka
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 

Recently uploaded (9)

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 

DebugHeadを使ったiOSアプリ開発手法 #denatechcon

  • 1. Copyright © DeNA Co.,Ltd. All Rights Reserved. DebugHeadを使った iOSアプリ開発手法 February 10, 2017 平野 朋也 モバイルソーシャルインキュベーション事業部 DeNA Co., Ltd.
  • 2. Copyright © DeNA Co.,Ltd. All Rights Reserved. 自己紹介 2 平野朋也(id: noppefoxwolf) 2016年 新卒入社 モバイルソーシャルインキュベーション事業部配属 2016年 画面録画Androidアプリ Mirracleの開発・運営 2016年〜 iOS向けライブ配信アプリの開発・運営 〜2016年 モバイルソーシャルインキュベーション事業部 インターンとしてiOSアプリの開発
  • 3. Copyright © DeNA Co.,Ltd. All Rights Reserved. 3 オープンソースライブラリのDebugHeadの紹介と、 DebugHeadを使ってiOSアプリ開発を円滑に行う方法を紹介 します。 DebugHeadを使うことで開発時の無駄を省きつつ、 素早くアプリケーションを開発することが出来るようになり ます。
  • 4. Copyright © DeNA Co.,Ltd. All Rights Reserved. 4 DebugHead
  • 5. Copyright © DeNA Co.,Ltd. All Rights Reserved. 5 アプリ画面上にデバッグメニューを開くボタンを配置するライブラリ デバッグメニューに配置する機能は自分で追加出来るほか、 プラグイン形式でも提供されている。 iOS 8.0- / Swift 3 / cocoapods https://github.com/malt03/DebugHead DebugHead MSI村田・平野のプライベートプロジェクト 実際の新規サービスの開発で採用し開発効率の向上を感じたので 今回ご紹介します。
  • 6. Copyright © DeNA Co.,Ltd. All Rights Reserved. 6 DebugHead
  • 7. Copyright © DeNA Co.,Ltd. All Rights Reserved. 7 DebugHead
  • 8. Copyright © DeNA Co.,Ltd. All Rights Reserved. 8 DebugHeadをプロジェクトに組み込む
  • 9. Copyright © DeNA Co.,Ltd. All Rights Reserved. 9 DebugHeadをプロジェクトに組み込む $ pod install
  • 10. Copyright © DeNA Co.,Ltd. All Rights Reserved. 10 menuClasses - DebugMenuプロトコルに準拠したクラス DebugHeadをプロジェクトに組み込む
  • 11. Copyright © DeNA Co.,Ltd. All Rights Reserved. 11 debugMenuTitle: DebugHeadのメニューに表示するタイトル debugMenuAccessoryType: DebugHeadのメニューセルのアクセサリ debugMenuDangerLevel: 実行における危険性を宣言 debugMenuSelected: 遷移するViewControllerを返す DebugHeadをプロジェクトに組み込む
  • 12. Copyright © DeNA Co.,Ltd. All Rights Reserved. 12 debugMenuDangerLevel: DebugHeadをプロジェクトに組み込む .none .low .high .extreme
  • 13. Copyright © DeNA Co.,Ltd. All Rights Reserved. 13 iOSアプリ開発をする上での課題を DebugHeadを使って解決する
  • 14. Copyright © DeNA Co.,Ltd. All Rights Reserved. 14 課題①:現在のアプリの状態が 把握できない 課題②:任意のタイミング でイベントを発火させたい 課題③:深い階層のViewControllerの 実装チェックに時間がかかる
  • 15. Copyright © DeNA Co.,Ltd. All Rights Reserved. 15 課題①:現在のアプリの状態が 把握できない 課題②:任意のタイミング でイベントを発火させたい 課題③:深い階層のViewControllerの 実装チェックに時間がかかる
  • 16. Copyright © DeNA Co.,Ltd. All Rights Reserved. 16 課題①:現在のアプリの状態が把握できない
  • 17. Copyright © DeNA Co.,Ltd. All Rights Reserved. 17 課題①:現在のアプリの状態が把握できない 動作検証時にadhocで配布したアプリでサーバーからダウンロードしたはずの 画像が見れない。 今すぐホームディレクトリの状態が見たいが、 Application supports iTunes file sharingがオフになっているので オンにしてもう一回ビルド・配布しないと…
  • 18. Copyright © DeNA Co.,Ltd. All Rights Reserved. 18 課題①:現在のアプリの状態が把握できない Xcodeに繋がれていない状態の端末ではアプリの状態を把握するのが難しい。 取得の難しい情報の例 ・UserDefaultの値 ・realmのDB状態 ・ビルド番号 ・接続先のサーバー ・ファイルシステムの状態
  • 19. Copyright © DeNA Co.,Ltd. All Rights Reserved. 19 課題①:現在のアプリの状態が把握できない ・DebugHeadからいつでも見れる状態にしておく 再現性の低い問題に対して より多くの情報を提供 ビルドをせずにトライ条件 を変えられる ファイルシステムなど、外部から参照する際に パーミッションを緩和する必要があったり printデバッグで分かりにくい箇所を表示
  • 20. Copyright © DeNA Co.,Ltd. All Rights Reserved. 20 課題①:現在のアプリの状態が把握できない DebugHeadのメニューはプラグインで機能提供されているものもあります malt03/DebugMenuUserDefaultsBrowser NSUserDefaultのキーバリューを表示するプラグイン malt03/DebugMenuGPUImageDumper GPUImageの結合状態を表示するプラグイン noppefoxwolf/DebugMenuFileBrowser ファイルブラウザを呼び出すプラグイン malt03/DebugMenuRealmBrowser 実機上で実行できるrealmブラウザ
  • 21. Copyright © DeNA Co.,Ltd. All Rights Reserved. 21 課題①:現在のアプリの状態が 把握できない 課題②:任意のタイミング でイベントを発火させたい 課題③:深い階層のViewControllerの 実装チェックに時間がかかる
  • 22. Copyright © DeNA Co.,Ltd. All Rights Reserved. 22 課題②:任意のタイミングで イベントを発火させたい
  • 23. Copyright © DeNA Co.,Ltd. All Rights Reserved. 23 課題②:任意のタイミングでイベントを発火させたい debugMenuSelected(:UIView,:UITableViewController) -> UIViewController? nilを返す事も出来るので、このタイミングでイベントを発火出来る
  • 24. Copyright © DeNA Co.,Ltd. All Rights Reserved. 24 課題②:任意のタイミングでイベントを発火させたい 通知やイベントを発行
  • 25. Copyright © DeNA Co.,Ltd. All Rights Reserved. 25 課題②:任意のタイミングでイベントを発火させたい NSNotificationCenterの発火テスト アプリ通知の受信テスト キャッシュのクリア 設定値の初期化 いままで設定画面やXcodeを介して行っていた作業を、直接呼び出すことで 検証時間を短縮したり再現性チェックを簡略化したりできる
  • 26. Copyright © DeNA Co.,Ltd. All Rights Reserved. 26 課題①:現在のアプリの状態が 把握できない 課題②:任意のタイミング でイベントを発火させたい 課題③:深い階層のViewControllerの 実装チェックに時間がかかる
  • 27. Copyright © DeNA Co.,Ltd. All Rights Reserved. 27 課題③:深い階層のViewControllerの 実装チェックに時間がかかる
  • 28. Copyright © DeNA Co.,Ltd. All Rights Reserved. 28 実装の確認がしたいViewController ↓ たどり着くまでに操作する必要のあるViewController ↑ ↑ ↑ 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 29. Copyright © DeNA Co.,Ltd. All Rights Reserved. 29 UIテストで操作を自動化する 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 30. Copyright © DeNA Co.,Ltd. All Rights Reserved. 30 →コストに見合わない場合が多い 課題③:深い階層のViewControllerの実装チェックに時間がかかる UIテストで操作を自動化する
  • 31. Copyright © DeNA Co.,Ltd. All Rights Reserved. 31 →コストに見合わない場合が多い AppDelegateで最初の画面を切り替える 課題③:深い階層のViewControllerの実装チェックに時間がかかる UIテストで操作を自動化する
  • 32. Copyright © DeNA Co.,Ltd. All Rights Reserved. 32 →コストに見合わない場合が多い AppDelegateで最初の画面を切り替える →他の画面が見たい場合にBuild/Runが必要 課題③:深い階層のViewControllerの実装チェックに時間がかかる UIテストで操作を自動化する
  • 33. Copyright © DeNA Co.,Ltd. All Rights Reserved. 33 提案策 DebugHeadで一気に呼び出す 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 34. Copyright © DeNA Co.,Ltd. All Rights Reserved. 34 DebugMenuにViewControllerを表示する手順 課題③:深い階層のViewControllerの実装チェックに時間がかかる ・ViewControllerにDebugMenuプロトコルに準拠させる ・DebugHeadのprepareメソッドでクラスを登録する
  • 35. Copyright © DeNA Co.,Ltd. All Rights Reserved. 35 課題③:深い階層のViewControllerの実装チェックに時間がかかる DebugMenuにViewControllerを表示する手順 ・ViewControllerにDebugMenuプロトコルに準拠させる ・DebugHeadのprepareメソッドでクラスを登録する
  • 36. Copyright © DeNA Co.,Ltd. All Rights Reserved. 36 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 37. Copyright © DeNA Co.,Ltd. All Rights Reserved. 37 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 38. Copyright © DeNA Co.,Ltd. All Rights Reserved. 38 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 39. Copyright © DeNA Co.,Ltd. All Rights Reserved. 39 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 40. Copyright © DeNA Co.,Ltd. All Rights Reserved. 40 DebugMenuにViewControllerを表示する手順 課題③:深い階層のViewControllerの実装チェックに時間がかかる ・ViewControllerにDebugMenuプロトコルに準拠させる ・DebugHeadのprepareメソッドでクラスを登録する
  • 41. Copyright © DeNA Co.,Ltd. All Rights Reserved. 41 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 42. Copyright © DeNA Co.,Ltd. All Rights Reserved. 42 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 43. Copyright © DeNA Co.,Ltd. All Rights Reserved. 43 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 44. Copyright © DeNA Co.,Ltd. All Rights Reserved. 44 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 45. Copyright © DeNA Co.,Ltd. All Rights Reserved. 45 課題③:深い階層のViewControllerの実装チェックに時間がかかる
  • 46. Copyright © DeNA Co.,Ltd. All Rights Reserved. 46 課題③:深い階層のViewControllerの実装チェックに時間がかかる ・深い階層のViewControllerも素早く開発が可能に ・画面ごとに並行して開発することが可能に ・通知や3DTouchといった通常時以外からの呼び出しに強いコードになる
  • 47. Copyright © DeNA Co.,Ltd. All Rights Reserved. 47 DebugHeadを使ったiOSアプリ開発手法 DebugHeadを使うことで、実装を実際の画面で確認しながら 開発中にかかる無駄な時間を削減できます。 DebugHeadで出来る事はシンプルですが工夫次第で、 より開発を円滑に進められるようになります。 興味のある方は是非使い始めてください https://github.com/malt03/DebugHead
  • 48. Copyright © DeNA Co.,Ltd. All Rights Reserved. 48 ありがとうございました DebugHeadを使ったiOSアプリ開発手法