Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
kan-notice
PDF, PPTX
2,053 views
Androidアプリ開発にクリーンアーキテクチャを取り入れよう(OSS編)
アーキテクチャ編の続編。クライアント企業様向け資料をアップロードしています。
Software
◦
Read more
3
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 11
2
/ 11
3
/ 11
4
/ 11
5
/ 11
6
/ 11
7
/ 11
8
/ 11
9
/ 11
10
/ 11
11
/ 11
More Related Content
PDF
Laravel5.1をつかったWebアプリケーション開発
by
kan-notice
PPTX
Laravelを使ってみた
by
Jaeseop Jeong
PPTX
〜laravel で学ぶ MVC
by
mikakane
PPTX
Phpフレームワーク 「laravel」でブログを作ろう
by
Syouta Tada
PDF
2015/11/15 Javaでwebアプリケーション入門
by
Asami Abe
PDF
SpringOne Platform 2018 全体報告
by
apkiban
PDF
Laravel 5.1 LTSでサービスを作る
by
infinite_loop
PDF
究極にして至高のWAF
by
Yuki Ishikawa
Laravel5.1をつかったWebアプリケーション開発
by
kan-notice
Laravelを使ってみた
by
Jaeseop Jeong
〜laravel で学ぶ MVC
by
mikakane
Phpフレームワーク 「laravel」でブログを作ろう
by
Syouta Tada
2015/11/15 Javaでwebアプリケーション入門
by
Asami Abe
SpringOne Platform 2018 全体報告
by
apkiban
Laravel 5.1 LTSでサービスを作る
by
infinite_loop
究極にして至高のWAF
by
Yuki Ishikawa
What's hot
PPTX
今日から始めるLaravel
by
Masaru Matsuo
PDF
Laravel の学び方と得られる学び
by
Masaru Matsuo
PPTX
.NET vNext
by
信之 岩永
PDF
Laravel5.1 Release
by
Yuuki Takezawa
PDF
Java EE 再入門
by
minazou67
PPTX
エンドツーエンドテストを自動化したらチームがすごく良くなった@XPまつり2015LT
by
Taichi Watanabe
PDF
【19-B-4】 そろそろ俺たちの本気を見せてやるぜ!~ マイクロソフトとOSSごった煮 DevOps 衝撃デモシリーズ!
by
Developers Summit
PPTX
CakePHP3で学ぶAPIマネジメント #phpconfuk
by
Yuta Matsumura
PDF
Javaで1から10まで書いた話(sanitized)
by
Tokuhiro Matsuno
PPTX
広がる .Net
by
信之 岩永
PDF
Empower every App and every Developer in a Mobile-first, Cloud-first World.
by
Akira Inoue
PDF
AspectMock 最強のモッキングフレームワーク
by
kenjis
PDF
マジックビーンズ
by
Akira Suenami
PDF
Java SE 再入門
by
minazou67
PPTX
dotnetconfJP2017_netcore2
by
Yusuke Fujiwara
PDF
Laravelから学びレガシーと闘いはじめた
by
Yuta Ohashi
PPTX
PHPから離れて感じるPHPの良さ
by
Shinichi Takahashi
PDF
Laravelのパッケージのテストに便利なパッケージ
by
Yuta Nagamiya
PDF
One ASP.NET の今とこれから
by
Akira Inoue
PDF
Windows10時代のクロスプラットフォーム開発
by
Kazushi Kamegawa
今日から始めるLaravel
by
Masaru Matsuo
Laravel の学び方と得られる学び
by
Masaru Matsuo
.NET vNext
by
信之 岩永
Laravel5.1 Release
by
Yuuki Takezawa
Java EE 再入門
by
minazou67
エンドツーエンドテストを自動化したらチームがすごく良くなった@XPまつり2015LT
by
Taichi Watanabe
【19-B-4】 そろそろ俺たちの本気を見せてやるぜ!~ マイクロソフトとOSSごった煮 DevOps 衝撃デモシリーズ!
by
Developers Summit
CakePHP3で学ぶAPIマネジメント #phpconfuk
by
Yuta Matsumura
Javaで1から10まで書いた話(sanitized)
by
Tokuhiro Matsuno
広がる .Net
by
信之 岩永
Empower every App and every Developer in a Mobile-first, Cloud-first World.
by
Akira Inoue
AspectMock 最強のモッキングフレームワーク
by
kenjis
マジックビーンズ
by
Akira Suenami
Java SE 再入門
by
minazou67
dotnetconfJP2017_netcore2
by
Yusuke Fujiwara
Laravelから学びレガシーと闘いはじめた
by
Yuta Ohashi
PHPから離れて感じるPHPの良さ
by
Shinichi Takahashi
Laravelのパッケージのテストに便利なパッケージ
by
Yuta Nagamiya
One ASP.NET の今とこれから
by
Akira Inoue
Windows10時代のクロスプラットフォーム開発
by
Kazushi Kamegawa
Similar to Androidアプリ開発にクリーンアーキテクチャを取り入れよう(OSS編)
PDF
第ⅱ部:Clean architecture 構成要素から始めよ
by
tak
PDF
クリーンアーキテクチャを試してみた
by
Takuya Matsunaga
PPTX
Clean architecture 紹介
by
Shunichiro Watanabe
PPTX
Clean Architecture用の開発ツールを作ったお話
by
雄大 廣瀬
PDF
Androidアプリ開発にクリーンアーキテクチャを取り入れよう
by
kan-notice
PPTX
世界一わかりやすいClean Architecture release-preview
by
Atsushi Nakamura
PPTX
世界一わかりやすいClean Architecture - DroidKaigiバージョン
by
Atsushi Nakamura
PPTX
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
by
Atsushi Nakamura
PPTX
世界一わかりやすいClean Architecture
by
Atsushi Nakamura
PDF
大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~
by
株式会社MonotaRO Tech Team
PDF
第ⅴ部:clean architecture アーキテクチャ Part2
by
tak
第ⅱ部:Clean architecture 構成要素から始めよ
by
tak
クリーンアーキテクチャを試してみた
by
Takuya Matsunaga
Clean architecture 紹介
by
Shunichiro Watanabe
Clean Architecture用の開発ツールを作ったお話
by
雄大 廣瀬
Androidアプリ開発にクリーンアーキテクチャを取り入れよう
by
kan-notice
世界一わかりやすいClean Architecture release-preview
by
Atsushi Nakamura
世界一わかりやすいClean Architecture - DroidKaigiバージョン
by
Atsushi Nakamura
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
by
Atsushi Nakamura
世界一わかりやすいClean Architecture
by
Atsushi Nakamura
大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~
by
株式会社MonotaRO Tech Team
第ⅴ部:clean architecture アーキテクチャ Part2
by
tak
Androidアプリ開発にクリーンアーキテクチャを取り入れよう(OSS編)
1.
Androidアプリ開発にクリーン アーキテクチャを取り入れよう (OSS編) 2016/02/25 notice,inc. http://www.notice.co.jp/ @notice_inc
2.
アーキテクチャ編の復習 質問がありましたので、ディスカッションしておきましょう。 Q.1 「オニオンアーキテクチャと同じくたまねぎのようなレイヤー構成になっているが、その意味は?」 Domain Modelをコアとしたアーキテクチャだからです。 上下ではなく、コア(interface)を実装(implement)が包み込んでいく(DI)メタファ。 Q.2
「データベースは、下位層ではなく外界とすれば、いいのでは?」 The Onion Architecture - Jeffrey Palermo http://jeffreypalermo.com/blog/the-onion-architecture-part-1/ その通り! “The database is not the center. It is external. ” じゃあ、センターはなに? “Remember that the Domain Model is the very center.”
3.
Day1 Keynote in
DroidKaigi 2016 これ見てくれたら、今日は話すことなし。 「OSSの動向を捉えた実装方針」 https://speakerdeck.com/wasabeef/day1-keynote- in-droidkaigi-2016 でも、お仕事します。 クリーンアーキテクチャを支える OSSのご紹介
4.
開発環境 Android Studio Eclipse+ADTはオワコン 新しいSDKを使うなら、Android Studioを選択。 Gradle※(build
tool)でOSSを簡単にインポート。 ※グラドルではないよ。グレイドル Retrolambda(レトロラムダ) Android Studioなら、SAM(Single Abstract Method)型はlambdaで書けるけど、 Retrolambda(backport tool)を使うとJava8のlambdaで書ける。 SAM型なら、こんなに簡単に書ける。 before: button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { … } } after: button.setOnClickListener(v -> { … });
5.
Binding/DI ButterKnife – Jake
Wharton 面倒なfindViewById()のボイラープレートを抹殺 @Bind(R.id.button) Button button リスナーもbindできるよ。 @OnClick(R.id.submit) public void submit(View view) Dagger2 – Google/Square Component/Module単位にDIできる。 使ってみたけど正直、難解 バターナイフではケガしないが、短剣は危険(笑)
6.
Networking Okhttp3+Retrofit2 – Square/J.W. API作成最適コンビ。Retrofit2はbeta4まできたね。 http://square.github.io/okhttp/ http://square.github.io/retrofit/ 拙記事:「Retrofit2のRxJavaCallアダプタを試す」
beta<=2での話。 http://qiita.com/notice_inc/items/74a7e98b54dd2838c559 Picasso(ピカソ) - Square 画像ダウンロード・キャッシュ Volley(ボレー) - Google HTTPクッキーの扱いにバグがあるんで、セッション使うアプリはやめといたほうがいいよ。 自分でHttpStackつくれってよ。えぇ、これ仕様?? 特にLaravelは、セッションキー以外にXSRFトークンがクッキーされるんで、つぶしてしまいます。 弊社では独自パッチして使ったよ(非公開)。 NetworkResponse does not support multiple cookies https://github.com/mcxiaoke/android-volley/issues/87
7.
Reactive eXtentions/Promise RxJava/RxAndroid/RxBinding Rxbinding –
Jake Wharton TextViewの入力文字列を文字列があるかどうかの真偽値に変換(map)して、 サーチボタンを活性・不活性する。 @Bind(R.id.text) TextView textView; @Bind(R.id.search) Button search; RxTextView.textChanges(textView) .map(text -> text.length() > 0) .subscribe(enabled -> search.setEnabled(enabled)) jdeferred/android-promise まだ、使ったことないけど、試してみるか。
8.
View/Presenter Mortar(モルタル) - Square Bundleサービスを提供してくれる。 永続化できるViewPresenterが利用できる。 Dagger2と相性よし。 Flow/Path
– Square FragmentManagerの代替。 スクリーン・画面遷移を抽象化したフレームワーク。 ヒストリーも扱える。 Mortarとあわせて、画面状態・画面スタックを保存・復元。 リクリエーション地獄から解放される。 実際使うには、もう少し内部の理解が必要そう。 Flow and Mortar – Thorben Primke https://realm.io/jp/news/using-flow-mortar/
9.
Database Realm(レルム) SQLiteの代替データベース。ActiveRecordのように利用できる。 autoincrementなし。offset,limitなし。cascadingもなし。
SQLをガンガン使いたいなら、止めた方がいい。 Realmエンティティのメンバへの代入が即データベースに反映する (トランザクション必要)。便利だか、逆に切り離したいとき不便。そ もそも、エンティティをモデルとして利用すべきではない(でも、面 倒だし)。 iOS/Swiftでも使えるが、Objective-Cが混在すると、Objective-C版し か使えないのが、残念。 いまんとこ、Objective-C版しか使ったことないけど。
10.
Others Gson(ジーサン) - Google Json-POJO間をシリアライズ・デシリアライズする。 Timber(ティンバー)
- Jake Wharton ログファサードとして利用できる。 Logと違って、フォーマットできる。 Timber.d(“[%s] %d”, “hoge”, n) Logクラスを使うと、リリース時のログ抑制ができなくなる。 拙記事:「アンドロイドアプリのログ出力にTimber+Log4Jを使う」 http://www.notice.co.jp/archives/3852
11.
Testing ActivityInstrumentationTestCase2 • ユニットテストでアクティビティが必要なら、こ のクラスを継承して、Activityのユニットテスト ができます。 • 非同期APIのテストは、CountDonwLatchを利 用してウェイトします(ウェイトクラス作成)。
Download