<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>
	دیدگاه‌ها برای: کار با Dagger2 به زبان ساده  بخش دوم (پیشرفته)	</title>
	<atom:link href="http://www.mahditajik.ir/dagger2-advanced-example/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mahditajik.ir/dagger2-advanced-example/</link>
	<description>I&#039;m Mahdi Tajik. I am project manager and Full-stack Android developer. welcome to my personal website.</description>
	<lastBuildDate>Mon, 21 Sep 2020 09:00:35 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.2.6</generator>
	<item>
		<title>
		توسط: asghar		</title>
		<link>http://www.mahditajik.ir/dagger2-advanced-example/#comment-7481</link>

		<dc:creator><![CDATA[asghar]]></dc:creator>
		<pubDate>Mon, 21 Sep 2020 09:00:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.mahditajik.ir/?p=2249#comment-7481</guid>

					<description><![CDATA[باسلام.
توضیحاتتون عالیه.
فقط کاشکی نشخه pdf این آموزشتتون رو هم میزاشتید.]]></description>
			<content:encoded><![CDATA[<p>باسلام.<br />
توضیحاتتون عالیه.<br />
فقط کاشکی نشخه pdf این آموزشتتون رو هم میزاشتید.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		توسط: یوسف		</title>
		<link>http://www.mahditajik.ir/dagger2-advanced-example/#comment-7277</link>

		<dc:creator><![CDATA[یوسف]]></dc:creator>
		<pubDate>Mon, 29 Apr 2019 07:02:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.mahditajik.ir/?p=2249#comment-7277</guid>

					<description><![CDATA[سلام خسته نباشید
کلاس DaggerTestApplication رو اصلا توضیح ندادید چزا؟]]></description>
			<content:encoded><![CDATA[<p>سلام خسته نباشید<br />
کلاس DaggerTestApplication رو اصلا توضیح ندادید چزا؟</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		توسط: mahdi		</title>
		<link>http://www.mahditajik.ir/dagger2-advanced-example/#comment-4892</link>

		<dc:creator><![CDATA[mahdi]]></dc:creator>
		<pubDate>Thu, 23 Aug 2018 19:31:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.mahditajik.ir/?p=2249#comment-4892</guid>

					<description><![CDATA[در پاسخ به &lt;a href=&quot;http://www.mahditajik.ir/dagger2-advanced-example/#comment-4891&quot;&gt;mksh&lt;/a&gt;.

سلام. ببینید همانطور که در مثال دیدید وقتی یک کامپوننت به یک کامپوننت دیگری نیاز داره (یعنی آبجکت هایی که اون می سازه رو لازم داره) دیدید که در از dependencies = { x, y ,z} استفاده کردیم. حال در کامپوننت مثلا x برای اینکه آبجکت تولید شده اش در معرض دسترسی قرار بگیرد فقط لازمه که یک متد با هر نامی بنویسیم که خروجی آن از جنس آبجک مورد نظر باشه. خیلی خوب حالا بر می گردیم به مثال خودمان و کل قضیه را در سه قدم بهتان خواهم گفت: در مثال ما برای ساخت NetWorkClass که در ServiceModule قرار دارد به User نیاز داشتیم و بجای ساخت مجدد User از User ساخته شده در ApplicationComponent (توسط UserModule ) استفاده کردیم. برای این منظور 3 کار انجام دادیم. اول یک ورودی User به متد سازنده NetworkClass دادیم، اینکه User از کجا می آید در قدم دوم است ک که به dagger گفتیم که ActivityComponent وابستگی دارد به ApplicationComponent  ( که در ماژول ApplicationComponent  نحوه ساخت User را مشخص کرده ایم). یعنی هر آبجکتی در ApplicationComponent ساخته می شود به شرطی که یک متد exposer برایش نوشته باشیم در دسترس ActivityComponent نیز قرار خواهد گرفت. پس برای قدم سوم هم متد User provideUser(); را در ApplicationComponent نوشتیم. شما می توانستید هر نام دیگری برای متدتان داشته باشید، فقط نکته این بود که خروجی آن User باشد. امیدوارم با برسی مجدد قسمت های کد با این توضیحات قضیه برایتان حل شود. در مورد scope هم اگر سواالتان را دقیق تر در بخش خودش بگذارید انشاء الله بزودی جوابتان را خواهم نوشت. موفق باشید.]]></description>
			<content:encoded><![CDATA[<p>سلام. ببینید همانطور که در مثال دیدید وقتی یک کامپوننت به یک کامپوننت دیگری نیاز داره (یعنی آبجکت هایی که اون می سازه رو لازم داره) دیدید که در از dependencies = { x, y ,z} استفاده کردیم. حال در کامپوننت مثلا x برای اینکه آبجکت تولید شده اش در معرض دسترسی قرار بگیرد فقط لازمه که یک متد با هر نامی بنویسیم که خروجی آن از جنس آبجک مورد نظر باشه. خیلی خوب حالا بر می گردیم به مثال خودمان و کل قضیه را در سه قدم بهتان خواهم گفت: در مثال ما برای ساخت NetWorkClass که در ServiceModule قرار دارد به User نیاز داشتیم و بجای ساخت مجدد User از User ساخته شده در ApplicationComponent (توسط UserModule ) استفاده کردیم. برای این منظور ۳ کار انجام دادیم. اول یک ورودی User به متد سازنده NetworkClass دادیم، اینکه User از کجا می آید در قدم دوم است ک که به dagger گفتیم که ActivityComponent وابستگی دارد به ApplicationComponent  ( که در ماژول ApplicationComponent  نحوه ساخت User را مشخص کرده ایم). یعنی هر آبجکتی در ApplicationComponent ساخته می شود به شرطی که یک متد exposer برایش نوشته باشیم در دسترس ActivityComponent نیز قرار خواهد گرفت. پس برای قدم سوم هم متد User provideUser(); را در ApplicationComponent نوشتیم. شما می توانستید هر نام دیگری برای متدتان داشته باشید، فقط نکته این بود که خروجی آن User باشد. امیدوارم با برسی مجدد قسمت های کد با این توضیحات قضیه برایتان حل شود. در مورد scope هم اگر سواالتان را دقیق تر در بخش خودش بگذارید انشاء الله بزودی جوابتان را خواهم نوشت. موفق باشید.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		توسط: mksh		</title>
		<link>http://www.mahditajik.ir/dagger2-advanced-example/#comment-4891</link>

		<dc:creator><![CDATA[mksh]]></dc:creator>
		<pubDate>Thu, 23 Aug 2018 16:35:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.mahditajik.ir/?p=2249#comment-4891</guid>

					<description><![CDATA[سلام اگه لطف کنید در مورد متد های expotrer بیشتر توضیح بدین .(نفهمیدم چطوری استفاده میشه )
همینطور در مورد نحوه استفاده از انوتیشن ساخته  شده توسط scope  مثل scopeActivity متاسفانه مقاله های مربوط رو خوندم ولی نفهمیدم کامل]]></description>
			<content:encoded><![CDATA[<p>سلام اگه لطف کنید در مورد متد های expotrer بیشتر توضیح بدین .(نفهمیدم چطوری استفاده میشه )<br />
همینطور در مورد نحوه استفاده از انوتیشن ساخته  شده توسط scope  مثل scopeActivity متاسفانه مقاله های مربوط رو خوندم ولی نفهمیدم کامل</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		توسط: mahdi		</title>
		<link>http://www.mahditajik.ir/dagger2-advanced-example/#comment-4867</link>

		<dc:creator><![CDATA[mahdi]]></dc:creator>
		<pubDate>Tue, 21 Aug 2018 04:57:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.mahditajik.ir/?p=2249#comment-4867</guid>

					<description><![CDATA[در پاسخ به &lt;a href=&quot;http://www.mahditajik.ir/dagger2-advanced-example/#comment-4866&quot;&gt;علیرضا&lt;/a&gt;.

به ماژول سرویس توجه کنید که برای ساخت NetworkClass نیاز به User دارد و ما فقط ورودی User را نوشتیم و ساخت خود User در ماژول UserModule قرار دارد. پس خروجی یک ماژول (User) در یک ماژول دیگر به عنوان وردی استفاده شد! ( در ServiceModule). ]]></description>
			<content:encoded><![CDATA[<p>به ماژول سرویس توجه کنید که برای ساخت NetworkClass نیاز به User دارد و ما فقط ورودی User را نوشتیم و ساخت خود User در ماژول UserModule قرار دارد. پس خروجی یک ماژول (User) در یک ماژول دیگر به عنوان وردی استفاده شد! ( در ServiceModule). </p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		توسط: علیرضا		</title>
		<link>http://www.mahditajik.ir/dagger2-advanced-example/#comment-4866</link>

		<dc:creator><![CDATA[علیرضا]]></dc:creator>
		<pubDate>Sun, 19 Aug 2018 05:21:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.mahditajik.ir/?p=2249#comment-4866</guid>

					<description><![CDATA[ممکنه راهنماییم کنید چطور میتونم از متدهای یک ماژول بعنوان ورودی متدهای دیگه در یک ماژول دیگه استفاده کنم؟]]></description>
			<content:encoded><![CDATA[<p>ممکنه راهنماییم کنید چطور میتونم از متدهای یک ماژول بعنوان ورودی متدهای دیگه در یک ماژول دیگه استفاده کنم؟</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		توسط: mahdi		</title>
		<link>http://www.mahditajik.ir/dagger2-advanced-example/#comment-4831</link>

		<dc:creator><![CDATA[mahdi]]></dc:creator>
		<pubDate>Thu, 16 Aug 2018 12:23:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.mahditajik.ir/?p=2249#comment-4831</guid>

					<description><![CDATA[در پاسخ به &lt;a href=&quot;http://www.mahditajik.ir/dagger2-advanced-example/#comment-4806&quot;&gt;علیرضا&lt;/a&gt;.

سلام. بله همه راه های گفته شده اصولی هست و در شرایط خاص مجبور به استفاده از یکی از روش ها می شوید. مثلا موقعی که وابستگی دوگانه وجود دارد. A-&gt;B و B-&gt;A که هروقت برسید خودتان متوجه می شوید. پس بدون ترس بروید سراغش. البته از dagger 1.10 به بعد روش wire-up کمی تغییر کرده که انشاء الله در فرصتی می نویسم. برای شروع همان روش اول پیش بروید.]]></description>
			<content:encoded><![CDATA[<p>سلام. بله همه راه های گفته شده اصولی هست و در شرایط خاص مجبور به استفاده از یکی از روش ها می شوید. مثلا موقعی که وابستگی دوگانه وجود دارد. A->B و B->A که هروقت برسید خودتان متوجه می شوید. پس بدون ترس بروید سراغش. البته از dagger 1.10 به بعد روش wire-up کمی تغییر کرده که انشاء الله در فرصتی می نویسم. برای شروع همان روش اول پیش بروید.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		توسط: علیرضا		</title>
		<link>http://www.mahditajik.ir/dagger2-advanced-example/#comment-4806</link>

		<dc:creator><![CDATA[علیرضا]]></dc:creator>
		<pubDate>Sun, 12 Aug 2018 07:56:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.mahditajik.ir/?p=2249#comment-4806</guid>

					<description><![CDATA[سلام. سوال من اینه که هر سه روش کار با dagger اصولی هستن؟
آیا امکانش هست بگید بعنوان کسی که تازه میخواد ازش استفاده کنه از کدوم روش استفاده کنه بهتره؟]]></description>
			<content:encoded><![CDATA[<p>سلام. سوال من اینه که هر سه روش کار با dagger اصولی هستن؟<br />
آیا امکانش هست بگید بعنوان کسی که تازه میخواد ازش استفاده کنه از کدوم روش استفاده کنه بهتره؟</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		توسط: mahdi		</title>
		<link>http://www.mahditajik.ir/dagger2-advanced-example/#comment-2884</link>

		<dc:creator><![CDATA[mahdi]]></dc:creator>
		<pubDate>Wed, 07 Mar 2018 07:06:59 +0000</pubDate>
		<guid isPermaLink="false">http://www.mahditajik.ir/?p=2249#comment-2884</guid>

					<description><![CDATA[در پاسخ به &lt;a href=&quot;http://www.mahditajik.ir/dagger2-advanced-example/#comment-2878&quot;&gt;محسن&lt;/a&gt;.

سلام. خیلی لطف دارید. اما نتیجه گیریتون خیلی صحیح نیست اتفاقاً توسعه و اضافه کردن امکانات به برنامه خیلی خیلی راحت میشه. من مقدمه آموزش اول ( قسمت اول Dagger) را برای شما تکمیل کردم. پس لطفاً بخونیدش. اگر بازهم قانع نشدید کتاب مارک سیمن رو که لینکش و گذاشتم مطالعه کنید ( تا حدود صفحه 70). Dagger ابزار بسیار پرکاربرد و مهمیه که در همه مصاحبه های شرکت، جزو سوالاتمون هست و تسلط به اون واقعاً یک نکته خیلی خوب در دولوپرها هست.  فقط کافیه بهش عادت کنید و هرچه زود تر هم عادت کنید بهتر ;). موفق باشید]]></description>
			<content:encoded><![CDATA[<p>سلام. خیلی لطف دارید. اما نتیجه گیریتون خیلی صحیح نیست اتفاقاً توسعه و اضافه کردن امکانات به برنامه خیلی خیلی راحت میشه. من مقدمه آموزش اول ( قسمت اول Dagger) را برای شما تکمیل کردم. پس لطفاً بخونیدش. اگر بازهم قانع نشدید کتاب مارک سیمن رو که لینکش و گذاشتم مطالعه کنید ( تا حدود صفحه ۷۰). Dagger ابزار بسیار پرکاربرد و مهمیه که در همه مصاحبه های شرکت، جزو سوالاتمون هست و تسلط به اون واقعاً یک نکته خیلی خوب در دولوپرها هست.  فقط کافیه بهش عادت کنید و هرچه زود تر هم عادت کنید بهتر ;). موفق باشید</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		توسط: محسن		</title>
		<link>http://www.mahditajik.ir/dagger2-advanced-example/#comment-2878</link>

		<dc:creator><![CDATA[محسن]]></dc:creator>
		<pubDate>Tue, 06 Mar 2018 15:44:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.mahditajik.ir/?p=2249#comment-2878</guid>

					<description><![CDATA[خسته نباشید.
توضیحات و آموزش هاتون عالی بود.

منتهی، نتیجه ای که من از همه ی آموزش هایی که در وب خوندم که بهترینشون هم مال شما بود گرفتم اینه که، اصولا نباید از Dagger2 استفاده کرد. چون بی جهت برنامه رو پیچیده میکنه و ارزشش رو نداره...]]></description>
			<content:encoded><![CDATA[<p>خسته نباشید.<br />
توضیحات و آموزش هاتون عالی بود.</p>
<p>منتهی، نتیجه ای که من از همه ی آموزش هایی که در وب خوندم که بهترینشون هم مال شما بود گرفتم اینه که، اصولا نباید از Dagger2 استفاده کرد. چون بی جهت برنامه رو پیچیده میکنه و ارزشش رو نداره&#8230;</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
