SlideShare a Scribd company logo
1 of 111
Download to read offline
Androidアプリ開発
アンチパターン
〜 Builderscon 2017〜
@mokelab
● モバイルアプリの
受託開発
● 技術情報発信
● グッズ販売
Tech Sheets
本がでます
Androidアプリ開発
74のアンチパターン
初心者〜中級者向けに
アプリ開発時の落とし穴を74個紹介
アプリを全く書いたことのない人は
別の本で学んでから!
Q
Androidを使ってる?
Q
Androidアプリ書いてる?
アプリ開発に
関係ありそうなセッション
● Ionic 3+ではじめる次世代アプリ開発
○ HTML5だ!
● サーバサイドKotlinのすすめ
○ Kotlinだがサーバサイドだ!
● Serverless Server Side Swift
○ Swiftだがサーバサイドだ!
● LT
アプリ書いてるひと
来ない気がする!
なのに
トラックE
(イベントホール)
「知らなかった、
を聞く」
Androidや
Androidアプリ開発を
知ろう
なぜ知るの?
Androidアプリ開発には
落とし穴がいっぱい
知ろう
そして
Androidアプリ開発者を
大事にしてあげて
会話 1
来週からはAndroidアプリ開発やってくれ
はい!本を買って開発環境作っておきます!
やった!2011年の入門書が100円だった!
アンチパターン 1
アンチパターン 1
Eclipse / ADTを使ってる
アンチパターン 1
プラグインのサポート終了
アンチパターン 1
ライブラリが使いづらい
Androidを知る
ライブラリの形式
AndroidはJava
→ jarをクラスパスに
Androidを知る
ライブラリの形式
jarにリソースをいれたい
Androidを知る
ライブラリの形式
が
jarにはリソース入らない
Androidを知る
ライブラリの形式
aar形式!
Androidを知る
ライブラリの形式
aar形式
はEclipse/ADTで使えない
アンチパターン 1
解決方法
Androidを知る
アクティビティ
UIを提供する
コンポーネント
Androidを知る
アクティビティ
Androidを知る
アクティビティ
アプリ開発者は
Activityを継承した
クラスを定義していく
Androidを知る
アクティビティ
アクティビティは
OSからいろんな情報を
受け取る役割
会話 2
このアプリ、画面回転すると落ちるよ!
な、なんとかします!
ぐぐったら解決方法あった、やったね!
アンチパターン 2
画面回転の対応が
android:confingChanges
Androidを知る
構成変更
画面回転すると落ちる。。
Androidを知る
構成変更
android:configChanges="orientation|screenSize"
アンチパターン 2
たぶん
別の理由で
簡単に落ちます
アンチパターン 2
Androidを知る
構成変更
android:configChangesは
「この変更は
自分でなんとかする」
という意味
アンチパターン 2
解決方法
android:configChangesは
よっぽどの理由がない限り
使わない!
アンチパターン 2
解決方法
次のアンチパターンが
根本原因
会話 3
このアプリ、次の画面いって戻ると
時々落ちるんだけど。。
な、なんとかします!
なんでこのフィールド、nullになってるんだろ。。。
アンチパターン 3
アクティビティの復元
考えてない
Androidを知る
復元と再生成
復元?
Androidを知る
復元と再生成
アクティビティオブジェクトは
OSが作る
Androidを知る
復元と再生成
アクティビティオブジェクトは
よく、破棄される
ゴミ箱
Androidを知る
復元と再生成
破棄前に
状態を保存するチャンスを与える
Bundle
破棄前の状態
Androidを知る
復元と再生成
必要になったら再生成
破棄前の状態
アンチパターン 3
アンチパターン 3
解決方法
ちゃんとやれ!
アンチパターン 3
解決方法
onSaveInstanceState()で
保存し
onCreate()で
復元する!
アンチパターン 3
解決方法
OSが破棄するタイミングは
まちまち
アンチパターン 3
解決方法
動作確認はどうやる?
アンチパターン 3
解決方法
会話 4
ログインAPIを呼ぶと、
アクセストークンもらえるよ
どこかに保存しておきます!
static変数にいれると、便利そうだな。。
アンチパターン 4
アクセストークンを
static変数に入れている
Androidを知る
プロセス
プロセス=実行の単位
Androidを知る
プロセス
プロセスで
Java VMが起動
Androidを知る
プロセス
原則1アプリ=1プロセス
Androidを知る
プロセス
アクティビティは
いろんなアプリで起動
アクティビティA
アクティビティB
アクティビティC
アクティビティD アクティビティE
アクティビティAアクティビティA
アンチパターン 4
うちのアプリ
別アプリからは呼ばれないよ?
Androidを知る
プロセス
static変数の値は
プロセスが止まると消える
Androidを知る
プロセス
プロセスは
いきなり止まる
アンチパターン 4
アクティビティの中断
アンチパターン 4
PCアプリは
最小化しても
プロセスは死なない
アンチパターン 4
Androidアプリは
バックグラウンドにいると
プロセスが止められることがある
アンチパターン 4
でも
ちゃんと再開できる
アンチパターン 4
ログイン画面
↓
static変数にトークン保存
↓
メイン画面
↓
ホームボタンで中断
アンチパターン 4
ホームボタンで中断
↓
プロセスが止められる
↓
オーバービューから再開
↓
メイン画面
アンチパターン 4
解決方法
永続化するか
状態を
アクティビティにもたせよう
アンチパターン 4
解決方法
動作確認はどうやる?
アンチパターン 4
解決方法
会話 5
UIはフラグメントで作って!
はい、やってみます!
あれ、importしようとしたら2つでてきた。。
こっちでいいかな。。
アンチパターン 5
android.app.Fragment
Androidを知る
フラグメント
ビューの生成と管理
Androidを知る
フラグメント
アクティビティは
UIを提供するコンポーネント
Androidを知る
フラグメント
アクティビティは
忙しい
Androidを知る
フラグメント
ビューの生成と管理を
アクティビティから引き離す
アクティビティ フラグメント
コンポーネント担
当
ビュー生成管理
担当
アンチパターン 5
android.app.Fragment
android.support.v4.app.Fragment
アンチパターン 5
android.app.Fragment
→プラットフォームで提供
android.support.v4.app.Fragment
→サポートライブラリで提供
アンチパターン 5
プラットフォームで提供される
クラス→OSバージョンに縛られる
アンチパターン 5
サポートライブラリ版は
更新すれば新しい機能が使える!
アンチパターン 5
解決方法
お願いですから
サポートライブラリ版を
使って!
会話 6
テキスト入力してもらって、その結果を
呼び出し元に伝えるフラグメント作って!
はい、やってみます!
伝えるためにコールバックオブジェクトを
もらえばいいかな。。。?
アンチパターン 6
フラグメントでの
処理結果を
インターフェース経由で
伝えている
アンチパターン 6
フラグメント
A
フラグメント
B
テキスト入力欄
表示してよ
入力されたの
これだよ
アンチパターン 6
NextFragment next = new NextFragment();
next.setCallback(new Callback() {
…
});
アンチパターン 6
NextFragment表示中に
中断すると?
アンチパターン 6
コールバックオブジェクトは
復元できない!
アンチパターン 6
解決方法
setTargetFragment()を
使ってみよう
アンチパターン 6
解決方法
NextFragment next = new NextFragment();
next.setTargetFragment(this, REQUEST1);
アンチパターン 6
解決方法
getTargetFragment()で
呼び出し元がとれる!
Fragment caller = getTargetFragment();
caller.onActivityResult( … );
会話 7
このiOSアプリのAndroid版作ってよ!
はい、やってみます!
見た目とかもiOS版のままで作ればいいよね
アンチパターン 7
見た目や操作感が
iOSそのまんま
アンチパターン 7
アンチパターン 7
アンチパターン 7
アンチパターン 7
下タブがダメとはいえない
アンチパターン 7
トップレベル項目が2つなら
別の表現で!
アンチパターン 7
横スクロールしないのに >
アンチパターン 7
解決方法
まずは
マテリアルデザインに
したがってみよう
アンチパターン 7
解決方法
Androidユーザーは
他のAndroidアプリを触ってる
アンチパターン 7
解決方法
あなたの
iOS版は触っていない!
アンチパターン 7
解決方法
ガイドラインは
ユーザーのためにある
まとめ!
Androidアプリ開発には
アンチパターンたくさん
まとめ!
解決方法を知れば
回避は簡単
まとめ!
知ろう!
まとめ!
その他のアンチパターンは
本を買ってね♪
Thanks!

More Related Content

What's hot

iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~
iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~
iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~一法 山崎
 
「Camelog」Android開発秘話
「Camelog」Android開発秘話「Camelog」Android開発秘話
「Camelog」Android開発秘話Shoya Tsukada
 
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介minneにおけるテスト〜リリース〜リリース後にやっている事の紹介
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介Masataka Kono
 
2015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座12015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座1Hokuto Tateyama
 
[ABC2016S]Android Wear アプリ開発入門
[ABC2016S]Android Wear アプリ開発入門[ABC2016S]Android Wear アプリ開発入門
[ABC2016S]Android Wear アプリ開発入門Kenichi Kambara
 
エンジニアリングするデザイナーが領域を超えて見えたこと
エンジニアリングするデザイナーが領域を超えて見えたことエンジニアリングするデザイナーが領域を超えて見えたこと
エンジニアリングするデザイナーが領域を超えて見えたことMayumi Narisawa
 
スマホだけでアプリが作れる!「Androidでプログラミング」特別講座
スマホだけでアプリが作れる!「Androidでプログラミング」特別講座スマホだけでアプリが作れる!「Androidでプログラミング」特別講座
スマホだけでアプリが作れる!「Androidでプログラミング」特別講座schoowebcampus
 
Google I/O 2017超速報告~最新Google動向 ワイヤレスジャパン2017 AコースAndroid 資料公開
Google I/O 2017超速報告~最新Google動向 ワイヤレスジャパン2017 AコースAndroid 資料公開Google I/O 2017超速報告~最新Google動向 ワイヤレスジャパン2017 AコースAndroid 資料公開
Google I/O 2017超速報告~最新Google動向 ワイヤレスジャパン2017 AコースAndroid 資料公開嶋 是一 (Yoshikazu SHIMA)
 
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...嶋 是一 (Yoshikazu SHIMA)
 
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催嶋 是一 (Yoshikazu SHIMA)
 
Android StudioではじめるAndroidアプリケーション実践入門 先生:日高 正博
Android StudioではじめるAndroidアプリケーション実践入門 先生:日高 正博Android StudioではじめるAndroidアプリケーション実践入門 先生:日高 正博
Android StudioではじめるAndroidアプリケーション実践入門 先生:日高 正博schoowebcampus
 
Cordova利用アプリ開発経験談
Cordova利用アプリ開発経験談Cordova利用アプリ開発経験談
Cordova利用アプリ開発経験談Kenichi Kambara
 
Androidアプリ開発ことはじめ
Androidアプリ開発ことはじめAndroidアプリ開発ことはじめ
Androidアプリ開発ことはじめtakosumipasta
 
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!Shinobu Okano
 
最新AndroidとIoTプラットフォームの今 (WJ2016)
最新AndroidとIoTプラットフォームの今 (WJ2016)最新AndroidとIoTプラットフォームの今 (WJ2016)
最新AndroidとIoTプラットフォームの今 (WJ2016)嶋 是一 (Yoshikazu SHIMA)
 
iPhoneアプリ開発を楽に楽しくするサイトまとめ
iPhoneアプリ開発を楽に楽しくするサイトまとめiPhoneアプリ開発を楽に楽しくするサイトまとめ
iPhoneアプリ開発を楽に楽しくするサイトまとめHiramatsu Ryosuke
 
Flutter2
Flutter2Flutter2
Flutter2asuka y
 
Code igniter + ci phpunit-test
Code igniter + ci phpunit-testCode igniter + ci phpunit-test
Code igniter + ci phpunit-testME iBotch
 
兄弟アプリのロジック共通化とビルド高速化の実験
兄弟アプリのロジック共通化とビルド高速化の実験兄弟アプリのロジック共通化とビルド高速化の実験
兄弟アプリのロジック共通化とビルド高速化の実験ichigotake .
 

What's hot (20)

iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~
iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~
iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~
 
「Camelog」Android開発秘話
「Camelog」Android開発秘話「Camelog」Android開発秘話
「Camelog」Android開発秘話
 
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介minneにおけるテスト〜リリース〜リリース後にやっている事の紹介
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介
 
2015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座12015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座1
 
[ABC2016S]Android Wear アプリ開発入門
[ABC2016S]Android Wear アプリ開発入門[ABC2016S]Android Wear アプリ開発入門
[ABC2016S]Android Wear アプリ開発入門
 
エンジニアリングするデザイナーが領域を超えて見えたこと
エンジニアリングするデザイナーが領域を超えて見えたことエンジニアリングするデザイナーが領域を超えて見えたこと
エンジニアリングするデザイナーが領域を超えて見えたこと
 
スマホだけでアプリが作れる!「Androidでプログラミング」特別講座
スマホだけでアプリが作れる!「Androidでプログラミング」特別講座スマホだけでアプリが作れる!「Androidでプログラミング」特別講座
スマホだけでアプリが作れる!「Androidでプログラミング」特別講座
 
Google I/O 2017超速報告~最新Google動向 ワイヤレスジャパン2017 AコースAndroid 資料公開
Google I/O 2017超速報告~最新Google動向 ワイヤレスジャパン2017 AコースAndroid 資料公開Google I/O 2017超速報告~最新Google動向 ワイヤレスジャパン2017 AコースAndroid 資料公開
Google I/O 2017超速報告~最新Google動向 ワイヤレスジャパン2017 AコースAndroid 資料公開
 
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
 
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
 
Android StudioではじめるAndroidアプリケーション実践入門 先生:日高 正博
Android StudioではじめるAndroidアプリケーション実践入門 先生:日高 正博Android StudioではじめるAndroidアプリケーション実践入門 先生:日高 正博
Android StudioではじめるAndroidアプリケーション実践入門 先生:日高 正博
 
Cordova利用アプリ開発経験談
Cordova利用アプリ開発経験談Cordova利用アプリ開発経験談
Cordova利用アプリ開発経験談
 
Androidアプリ開発ことはじめ
Androidアプリ開発ことはじめAndroidアプリ開発ことはじめ
Androidアプリ開発ことはじめ
 
ABC2016 Spring 春の大LT祭り 「Android N」
ABC2016 Spring 春の大LT祭り 「Android N」ABC2016 Spring 春の大LT祭り 「Android N」
ABC2016 Spring 春の大LT祭り 「Android N」
 
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
 
最新AndroidとIoTプラットフォームの今 (WJ2016)
最新AndroidとIoTプラットフォームの今 (WJ2016)最新AndroidとIoTプラットフォームの今 (WJ2016)
最新AndroidとIoTプラットフォームの今 (WJ2016)
 
iPhoneアプリ開発を楽に楽しくするサイトまとめ
iPhoneアプリ開発を楽に楽しくするサイトまとめiPhoneアプリ開発を楽に楽しくするサイトまとめ
iPhoneアプリ開発を楽に楽しくするサイトまとめ
 
Flutter2
Flutter2Flutter2
Flutter2
 
Code igniter + ci phpunit-test
Code igniter + ci phpunit-testCode igniter + ci phpunit-test
Code igniter + ci phpunit-test
 
兄弟アプリのロジック共通化とビルド高速化の実験
兄弟アプリのロジック共通化とビルド高速化の実験兄弟アプリのロジック共通化とビルド高速化の実験
兄弟アプリのロジック共通化とビルド高速化の実験
 

Similar to 20170804 Builderscon Androidアプリ開発アンチパターン

JXUG Windowsアプリを開発している皆さん、C#でスマホアプリ開発を試してみませんか?ハンズオン
JXUG Windowsアプリを開発している皆さん、C#でスマホアプリ開発を試してみませんか?ハンズオンJXUG Windowsアプリを開発している皆さん、C#でスマホアプリ開発を試してみませんか?ハンズオン
JXUG Windowsアプリを開発している皆さん、C#でスマホアプリ開発を試してみませんか?ハンズオンTomohiro Suzuki
 
モバイルアプリ開発未経験でJavaもKotlinも触ったことがない人とFluxアーキテクチャでAndroidアプリ開発する話
モバイルアプリ開発未経験でJavaもKotlinも触ったことがない人とFluxアーキテクチャでAndroidアプリ開発する話モバイルアプリ開発未経験でJavaもKotlinも触ったことがない人とFluxアーキテクチャでAndroidアプリ開発する話
モバイルアプリ開発未経験でJavaもKotlinも触ったことがない人とFluxアーキテクチャでAndroidアプリ開発する話Kiyotaka Soranaka
 
Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-EdoSwiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-EdoMegumi Otani(Czenhe)
 
とあるサイボウズのAndroidエンジニアのお仕事
とあるサイボウズのAndroidエンジニアのお仕事とあるサイボウズのAndroidエンジニアのお仕事
とあるサイボウズのAndroidエンジニアのお仕事Cybozu, Inc.
 
Webエンジニアのためのandroidアプリ開発
Webエンジニアのためのandroidアプリ開発Webエンジニアのためのandroidアプリ開発
Webエンジニアのためのandroidアプリ開発Soudai Sone
 
iOS開発を楽しむ最初の一歩!デリゲートをなるべく分かりやすく!
iOS開発を楽しむ最初の一歩!デリゲートをなるべく分かりやすく!iOS開発を楽しむ最初の一歩!デリゲートをなるべく分かりやすく!
iOS開発を楽しむ最初の一歩!デリゲートをなるべく分かりやすく!Kanako Kobayashi
 
あの手この手で楽して覚えるAndroid開発Tips
あの手この手で楽して覚えるAndroid開発Tipsあの手この手で楽して覚えるAndroid開発Tips
あの手この手で楽して覚えるAndroid開発TipsYoshihiro Wada
 
Movable Type Data API連携!店舗情報を地図に表示させよう!
Movable Type Data API連携!店舗情報を地図に表示させよう!Movable Type Data API連携!店舗情報を地図に表示させよう!
Movable Type Data API連携!店舗情報を地図に表示させよう!Kanako Kobayashi
 
PHP開発からAndroid開発をするようになって学んだWebとモバイルの違い
PHP開発からAndroid開発をするようになって学んだWebとモバイルの違いPHP開発からAndroid開発をするようになって学んだWebとモバイルの違い
PHP開発からAndroid開発をするようになって学んだWebとモバイルの違いMasataka Kono
 
福井で「しあわせデザイナー」になるために
福井で「しあわせデザイナー」になるために福井で「しあわせデザイナー」になるために
福井で「しあわせデザイナー」になるためにMiho Yamamori
 
Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~
Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~
Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~Masahiro Hidaka
 
Weekend Androidのススメ
Weekend AndroidのススメWeekend Androidのススメ
Weekend AndroidのススメSuzuki Junko
 
モダンなAndroidアプリ開発勉強会
モダンなAndroidアプリ開発勉強会モダンなAndroidアプリ開発勉強会
モダンなAndroidアプリ開発勉強会Shoichi Kakizaki
 
印刷APIのサポート事情 - DevRel Meetup in Tokyo #17
印刷APIのサポート事情 - DevRel Meetup in Tokyo #17印刷APIのサポート事情 - DevRel Meetup in Tokyo #17
印刷APIのサポート事情 - DevRel Meetup in Tokyo #17Yasunori Kihara
 
Androidが変えたもの
Androidが変えたものAndroidが変えたもの
Androidが変えたものYuki Yamakido
 
HTML5でハイブリットなアプリ開発をアレしてみた件
HTML5でハイブリットなアプリ開発をアレしてみた件HTML5でハイブリットなアプリ開発をアレしてみた件
HTML5でハイブリットなアプリ開発をアレしてみた件Tatsuo Kurita
 
[デブサミ2015]Androidで広がる世界&エンジニアとしての歩み
[デブサミ2015]Androidで広がる世界&エンジニアとしての歩み[デブサミ2015]Androidで広がる世界&エンジニアとしての歩み
[デブサミ2015]Androidで広がる世界&エンジニアとしての歩みKenichi Kambara
 
クリスマスもコードを書きたいアナタに送る! 次世代エンジニアの技術の学び方とは? 〜Qiitaの投稿データから読み解く、2016年の技術トレンド〜
クリスマスもコードを書きたいアナタに送る! 次世代エンジニアの技術の学び方とは? 〜Qiitaの投稿データから読み解く、2016年の技術トレンド〜クリスマスもコードを書きたいアナタに送る! 次世代エンジニアの技術の学び方とは? 〜Qiitaの投稿データから読み解く、2016年の技術トレンド〜
クリスマスもコードを書きたいアナタに送る! 次世代エンジニアの技術の学び方とは? 〜Qiitaの投稿データから読み解く、2016年の技術トレンド〜Takuya Oikawa
 
HTML5時代のWebデザイン
HTML5時代のWebデザインHTML5時代のWebデザイン
HTML5時代のWebデザインmasaaki komori
 
クロスプラットフォーム開発環境のすヽめ
クロスプラットフォーム開発環境のすヽめクロスプラットフォーム開発環境のすヽめ
クロスプラットフォーム開発環境のすヽめYuki Yazaki
 

Similar to 20170804 Builderscon Androidアプリ開発アンチパターン (20)

JXUG Windowsアプリを開発している皆さん、C#でスマホアプリ開発を試してみませんか?ハンズオン
JXUG Windowsアプリを開発している皆さん、C#でスマホアプリ開発を試してみませんか?ハンズオンJXUG Windowsアプリを開発している皆さん、C#でスマホアプリ開発を試してみませんか?ハンズオン
JXUG Windowsアプリを開発している皆さん、C#でスマホアプリ開発を試してみませんか?ハンズオン
 
モバイルアプリ開発未経験でJavaもKotlinも触ったことがない人とFluxアーキテクチャでAndroidアプリ開発する話
モバイルアプリ開発未経験でJavaもKotlinも触ったことがない人とFluxアーキテクチャでAndroidアプリ開発する話モバイルアプリ開発未経験でJavaもKotlinも触ったことがない人とFluxアーキテクチャでAndroidアプリ開発する話
モバイルアプリ開発未経験でJavaもKotlinも触ったことがない人とFluxアーキテクチャでAndroidアプリ開発する話
 
Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-EdoSwiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-Edo
 
とあるサイボウズのAndroidエンジニアのお仕事
とあるサイボウズのAndroidエンジニアのお仕事とあるサイボウズのAndroidエンジニアのお仕事
とあるサイボウズのAndroidエンジニアのお仕事
 
Webエンジニアのためのandroidアプリ開発
Webエンジニアのためのandroidアプリ開発Webエンジニアのためのandroidアプリ開発
Webエンジニアのためのandroidアプリ開発
 
iOS開発を楽しむ最初の一歩!デリゲートをなるべく分かりやすく!
iOS開発を楽しむ最初の一歩!デリゲートをなるべく分かりやすく!iOS開発を楽しむ最初の一歩!デリゲートをなるべく分かりやすく!
iOS開発を楽しむ最初の一歩!デリゲートをなるべく分かりやすく!
 
あの手この手で楽して覚えるAndroid開発Tips
あの手この手で楽して覚えるAndroid開発Tipsあの手この手で楽して覚えるAndroid開発Tips
あの手この手で楽して覚えるAndroid開発Tips
 
Movable Type Data API連携!店舗情報を地図に表示させよう!
Movable Type Data API連携!店舗情報を地図に表示させよう!Movable Type Data API連携!店舗情報を地図に表示させよう!
Movable Type Data API連携!店舗情報を地図に表示させよう!
 
PHP開発からAndroid開発をするようになって学んだWebとモバイルの違い
PHP開発からAndroid開発をするようになって学んだWebとモバイルの違いPHP開発からAndroid開発をするようになって学んだWebとモバイルの違い
PHP開発からAndroid開発をするようになって学んだWebとモバイルの違い
 
福井で「しあわせデザイナー」になるために
福井で「しあわせデザイナー」になるために福井で「しあわせデザイナー」になるために
福井で「しあわせデザイナー」になるために
 
Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~
Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~
Devsumi2013 15-C-1 実践!スマホアプリのマネタイズ!! ~マーケット把握術と iPhone&Androidプログラミングテクニック~
 
Weekend Androidのススメ
Weekend AndroidのススメWeekend Androidのススメ
Weekend Androidのススメ
 
モダンなAndroidアプリ開発勉強会
モダンなAndroidアプリ開発勉強会モダンなAndroidアプリ開発勉強会
モダンなAndroidアプリ開発勉強会
 
印刷APIのサポート事情 - DevRel Meetup in Tokyo #17
印刷APIのサポート事情 - DevRel Meetup in Tokyo #17印刷APIのサポート事情 - DevRel Meetup in Tokyo #17
印刷APIのサポート事情 - DevRel Meetup in Tokyo #17
 
Androidが変えたもの
Androidが変えたものAndroidが変えたもの
Androidが変えたもの
 
HTML5でハイブリットなアプリ開発をアレしてみた件
HTML5でハイブリットなアプリ開発をアレしてみた件HTML5でハイブリットなアプリ開発をアレしてみた件
HTML5でハイブリットなアプリ開発をアレしてみた件
 
[デブサミ2015]Androidで広がる世界&エンジニアとしての歩み
[デブサミ2015]Androidで広がる世界&エンジニアとしての歩み[デブサミ2015]Androidで広がる世界&エンジニアとしての歩み
[デブサミ2015]Androidで広がる世界&エンジニアとしての歩み
 
クリスマスもコードを書きたいアナタに送る! 次世代エンジニアの技術の学び方とは? 〜Qiitaの投稿データから読み解く、2016年の技術トレンド〜
クリスマスもコードを書きたいアナタに送る! 次世代エンジニアの技術の学び方とは? 〜Qiitaの投稿データから読み解く、2016年の技術トレンド〜クリスマスもコードを書きたいアナタに送る! 次世代エンジニアの技術の学び方とは? 〜Qiitaの投稿データから読み解く、2016年の技術トレンド〜
クリスマスもコードを書きたいアナタに送る! 次世代エンジニアの技術の学び方とは? 〜Qiitaの投稿データから読み解く、2016年の技術トレンド〜
 
HTML5時代のWebデザイン
HTML5時代のWebデザインHTML5時代のWebデザイン
HTML5時代のWebデザイン
 
クロスプラットフォーム開発環境のすヽめ
クロスプラットフォーム開発環境のすヽめクロスプラットフォーム開発環境のすヽめ
クロスプラットフォーム開発環境のすヽめ
 

20170804 Builderscon Androidアプリ開発アンチパターン