SlideShare une entreprise Scribd logo
1  sur  63
初学者に嬉しい
Android開発環境
(あとMVCとか)
Hiroyuki Kusu ( @hkusu_ )
株式会社ゆめみ
2015/4/25 DroidKaigi
自己紹介
・元々はサーバサイドエンジニア
・SE職/マネジメント職が長かった
(最近、技術職にもどった)
・Android はそれほど長くない
・ほかには JavaScript などを
やっていきたい(希望)
アウトライン
① 環境・ライブラリ
② アプリケーション構成(MVC)
③ 学習リソース
※ 前提として、ゲームやハードウェア/OS機能を使うもの
ではなく、WEBサービス的 な Android アプリの開発
アウトライン
① 環境・ライブラリ
② アプリケーション構成(MVC)
③ 学習リソース
環境
・いまからやるなら Android Studio 一択
・JetBrains 社製。WebStorm、RubyMine らと
同じ感触でさわれる
・iOS 用は AppCode というのがある
・補完とかリファクタ機能とかもすごい
・Gradle 便利(らしい)
IDE
何も設定しなくても
Android Studio がいろ
いろ教えてくれる
困ったら [shift] キー 2回押し
・Genymotion を使う
・VirtualBox 上で動くので速い
・Android Studio 用のプラグインあわせて
シミュレータ
ライブラリ
・レイアウトXML上のViewとの関連づけ
・Viewのインベント取得
Butter Knife
Android Studio 用のプラグイン
・手間が減るというより、Fragmentクラス
の冒頭に利用するViewが定義されるという
コードスタイルが視覚的に分かりやすい
・リスナーをセットする煩雑なコードが減る
・他には AndroidAnnotations がある
・もっと色々できる
(ただ、できすぎて初学者は混乱するかも)
https://github.com/greenrobot/EventBus から転載
EventBus
・アプリケーション内の任意のインスタンス
に任意の通知を送れる
・データも詰め込め、スレッドも飛び越える
・通知を受け取る側が死んでいてもアプリは
落ちない
・イベントを送る側
・インベントを受け取る側
・WEB-API を叩いて結果を受け取る場合
・画像の読み込みは Picasso を利用する
Retorofit OkHttp Gson
・データを保存する必要がある場合
・SQL は直に書かずに Active Android を使う
・ほかには Realm
・SQLiteではなく独自データストア
ORM
アウトライン
① 環境・ライブラリ
② アプリケーション構成(MVC)
③ 学習リソース
MVC構成が分かりやすく、
破綻しないと思う
Model
View Controller
① GUIイベント
③ 描画依頼
④ データ取り出し
② モデル操作・更新
データの保持
&ビジネスロジック
(WEB-APIを発行するのは
Model)
Model
View Controller
① GUIイベント
③ 描画依頼
Fragment
(or Activity)
レイアウトXML
View、ViewGroupクラス
③④は
Controllerを経由する
Androidの場合
② モデル操作・更新
データの保持
&ビジネスロジック
(WEB-APIを発行するのは
Model)
④ データ取り出し
普通のJavaクラス
Model
View Controller
① GUIイベント
② モデル操作・更新
③ 描画依頼
Fragment
(or Activity)
普通のJavaクラス
③④は
Controllerを経由する
Androidの場合
Event Bus
ORM
Retrofit 等
Butter Knife
データの保持
&ビジネスロジック
(WEB-APIを発行するのは
Model)
レイアウトXML
View、ViewGroupクラス
④ データ取り出し
Model (普通のJavaクラス)
・データの保持(変数)とデータの操作メソッド
・Controller からこちらに追い出す
・イベント取得やViewパーツの操作は
しない
Fragment
Fragment
Fragment
Model
長寿
短命
インスタンスの参照
WEB-APIの発行など
複数の画面で使いまわす場合や、時間が
かかる処理をある場合
・長寿の Model はシングルトンに
・インスタンスの参照の取得
・データ構造を表現するクラス(Entity)を
用意しておく
・Modelで扱うListデータの要素とする
・ORM(Active Android、Realm)や Gson を利用する
場合は、それらが提供するものを使う
Model
View Controller
① GUIイベント
② モデル操作・更新
③ 描画依頼
④ データ取り出し
データの保持
&ビジネスロジック
(WEB-APIを発行するのは
Model)
Fragment(or Activity) のコード
・Model側では、データが変更されたら EventBus の
イベントを投げるようにしておく
・Fragment(or Activity)では、Model のデータで view
の表示を洗い替えるようなメソッドを用意
⇒ Model が更新されたら自動的にview が更新される
コールバックしたり Observable を
使ってもよいが..
・コールバックはコールバック先が
落ちている可能性がある
・Fragment(or Activity)なら尚更
・Observable より EventBus 使った方が楽
View レイアウトXML、View、ViewGroup
・クラスを作るときはイベントは処理
させない
・それは Controller の仕事
・レイアウトXMLにもイベントに関するもの
は定義しない(onClick など)
・(できるだけ)コードでViewの生成や設定は
行わない
Controller Fragment (Activity)
Activity
Activity
Activity
Activity
画面遷移的なものは Activity をインテントで
切り替えるのではなくて、
Activity
Fragment
Fragment
Fragment
Fragmentを切り替える(その方が楽)
※ただしアプリケーションによる
コンテナ
・アプリケーションに Activity はひとつ
・画面1つに対して Fragment はひとつ
(ただし パーツの再利用やタブレット向けの場合は
その限りではない)
・Fragment on Fragment はできればやらない
Fragment が肥大化する問題
・目安として500行〜1000行を超えてきたら?
・Fragment を サブ Controller や サブ Model
へ分割する
・Adapter 類はインナークラスから追い出す
Fragment サブ Controller クラス
new して利用
・Java 的に 通常のクラス(not Fragment)
・Fragmentと同名のライフサイクル
メソッドを実装して操作する
・イベント取得やViewパーツの操作
含めて良い
・呼び出し元の Fragment と同じ寿命
サブ Controller への分割
Fragment サブ Model クラス
new して利用
・データとビジネスロジック
・イベント取得やViewパーツの操作
含めてはダメ
・これも呼び出し元の Fragment と同じ寿命
サブ Model への分割
https://github.com/hkusu/android-mvc-sample
だいたいここまでの
構成でサンプルを作った。
アウトライン
① 環境・ライブラリ
② アプリケーション構成(MVC)
③ 学習リソース
書籍
・AndroidエンジニアのためのモダンJava
http://www.amazon.co.jp/dp/477415878X
・Java未経験者向け。とりあえずこれ一冊でも十分
・Java言語で学ぶデザインパターン入門
http://www.amazon.co.jp/dp/4797327030
・EFFECTIVE JAVA
http://www.amazon.co.jp/dp/4621066056
書籍(Java)
書籍(Android)
・AndroidStudioではじめるAndroidプログラミング入門
http://www.amazon.co.jp/dp/4798041025
・Androidプログラミングバイブル
http://www.amazon.co.jp/dp/4883378063
・Android SDK逆引きハンドブック
http://www.amazon.co.jp/dp/486354104X
書籍(Android:UI)
・Android Pattern Cookbook
http://www.amazon.co.jp/dp/4844335650
・Android UI Cookbook for 4.0 ICS
http://www.amazon.co.jp/dp/4844331744
・Android Layout Cookbook
http://www.amazon.co.jp/dp/4844329871
参考になるソース
Android Studio の
プロジェクト作成時の雛形
Android Studio で自動生成
できる Fragment の雛形
GitHub(https://github.com/googlesamples)で公開されているものと同じ
Googleのサンプル
・まずはドットインストール
・mixiさんのトレーニング資料は慣れてきてから見る
(初学者には少し敷居がある)
・ハードウェアやOSまわりの機能は後回し
(必要になったら調べる、ぐらいの感覚で)
・通信、SQLiteまわりはライブラリを使う前提で
(生で書く機会はそんなにない、と思う)
・端末の向きを固定(回転させない)
(Activity や Fragment のライフサイクルや状態の保存がややこしくなる)
・タブレットの2ペインレイアウトやらない
(1画面1Fragmentが最初はやりやすい)
初学者向けの学習方法
おわり
以降、予備スライド
Applicationクラス
・初期化処理やインスタンスの参照の保持に
・ここで参照してるとGCされないので注意
・レイアウトに関する固定値は、教科書
どおり res フォルダ配下の XML で管理する
・ロジックに関するものは普通に固定値
クラスを作って public static final で定義する
・その Fragment でのみ利用するものはその Fragment
に書いてもよいと思う
固定値
動的に生成するものは static メソッドを用意する
・便利関数的なものは、それ用のクラスを
作り、static なメソッドを定義する
・手続き型言語の関数的なものなので、この
クラスでは状態は保持しない
Utility系の便利関数
Activity、Fragment 内では、他の Activity、
Fragment のインスタンスの参照を取得できる
ようになっていてる
参照さえ取得してしまえば、そのインスタン
ス(Activity、Fragment)のメソッドを実行できる
独自のリスナークラスを作成して利用すると、
匿名クラスの定義でコードが煩雑になるのを
防ぎ、また再利用や値の保持(コンストラクタ
で渡す)ができる

Contenu connexe

Tendances

.NET最先端技術によるハイパフォーマンスウェブアプリケーション
.NET最先端技術によるハイパフォーマンスウェブアプリケーション.NET最先端技術によるハイパフォーマンスウェブアプリケーション
.NET最先端技術によるハイパフォーマンスウェブアプリケーション
Yoshifumi Kawai
 

Tendances (20)

クロスドメインアクセスを理解してWeb APIを楽しく使おう
クロスドメインアクセスを理解してWeb APIを楽しく使おうクロスドメインアクセスを理解してWeb APIを楽しく使おう
クロスドメインアクセスを理解してWeb APIを楽しく使おう
 
iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い
iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞いiOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い
iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い
 
節子、それViewControllerやない...、FatViewControllerや...。
節子、それViewControllerやない...、FatViewControllerや...。節子、それViewControllerやない...、FatViewControllerや...。
節子、それViewControllerやない...、FatViewControllerや...。
 
Apache EventMesh を使ってみた
Apache EventMesh を使ってみたApache EventMesh を使ってみた
Apache EventMesh を使ってみた
 
C++からWebRTC (DataChannel)を利用する
C++からWebRTC (DataChannel)を利用するC++からWebRTC (DataChannel)を利用する
C++からWebRTC (DataChannel)を利用する
 
なぜ人は必死でjQueryを捨てようとしているのか
なぜ人は必死でjQueryを捨てようとしているのかなぜ人は必死でjQueryを捨てようとしているのか
なぜ人は必死でjQueryを捨てようとしているのか
 
どこに何を書くのか?
どこに何を書くのか?どこに何を書くのか?
どこに何を書くのか?
 
恐怖!シェルショッカーの POSIX原理主義シェルスクリプト
恐怖!シェルショッカーの POSIX原理主義シェルスクリプト恐怖!シェルショッカーの POSIX原理主義シェルスクリプト
恐怖!シェルショッカーの POSIX原理主義シェルスクリプト
 
私がドメイン駆動設計をやる理由
私がドメイン駆動設計をやる理由私がドメイン駆動設計をやる理由
私がドメイン駆動設計をやる理由
 
.NET最先端技術によるハイパフォーマンスウェブアプリケーション
.NET最先端技術によるハイパフォーマンスウェブアプリケーション.NET最先端技術によるハイパフォーマンスウェブアプリケーション
.NET最先端技術によるハイパフォーマンスウェブアプリケーション
 
Pythonのシグナル処理
Pythonのシグナル処理Pythonのシグナル処理
Pythonのシグナル処理
 
オントロジー工学に基づくセマンティック技術(1)オントロジー工学入門
オントロジー工学に基づくセマンティック技術(1)オントロジー工学入門オントロジー工学に基づくセマンティック技術(1)オントロジー工学入門
オントロジー工学に基づくセマンティック技術(1)オントロジー工学入門
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること
 
ほぼ初心者からのマッチングサービス開発のリアル Feat. 嫁
ほぼ初心者からのマッチングサービス開発のリアル Feat. 嫁 ほぼ初心者からのマッチングサービス開発のリアル Feat. 嫁
ほぼ初心者からのマッチングサービス開発のリアル Feat. 嫁
 
第2回ナレッジグラフ推論チャレンジ2019の紹介(11/22, SWO研究会)
第2回ナレッジグラフ推論チャレンジ2019の紹介(11/22, SWO研究会)第2回ナレッジグラフ推論チャレンジ2019の紹介(11/22, SWO研究会)
第2回ナレッジグラフ推論チャレンジ2019の紹介(11/22, SWO研究会)
 
世界一わかりやすいClean Architecture - DroidKaigiバージョン
世界一わかりやすいClean Architecture - DroidKaigiバージョン世界一わかりやすいClean Architecture - DroidKaigiバージョン
世界一わかりやすいClean Architecture - DroidKaigiバージョン
 
UnityとROSの連携について
UnityとROSの連携についてUnityとROSの連携について
UnityとROSの連携について
 
オントロジーとは?
オントロジーとは?オントロジーとは?
オントロジーとは?
 
第三回IoT関連技術勉強会 データ通信編
第三回IoT関連技術勉強会 データ通信編第三回IoT関連技術勉強会 データ通信編
第三回IoT関連技術勉強会 データ通信編
 
RESTfulとは
RESTfulとはRESTfulとは
RESTfulとは
 

En vedette

Android mvc-frameworkが凄くて泣きそう
Android mvc-frameworkが凄くて泣きそうAndroid mvc-frameworkが凄くて泣きそう
Android mvc-frameworkが凄くて泣きそう
naoyuki miyata
 
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
Yuki Anzai
 
Isucon makers casual talks
Isucon makers casual talksIsucon makers casual talks
Isucon makers casual talks
Masahiro Nagano
 

En vedette (20)

Android mvc-frameworkが凄くて泣きそう
Android mvc-frameworkが凄くて泣きそうAndroid mvc-frameworkが凄くて泣きそう
Android mvc-frameworkが凄くて泣きそう
 
Android学ぶを君へ。生き抜くためのナレッジ共有
Android学ぶを君へ。生き抜くためのナレッジ共有Android学ぶを君へ。生き抜くためのナレッジ共有
Android学ぶを君へ。生き抜くためのナレッジ共有
 
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
Activity, Fragment, CustomView の使い分け - マッチョなActivityにさよならする方法 -
 
絶対落ちないアプリの作り方
絶対落ちないアプリの作り方絶対落ちないアプリの作り方
絶対落ちないアプリの作り方
 
Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発
 
明日から使えるRxjava頻出パターン (Droid kaigi 2016)
明日から使えるRxjava頻出パターン (Droid kaigi 2016)明日から使えるRxjava頻出パターン (Droid kaigi 2016)
明日から使えるRxjava頻出パターン (Droid kaigi 2016)
 
Google Maps を使ったアプリを作ってみた
Google Maps を使ったアプリを作ってみたGoogle Maps を使ったアプリを作ってみた
Google Maps を使ったアプリを作ってみた
 
KotlinつかってQiitaクライアント作った時の話
KotlinつかってQiitaクライアント作った時の話KotlinつかってQiitaクライアント作った時の話
KotlinつかってQiitaクライアント作った時の話
 
Xcode tips
Xcode tipsXcode tips
Xcode tips
 
SQLiteDatabaseを無理矢理覗く
SQLiteDatabaseを無理矢理覗くSQLiteDatabaseを無理矢理覗く
SQLiteDatabaseを無理矢理覗く
 
Isucon makers casual talks
Isucon makers casual talksIsucon makers casual talks
Isucon makers casual talks
 
AppStore申請を一式まるっと自動化する
AppStore申請を一式まるっと自動化するAppStore申請を一式まるっと自動化する
AppStore申請を一式まるっと自動化する
 
モダンなAndroidアプリ開発勉強会
モダンなAndroidアプリ開発勉強会モダンなAndroidアプリ開発勉強会
モダンなAndroidアプリ開発勉強会
 
殺しても死なないアプリ 〜Core Bluetooth の「状態の保存と復元」機能〜
殺しても死なないアプリ 〜Core Bluetooth の「状態の保存と復元」機能〜殺しても死なないアプリ 〜Core Bluetooth の「状態の保存と復元」機能〜
殺しても死なないアプリ 〜Core Bluetooth の「状態の保存と復元」機能〜
 
意外と苦労する、一部の画面のみ ランドスケープ表示を許容する方法 (potatotips 第17回)
意外と苦労する、一部の画面のみ ランドスケープ表示を許容する方法 (potatotips 第17回)意外と苦労する、一部の画面のみ ランドスケープ表示を許容する方法 (potatotips 第17回)
意外と苦労する、一部の画面のみ ランドスケープ表示を許容する方法 (potatotips 第17回)
 
OnActivityResult - おまえら!もうonActivityResultでswitchとif書く時代は終わりだぞ!
OnActivityResult - おまえら!もうonActivityResultでswitchとif書く時代は終わりだぞ!OnActivityResult - おまえら!もうonActivityResultでswitchとif書く時代は終わりだぞ!
OnActivityResult - おまえら!もうonActivityResultでswitchとif書く時代は終わりだぞ!
 
Model View Presenter for Android
Model View Presenter for AndroidModel View Presenter for Android
Model View Presenter for Android
 
DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法
 
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
 
Master of Canvas
Master of CanvasMaster of Canvas
Master of Canvas
 

Similaire à 【DroidKaigi2015】初学者に嬉しいAndroid開発環境(あとMVCとか)

HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解
Monaca
 
Windowsストアアプリ開発ハンズオントレーニングに行ってきました 2012-09-22-lt
Windowsストアアプリ開発ハンズオントレーニングに行ってきました 2012-09-22-ltWindowsストアアプリ開発ハンズオントレーニングに行ってきました 2012-09-22-lt
Windowsストアアプリ開発ハンズオントレーニングに行ってきました 2012-09-22-lt
Tomokazu Kizawa
 

Similaire à 【DroidKaigi2015】初学者に嬉しいAndroid開発環境(あとMVCとか) (20)

Android studio で行ってみよう!!
Android studio で行ってみよう!!Android studio で行ってみよう!!
Android studio で行ってみよう!!
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
 
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
 
Androidアプリケーション開発中級研修 前編
Androidアプリケーション開発中級研修 前編Androidアプリケーション開発中級研修 前編
Androidアプリケーション開発中級研修 前編
 
クロスプラットフォーム開発入門
クロスプラットフォーム開発入門クロスプラットフォーム開発入門
クロスプラットフォーム開発入門
 
入門者用Android Studio Hands on
入門者用Android Studio Hands on入門者用Android Studio Hands on
入門者用Android Studio Hands on
 
自己紹介とC# Devkitについて.pptx
自己紹介とC# Devkitについて.pptx自己紹介とC# Devkitについて.pptx
自己紹介とC# Devkitについて.pptx
 
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
 
HTML5/JavaScriptで作るAndroidアプリ開発seminar
HTML5/JavaScriptで作るAndroidアプリ開発seminarHTML5/JavaScriptで作るAndroidアプリ開発seminar
HTML5/JavaScriptで作るAndroidアプリ開発seminar
 
GBDC 勉強会 #2 Android Studio 実践レポート
GBDC 勉強会 #2 Android Studio 実践レポートGBDC 勉強会 #2 Android Studio 実践レポート
GBDC 勉強会 #2 Android Studio 実践レポート
 
ソニーでElectronアプリをリリースしてみた
ソニーでElectronアプリをリリースしてみたソニーでElectronアプリをリリースしてみた
ソニーでElectronアプリをリリースしてみた
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解
 
初心者向けデバイスドライバ講座 (2)
初心者向けデバイスドライバ講座 (2) 初心者向けデバイスドライバ講座 (2)
初心者向けデバイスドライバ講座 (2)
 
Androidプログラミング入門
Androidプログラミング入門Androidプログラミング入門
Androidプログラミング入門
 
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
 
.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み.NET Coreから概観する.NETのOSSへの取り組み
.NET Coreから概観する.NETのOSSへの取り組み
 
Cod2012 デバッグ講座
Cod2012 デバッグ講座Cod2012 デバッグ講座
Cod2012 デバッグ講座
 
Windowsストアアプリ開発ハンズオントレーニングに行ってきました 2012-09-22-lt
Windowsストアアプリ開発ハンズオントレーニングに行ってきました 2012-09-22-ltWindowsストアアプリ開発ハンズオントレーニングに行ってきました 2012-09-22-lt
Windowsストアアプリ開発ハンズオントレーニングに行ってきました 2012-09-22-lt
 
Visual Studio Code あれこれ
Visual Studio Code あれこれVisual Studio Code あれこれ
Visual Studio Code あれこれ
 
Visual Studio 2017 事はじめ
Visual Studio 2017 事はじめVisual Studio 2017 事はじめ
Visual Studio 2017 事はじめ
 

Plus de Hiroyuki Kusu

エンジニアにMacを薦める理由
エンジニアにMacを薦める理由エンジニアにMacを薦める理由
エンジニアにMacを薦める理由
Hiroyuki Kusu
 
ソーシャルアプリで人を熱中させる要素を説明する一枚絵
ソーシャルアプリで人を熱中させる要素を説明する一枚絵ソーシャルアプリで人を熱中させる要素を説明する一枚絵
ソーシャルアプリで人を熱中させる要素を説明する一枚絵
Hiroyuki Kusu
 

Plus de Hiroyuki Kusu (10)

【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する
【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する
【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する
 
【YAPC::Asia Hachioji 2016】ES2015のclassでアプリケーションを書いてみた話
【YAPC::Asia Hachioji 2016】ES2015のclassでアプリケーションを書いてみた話【YAPC::Asia Hachioji 2016】ES2015のclassでアプリケーションを書いてみた話
【YAPC::Asia Hachioji 2016】ES2015のclassでアプリケーションを書いてみた話
 
【Potatotips #30】RxJavaを活用する3つのユースケース
【Potatotips #30】RxJavaを活用する3つのユースケース【Potatotips #30】RxJavaを活用する3つのユースケース
【Potatotips #30】RxJavaを活用する3つのユースケース
 
【Potatotips #26】Replace EventBus with RxJava/RxAndroid
【Potatotips #26】Replace EventBus with RxJava/RxAndroid【Potatotips #26】Replace EventBus with RxJava/RxAndroid
【Potatotips #26】Replace EventBus with RxJava/RxAndroid
 
【Potatotips #23】手軽にHTTPでJSONにアクセスできる環境を用意する
【Potatotips #23】手軽にHTTPでJSONにアクセスできる環境を用意する【Potatotips #23】手軽にHTTPでJSONにアクセスできる環境を用意する
【Potatotips #23】手軽にHTTPでJSONにアクセスできる環境を用意する
 
【Roppongi.aar #1】Activity/FragmentからControllerへ処理を委譲する
【Roppongi.aar #1】Activity/FragmentからControllerへ処理を委譲する【Roppongi.aar #1】Activity/FragmentからControllerへ処理を委譲する
【Roppongi.aar #1】Activity/FragmentからControllerへ処理を委譲する
 
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
【eLV勉強会】AngularJSでのモバイルフロントエンド開発【eLV勉強会】AngularJSでのモバイルフロントエンド開発
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
 
エンジニアにMacを薦める理由
エンジニアにMacを薦める理由エンジニアにMacを薦める理由
エンジニアにMacを薦める理由
 
ソーシャルアプリで人を熱中させる要素を説明する一枚絵
ソーシャルアプリで人を熱中させる要素を説明する一枚絵ソーシャルアプリで人を熱中させる要素を説明する一枚絵
ソーシャルアプリで人を熱中させる要素を説明する一枚絵
 
【ABC2014Spring LT】AngularJSでWEBアプリ開発
【ABC2014Spring LT】AngularJSでWEBアプリ開発【ABC2014Spring LT】AngularJSでWEBアプリ開発
【ABC2014Spring LT】AngularJSでWEBアプリ開発
 

【DroidKaigi2015】初学者に嬉しいAndroid開発環境(あとMVCとか)

Notes de l'éditeur

  1. ----- 会議メモ (2015/04/24 15:52) ----- ああああああ
  2. ----- 会議メモ (2015/04/24 16:24) ----- 標準のシミュレータが遅い 実機を用意できないなら
  3. ----- 会議メモ (2015/04/24 16:24) ----- 初学者は JSON まわりやってるとしんどい
  4. ----- 会議メモ (2015/04/24 16:24) ----- 生で扱うのはしんどい
  5. ----- 会議メモ (2015/04/24 16:38) ----- 時間がかかる処理でもあとから結果をとりにいったり、 複数画面で同じデータを使うことができる