Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Dart
Search
funnelbit
January 30, 2017
Programming
300
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Dart
funnelbit
January 30, 2017
More Decks by funnelbit
See All by funnelbit
Hatena Engineer Seminar #9
funnelbit
5
7.5k
droidkaigi-2017-renovation
funnelbit
10
11k
BottomBarAndSnackBar
funnelbit
0
550
Dagger2 Optional bindings
funnelbit
0
620
WearableRecyclerView
funnelbit
1
840
QucikSettingsTileAPI
funnelbit
0
380
Mobile Vision
funnelbit
0
490
AwarenessAPI
funnelbit
0
170
Asynchronous Injection
funnelbit
1
290
Other Decks in Programming
See All in Programming
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
1.4k
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
100
スマートグラスで並列バイブコーディング
hyshu
0
290
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
110
LaravelLive Japan の裏方のすべて — 第188回 PHP勉強会@東京 (2026-06-24)
suguruooki
2
150
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
360
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
140
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
120
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.8k
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
8.9k
act1-costs.pdf
sumedhbala
0
210
1年で人数1.5倍、PR数5.5倍増。 品質とアウトカムはどうなったか、 何が効いたか
ike002jp
0
120
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
230
Ruling the World: When Life Gets Gamed
codingconduct
0
280
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
200
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.4k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
560
For a Future-Friendly Web
brad_frost
183
10k
Producing Creativity
orderedlist
PRO
348
40k
Test your architecture with Archunit
thirion
1
2.3k
Designing Powerful Visuals for Engaging Learning
tmiket
1
450
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Transcript
%BSU
ࣗݾհ ଜྋ גࣜձࣾͯͳ )BUFOBGVOOFMCJU 5XJUUFS!FYQFSPQFSP
%SPJE,BJHJͰൃද͠·͢ w IUUQTESPJELBJHJHJUIVCJP w 3PPNd w IUUQTESPJELBJHJHJUIVCJP UJNFUBCMFIUNM
*OUFOU ͷ ѻ͍Λ ؆୯ʹ͢Δ
4USJOH .BJO"DUJWJUZ .BJO"DUJWJUZ
.BJO"DUJWJUZ public class MainActivity extends AppCompatActivity { … Intent intent
= new Intent(MainActivity.this, Main2Activity.class); intent.putExtra(Main2Activity.EXTRA_TEXT, "ok"); startActivity(intent); … }
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … public static
final String EXTRA_TEXT = “text"; … Bundle extras = getIntent().getExtras(); Log.e("extra_text", extras.getString(EXTRA_TEXT)); … }
4USJOH PS /VMM .BJO"DUJWJUZ .BJO"DUJWJUZ
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { public static final
String EXTRA_TEXT = "text"; … Bundle extras = getIntent().getExtras(); if (extras != null) { Log.e(“extra_text", extras.getString(EXTRA_TEXT, "defaultValue")); } … }
w ૿͑Δఆ w ૿͑ΔJGจ w ૿͢ϨϏϡʔίετ
%BSU %BSUBOE)FOTPO
%BSU %BSUBOE)FOTPO w #VUUFS,OJGFΈͨ͘&YUSBͷΛ*OKFDU͢Δ w ίϯύΠϧ࣌ʹ*OKFDU͢ΔίʔυΛੜ
4USJOH .BJO"DUJWJUZ .BJO"DUJWJUZ
.BJO"DUJWJUZ public class MainActivity extends AppCompatActivity { … Intent intent
= new Intent(MainActivity.this, Main2Activity.class); intent.putExtra(Main2Activity.EXTRA_TEXT, “ok"); … Intent intent = Henson.with(MainActivity.this) .gotoMain2Activity() .text("ok") .build(); startActivity(intent); … }
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … @InjectExtra String
text; public static final String EXTRA_TEXT = "text"; … Dart.inject(this); Log.e("extra_text", text); … }
0QUJPOBM*OKFDUJPO
4USJOH PS /VMM .BJO"DUJWJUZ .BJO"DUJWJUZ
.BJO"DUJWJUZ public class MainActivity extends AppCompatActivity { … Intent intent
= new Intent(MainActivity.this, Main2Activity.class); intent.putExtra(Main2Activity.EXTRA_TEXT, “ok"); … Intent intent = Henson.with(MainActivity.this) .gotoMain2Activity() .text("ok") .build(); startActivity(intent); … }
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … @Nullable @InjectExtra
String text; public static final String EXTRA_TEXT = "text"; … Dart.inject(this); if (!TextUtils.isEmpty(text)) { Log.e("extra_text", text); … Bundle extras = getIntent().getExtras(); if (extras != null) { Log.e(“extra_text", extras.getString(EXTRA_TEXT, "defaultValue")); } }
%FGBVMU7BMVFT
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … @Nullable @InjectExtra
String text = "default"; … }
'SBHNFOU
%BSUJOKFDU 'SBHNFOU public class BlankFragment extends Fragment { @InjectExtra String
param1; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Dart.inject(this);
%BSUJOKFDU BOESPJEBQQ'SBHNFOU
%BSUJOKFDU 0CKFDU #VOEMF
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … Bundle extras
= Henson.with(this) .gotoBlankFragment() .param1(“??????”) .build() .getExtras(); blankFragment = new BlankFragment(); blankFragment.setArguments(extras); getSupportFragmentManager() .beginTransaction() .replace(R.id.fragment_container, blankFragment, TAG_FRAGMENT) .commit(); … }
#MBOL'SBHNFOU public class BlankFragment extends Fragment { @InjectExtra String param1;
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Dart.inject(this, getArguments()); Log.e("param1", param1); } } w ͪΐͬͱେม
.BJO"DUJWJUZ public class MainActivity extends AppCompatActivity { … Bundle
fragmentExtras = Henson.with(MainActivity.this) .gotoBlankFragment() .param1("!!!!!!!!!") .build() .getExtras(); Intent intent = Henson.with(MainActivity.this) .gotoMain2Activity() .text("a") .build(); intent.putExtras(fragmentExtras); startActivity(intent); … }
.BJO"DUJWJUZ public class Main2Activity extends AppCompatActivity { … Fragment blankFragment
= getSupportFragmentManager().findFragmentByTag(TAG_FRAGMENT); if (blankFragment == null) { getSupportFragmentManager() .beginTransaction() .replace(R.id.fragment_container, new BlankFragment(), TAG_FRAGMENT) .commit(); } … }
#MBOL'SBHNFOU public class BlankFragment extends Fragment { @InjectExtra String param1;
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.e("param1", param1); } @Override public void onAttach(Context context) { super.onAttach(context); Dart.inject(this, getActivity()); } } w ͍ͩͿେม
·ͱΊ w ίʔυྔͷ૿ՃΛ͑Δ͜ͱ͕ग़དྷΔ w Մಡੑ্ w ϨϏϡʔ͍͢͠ w 'SBHNFOUͰ͏ʹͪΐͬͱบ͕͋Δ
ࢀߟ w IUUQTHJUIVCDPNGQSBUFFLEBSU
͋Γ͕ͱ͏͍͟͝·ͨ͠