tag:blogger.com,1999:blog-90193564304818428722024-02-15T03:16:13.875+03:30وبلاگ هانی هاشمیAnonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.comBlogger45125tag:blogger.com,1999:blog-9019356430481842872.post-85397290473526274502016-04-14T17:58:00.000+04:302016-04-14T17:58:08.889+04:30مهاجرت به وردپرس<div dir="rtl" style="text-align: right;" trbidi="on">
<h2 style="text-align: right;">
<div style="text-align: center;">
<b><br /></b></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhz4V8ZhLgveJoyVVaHsE0wE30u0OhJWrHfTrweHFRO954vfr7rQqoS88GVL1Lrzljp4jlrxdHVCLFNU4ZXYQE3is6m2BOzrw_M1dDylotQ0LmBr8qqw0E3401raRQXfjjTa7h-bGR7nA8/s1600/wp-jp.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="225" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhz4V8ZhLgveJoyVVaHsE0wE30u0OhJWrHfTrweHFRO954vfr7rQqoS88GVL1Lrzljp4jlrxdHVCLFNU4ZXYQE3is6m2BOzrw_M1dDylotQ0LmBr8qqw0E3401raRQXfjjTa7h-bGR7nA8/s400/wp-jp.jpg" width="400" /></a></div>
<div style="text-align: center;">
<b><br /></b></div>
<div style="text-align: center;">
<b><br /></b></div>
<div style="text-align: center;">
<b>منم رفتم به وردپرس</b></div>
<b><div style="text-align: center;">
<b><a href="http://jhanihashemi.wordpress.com/">jhanihashemi.wordpress.com</a></b></div>
</b></h2>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com1tag:blogger.com,1999:blog-9019356430481842872.post-74825507706533583572015-12-26T02:10:00.003+03:302015-12-26T02:11:47.100+03:30بکش تا بروز شه (SwipeRefreshLayout)<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaii0BZO3rSLzQ6_02GidsoR11ytvAPvBlkuY9ZAgcWQ5cvWDnm7iXFdFzeAuEQFSI4epWK-4snioYNMxP1-G69v2kIr_U8pPL_DYmnLtP33_07Ib8gIbOkextoUJ5LeGLeCqeDbsiuTU/s1600/S4hME.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="133" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaii0BZO3rSLzQ6_02GidsoR11ytvAPvBlkuY9ZAgcWQ5cvWDnm7iXFdFzeAuEQFSI4epWK-4snioYNMxP1-G69v2kIr_U8pPL_DYmnLtP33_07Ib8gIbOkextoUJ5LeGLeCqeDbsiuTU/s320/S4hME.png" width="320" /></a></div>
<b><br /></b>
<b><br /></b>
<b>قدم اول: اضافه کردن support library v4</b><br />
<br />
کد زیر رو به gradle اضافه می کنیم<br />
<br />
<div dir="ltr" style="text-align: left;">
dependencies {</div>
<div dir="ltr" style="text-align: left;">
…</div>
<div dir="ltr" style="text-align: left;">
compile ‘com.android.support:support-v4:23.1.0’</div>
<div dir="ltr" style="text-align: left;">
…</div>
<div dir="ltr" style="text-align: left;">
}</div>
<br />
<div style="text-align: right;">
<b>قدم دوم: اضافه کردن SwipeRefreshLayout به Layout</b></div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
<android .support.v4.widget.swiperefreshlayout="" p=""></android><br />
<div dir="ltr" style="text-align: left;">
android:id=”@+id/swipe_refresh”</div>
<div dir="ltr" style="text-align: left;">
android:layout_width=”match_parent”</div>
<div dir="ltr" style="text-align: left;">
android:layout_height=”wrap_content”></div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
<android .support.v7.widget.recyclerview="" p=""></android><br />
<div dir="ltr" style="text-align: left;">
android:id=”@+id/recycler_view”</div>
<div dir="ltr" style="text-align: left;">
android:layout_width=”match_parent”</div>
<div dir="ltr" style="text-align: left;">
android:layout_height=”match_parent” /></div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
</div>
</div>
<br />
<div style="text-align: right;">
<b>قدم سوم: نمایش SwipeRefresh در هنگام لود</b></div>
<div style="text-align: right;">
<br /></div>
هنگامی که از سرور داده ای رو درخواست می کنیم SwipeRefreshLayout رو فعال می کنیم و در زمانی که درخواست ناموفق و یا موفق بود غیر فعال می کنیم<br />
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
new Handler().postDelayed(new Runnable() {</div>
<div dir="ltr" style="text-align: left;">
@Override</div>
<div dir="ltr" style="text-align: left;">
public void run() {</div>
<div dir="ltr" style="text-align: left;">
swipeRefresh.setRefreshing(true);</div>
<div dir="ltr" style="text-align: left;">
}</div>
<div dir="ltr" style="text-align: left;">
}, ۱۰۰);</div>
<br />
<div style="text-align: right;">
<b>قدم چهارم: پیاده سازیه OnRefreshListener</b></div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
swipeRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {</div>
<div dir="ltr" style="text-align: left;">
@Override</div>
<div dir="ltr" style="text-align: left;">
public void onRefresh() {</div>
<div dir="ltr" style="text-align: left;">
//دریافت داده ها از سرور</div>
<div dir="ltr" style="text-align: left;">
}</div>
<div dir="ltr" style="text-align: left;">
});</div>
<br />
<div style="text-align: right;">
<b>قدم آخر: تغییر رنگ SwipeRefreshLayout</b></div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
swipeRefresh.setColorSchemeResources(R.color.accent);</div>
</div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com1tag:blogger.com,1999:blog-9019356430481842872.post-48684738179927034852015-08-20T14:19:00.001+04:302015-10-10T01:58:11.799+03:30یکسری وب سایت و ابزار بدرد بخور برای اندروید کارا<div dir="rtl" style="text-align: right;" trbidi="on">
<h2>
آموزشی</h2>
<h2>
<div style="font-size: medium; font-weight: normal;">
<ul>
<li><a href="https://possiblemobile.com/2013/06/context/" target="_blank">Context, What Context</a>: این مطلب در رابطه با انواع کانتکست های اندرویده و اینکه از هر کدومشون کجا باید استفاده و کجا نباید استفاده کرد. </li>
<li><a href="https://www.udemy.com/android-material-design-zero-to-hero/?dtcode=khoVpL533Qlo" target="_blank">Android Material Design Slidenerd Style</a>: آموزش فوق العاده کاربردی در رابطه با طراحی متریال دیزاین.</li>
</ul>
</div>
</h2>
<h2>
ابزارها</h2>
<h2>
<div style="font-size: medium; font-weight: normal;">
</div>
<div style="font-size: medium; font-weight: normal;">
<ul>
<li><a href="http://romannurik.github.io/AndroidAssetStudio/index.html" target="_blank">Android Asset Studio</a>: یه ابزاره حسابیه برای درست کردن انواع آیکون ها مثل آیکن اعلان، اکشن بار، لانچر و ...</li>
<li><a href="https://pixplicity.com/dp-px-converter/" target="_blank">DP/PX Convertor</a>: تبدیل DP، پیکسل، اینچ و ... به هم</li>
<li><a href="http://www.apkmirror.com/" target="_blank">App Mirror</a>: مجموعه ای کامل از اپلیکشن های اندرویده که به راحتی قابله دانلود روی مرورگر هست</li>
<li><a href="https://mockingbot.com/" target="_blank">Mocking Bot</a>: یه وب سایت خوب و رایگان برای درست کردن ماک برنامه</li>
</ul>
</div>
</h2>
<h2>
کتابخانه ها (Library)</h2>
<h2>
<div style="font-size: medium; font-weight: normal;">
</div>
<div style="font-size: medium; font-weight: normal;">
<ul>
<li><a href="http://jakewharton.github.io/butterknife/" target="_blank">ButterKnife</a>: یه کامپونته خیلی خفن که تو همه پروژه ها ازش استفاده می کنم، کارش اینه که ویجت ها (TextView, Button , ...) رو با یه خط انوتیت (Annotate) می شه وارد کرد به اکتیویتی یا فرگمنت، حتما توصیه می کنم یه چک بکنین</li>
<li><a href="https://github.com/gorbin/ASNE" target="_blank">ASNE</a>: یه کتابخانه کامل برای کار با شبکه های اجتماعی مثل: Twitter, Linkedin, Google Plus, Facebook, Instagram , ...</li>
<li><a href="https://github.com/JakeWharton/timber" target="_blank">timber</a>: یه لاگر فوق العاده کاربردی نسبت به Log کلاس پیش فرض اندروید، با این کتابخانه می تونید لاگ های دیباگ و ورباس (Timber.d , Timber.v) رو تو نسخه نهایی غیر فعال کنید و لاگ های ارور و هشدار (Timber.e , Timber.w) رو از طریق exception reporter (مثل google analytics) ارسال کنید برای خودتون.</li>
<li><a href="https://github.com/mikepenz/Android-Iconics" target="_blank">Android-Iconics</a> : تو اندروید یکی از سخت ترین کارا اضافه کردن آیکونه، این کتابخونه با استفاده از فونت های آیکونی با جاش این مشکل رو حل کرده.</li>
</ul>
</div>
</h2>
<h2>
پلاگین برای اندروید استادیو</h2>
<h2>
<div style="font-size: medium; font-weight: normal;">
<div>
</div>
</div>
<div style="font-size: medium; font-weight: normal;">
<ul>
<li><a href="https://github.com/mcharmas/android-parcelable-intellij-plugin/" target="_blank">ParcelableGenerator</a>: برای تولید Parcelable اندروید، کلاس رو بسازید، فیلد ها رو بهش اضافه کنید بعدش کلید میانبر ALT + Insert رو بزنید و گزینه Parcelable رو انتخاب کنید. :D</li>
<li><a href="https://github.com/pbreault/adb-idea" target="_blank">ADB Idea</a>: یه میانبر خوب برای اجرای دستورات پر کاربرد بر روی گوشی ای که به سیستم وصله، دستوراتی مثل حذف نرم افزار، بستن نرم افزار، پاک کردن کش، و اجرای مجدد نرم افزار</li>
</ul>
</div>
<div style="font-size: medium; font-weight: normal;">
این مجموعه در حال تکمیله اگه شما هم ابزار بدرد بخوری می شناسید معرفی کنید</div>
</h2>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com1tag:blogger.com,1999:blog-9019356430481842872.post-31343320791784880762015-06-29T22:02:00.000+04:302015-06-29T22:02:09.492+04:30OpenJDK VS Oracle JDK<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKvycEiFikdKO-yke_IlvHbQSsmOGp2C5sK2sX3_2_Qc1uNMt0I5kmWkMFctsEqoGoYi69YMeUmSBskDYzSY9-1VkxTqbhSekfLty74uZTj021ykbbLwdhLwbBzXFjAiv3W-iUC76HR3s/s1600/openjdk.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="169" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKvycEiFikdKO-yke_IlvHbQSsmOGp2C5sK2sX3_2_Qc1uNMt0I5kmWkMFctsEqoGoYi69YMeUmSBskDYzSY9-1VkxTqbhSekfLty74uZTj021ykbbLwdhLwbBzXFjAiv3W-iUC76HR3s/s320/openjdk.jpg" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: right;">
مشکلی که همیشه موقع نصب جاوا برام پیش میاد اینه که اوپن JDK رو کارایی بهتری داره و یا اوراکل JDK، این دفعه مشکل رو با کمی تحقیق حل کردم:</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
هنریک استال معاون مدیریت اجرایی گروه جاوا تو شرکت اوراکل در این رابطه نوشته (متن به صورت خلاصه ترجمه شده):</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
این دو بسیار به هم شبیه اند، برای ایجاد نسخه ی اوراکل JDK تنها چند تکه به آن اضافه می کنیم، </div>
<div class="separator" style="clear: both; text-align: right;">
به طور مثال:</div>
<div class="separator" style="clear: both; text-align: right;">
</div>
<ul style="text-align: right;">
<li> پلاگین جاوا (اجرا کننده ی Applet ها) و وب استارت (اجرا کننده ی نرم افزار جاوا به صورت یک کلیک) </li>
<li>یکسری از کامپوننت های کد بسته دیگر شرکت ها مثل graphics rasterizer و بعضی از فونت های استفاده شده</li>
<li>یکسری از کامپوننت های کد باز دیگر شرکت ها مثل Rhino ( راینو: موتور جاوا اسکریپت که به طور کامل با جاوا پیاده سازی شده است و توسط شرکت موزیلا توسعه داده می شود)</li>
</ul>
<br />
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
در ادامه هنریک نوشته : نیت ما کد باز کردن تمامی قسمت های اوراکل JDK هست به جز قسمت هایی که دارای امکانات تجاری هستند مثل Jrockit Mission Control (ابزاری برای مانیتور کردن و پروفایل کردن نرم افزار های جاوا که هنوز این محصول از طرف اوراکل ارائه نشده) باقی قسمت ها با کامپوننت های متن باز جابه جا خواهند شد.</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
طبق گفته این دوست عزیز از نظر کارایی تفاوت چندانی نمی کنه که از کدام JDK استفاده کنیم، برای همین من ترجیح می دم از اوپن JDKاستفاده بکنم که هم کد بازه و هم با یک دستور تو اوبونتو نصب می شه</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" dir="ltr" style="clear: both; text-align: left;">
sudo apt-get install openjdk-8-jdk</div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com1tag:blogger.com,1999:blog-9019356430481842872.post-54673656522513546522015-02-19T12:01:00.000+03:302015-02-19T12:02:33.190+03:30کتابخانه کار با رابط درگاه اینترنتی بانک ملت برای جاوا<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZVvZSp9YBcz6wRMoaI9y5yl2IuzXp20VUlXZcrnvlhcy_7reFxwGBu7S6xotx8onZZ_3-2S9Q7sXYNhrlXscD09c0M2C8vQBl-zY_RRedMZE5kQcKkPkW_e5qr6MEr43wp_3BxAaRpZA/s1600/internet-banking.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZVvZSp9YBcz6wRMoaI9y5yl2IuzXp20VUlXZcrnvlhcy_7reFxwGBu7S6xotx8onZZ_3-2S9Q7sXYNhrlXscD09c0M2C8vQBl-zY_RRedMZE5kQcKkPkW_e5qr6MEr43wp_3BxAaRpZA/s1600/internet-banking.jpg" height="240" width="320" /></a></div>
<br />
<br />
برای کار با درگاه بانک ملت یه کتابخانه (یا همون library) با IntelliJ IDEA درست کردم، گفتم اینجا بزارم تا بقیه هم بتونن استفاده کنند.<br />
<br />
کار با این کتابخانه خیلی راحته، نمونه کد زیر از متد bpPayRequest بانک ملت استفاده می کنه و در خواست تراکنش رو برای بانک ارسال می کنه. مابقی API های بانک ملت همانند مثال زیر یک متد دارند با یکسری پارامتر های ورودی و خروجی معین شده توسط خود بانک ملت.<br />
<br />
<blockquote class="tr_bq" dir="ltr" style="text-align: left;">
IPaymentGateway service = new PaymentGatewayImplService().getPaymentGatewayImplPort();<br />
String response = service.bpPayRequest(<br />
12,<br />
"USER NAME",<br />
"PASSWORD",<br />
mellatBank.getId() ,<br />
mellatBank.getPrice(),<br />
mellatBank.getLocalDate(),<br />
mellatBank.getLocalTime(),<br />
"",<br />
"response url",<br />
0<br />
);</blockquote>
<br />
از این کتابخانه برای <a href="http://onlinedaroo.com/" target="_blank">سایت آنلاین دارو</a> استفاده کردم<br />
<a href="https://drive.google.com/file/d/0BxDt3sYGKoroM01OWVpFYTg0OUk/view?usp=sharing" rel="nofollow" target="_blank">اینم لینک دانلود کتابخانه</a></div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com1tag:blogger.com,1999:blog-9019356430481842872.post-26220673696163093812014-12-11T21:24:00.000+03:302014-12-11T21:24:30.149+03:30Bad Smells in Code<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8Z3aq_XaiL2-RfCS8HBcjISSR0WBU04ZDl4vAEJ-iI2meQf-uwx5hSw7Oy15haKSGMoQ44lzcZL_neVveIw_PxpGCuj44p24q0NugKy0KP4fxSH01ICVOWae6Nx9e_510KTwVnMW1bhs/s1600/clean-code-smells-heuristiken.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8Z3aq_XaiL2-RfCS8HBcjISSR0WBU04ZDl4vAEJ-iI2meQf-uwx5hSw7Oy15haKSGMoQ44lzcZL_neVveIw_PxpGCuj44p24q0NugKy0KP4fxSH01ICVOWae6Nx9e_510KTwVnMW1bhs/s1600/clean-code-smells-heuristiken.jpg" height="290" width="320" /></a></div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<h3 dir="ltr" style="text-align: left;">
Duplicated Code</h3>
<div dir="ltr" style="text-align: left;">
If you see the same code structure in more than one place, you can be sure that your program will be better if you find a way to unify them.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Long Method </h3>
<div dir="ltr" style="text-align: left;">
The object programs that live best and longest are those with short methods.<br />
There is still an overhead to the reader of the code because you have to switch context to see what the sub procedure does. Development environments that allow you to see two methods at once help to eliminate this step, but the real key to making it easy to understand small methods is good naming. If you have a good name for a method you don't need to look at the body.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Large Class</h3>
<div dir="ltr" style="text-align: left;">
When a class is trying to do too much, it often shows up as too many instance variables. When a class has too many instance variables, duplicated code cannot be far behind.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Long Parameter List </h3>
<div dir="ltr" style="text-align: left;">
In our early programming days we were taught to pass in as parameters everything needed by a routine. This was understandable because the alternative was global data, and global data is evil and usually painful. Objects change this situation because if you don't have something you need, you can always ask another object to get it for you. Thus with objects you don't pass in everything the method needs; instead you pass enough so that you the method can get to everything it needs.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Divergent Change</h3>
<div dir="ltr" style="text-align: left;">
Divergent change occurs when one class is commonly changed in different ways for different reasons.</div>
<div dir="ltr" style="text-align: left;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheZFOESXtQmUVqSW3CuPcYSA0anQnTaaTrZ7Rc0wJHrGxo7O2vIALltjgI9QVdU_s3IknWdlWg8jA0V-pvi9LPAd92EwBoNPdHWk37vwSRR8AsNlRb7RLpE3FUZwTeOqra3ZaFXtvTWQo/s1600/th.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheZFOESXtQmUVqSW3CuPcYSA0anQnTaaTrZ7Rc0wJHrGxo7O2vIALltjgI9QVdU_s3IknWdlWg8jA0V-pvi9LPAd92EwBoNPdHWk37vwSRR8AsNlRb7RLpE3FUZwTeOqra3ZaFXtvTWQo/s1600/th.jpeg" /></a></div>
<span id="goog_2060582243"></span><span id="goog_2060582244"></span><br /></div>
<h3 dir="ltr" style="text-align: left;">
Shotgun Surgery </h3>
<div dir="ltr" style="text-align: left;">
Shotgun surgery is similar to divergent change but is the opposite. You whiff this when every time you make a kind of change, you have time to make a lot of little changes to a lot of different classes. When the changes are all over the place, they are hard to find, and it's easy to miss an important change.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Feature Envy</h3>
<div dir="ltr" style="text-align: left;">
The whole point of objects is that they are a technique to package data with the processes used on that data. A classic smell is a method that seems more interested in a class other than the one it actually is in.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Data Clumps</h3>
<div dir="ltr" style="text-align: left;">
Data items tend to be like children; they enjoy hanging around in groups together. Often you'll see the same three or four data items together in lots of places: fields in a couple of classes, parameters in many method signatures.Bunches of data that hang around together really ought to be made into their own object.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Primitive obsession</h3>
<div dir="ltr" style="text-align: left;">
You use primitives in the system to pass data, rather than objects, and it gets in the way of understanding the code. Eg. passing arrays everywhere.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Switch Statements </h3>
<div dir="ltr" style="text-align: left;">
One of the most obvious symptoms of object-oriented code is its comparative lack of switch (or case) statements. The problem with switch statements is essentially that of duplication. Often you find the same switch statement scattered about a program in different places.The object-oriented notion of polymorphism gives you an elegant way to deal with this problem.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwFlC2RFiMZ9NOgStGY8riCn6FpxZytvDmGw1BN6mWKUNGeRRYFgdVSunxinkRkjvL1jgTDqPIwsZXvuuSopCEUZn80WZeXck1gj-i3Z_lziOeLMXlW8zQRDF_K1xW_M8nK-PSEKP6ppg/s1600/th.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwFlC2RFiMZ9NOgStGY8riCn6FpxZytvDmGw1BN6mWKUNGeRRYFgdVSunxinkRkjvL1jgTDqPIwsZXvuuSopCEUZn80WZeXck1gj-i3Z_lziOeLMXlW8zQRDF_K1xW_M8nK-PSEKP6ppg/s1600/th.jpeg" /></a></div>
</div>
<h3 dir="ltr" style="text-align: left;">
Parallel Inheritance Hierarchies </h3>
<div dir="ltr" style="text-align: left;">
Parallel inheritance hierarchies is really a special case of shotgun surgery. In this case, every time you make a subclass of one class, you also have to make a subclass of another. You can recognize this smell because the prefixes of the class names in one hierarchy are the same as the prefixes in another hierarchy.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Lazy Class </h3>
<div dir="ltr" style="text-align: left;">
Each class you create costs money to maintain and understand. A class that isn't doing enough to pay for itself should be eliminated. Often this might be a class that used to pay its way but has been downsized with refactoring. Or it might be a class that was added because of changes that were planned but not made. Either way, you let the class die with dignity.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Speculative Generality</h3>
<div dir="ltr" style="text-align: left;">
You get it when people say, "Oh, I think we need the ability to this kind of thing someday" and thus want all sorts of hooks and special cases to handle things that aren't required. The result often is harder to understand and maintain.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Temporary Field</h3>
<div dir="ltr" style="text-align: left;">
Sometimes you see an object in which an instance variable is set only in certain circumstances. Such code is difficult to understand, because you expect an object to need all of its variables. Trying to understand why a variable is there when it doesn't seem to be used can drive you nuts.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Message Chains </h3>
<div dir="ltr" style="text-align: left;">
You see message chains when a client asks one object for another object, which the client then asks for yet another object, which the client then asks for yet another another object, and so on. You may see these as a long line of getThis methods, or as a sequence of temps. Navigating this way means the client is coupled to the structure of the navigation. Any change to the intermediate relationships causes the client to have to change.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Middle Man </h3>
<div dir="ltr" style="text-align: left;">
One of the prime features of objects is encapsulation—hiding internal details from the rest of the world. Encapsulation often comes with delegation. You ask a director whether she is free for a meeting; she delegates the message to her diary and gives you an answer. All well and good. There is no need to know whether the director uses a diary, an electronic gizmo, or a secretary to keep track of her appointments.<br />
However, this can go too far. You look at a class's interface and find half the methods are delegating to this other class. After a while it is time to use Remove Middle Man and talk to the object that really knows what's going on.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Inappropriate Intimacy</h3>
<div dir="ltr" style="text-align: left;">
Sometimes classes become far too intimate and spend too much time delving in each others private parts. We may not be prudes when it comes to people, but we think our classes should follow strict, puritan rules.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Data Class</h3>
<div dir="ltr" style="text-align: left;">
These are classes that have fields, getting and setting methods for the fields, and nothing else. Such classes are dumb data holders and are almost certainly being manipulated in far too much detail by other classes. In early stages these classes may have public fields. If so, you should immediately apply Encapsulate Field before anyone notices.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Refused Bequest</h3>
<div dir="ltr" style="text-align: left;">
Subclasses get to inherit the methods and data of their parents. But what if they don't want or need what they are given? They are given all these great gifts and pick just a few to play with. The traditional story is that this means the hierarchy is wrong.<br />
</div>
<h3 dir="ltr" style="text-align: left;">
Comments </h3>
<div dir="ltr" style="text-align: left;">
Don't worry, we aren't saying that people shouldn't write comments. In our olfactory analogy, comments aren't a bad smell; indeed they are a sweet smell. The reason we mention comments here is that comments often are used as a deodorant. It's surprising how often you look at thickly commented code and notice that the comments are there because the code is bad. Comments lead us to bad code that has all the rotten whiffs we've discussed in the rest of this chapter.<br />
If you need a comment to explain what a block of code does, try Extract Method. If the method is already extracted but you still need a comment to explain what it does, use Rename Method. If you need to state some rules about the required state of the system, use Introduce Assertion.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyk0qdVb9XRo-DmYT2yWl2TU0UkbYzKtxd6BdbxsPV9IiLBgRoeUcnMuZXr1V-mVrJqNAFfp8dpZUgHV0od1BzRFGj01YjCEyqUMi2aMTUZhmgTHmwvPuyXAjcHN74FHwpkcnggjWkdQY/s1600/58278251_f8a185fdc7_m.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyk0qdVb9XRo-DmYT2yWl2TU0UkbYzKtxd6BdbxsPV9IiLBgRoeUcnMuZXr1V-mVrJqNAFfp8dpZUgHV0od1BzRFGj01YjCEyqUMi2aMTUZhmgTHmwvPuyXAjcHN74FHwpkcnggjWkdQY/s1600/58278251_f8a185fdc7_m.jpg" /></a></div>
<br />
<span class="short_text" id="result_box" lang="en"><span class="hps">Summary of the</span> <span class="hps">"</span></span><span class="short_text" id="result_box" lang="en"><span class="hps">Refactoring: Improving the Design of Existing Code"</span></span> </div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-44082268955364158102014-10-04T12:37:00.000+03:302014-10-04T12:37:26.160+03:30Code Refactoring<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhO7ijeUrDQcgstrogAOs1OYn2dETFhoc1FrYEm7lldRqugZn7r279kLb93_rLySRiQLcfQBwDnzQ-o8MArKKLRKtW1S7qY13f3mZ4yNxp1vwBylgtwQl6O81eNjWodnhhPqld0zVg3s5o/s1600/16413757-abstract-word-cloud-for-code-refactoring-with-related-tags-and-terms.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhO7ijeUrDQcgstrogAOs1OYn2dETFhoc1FrYEm7lldRqugZn7r279kLb93_rLySRiQLcfQBwDnzQ-o8MArKKLRKtW1S7qY13f3mZ4yNxp1vwBylgtwQl6O81eNjWodnhhPqld0zVg3s5o/s1600/16413757-abstract-word-cloud-for-code-refactoring-with-related-tags-and-terms.jpg" height="236" width="320" /></a></div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
</div>
<h2 dir="ltr" style="text-align: left;">
<span style="color: #073763;">What Is Refactoring ?</span></h2>
<div dir="ltr" style="text-align: left;">
Refactoring is the process of changing a software system in such a way that it does not alter the external behavior of the code yet improves its internal structure. It is a disciplined way to clean up code that minimizes the chances of introducing bugs. In essence when you refactor you are improving the design of the code after it has been written.</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
<span style="color: #7f6000;">Tip:</span> When you find you have to add a feature to a program, and the program's code is not structured in a convenient way to add the feature, first refactor the program to make it easy to add the feature, then add the feature.</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
</div>
<h2 dir="ltr" style="text-align: left;">
<span style="color: #073763;">The First Step in Refactoring </span></h2>
<div dir="ltr" style="text-align: left;">
Whenever I do refactoring, the first step is always the same. I need to build a solid set of tests for that section of code. The tests are essential because even though I follow refactorings structured to avoid most of the opportunities for introducing bugs, I'm still human and still make mistakes. Thus I need solid tests.</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
<span style="color: #7f6000;">Tip:</span> Any fool can write code that a computer can understand. Good programmers write code that humans can understand.</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
</div>
<h2 dir="ltr" style="text-align: left;">
<span style="color: #073763;">Why Should You Refactor?</span></h2>
<div dir="ltr" style="text-align: left;">
I don't want to proclaim refactoring as the cure for all software ills. It is no "silver bullet." Yet it is a valuable tool, a pair of silver pliers that helps you keep a good grip on your code. Refactoring is a tool that can, and should, be used for several purposes.</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
</div>
<h2 dir="ltr" style="text-align: left;">
<span style="color: #073763;">Refactoring Helps You Find Bugs </span></h2>
<div dir="ltr" style="text-align: left;">
Help in understanding the code also helps me spot bugs. I admit I'm not terribly good at finding bugs. Some people can read a lump of code and see bugs, I cannot. </div>
<div dir="ltr" style="text-align: left;">
However, I find that if I refactor code, I work deeply on understanding what the code does, and I put that new understanding right back into the code. By clarifying the structure of the program, I clarify certain assumptions I've made, to the point at which even I can't avoid spotting the bugs.</div>
<div dir="ltr" style="text-align: left;">
<br />It reminds me of a statement Kent Beck often makes about himself, "I'm not a great programmer; I'm just a good programmer with great habits." Refactoring helps me be much more effective at writing robust code.</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
</div>
<h2 dir="ltr" style="text-align: left;">
<span style="color: #073763;">Refactoring Helps You Program Faster</span></h2>
<div dir="ltr" style="text-align: left;">
This sounds counterintuitive. When I talk about refactoring, people can easily see that it improves quality. Improving design, improving readability, reducing bugs, all these improve quality. But doesn't all this reduce the speed of development<br />I strongly believe that a good design is essential for rapid software development. </div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
Indeed, the whole point of having a good design is to allow rapid development. Without a good design, you can progress quickly for a while, but soon the poor design starts to slow you down. You spend time finding and fixing bugs instead of adding new function. </div>
<div dir="ltr" style="text-align: left;">
<br />Changes take longer as you try to understand the system and find the duplicate code. New features need more coding as you patch over a patch that patches a patch on the original code base. A good design is essential to maintaining speed in software development. Refactoring helps you develop software more rapidly, because it stops the design of the system from decaying. It can even improve a design.</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
</div>
<h2 dir="ltr" style="text-align: left;">
<span style="color: #073763;">When Should You Refactor</span></h2>
<div dir="ltr" style="text-align: left;">
In almost all cases, I'm opposed to setting aside time for refactoring. In my view refactoring is not an activity you set aside time to do. Refactoring is something you do all the time in little bursts. You don't decide to refactor, you refactor because you want to do something else, and refactoring helps you do that other thing.</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
</div>
<h2 dir="ltr" style="text-align: left;">
<span style="color: #073763;">Refactor When You Need to Fix a Bug </span></h2>
<div dir="ltr" style="text-align: left;">
In fixing bugs much of the use of refactoring comes from making code more understandable. As I look at the code trying to understand it, I refactor to help improve my understanding. Often I find that this active process of working with the code helps in finding the bug. One way to look at it is that if you do get a bug report, it's a sign you need refactoring, because the code was not clear enough for you to see there was a bug.</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
</div>
<h2 dir="ltr" style="text-align: left;">
<span style="color: #073763;">When Shouldn't You Refactor</span></h2>
<div dir="ltr" style="text-align: left;">
There are times when you should not refactor at all. The principle example is when you should rewrite from scratch instead. There are times when the existing code is such a mess that although you could refactor it, it would be easier to start from the beginning.<br />A clear sign of the need to rewrite is when the current code just does not work. You may discover this only by trying to test it and discovering that the code is so full of bugs that you cannot stablilize it.</div>
<div dir="ltr" style="text-align: left;">
<br />The other time you should avoid refactoring is when you are close to a deadline. At that point the productivity gain from refactoring would appear after the deadline and thus be too late.</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhu6SR7Lejvt-YaPu3HnBGkOz_UZMRyOn6U8bHN4Pjs3M0DwekzGcRQkRl4ManiDuA7azZ1fW27cyv4cKBrelMd8eoRU1DwLgheM0H-g-mFgRIgAHXqM6-16Jucix7c_EVIYvnXWRbzbNI/s1600/58278251_f8a185fdc7_m.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhu6SR7Lejvt-YaPu3HnBGkOz_UZMRyOn6U8bHN4Pjs3M0DwekzGcRQkRl4ManiDuA7azZ1fW27cyv4cKBrelMd8eoRU1DwLgheM0H-g-mFgRIgAHXqM6-16Jucix7c_EVIYvnXWRbzbNI/s1600/58278251_f8a185fdc7_m.jpg" /> </a></div>
<div dir="ltr" style="text-align: left;">
<span class="short_text" id="result_box" lang="en"><span class="hps">Summary of the</span> <span class="hps">"</span></span><span class="short_text" id="result_box" lang="en"><span class="hps">Refactoring: Improving the Design of Existing Code"</span></span> book</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-75978393595770492932014-08-27T18:05:00.000+04:302014-08-27T18:05:35.729+04:30معرفی دو تا کتاب و یک مجله خواندنی<div dir="rtl" style="text-align: right;" trbidi="on">
<div style="text-align: right;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifUaoUYG6WFs_T-xz3HluKTZ8PV3VtscPVqZ_lyTC6zJ5Wj2u3uH5nLzvacqzSQs19B-L4CdVCstKcfSq8aFd5GyKVWJDrd7NQWiUBVphOIKAiLmfhNCh7Fgw5rClUQRkktlgg_u0tKHQ/s1600/magazine_small.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifUaoUYG6WFs_T-xz3HluKTZ8PV3VtscPVqZ_lyTC6zJ5Wj2u3uH5nLzvacqzSQs19B-L4CdVCstKcfSq8aFd5GyKVWJDrd7NQWiUBVphOIKAiLmfhNCh7Fgw5rClUQRkktlgg_u0tKHQ/s1600/magazine_small.jpg" height="320" width="228" /></a></div>
<h4 style="text-align: right;">
<br /></h4>
<h4 style="text-align: right;">
ماهنامه سلام دنیا</h4>
<br />
<h3 style="text-align: right;">
قسمتی از سخن سردبیر</h3>
یکی از بزرگترین مزایای مدل نرمافزار آزاد / متنباز و در دیدگاهی فراتر «جامعه آزاد / متنباز»، شروع حرکتهای ساده و کوچک، بر اساس نیاز جامعه است. بدین ترتیب که نیاز دیده میشود (خلق نمیشود)، گروهی دست به کار میشوند، جامعه مشارکت میکند، کیفیت روزبهروز بهبود مییابد و در نهایت همه سود میبرند. رویه مجله سلام دنیا هم همین است؛ شاید بهترین را منتشر نکرده باشیم، اما شروع کردیم و قطعا میتوانیم بهتر شویم.<br />
<br />
<div style="text-align: justify;">
<span style="color: #333333; font-family: DroidNaskh;"><span style="background-color: whitesmoke; font-size: 14px; line-height: 20px;"><a href="http://salam-donya.ir/" target="_blank">وب سایت ماهنامه</a></span></span></div>
<div style="text-align: justify;">
<span style="color: #333333; font-family: DroidNaskh;"><span style="background-color: whitesmoke; font-size: 14px; line-height: 20px;"><a href="http://salam-donya.ir/pdfs/Salam-Donya[0].pdf" target="_blank">دریافت فایل پی دی اف ماهنامه</a></span></span></div>
<br />
<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOUcT58YS2GYTmfQ0wW1WdJsKkYhPj6kBXZhLuvpaoeLIp9knoRv3Y9ujVZclg-0iMfp-RNwdtkwB85nJqCZbHnYAkPZxFpnGORtdBkjz0pll48WGnP2PDwf0a8pXv3-HkGJw2LUig710/s1600/Linus.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOUcT58YS2GYTmfQ0wW1WdJsKkYhPj6kBXZhLuvpaoeLIp9knoRv3Y9ujVZclg-0iMfp-RNwdtkwB85nJqCZbHnYAkPZxFpnGORtdBkjz0pll48WGnP2PDwf0a8pXv3-HkGJw2LUig710/s1600/Linus.jpg" height="320" width="212" /></a><br />
<br />
<h4 style="text-align: right;">
فقط برای تفریح</h4>
<br />
<h3 style="text-align: right;">
داستان یک انقلابی اتفاقی</h3>
این کتاب، نوشته لینوس توروالدز خالق لینوکس و دیوید دیاموند است. یک خبرنگار مدت ها با لینوس وقت گذرونده و حرف هاش رو شنیده و نتیجه اش شده این کتاب که با نام انگلیسی Just For Fun توسط انتشارات TEXERE منتشر شده.<br />
<br />
<br />
<br />
<br />
<a href="http://linuxstory.ir/" target="_blank">وب سایت کتاب</a><br />
<a href="http://linuxstory.ir/justforfun_persian_a5.pdf" target="_blank">دریافت فایل پی دی اف کتاب</a><br />
<br />
<br />
<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYUWQp8MEP0u-BUELsGCqkXJi5jQcObU_VnAMHzXK7Go0ONy3_0OK1NOxAx25J2QZfxtf0gW_mWwWFGpwGQTjnWYlfvGuH7pfiJQWbyP01tEKjC5Xn9e4Ur3lx1PaQHgLcKJPN2QMvHFw/s1600/7ea34310fca0a88d00346010.L.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYUWQp8MEP0u-BUELsGCqkXJi5jQcObU_VnAMHzXK7Go0ONy3_0OK1NOxAx25J2QZfxtf0gW_mWwWFGpwGQTjnWYlfvGuH7pfiJQWbyP01tEKjC5Xn9e4Ur3lx1PaQHgLcKJPN2QMvHFw/s1600/7ea34310fca0a88d00346010.L.jpg" height="320" width="213" /></a><br />
<br />
<h4 style="text-align: right;">
دنیای قشنگ نو</h4>
<br />
<h3 style="text-align: right;">
آلدوس هاکسلی</h3>
دنیایِ قشنگ نو یا دنیای شگفت انگیز جدید (به انگلیسی: Brave New World) یک رمان علمی-تخیلی پادآرمانی (Dystopian) است که در سال ۱۹۳۲ به قلم آلدوس هاکسلی نویسنده و شاعر انگلیسی منتشر شده است. وقایع این رمان در سال ۲۵۴۰ در شهر لندن می گذرد و آرمانشهری را به تصویر می کشد که در آن مهندسی ژنتیک به آفرینش انسانها با ویژگی های از پیش تعیین شده منجر شده، نظام اخلاقی جامعه با تشکیل حکومت جهانی و از میان بردن جنگ و فقر و نابودی کامل خانواده و تولید مثل به کلی پوست انداخته و دانش روان شناسی به طرز حیرت انگیزی اعتلا یافته و تنها هدف انسان ایجاد سعادت و از میان بردن رنج های غیر ضروری ست.<br />
<br />
<a href="http://khabarefori.net/Donyaye.Ghashange.pdf" target="_blank">دریافت فایل پی دی اف کتاب</a></div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-89915622824357426762014-08-19T19:14:00.001+04:302014-08-24T20:00:17.562+04:30جابه جایی پورت در لینوکس یا Port Forwarding<div dir="rtl" style="text-align: right;" trbidi="on">
به کمک iptables لینوکس می خوایم یک پورت مشخص مثل 9090 رو به یه آدرس ای پی و پورت مشخص دیگه وصل کنیم.<br />
با Port Forwarding کار های زیادی می شه انجام داد مثل :<br />
<br />
<ul style="text-align: right;">
<li>جدا کردن سرور آپاچی و سرور دیتابیس (<a href="http://en.wikipedia.org/wiki/Load_balancing_(computing)" target="_blank">Load Balancing</a>) </li>
<li>در مواقعی که فیلتر شکن ها اجازه نمی دن سرور خارجی بهمون وصل بشه با جابه جایی مبدا می شه فیلتر شکن رو گول زد </li>
<li>به عنوان سرور آینه (<a href="http://searchstorage.techtarget.com/definition/mirror" target="_blank">Server Mirroring</a>)</li>
<li>و ...</li>
</ul>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8CO4xLd_jkYFS7VFGTADXRJN0uqQfVHVnqb2Skqj7ah2fjrADzW6vCLB4jLuYmPqBt7rVXNclrzXSS2HSraAkIgjlS4EzJY2M_QVgCkYpldJqycbgQ0IIDg4TjPPW9WppkHPDxmhbTXU/s1600/port_forwarding.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8CO4xLd_jkYFS7VFGTADXRJN0uqQfVHVnqb2Skqj7ah2fjrADzW6vCLB4jLuYmPqBt7rVXNclrzXSS2HSraAkIgjlS4EzJY2M_QVgCkYpldJqycbgQ0IIDg4TjPPW9WppkHPDxmhbTXU/s1600/port_forwarding.jpg" height="320" width="280" /></a></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
برای شروع به یک سرور لینوکسی نیاز داریم، </div>
<div class="separator" style="clear: both; text-align: right;">
اول از همه ip forward رو با دستور زیر فعال می کنیم :</div>
<div class="separator" style="clear: both; text-align: left;">
sudo sysctl net.ipv4.ip_forward=1 </div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
حالا باید رول ها رو تنظیم کنیم :</div>
<div class="separator" style="clear: both; text-align: left;">
sudo iptables -t nat -A PREROUTING -p tcp -d x.x.x.x --dport 80
-j DNAT --to-destination y.y.y.y:8014 </div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
x.x.x.x: این آدرسه خود سرور پراکسی هستش که روی پورت ۸۰ تنظیم شده</div>
<div class="separator" style="clear: both; text-align: right;">
y.y.y.y: این هم آدرس کلاینتم هستش که روی پورت ۸۰۱۴ تنظیم شده</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
بعد از اجرا کردن دستور بالا دستور زیر رو اجرا کنید:</div>
<div class="separator" style="clear: both; text-align: left;">
iptables -t nat -A POSTROUTING -j MASQUERADE </div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
با دستور بالا مبدا رو عوض می کنیم و کلاینت ها فکر می کنن از خود سرور پراکسی ما دارن داده ها رو دریافت می کنن</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
تمام ، با این کار اگه به سرور x.x.x.x روی پورت 80 وصل بشیم سرور ما رو جا به جا می کنه و پاکت های ارسالی رو برای y.y.y.y روی پورت 8014 ارسال می کنه</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
برای دیدن لیست Rule ها دستور زیر رو بزنید:</div>
<div class="separator" style="clear: both; text-align: left;">
iptables -t nat --line-numbers -L</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
و برای پاک کردنشون هم دستور زیر رو همراه با شماره خط دستور قبلی وارد کنید :</div>
<div class="separator" style="clear: both; text-align: left;">
iptables -t nat -D PREROUTING 6</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
برای استفاده از روش SNAT به جایه <span style="text-align: left;">MASQUERADE از دستور زیر استفاده کنید:</span></div>
<div class="separator" dir="ltr" style="clear: both; text-align: justify;">
<span style="text-align: left;">iptables -t nat -A POSTROUTING -p tcp -o eth0 -j SNAT --to-source x.x.x.x</span></div>
<div class="separator" dir="ltr" style="clear: both; text-align: justify;">
<span style="text-align: left;"><br /></span></div>
<div class="separator" style="clear: both; text-align: right;">
با دستور بالا آدرس مبدا پاکت ها رو به x.x.x.x تغییر می دهیم</div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-83241450747375988342014-07-22T23:35:00.000+04:302014-07-22T23:35:41.252+04:30برای همیشه از شر پنجرههای System Program Problem Detected اوبونتو راحت بشین<div dir="rtl" style="text-align: right;" trbidi="on">
<div style="text-align: start;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3q43cqhLuQuJ5RxGYhJbASvQqJg8NYoh9lk1tWlzLeQq3Ejmm68A8XjvV_9wwIIFbEbLxGZpkajNjBUj84s0SMe-CoPikxSrUNkEKuqir71kGoQCU6gy3zA2uTy8yCwAmSy0Qq7DIFBs/s1600/92129.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3q43cqhLuQuJ5RxGYhJbASvQqJg8NYoh9lk1tWlzLeQq3Ejmm68A8XjvV_9wwIIFbEbLxGZpkajNjBUj84s0SMe-CoPikxSrUNkEKuqir71kGoQCU6gy3zA2uTy8yCwAmSy0Qq7DIFBs/s1600/92129.png" height="202" width="320" /></a></div>
<div style="text-align: center;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">کنونیکال تلاش زیادی می کنه تا کیفیت نسخه گنو/لینوکسش رو بالا ببره و یکی از ابزارهاش در اینکار، Apport است؛ برنامه ای برای ریپورت اتوماتیک مشکلات پیش اومده در برنامهها. چون اکثر آدمها حرفه ای نیستن و نمی دونن باید مشکلات برنامه ها رو چطوری بازتولید و ریپورت کنن، این سرویس سعی می کنه در صورت دیدن هر کرشی در هر برنامهای، اون رو در var/crash/ ذخیره و بعد ریپورت کنه. دقیقا همین دایرکتوری است که وقتی فایلی توش باشه، باعث می شه موقع بوت شدن اوبونتو شما این پنجره رو ببینین:</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEje5OaKqAsNNw86gs0xY0p6aGCtrzsHRSWUW1s6j4WzIJiuYGswoVqzP5DqSJBfp9aMM-QWm0Out2KayM_Bp-2LzL68b6zFbBbr28XNG_Ps4DTaB0_LpWKqctfHbeMr5me5GljNOeYWrWI/s1600/Selection_06-42-38.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEje5OaKqAsNNw86gs0xY0p6aGCtrzsHRSWUW1s6j4WzIJiuYGswoVqzP5DqSJBfp9aMM-QWm0Out2KayM_Bp-2LzL68b6zFbBbr28XNG_Ps4DTaB0_LpWKqctfHbeMr5me5GljNOeYWrWI/s1600/Selection_06-42-38.png" height="146" width="320" /></a></div>
<div style="text-align: center;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
</div>
<div style="text-align: start;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: start;">
<span style="font-family: Arial, Helvetica, sans-serif;">این پنجره ذاتا چیز بدی نیست ولی خب اکثر ما ریپورت نمی کنیم و دوست هم نداریم کامپیوترمون هی بوت شدن یکسری «ارور» بده! به همین خاطر اگر می خواین از شر این پیشنهادهای بی شرمانه ریپورت کردن راحت بشین، اول اون دایرکتوری رو خالی کنین تا دیگه موقع بوت اوبونتو پیشنهاد ریپورت نده و بعد اگر کلا می خواین هیچ وقت چیزی رو ریپورت نکنین به فایل زیر برین و اون متغیر رو از از یک به صفر تغییر بدین:</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLdOAH1iatvaVdk7vKZUWPKOeCCMvbSoZQyhhcqOZyob7eXsag2HRewCYdSZ1luVYUhg-E2f9RIOO0e5ljcyw4QXpMfXQAKEDy9Z9x3VObgAi7YjjKdmlcf9siIcI4kbepD0rIWtTMHjU/s1600/Screenshot+-+07222014+-+11:26:34+PM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLdOAH1iatvaVdk7vKZUWPKOeCCMvbSoZQyhhcqOZyob7eXsag2HRewCYdSZ1luVYUhg-E2f9RIOO0e5ljcyw4QXpMfXQAKEDy9Z9x3VObgAi7YjjKdmlcf9siIcI4kbepD0rIWtTMHjU/s1600/Screenshot+-+07222014+-+11:26:34+PM.png" height="82" width="320" /></a></div>
<div style="text-align: center;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
</div>
<div style="text-align: start;">
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span></div>
<div style="text-align: start;">
<span style="font-family: Arial, Helvetica, sans-serif;">و از دست اون پنجرههای منحوس که همیشه باعث می شن من فکر کنم اوبونتوم خرابه، راحت بشین.</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">برگرفته شده از <a href="http://jadi.net/" target="_blank">وبلاگ جادی</a></span></div>
<div style="text-align: start;">
<br /></div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-8309492106476310012014-06-30T17:41:00.001+04:302014-06-30T17:42:46.283+04:30مقداردهی خصیصه های html در ember.js<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqi00KE5fGJKRuNeZGVQ2EB-96sBMSWicqHPSeYsnL_QpmdhUvcSmBCq4dwmZn-U__m0fGuyHFi_Z02HUWTRWefe8JEAWP8XHOAqPiGTHDPKh35IGaDR60zptXm4IbFukM0l_3ndFz804/s1600/emberjs-logo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqi00KE5fGJKRuNeZGVQ2EB-96sBMSWicqHPSeYsnL_QpmdhUvcSmBCq4dwmZn-U__m0fGuyHFi_Z02HUWTRWefe8JEAWP8XHOAqPiGTHDPKh35IGaDR60zptXm4IbFukM0l_3ndFz804/s1600/emberjs-logo.png" height="320" width="320" /></a></div>
<div style="text-align: center;">
<br /></div>
<br />
مشکل از اینجا شروع می شه که می خواین تو ember یه خصیصه ی html رو به صورت داینامیک مقدار دهی کنید ، فکر کنید تکه کد زیر رو داخل قالب ember دارین :<br />
<br />
<div dir="ltr" style="text-align: left;">
<textarea placeholder="my static value"></textarea></div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
خب حالا می خوایم متغیر myDynamicValue رو به عنوان خصیصه ی placeholder به textarea بدیم ، شاید فکر کنید تکه کد زیر همین کار رو انجام می ده :</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
<textarea placeholder="{{<span style="text-align: right;">myDynamicValue</span>}}"></textarea></div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
اما کاملا در اشتباهید با تکه کد زیر می توانید این کار رو انجام بدید:</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
{{bindAttr <<your attribute>>="<<your value>>"}}</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
به عنوان مثال:</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
<textarea {{bindAttr placeholder="myDynamicValue"}} ></textarea></div>
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: right;">
به همین راحتی !!!!!!!!!!!</div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-38400312765620360092014-06-06T21:11:00.000+04:302014-06-06T21:11:17.485+04:30اکشن بار بر روی اندروید 2.1 به بالا (Action Bar)<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_xflUTFIaV-OKXUpmFVclq3FfBh-0MVWYp93uIUPVN8oO9DVBxxDZriuXXND55NDKJqnQsy_f8rDiEK7gI8o3vVm1TdZyoRj60HkntC_Qp2pZQMwfDGYeI8azA0n_ZEJd1gYfYoWOgbM/s1600/actionbar-actions.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_xflUTFIaV-OKXUpmFVclq3FfBh-0MVWYp93uIUPVN8oO9DVBxxDZriuXXND55NDKJqnQsy_f8rDiEK7gI8o3vVm1TdZyoRj60HkntC_Qp2pZQMwfDGYeI8azA0n_ZEJd1gYfYoWOgbM/s1600/actionbar-actions.png" height="100" width="400" /></a></div>
<br />
<br />
اگه برای اپلیکیشن تون می خواین اکشن بار بزارین و کاربراتون از نسخه 3 به بالا استفاده می کنن با خواندن مطلب پایین در ۳ ثانیه می توانید این کارو انجام بدید.<br />
<div>
<br /></div>
<div>
<a href="https://developer.android.com/training/basics/actionbar/adding-buttons.html">https://developer.android.com/training/basics/actionbar/adding-buttons.html</a></div>
<div>
<br /></div>
<div>
اگه دارین این رو می خوانین یعنی باسه کاربراتون ارزش قائلید و از نسخه های 2.1 به بالا می خواین پشتیبانی کنید ، آستیناتون رو بدین بالا که یه ذره کار سخته :D . اگه دارین از Eclipse استفاده می کنید با جاش این صفحه رو ببندین و بعد از اینکه پروژه تون رو بردین رو IntelliJ IDEA یا Android Studio ادامه مطلب رو بخوانین.<br />
<b>1. </b>اول از همه باید Android Support Library رو از Android sdk manager نصب کنید<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEio7G-tYzySJyl54XGGmP8nh4J9bRAC6s-fiMiRI0lMWcJups41s13sj-2Ewbyu8I_SUybrMjxnYpy5OwPBx82w3q7kik-6gWipBnxdSOJoz2pPpSdJvBoBPipG0FRnNvbxl6l_-WgRhfw/s1600/Android+SDK+Manager+.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEio7G-tYzySJyl54XGGmP8nh4J9bRAC6s-fiMiRI0lMWcJups41s13sj-2Ewbyu8I_SUybrMjxnYpy5OwPBx82w3q7kik-6gWipBnxdSOJoz2pPpSdJvBoBPipG0FRnNvbxl6l_-WgRhfw/s1600/Android+SDK+Manager+.png" height="204" width="320" /></a></div>
<br />
<br />
<div style="text-align: right;">
<b>2. </b>در Intellij Idea به مسیر زیر برید:</div>
<div dir="ltr" style="text-align: left;">
<b>File -> Project Structure ...</b></div>
<div style="text-align: right;">
<b> 3. </b>در قسمت Libraries دو فایل jar (داخل اندروید SDK) زیر را اضافه کنید</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
<b>Sdk Path/extras/android/support/v7/</b><span style="text-align: right;"><b>appcompat/lib/</b></span><span style="text-align: right;"><b>android-support-v4.jar</b></span></div>
<div dir="ltr" style="text-align: left;">
<b>Sdk Path/extras/android/support/v7/</b><span style="text-align: right;"><b>appcompat/lib/</b></span><span style="text-align: right;"><b>android-support-v7-appcompat.jar</b></span></div>
<div dir="ltr" style="text-align: left;">
<span style="text-align: right;"><b><br /></b></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhm5h1UnakiSDfMpAfp-fddqzFvGVY5nHGdY9W-UQVCLNrUPHkEYVneR0urWmsPtX0sjdqULTV_LXbbLZwCOQqAwkkgv_yGm65KkVXM6XJXfVCIcqFxEWeKzvS8BtmET6pZF1nuoKpdNPM/s1600/Add+jar+files+to+project.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhm5h1UnakiSDfMpAfp-fddqzFvGVY5nHGdY9W-UQVCLNrUPHkEYVneR0urWmsPtX0sjdqULTV_LXbbLZwCOQqAwkkgv_yGm65KkVXM6XJXfVCIcqFxEWeKzvS8BtmET6pZF1nuoKpdNPM/s1600/Add+jar+files+to+project.png" height="88" width="400" /></a></div>
<div dir="ltr" style="text-align: left;">
<span style="text-align: right;"><b><br /></b></span></div>
<div style="text-align: right;">
<br /></div>
</div>
<div>
4<b>. </b>در قسمت Modules ، ماژول appcompat را از مسیر زیر ایمپورت کنید و در تب Dependencies دو تا فایل jar ی که در مرحله قبل اضافه کردید رو اینجا هم اضافه کنید مثل عکس زیر<br />
<div dir="ltr" style="text-align: left;">
<b>Sdk Path/extras/android/support/v7/</b><span style="text-align: right;"><b>appcompat</b></span></div>
<div dir="ltr" style="text-align: left;">
<span style="text-align: right;"><b><br /></b></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMZ5cMOyc4iTcA_NonMrvFgex-YJGk4G7mG11Qbgtis00Y6WgD9Kj1ix9b044PnLaGjVPBV7CP3DxQKOM6BzZvvDPPx3_7xSIQfw8v7zIlxGSov-YgSg7xOClLswzbR8c_3E4VUik09QE/s1600/Import+Module.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMZ5cMOyc4iTcA_NonMrvFgex-YJGk4G7mG11Qbgtis00Y6WgD9Kj1ix9b044PnLaGjVPBV7CP3DxQKOM6BzZvvDPPx3_7xSIQfw8v7zIlxGSov-YgSg7xOClLswzbR8c_3E4VUik09QE/s1600/Import+Module.png" height="83" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: right;">
<b>5. </b>تا اینجای کار android-support-v7 رو به پروژه اضافه کردید حالا مانده ازش استفاده کنیم ، داخل فایل AndroidManifest.xml به تگ Activity (اکتیویتیه اصلیه پروژه و یا هر جایی که می خواین اکشن بار بزارین) تکه کد زیر رو وارد کنید</div>
<div style="text-align: right;">
<br /></div>
<div dir="ltr" style="text-align: left;">
<b>android:theme="@style/Theme.AppCompat.Light"</b></div>
<div style="text-align: right;">
<b><br /></b></div>
<div style="text-align: right;">
فایل AndroidManifest.xml پروژه من :</div>
<div style="text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgo1Phtho248lCmHdqGOmlJomdLxeQBylHPZlIl-HYnMEqktja36dmPVZQPhA1TLyUuxHzhw-T6KHgqDNPjD93Enhyphenhyphenr7bucRqhOjC9RUE-Dj4IFPJxFekcF8vAXyAA2_RBSJ5Ka5_eyNvc/s1600/AndroidManifest.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgo1Phtho248lCmHdqGOmlJomdLxeQBylHPZlIl-HYnMEqktja36dmPVZQPhA1TLyUuxHzhw-T6KHgqDNPjD93Enhyphenhyphenr7bucRqhOjC9RUE-Dj4IFPJxFekcF8vAXyAA2_RBSJ5Ka5_eyNvc/s1600/AndroidManifest.png" height="155" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
<b>6. </b>کلاس اکتیویتی که می خواین اکشن بار داشته باشه رو باز کنید و از کلاس ActionBarActivity ارث ببرید !! (extend کنید)</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPM9l5C2sOwhAHL49IA9G9SAl_RYkD0UVVrDeJDCeW_crrlTlviYhdVeGkt1JrjUBKY1MCkVoP_zOFvrcvvIaes9ggN098tVUB6vBe4trXMkmHm8PK7XN39_jeJ1Z_IaS8lRLWJm4xxSI/s1600/MyActivity.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPM9l5C2sOwhAHL49IA9G9SAl_RYkD0UVVrDeJDCeW_crrlTlviYhdVeGkt1JrjUBKY1MCkVoP_zOFvrcvvIaes9ggN098tVUB6vBe4trXMkmHm8PK7XN39_jeJ1Z_IaS8lRLWJm4xxSI/s1600/MyActivity.png" height="175" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
تمووم شد آورین ، برای اینکه با نحوه کار اشکن بار آشنا بشین مطلب زیر رو بخونید</div>
<div class="separator" style="clear: both; text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
<a href="https://developer.android.com/training/basics/actionbar/adding-buttons.html">https://developer.android.com/training/basics/actionbar/adding-buttons.html</a></div>
</div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-87946329726034801522014-05-27T00:06:00.002+04:302014-05-27T00:06:51.913+04:30Maven چیست ؟<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkhkt5cmklDA8Wi1XYKyR2hDW729oKOU4vLbwppWfFu49qPJ3utNysfP8H5cxHJXO2pNGVgySKSmIf8tDKz2abPjL9rmURk1JKyCAbnuIGgDNWjJY9WxKcs4OdCZKI2ZjPXYzblRHNIkc/s1600/apache-maven-project-2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkhkt5cmklDA8Wi1XYKyR2hDW729oKOU4vLbwppWfFu49qPJ3utNysfP8H5cxHJXO2pNGVgySKSmIf8tDKz2abPjL9rmURk1JKyCAbnuIGgDNWjJY9WxKcs4OdCZKI2ZjPXYzblRHNIkc/s1600/apache-maven-project-2.png" height="82" width="400" /></a></div>
<br />
<br />
Maven یک ابزار مدیریت و تعریف پروژه بر پایه مفهوم POM - Project Object Model می باشد. Maven به زبان Yiddish (زبان یهودیان اشکنازی در هزار سال پیش) بمعنی مخزن دانش می باشد.<br />
Maven یک روش جامع برای مدیریت پروژه از زمان کامپایل تا انتشار تا مستند سازی تا همکاری تیمی فراهم می سازد ، در یک جمله Maven یک چارچوب مدیریت پروژه (Project Management Framework) می باشد.<br />
<div>
<br /></div>
<div>
<div>
اهداف Maven</div>
</div>
<div>
<ul style="text-align: right;">
<li>آسان سازی فرایند build</li>
<li>فراهم سازی یک سیستم build یکپارچه</li>
<li>فراهم سازی اطلاعات کیفی پروژه</li>
<li>فراهم سازی دستورالعمل هایی برای استفاده مجدد از بهترین تجربه های توسعه</li>
<li>امکان افزودن قابلیت های جدید به پروژه بصورت نامحسوس</li>
</ul>
</div>
<div>
Maven چه چیزی هست و چه چیزی نیست ؟ یک ابزار build نیست ، یک چارچوب اسکریپت نویسی نیست ، Maven را نمی توان با چند جمله به سادگی تشریح کرد ، Maven ترکیبی از ایده ها ، استانداردها و نرم افزار است. پس Maven چیست ؟</div>
<div>
<br /></div>
<div>
<ul style="text-align: right;">
<li></li>
<li>مجموعه ای از استانداردهای build</li>
<li></li>
<li>یک مدل برای مخزن محصولات (Artifact Repository) (مانند jar فایل ها)</li>
<li></li>
<li>یک موتور نرم افزاری که وظیفه مدیریت و تعریف پروژه ها را بر عهده دارد</li>
<li></li>
<li>تعریف یک استاندارد چرخه کار برای build ، تست و deploy خروجی پروژه</li>
<li>فراهم کردن یک Framework برای استفاده مجدد از تجربیات خوب یک پروژه برای تمامی پروژه های (در قالب ایجاد plug-in)</li>
</ul>
</div>
<div>
<br /></div>
<div>
با تشکر از دوست خوبم <a href="http://barnamenevis.org/member.php?94208-L-u-k-e" target="_blank">LUKE</a></div>
<div>
منبع : <a href="http://barnamenevis.org/showthread.php?280399-%D8%AA%D8%A7%D9%BE%DB%8C%DA%A9-%D8%A7%D8%AE%D8%AA%D8%B5%D8%A7%D8%B5%DB%8C-Maven" target="_blank">barnamenevis.org</a></div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-82434566738088081902014-05-13T17:29:00.000+04:302014-05-13T17:29:19.114+04:30نصب پلاگین جاوا بر روی کروم با لینوکس اوبونتو<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyxF6toegsG-qJzsJYzdSHZpByZ2ktRK0tnSnMYx1Xxwf2e2YiX9ZdUDrxNYR8z3TW2Oe8twwf9AC7KaId0IE_wzCeSNC9UpcH11x_7KiKA5IO6bl9IL9sUfWo1f6f8MdGXsDvi4x_Uik/s1600/OgvdU.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyxF6toegsG-qJzsJYzdSHZpByZ2ktRK0tnSnMYx1Xxwf2e2YiX9ZdUDrxNYR8z3TW2Oe8twwf9AC7KaId0IE_wzCeSNC9UpcH11x_7KiKA5IO6bl9IL9sUfWo1f6f8MdGXsDvi4x_Uik/s1600/OgvdU.png" /></a></div>
<br />
بعد از ۳ ۴ ساعت بالاخره تونستم پلاگین بد قلق جاوا رو روی کروم نصب کنم !! روی فایرفاکس و کرومیوم تست کردم هیچ کدومش درست نصب نمی شد البته ورژن قدیمیه فایرفاکس با IcedTea کار کرد اما کرش هم زیاد می کرد.<br />
<br />
بعد از نصب کروم و جاوا ۸ که نحوه نصبش رو تو چند تا پست قبلی بهتون گفته بودم می رین داخل پوشه ی کروم در مسیر :<br />
<div dir="ltr" style="text-align: left;">
/opt/google/chrome</div>
<div style="text-align: right;">
و پوشه ی plugins رو ایجاد می کنید :</div>
<div dir="ltr" style="text-align: left;">
mkdir plugins</div>
<div style="text-align: right;">
داخل پوشه رفته و لینکی از پلاگین جاوا ایجاد می کنید :</div>
<div dir="ltr" style="text-align: left;">
ln -s /usr/lib/jvm/jdk1.8.0/jre/lib/amd64/libnpjp2.so .</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
تبریک می گم تموووم شد حالا کروم رو اجرا کنید و تو صفحه ی chrome://plugins لیست پلاگین هاتون رو ببینید.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr8O6a4Hl6VTs_-atV22XXbDr-uUCKdFRoCT3YXya_aeGaxU9QiX5WZN3F4OwV8n-tvxQMcqjhKw6T_KiEfviNgqYcAGQSR-c4hVYDPQwkKOlawpWrb4OkGgW2C7FrNxebuirdKiqlDNs/s1600/congratulations-300x283.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr8O6a4Hl6VTs_-atV22XXbDr-uUCKdFRoCT3YXya_aeGaxU9QiX5WZN3F4OwV8n-tvxQMcqjhKw6T_KiEfviNgqYcAGQSR-c4hVYDPQwkKOlawpWrb4OkGgW2C7FrNxebuirdKiqlDNs/s1600/congratulations-300x283.jpg" /></a></div>
<br />
<br />
جاوا از نسخه ی ۷ به بعد پیش فرض Security Level رو روی Very قرار داد و این یعنی اینکه یکسری از Applet ها رو اجازه ی اجرا شدن بهشون نمی ده از جمله VNC ها برای رفع این مشکل داخل پوشه جاوا رفته و پوشه bin رو باز می کنیم و دستور زیر را می زنیم<br />
<div dir="ltr" style="text-align: left;">
javaws -viewer</div>
<div style="text-align: right;">
حالا یه پنجره باز می شه به نام Java Control Panel داخل تب Security می شیم و Security Level رو روی Medium می زاریم ;)</div>
<div style="text-align: right;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMmHxsy6gPsaVSOWeAtozAcfkV5yyBCpvfTRLZKxez3WQq26u4kLXGaeanl4zz02k0tUxG8VgBXVbkN85-zjOF8UBJ4w3pqXyTlObTV3vV1GMqnPdMKYS6-azhoipPciapiNiczzjGDO8/s1600/Java+Control+Panel.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMmHxsy6gPsaVSOWeAtozAcfkV5yyBCpvfTRLZKxez3WQq26u4kLXGaeanl4zz02k0tUxG8VgBXVbkN85-zjOF8UBJ4w3pqXyTlObTV3vV1GMqnPdMKYS6-azhoipPciapiNiczzjGDO8/s1600/Java+Control+Panel.png" height="320" width="295" /></a></div>
<div style="text-align: right;">
<br /></div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-71549966236035202612014-04-23T20:35:00.004+04:302014-04-23T20:37:10.067+04:30تنظیم کردن XDebug + Phpstorm<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxaxK9kILEwjPqu7DdsTzR6zl7ZOyc-0EWRd-MqzeAHvlVXTZ3bK5KAt2D4s8oAeRps7Y1ZUpYqlkUhyilk-YkqV2lSw_DnY9ZW_c1uA5g2uxnKUJiRLsh5SB3bwZeDRYruwf9zGnqZc4/s1600/images.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxaxK9kILEwjPqu7DdsTzR6zl7ZOyc-0EWRd-MqzeAHvlVXTZ3bK5KAt2D4s8oAeRps7Y1ZUpYqlkUhyilk-YkqV2lSw_DnY9ZW_c1uA5g2uxnKUJiRLsh5SB3bwZeDRYruwf9zGnqZc4/s1600/images.jpg" /></a></div>
<br />
<br />
اول چک کنین XDebug نصب داشته باشین !!<br />
<br />
فایل 20-xdebug.ini رو از مسیر زیر باز کنید<br />
<div dir="ltr" style="text-align: left;">
/etc/php5/conf.d//etc/php5/conf.d</div>
<div dir="ltr" style="text-align: left;">
<br /></div>
خط زیر رو آخر فایل اضافه کنید و مسیر فایل xdebug.so رو یادداشت کنید<br />
<div dir="ltr" style="text-align: left;">
xdebug.remote_enable=1</div>
<br />
فایل php.ini رو باز کنید و کانفیگ زیر رو در آخر فایل اضافه کنید<br />
<br />
<div dir="ltr" style="text-align: left;">
[Zend]</div>
<div dir="ltr" style="text-align: left;">
zend_extension="<xdebug .so="" path=""><xdebug .so="" path="">"</xdebug></xdebug></div>
<div dir="ltr" style="text-align: left;">
xdebug.var_display_max_data=3000</div>
<div dir="ltr" style="text-align: left;">
xdebug.var_display_max_depth=30</div>
<div dir="ltr" style="text-align: left;">
xdebug.var_display_max_children=512</div>
<div dir="ltr" style="text-align: left;">
xdebug.collect_params=4</div>
<div dir="ltr" style="text-align: left;">
xdebug.remote_enable = 0</div>
<div dir="ltr" style="text-align: left;">
xdebug.remote_handler = "dbgp"</div>
<div dir="ltr" style="text-align: left;">
xdebug.remote_host = "127.0.0.1"</div>
<div dir="ltr" style="text-align: left;">
xdebug.profiler_append = 1</div>
<div dir="ltr" style="text-align: left;">
End:</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
دقت کنید ،مسیر xdebug.soی رو که یادداشت کرده بودید رو در قسمت <span style="text-align: left;"><xdebug .so="" path=""></xdebug></span> <xdebug .so="" path=""> وارد کنید</xdebug></div>
<div style="text-align: right;">
آپاچی رو یه ریستارت کنید و برید سراغ Phpstorm بعد از اجرا شدن به Project Setting رفته و در زیر منوی PHP ، بر روی Servers کلیک کنید ، مطابق با عکس زیر بر روی دکمه ی + کلیک کنید و مثل عکس تنظیم کنید:</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqUk5YoePlOwrOgvOIqZrJ2oP5kwdkNChit104VFdxNa6vlb7pTqu_O-H_xAcqwtE-uCCDeSWdyHcd4nGEceevdW9E1YgFgJaq9Ld2v9Dp4iyXe-cQZjy9oQgV06fCF0vHhc-nlhjaThU/s1600/Screenshot+from+2014-04-23+20:16:39.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqUk5YoePlOwrOgvOIqZrJ2oP5kwdkNChit104VFdxNa6vlb7pTqu_O-H_xAcqwtE-uCCDeSWdyHcd4nGEceevdW9E1YgFgJaq9Ld2v9Dp4iyXe-cQZjy9oQgV06fCF0vHhc-nlhjaThU/s1600/Screenshot+from+2014-04-23+20:16:39.png" height="221" width="320" /></a></div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
بعد از انجام تنظیمات سرور به منوی Edit Configuration برید:</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPvLSs7Z5m9RLM1dJmevuBlQnDaTt7zls1OiHz4XG9wPpglg53kWBTYpm3lPmRFIm6LFS7g45iP9TIM0utKVKsUvqPtUCO1dDSaE120pzWabD9jxMEXC7575wA2dB-n8c7UfV9dnntC84/s1600/Screenshot+from+2014-04-23+20:21:15.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPvLSs7Z5m9RLM1dJmevuBlQnDaTt7zls1OiHz4XG9wPpglg53kWBTYpm3lPmRFIm6LFS7g45iP9TIM0utKVKsUvqPtUCO1dDSaE120pzWabD9jxMEXC7575wA2dB-n8c7UfV9dnntC84/s1600/Screenshot+from+2014-04-23+20:21:15.png" height="121" width="320" /></a></div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
بعد از باز شدن پنجره بر روی دکمه + کلیک کنید و PHP WEB APPLICATION رو انتخاب کنید و مطابق عکس زیر تنظیم کنید:</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHuCukOKy387bKnxmgYV4_tnSNwPx3_xB-FO2j19oaKlA7GCmkYRgWIjMUO4eE27AidLqfmUWi9wWtPkVlhww24mARHrtCSkimv34L-6zNhAehqeMhF8sFBylo2AK4lffRuIEHWXH4z9M/s1600/Screenshot+from+2014-04-23+20:25:01.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHuCukOKy387bKnxmgYV4_tnSNwPx3_xB-FO2j19oaKlA7GCmkYRgWIjMUO4eE27AidLqfmUWi9wWtPkVlhww24mARHrtCSkimv34L-6zNhAehqeMhF8sFBylo2AK4lffRuIEHWXH4z9M/s1600/Screenshot+from+2014-04-23+20:25:01.png" height="202" width="320" /></a></div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
خوووب حالا همچی تمومه یه قایل PHP باز کنید و یه Break Point بزارید و بر روی اون حشره در نوار ابزار کلیک کنید و یا از کلید ترکیبیه : Alt + Shift + D استفاده کنید و حالشوو ببرین ;)</div>
<div style="text-align: right;">
<br /></div>
<div style="text-align: right;">
دمه اون بچه هایی رو که بهم این مطلب رو یاد دادن گرم ;) </div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-43027311122520682152014-04-08T01:12:00.000+04:302014-04-08T01:12:56.121+04:30جاوا ۸ وارد می شود<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYGdYqz3XjIfwlwvc61A-sdRH6E2_yb63HCkiruYP6S3mQ6BoynBq5JneBaeHKXvV_ds187deB5HP4jZ7kcaCAfH3HDeVuFOlj1pVcLZQkPe0f1-oICnIkxzGuF6F9JYyGfYV8r06QALk/s1600/java8_logo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYGdYqz3XjIfwlwvc61A-sdRH6E2_yb63HCkiruYP6S3mQ6BoynBq5JneBaeHKXvV_ds187deB5HP4jZ7kcaCAfH3HDeVuFOlj1pVcLZQkPe0f1-oICnIkxzGuF6F9JYyGfYV8r06QALk/s1600/java8_logo.png" height="320" width="300" /></a></div>
<br />
جاوا ۸ در تاریخ ۱۸ مارچ ۲۰۱۴ به صورت رسمی منتشر شد ، با امکانات و پیشرفت هایی که به قول بعضی ها انقلابی در جاوا محسوب می شه.<br />
<div>
<br /></div>
<div>
از آنجایی که توضیح در رابطه با تمام امکانات جاوا ۸ زمان زیادی می بره به چند تا از مهمترین امکانات اشاره می کنم :</div>
<div>
<ul style="text-align: right;">
<li>Lambda expressions</li>
<li>Java fx and new feature</li>
<li>Streams</li>
<li>Nashorn</li>
</ul>
<div>
<div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqlzxp_Y3gyuH4QuQsUubnP4vlbMl6KgNkO9GeKqcW_0AFiQ7C-iKnmpacWAJZm7mpcbFfq390WdlwvgVkWA7FE59iZxqTwexN6wQeWvhSAFn2V4aKt0DGwWvqLlU6zoOozTD-hQnK9nc/s1600/image17.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqlzxp_Y3gyuH4QuQsUubnP4vlbMl6KgNkO9GeKqcW_0AFiQ7C-iKnmpacWAJZm7mpcbFfq390WdlwvgVkWA7FE59iZxqTwexN6wQeWvhSAFn2V4aKt0DGwWvqLlU6zoOozTD-hQnK9nc/s1600/image17.png" /></a></div>
<br /></div>
<h2 style="text-align: right;">
<span style="background-color: white; font-family: arial, helvetica, sans-serif; line-height: 16px; text-align: left;"><span style="font-size: large;">Lambda Expressions</span></span></h2>
<div>
Lambda یکی از مهمترین ویژگی های جاوا ۸ محسوب می شه ، که اگه بخوام خلاصه توضیح بدم Lambda Expressions باعث سادگی و جمع و جور شدن کد می شه همین .<br />
وقتی از Lambda استفاده می کنیم در زمان ترجمه به بایت کد ، قطعه کد lambda به یک تابع interface تبدیل می شه ، از این رو می تونیم تو نسخه های قدیمی تر جاوا هم برنامه مون را اجرا کنیم .<br />
<br />
مثال زیر نمونه ای است از هنگامی که از Lambda Expressions استفاده می کنیم و زمانی که استفاده نمی کنیم:</div>
</div>
</div>
<div>
<br /></div>
<div>
<div dir="ltr" nodeindex="185" style="line-height: 31px; margin-bottom: 1.5em; padding: 0px; text-align: left; text-rendering: optimizelegibility;">
<span style="background-color: #cccccc; color: #444444; font-family: inherit; line-height: 31px;">button.addActionListener(new ActionListener() {</span><br />
<span style="background-color: #cccccc; color: #444444; font-family: inherit; line-height: 31px;">public void actionPerformed(ActionEvent ae) {</span><br />
<span style="background-color: #cccccc; color: #444444; font-family: inherit; line-height: 31px;">System.out.println(“Action Detected”);}});</span></div>
<div dir="ltr" nodeindex="185" style="background-color: white; line-height: 31px; margin-bottom: 1.5em; padding: 0px; text-align: left; text-rendering: optimizelegibility;">
<div dir="rtl" style="text-align: right;">
<span style="font-size: x-small;">با استفاده از Lambda</span></div>
</div>
<div dir="ltr" nodeindex="192" style="line-height: 31px; margin-bottom: 1.5em; padding: 0px; text-align: left; text-rendering: optimizelegibility;">
<span style="background-color: #cccccc; color: #444444; font-family: inherit; line-height: 31px;">button.addActionListener(e ->{</span><br />
<span style="background-color: #cccccc; color: #444444; font-family: inherit; line-height: 31px;">System.out.println(“Action Detected”);});</span></div>
<div nodeindex="193" style="background-color: white; direction: ltr; line-height: 31px; margin-bottom: 1.5em; padding: 0px; text-align: left; text-rendering: optimizelegibility;">
<div style="text-align: right;">
<div dir="rtl" style="text-align: right;">
<span style="font-family: inherit;">یک نمونه از استفاده از نخ ها (Thread خودمون)</span></div>
</div>
</div>
<div nodeindex="198" style="direction: ltr; line-height: 31px; margin-bottom: 1.5em; padding: 0px; text-align: left; text-rendering: optimizelegibility;">
<div style="text-align: left;">
<span style="background-color: #cccccc; color: #444444; font-family: inherit; line-height: 31px;">Runnable runnable1 = new Runnable() {</span><br />
<span style="background-color: #cccccc; color: #444444; font-family: inherit; line-height: 31px;">@Override</span><br />
<span style="background-color: #cccccc; color: #444444; font-family: inherit; line-height: 31px;">public void run() {</span><br />
<span style="background-color: #cccccc; color: #444444; font-family: inherit; line-height: 31px;">System.out.println("Running without Lambda");</span></div>
</div>
<div nodeindex="201" style="background-color: white; color: #222222; direction: ltr; font-family: chaparral-pro, serif; font-size: 21px; line-height: 31px; margin-bottom: 1.5em; padding: 0px; text-align: left; text-rendering: optimizelegibility;">
<div dir="rtl" style="text-align: right;">
<code nodeindex="444" style="color: #7f0a0c; font-family: monospace, serif; font-size: 1em; font-weight: 700;"><span style="color: black; font-family: 'Times New Roman'; font-size: x-small; font-weight: normal; text-align: right;">با استفاده از Lambda</span></code></div>
</div>
<div nodeindex="201" style="direction: ltr; line-height: 31px; margin-bottom: 1.5em; padding: 0px; text-align: left; text-rendering: optimizelegibility;">
<div style="text-align: left;">
<span style="background-color: #cccccc; color: #444444; font-family: inherit; line-height: 31px;">Runnable runnable2 = () -> { System.out.println("Running from Lambda"); };</span></div>
</div>
<div nodeindex="201" style="margin-bottom: 1.5em; padding: 0px; text-align: right; text-rendering: optimizelegibility;">
<div style="background-color: white; color: #222222; font-family: chaparral-pro, serif; line-height: 31px;">
همانطور که نگاه می کنید قطعه کدهای Lambda ساده تر و از خطوط کمتری استفاده می کنند.<br />
سعی می کنم در آینده ای نزدیک درباره Lambda بیشتر توضیح بدم ;)</div>
<h2 style="background-color: white; color: #222222; font-family: chaparral-pro, serif; line-height: 31px; text-align: right;">
<span style="color: black; font-family: 'Times New Roman'; line-height: normal;">Java fx and new feature</span></h2>
<div>
<ul style="background-color: white; text-align: right;">
<li>اضافه شدن تم جدید Madena به java fx ، برای اطلاعات بیشتر به این لینک سر بزنید <a href="http://fxexperience.com/2013/03/modena-theme-update/">http://fxexperience.com/2013/03/modena-theme-update/</a></li>
<li>کلاس SwingNode برای استفاده از کامپوننت های swing در java fx</li>
<li>پیاده سازی بسته javafx.print برای گرفتن پرینت ، برای اطلاعات بیشتر <a href="http://docs.oracle.com/javase/8/javafx/api/javafx/print/package-summary.html">http://docs.oracle.com/javase/8/javafx/api/javafx/print/package-summary.html</a></li>
<li>کلاس WebView با ویژگی های جدید پیاده سازی شده و پشتیبانی از Html5 برای اطلاعات بیشتر <a href="http://docs.oracle.com/javase/8/javafx/embedded-browser-tutorial/index.html">http://docs.oracle.com/javase/8/javafx/embedded-browser-tutorial/index.html</a></li>
<li>Java fx بر روی چیپ های Arm</li>
</ul>
<h2 style="background-color: white; text-align: right;">
Stream</h2>
<div>
<div style="background-color: white;">
stream یک ویژگی جدیده که قبلا تو زبان scala بوده و حالا به جاوا ۸ اومده ، استریم یک عملی را روی تک تک یک مجموعه اجرا می کنه ! که به دو صورت قابل استفاده است : ترتیبی و موازی مثال زیر نمونه کدی است که تمام فروشنده های تویوتا رو پیدا می کنه :</div>
<div style="background-color: white;">
<br /></div>
<pre dir="ltr" style="text-align: left;"><span style="background-color: #cccccc;"><span style="color: #444444;">List<sale> toyotaSales;
toyotaSales = sales.filter(s -> s.getCar().getBrand().equals("Toyota"))
.collect(toList());
toyotaSales.forEach(System.out::println);</sale></span></span></pre>
</div>
<h2 style="background-color: white; text-align: right;">
Nashorn</h2>
</div>
<div style="background-color: white;">
جاوا ۸ به ما این امکان رو داده تا بتوانیم کد های جاوا اسکریپت رو در JVM اجرا کنیم ، این یعنی اینکه شما می توانید در سمت سرور هم کد جاوا اسکریپت اجرا کنید و حالشو ببرید چیزی شبیه Node.js . که البته این امکان کاربرد های زیادی داره مثلا شما می تونید کد اعتبارسنج سمت کلاینت رو سمت سرور نیز اجرا کنید و امنیتتون رو بالا ببرید . خیلی جالبه هنوز جاوا ۸ نیومده Intellij یه دیباگر باسه کدهای جاوا اسکریپت تو جاواتون داده !!<br />
یه مثال کوچولو از اجرای جاوا اسکریپت در جاوا :</div>
<div style="background-color: white;">
<br /></div>
<div dir="ltr" style="text-align: left;">
<div style="text-align: left;">
<span style="background-color: #cccccc;"><span style="color: #444444;"><span class="Apple-tab-span" style="white-space: pre;"> </span>ScriptEngineManager manager = new ScriptEngineManager();</span></span></div>
<div style="text-align: left;">
<span style="background-color: #cccccc;"><span style="color: #444444;"><span class="Apple-tab-span" style="white-space: pre;"> </span>ScriptEngine engine = manager.getEngineByName("nashorn");</span></span></div>
<div style="text-align: left;">
<span style="background-color: #cccccc;"><span style="color: #444444;"><br /></span></span></div>
<div style="text-align: left;">
<span style="background-color: #cccccc;"><span style="color: #444444;"><span class="Apple-tab-span" style="white-space: pre;"> </span>String js="";</span></span></div>
<div style="text-align: left;">
<span style="background-color: #cccccc;"><span style="color: #444444;"><span class="Apple-tab-span" style="white-space: pre;"> </span>js += "print('Salam Java 8 !!');";</span></span></div>
<div style="text-align: left;">
<span style="background-color: #cccccc;"><span style="color: #444444;"><span class="Apple-tab-span" style="white-space: pre;"> </span>engine.eval(js);</span></span></div>
<div style="background-color: white; text-align: left;">
<br /></div>
<div dir="rtl" style="background-color: white; text-align: right;">
<br />
<div>
از لینک زیر می توانید امکانات جدید جاوا ۸ رو در سایت اوراکل ببینید:</div>
<div>
<a href="http://www.oracle.com/technetwork/java/javase/8-whats-new-2157071.html">http://www.oracle.com/technetwork/java/javase/8-whats-new-2157071.html</a></div>
<div>
<br /></div>
<div>
برای دانلود جاوا و اطلاعات بیشتر هم به لینک زیر برید:</div>
<div>
<a href="http://www.oracle.com/technetwork/java/javase/overview/index.html">http://www.oracle.com/technetwork/java/javase/overview/index.html</a></div>
</div>
</div>
</div>
</div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-34240206084097460472014-03-29T00:11:00.001+04:302014-07-16T00:14:37.872+04:30نصب Oracle JDK 8 بر روی اوبونتو<div dir="rtl" style="text-align: right;" trbidi="on">
<ol style="text-align: right;">
<div dir="rtl" style="text-align: right;" trbidi="on">
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgC7HyuWwQIZ-_Di7FVSYK6cgAU7h3Ri1JLZkDDg6bC8Cdo61K0aHkY89QK838Sc4tx1f8zaKE4JXzyfJWbKIT_-j8wuXIs6rSC-P0d3X-evNKlAJb1CLWvTi5lLs6inonal7Nl5p-_uSk/s1600/04.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgC7HyuWwQIZ-_Di7FVSYK6cgAU7h3Ri1JLZkDDg6bC8Cdo61K0aHkY89QK838Sc4tx1f8zaKE4JXzyfJWbKIT_-j8wuXIs6rSC-P0d3X-evNKlAJb1CLWvTi5lLs6inonal7Nl5p-_uSk/s1600/04.png" /></a></div>
<br />
<br />
<br />
<br />
<li>
در مرحله اول به لینک زیر می رویم و JDK لینوکس ۶۴ بیت یا ۳۲ بیت با فرمت Tar.gz را دریافت می کنیم ، البته یادتون نره که باید فیلتر شکن داشته باشید
</li>
<br />
<div style="text-align: center;">
لینک دانلود : <a href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">http://www.oracle.com/technetwork/java/javase/downloads/index.html</a>
</div>
<br />
<br />
<li>
فایل دانلود شده را از حالت فشرده خارج می کنیم
</li>
<br />
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;">tar -xvf jdk-8-linux-i586.tar.gz (32bit)</span>
</div>
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;">tar -xvf jdk-8-linux-x64.tar.gz (64bit)</span>
</div>
<br />
<br />
<br />
<li>
بعد از خارج کردن فایل از حالت فشرده فولدرd داریم به نام jdk1.8.0 که باید به مسیر /usr/lib/jvm/ انتقال دهیم ، در صورتی که پوشه ی jvm رو ندارید باید با دستور زیر بسازید
</li>
<br />
<div style="text-align: left;">
<span style="background-color: #eeeeee;"><span style="color: #666666;">sudo mkdir -p /usr/lib/jvm</span></span>
</div>
<br />
<br />
<br />
<li>فولدر jdk1.8.0 را به مسیر /usr/lib/jvm انتقال می دهیم</li>
<br />
<div style="text-align: left;">
<span style="background-color: #eeeeee;"><span style="color: #666666;">sudo mv ./jdk1.8.0 /usr/lib/jvm</span></span></div>
<br />
<br />
<br />
<li>برای اینکه Oracle Jdk 8 پیش فرض سیستم شود دستور های زیر را اجرا کنید</li>
<br />
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee;"><span style="color: #666666;">sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.8.0/bin/java" 1 </span></span>
</div>
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee;"><span style="color: #666666;">sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.8.0/bin/javac" 1 </span></span>
</div>
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee;"><span style="color: #666666;">sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.8.0/bin/javaws" 1</span></span>
</div>
<br />
<br />
<br />
<li>با دستور زیر دسترسی های مورد نیاز جاوا رو بهش می دهیم</li>
<br />
<div style="text-align: left;">
<span style="background-color: #eeeeee;"><span style="color: #666666;">sudo chmod a+x /usr/bin/java</span></span>
</div>
<div style="text-align: left;">
<span style="background-color: #eeeeee;"><span style="color: #666666;">sudo chmod a+x /usr/bin/javac</span></span>
</div>
<div style="text-align: left;">
<span style="background-color: #eeeeee;"><span style="color: #666666;">sudo chmod a+x /usr/bin/javaws</span></span>
</div>
<div style="text-align: left;">
<span style="background-color: #eeeeee;"><span style="color: #666666;">sudo chown -R root:root /usr/lib/jvm/jdk1.8.0</span></span>
</div>
<br />
<br />
<br />
<li>
دستور زیر را اجرا می کنیم
</li>
<br />
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;">sudo update-alternatives --config java</span>
</div>
<br />
با اجرای دستور بالا لیستی مثل لیست زیر حواهیم داشت
<br />
<br />
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;"> There are 3 choices for the alternative java (providing /usr/bin/java).</span>
</div>
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;">
<br />
</span>
</div>
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;"> Selection Path Priority Status</span>
</div>
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;">------------------------------------------------------------</span>
</div>
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;"> 0 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1071 auto mode</span>
</div>
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;"> 1 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1071 manual mode</span>
</div>
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;">* 2 /usr/lib/jvm/jdk1.7.0/bin/java 1 manual mode</span>
</div>
<div dir="ltr" style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;"> 3 /usr/lib/jvm/jdk1.8.0/bin/java 1 manual mode</span>
</div>
<br />
شماره ی جاوا ۸ رو انتخاب می کنیم و دو تا دستور زیر را همانند دستور بالا اجرا می کنیم
<br />
<div dir="ltr" style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;"> sudo update-alternatives --config javac</span>
</div>
<div style="text-align: left;">
<span style="background-color: #eeeeee; color: #666666;">sudo update-alternatives --config javaws</span>
</div>
<br />
<div style="text-align: center;">
تمام شد حالا از کد نویسی با <span style="font-size: large;">جاوا ۸</span> لذت ببرید ;)</div>
</div>
</ol>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com1tag:blogger.com,1999:blog-9019356430481842872.post-67631611356872517092014-03-22T02:01:00.000+04:302014-03-22T02:02:24.895+04:30I NEED YOU NOW !<div dir="rtl" style="text-align: right;" trbidi="on">
ترجمه آهنگ I need you now از گروه Lady Antebellum حالشو ببرین<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.youtube.com/embed/eM213aMKTHg?feature=player_embedded' frameborder='0'></iframe></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;"><br /></span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">Pictures perfect memories Scatted all around the floor</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">عکس های بهترین خاطره هامون روی زمین پخشه</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">Reaching for the phone cause, I can't fight it anymore</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">به سمت تلفن میرم چون بیشتر از این نمیتونم بجنگم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">And I wonder if I ever cross your mind</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">من تعجب میکنم اگه تا حالا به ذهنت خطور کرده باشم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">For me it happens all the time</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">من ولی همیشه به یاد توام</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">It's a quarter after one, I'm all alone and I need you now</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">یک ربع از ساعت 1 گذشته،من تنهای تنهام و بهت نیاز دارم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">Said I wouldn't call but I lost all control and I need you now</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">گفتم که زنگ نمیزنم اما الان کنترلم رو از دست دادم و بهت نیاز دارم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">And I don't know how I can do without, I just need you now</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">و نمیدونم که چه طوری میتونم انجامش بدم،من فقط الان بهت نیاز دارم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">Another shot of whiskey, can't stop looking at the door</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<span style="background-color: white; font-size: small;"><em><span dir="LTR" style="font-family: 'Times New Roman', serif;"> </span></em><em><span lang="FA" style="font-family: 'Times New Roman', serif;">یه شات دیگه ویسکی،نمیتونم دست از نگاه کردن به در بردارم</span></em></span></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">Wishing you'd come sweeping in the way you did before</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">آرزو میکنم مثل قبل برگردی</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">And I wonder if I ever cross your mind</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">من تعجب میکنم اگه تا حالا به ذهنت خطور کرده باشم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">For me it happens all the time</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">من ولی همیشه به یاد توام</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">It's a quarter after one, I'm a little drunk</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">یک ربع از ساعت 1 گذشته و من یه کمی مستم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">And I need you now</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">و من بهت نیاز دارم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">Said I wouldn't call but I lost all control and I need you now</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">گفتم که زنگ نمیزنم اما الان کنترلم رو از دست دادم و بهت نیاز دارم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">Guess I'd rather hurt than feel nothing at all</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">فک کنم انقدر ضربه خوردم که هیچی احساس نمیکنم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">It's a quarter after one, I'm all alone and I need you now</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">یک ربع از ساعت 1 گذشته،من تنهای تنهام و بهت نیاز دارم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">Said I wouldn't call but I'm a little drunk and I need you now</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">گفتم که زنگ نمیزنم اما الان یه کم مستم و بهت نیاز دارم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">And I don't know how I can do without, I just need you now</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">و نمیدونم که چه طوری میتونم انجامش بدم،من فقط الان بهت نیاز دارم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">I just need you now</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">فقط بهت نیاز دارم</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span dir="LTR" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">Oh baby I need you now</span></span></em></div>
<div align="center" class=" " dir="RTL" style="font-family: Tahoma; font-size: 12px; line-height: 18px;">
<em><span lang="FA" style="background-color: white; font-family: 'Times New Roman', serif;"><span style="font-size: small;">اوه عزیزم من بهت نیاز دارم</span></span></em></div>
<div>
<br /></div>
<div>
<span style="font-family: Times New Roman, serif;"><i>ترجمه از سایت </i></span><a href="http://nayablyrics.blogfa.com/">http://nayablyrics.blogfa.com</a></div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-70036369227087428772014-03-04T00:02:00.002+03:302014-03-04T00:02:53.697+03:30گوگل کروم و افزونه های پر کاربرد من<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_joOCgPp2F_kNHN0XNP7F2r9nofSsN-F6m1bWx9gI1aEP_RThbLBn_BQKD3APLkYlxExzV2j0l4zoj2Na1be-ZWfU_YzI4TQK-egZ7GMXomowSVDdYbGFnOytW_NgtIJ1PCVko1C9hjA/s1600/google_chrome.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_joOCgPp2F_kNHN0XNP7F2r9nofSsN-F6m1bWx9gI1aEP_RThbLBn_BQKD3APLkYlxExzV2j0l4zoj2Na1be-ZWfU_YzI4TQK-egZ7GMXomowSVDdYbGFnOytW_NgtIJ1PCVko1C9hjA/s1600/google_chrome.png" height="179" width="320" /></a></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">گوگل کروم دوست داشتنی ترین مرورگریه که تا حالا باهاش کار کردم یکی از مهمترین ویژگی هاش برای من سبکی و سادگیه ، بدون اینکه کاربر رو درگیر تنظیمات پیچیده بکنه فکر همه جاش رو کرده مثلا بدون اینکه شما اطلاع داشته باشین که ورژن جدید مرورگر اومده خودش چک می کنه و دانلود می کنه و بعد از اینکه شما مرورگرتون رو دوباره باز می کنید تازه متوجه می شید که مروگر به روز شده . (البته خیلی ها این ویژگی رو دوست ندارن به خاطر اینکه پهنای باند اینترنت رو می خوره)</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">یکی از امکانات خوب کروم همگام سازیه بوکمارک ها ، افزونه ها و تاریخچه مرورگر هستش که بعد از نصب کروم بر روی رایانه جدیدتون و وارد کردن اکانت جیمیل مرورگر شروع به باز گرداندن آن ها می کنه.</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">دلیل اصلی که باعث شد این پست رو بزنم معرفی افزونه ها و یا همون Extensions های کروم بود،افزونه ها در کروم نقش کلیدی بازی می کنن و یه </span><span style="font-family: FreeFarsi; font-size: medium;">افزونه</span><span style="font-family: FreeFarsi; font-size: medium;"> می تونه به صورت مستقل و بدون نیاز به اینترنت اجرا بشه و مثل یه نرم افزار معمولی و مستقل از مرورگر کار کنه ، البته همه ی نرم افزار ها قابلیت اجرا شدن در زمان آفلاین را دارا نمی باشند ، برای دیدن نرم افزار هایی که قابل اجرا در زمان آفلاین هستند به <a href="https://chrome.google.com/webstore/category/collection/offline_enabled?utm_source=chrome-ntp-icon" target="_blank">این لینک برید</a>.</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<h3 style="text-align: right;">
<span style="font-family: FreeFarsi; font-size: medium;"><a href="https://chrome.google.com/webstore/detail/google-mail-checker/mihcahmgecmbnbcchbopgniflfhgnkff?hl=en" target="_blank">GmailChecker</a></span></h3>
<div>
<span style="font-family: FreeFarsi; font-size: medium;">اگه همیشه باید ایمیل هاتون رو چک کنید ، اگه ایمیل هاتون باستون مهمه بهتون پیشنهاد می کنم از این افزونه استفاده کنید.</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">راحت ترین راه برای چک کردن ایمیل هاست در پس زمینه اجرا می شه و اگه حتی کروم رو هم باز نکرده باشید و ایمیلی براتون بیاد یه پنجره کوچیک پایینه دسکتاپ باز می کنه و عنوان ایمیل و متن کوتاهی از ایملتون رو نشون می ده که البته اگه قابلیت TTS رو هم فعال کرده باشین شروع به خواندن ایمیل می کنه.</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHgUfYgiwE_5pq4d20aGaUu967E7zw__DwYR4I0lQalJW_rfXekqGth5P4e97WPWiCd4dPPocHc3DaqzDxsnxcDJ7LWW-pW8UIEgLoZLHigb6Tpr42LHhD7_qxDUba5QPF6TRtsxecKwI/s1600/GmailChecker.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHgUfYgiwE_5pq4d20aGaUu967E7zw__DwYR4I0lQalJW_rfXekqGth5P4e97WPWiCd4dPPocHc3DaqzDxsnxcDJ7LWW-pW8UIEgLoZLHigb6Tpr42LHhD7_qxDUba5QPF6TRtsxecKwI/s1600/GmailChecker.png" height="125" width="320" /></a></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<br /></div>
<h3 style="text-align: right;">
<span style="font-family: FreeFarsi; font-size: medium;"><a href="https://drive.google.com/keep/" target="_blank">Google Keep</a></span></h3>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">با گوگل کیپ می تونید یادداشت ها و لیست کار هاتون رو هم روی گوشی اندرویدی و هم روی رایانه داشته باشید، از این افزونه زمانی که اینترنت هم ندارید می توانید استفاده کنید و بعد از اولین برقراری ارتباط با اینترنت با گوشی تون همگام (Sync) می شه.</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhq6hPUWi9RRA12FLM8iTcFmls1oVe54FXX9bBmPbRQc4rwF8hHeoFSkzD535Mquxh_icsCde546u0OrVT6iBrNpfUJKoI4UPWAhaLCFp-MPbm9zACmSVN3oSu8mCEZlxYAxarD6UqqV3Y/s1600/google_keep.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhq6hPUWi9RRA12FLM8iTcFmls1oVe54FXX9bBmPbRQc4rwF8hHeoFSkzD535Mquxh_icsCde546u0OrVT6iBrNpfUJKoI4UPWAhaLCFp-MPbm9zACmSVN3oSu8mCEZlxYAxarD6UqqV3Y/s1600/google_keep.png" /></a></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<h3 style="text-align: right;">
<span style="font-family: FreeFarsi; font-size: medium;"><a href="http://www.printfriendly.com/" target="_blank">Print Friendly and PDF</a></span></h3>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">این افزونه برای تبدیل وب سایت به PDF ویا اماده سازی وب سایت برای چاپ می باشد. تفاوتش با بقیه برنامه ها اینه که خیلی سریع می توانید قسمت های اضافی وب سایت رو که لازم ندارین حذف کنید.</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<h3 style="text-align: right;">
<span style="font-family: FreeFarsi; font-size: medium;"><a href="http://www.google.com/+/learnmore/hangouts/" target="_blank">Hangouts یا همون Gtalk</a></span></h3>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">Hangouts یا همون gtalk قدیم با اکانت گوگل فعال می شه و بدون اینکه کرومتون باز باشه میتونید چت کنید . Hangouts نسخه ی اندرویدی هم داره که می تونید مثل برنامه ی WhatsApp با دادن شماره تلفن چت کنید ;) </span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdXXes2iO4QPGkGPg6OrE9Nze_xiCdPmgyCtQXLhSQILjtDNYRjJqwtOm1EECzH39GqsHmiI41_C-wVNNl5G446By3PWP79i8zrnzaOjM5DOPZqHS_knUOOun-OuACulEQJRo2mPfiONQ/s1600/hangouts.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdXXes2iO4QPGkGPg6OrE9Nze_xiCdPmgyCtQXLhSQILjtDNYRjJqwtOm1EECzH39GqsHmiI41_C-wVNNl5G446By3PWP79i8zrnzaOjM5DOPZqHS_knUOOun-OuACulEQJRo2mPfiONQ/s1600/hangouts.png" height="164" width="320" /></a></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<h3 style="text-align: right;">
<span style="font-family: FreeFarsi; font-size: medium;"><a href="https://getpocket.com/" target="_blank">Pocket</a></span></h3>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">مطالب خوبی که تو اینترنت می بینید رو به پاکتتون اضافه کنید و سر فرصت و به صورت آفلاین روی اندروید و یا iphone مطالعه کنید.</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<h3 style="text-align: right;">
<span style="font-family: FreeFarsi; font-size: medium;"><a href="https://chrome.google.com/webstore/detail/webpage-screenshot/ckibcdccnfeookdmbahgiakhnjcddpki?hl=en" target="_blank">Webpage screen capture</a></span></h3>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">خیلی وقتا پیش می آد که بخواین از یه وب سایت عکس بگیرین تا تو آرشیوتون نگهش دارین خوب بهترین کار عکس گرفتن از صفحه ی دسکتاپتونه اما اگه وب سایت اسکرول خورده باشه چی ؟؟ اینجا هستش که این برنامه به کمکتون میاد و از کل صفحه یک وب سایت عکس می گیره و همون موقع اجازه ویرایش و اشتراک گذاری رو هم بهتون می ده.</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<h3 style="text-align: right;">
<span style="font-family: FreeFarsi; font-size: medium;"><a href="https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&ved=0CCgQFjAA&url=https%3A%2F%2Fchrome.google.com%2Fwebstore%2Fdetail%2Finstant-translate%2Fihmgiclibbndffejedjimfjmfoabpcke%3Fhl%3Den&ei=caATU_XiAoLe7Ab76IGoCg&usg=AFQjCNGAUtQwUFgYnoT1LAq7t23otU08WQ&sig2=EfGHMJTI0p-kETeGQnWnvQ&bvm=bv.62286460,d.ZGU" target="_blank">Instant translate</a></span></h3>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">یه ابزار کوچیک و پر کاربرد برای ترجمه هستش که همیشه در اختیارتونه و از مترجم گوگل استفاده می کنه.</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJ7pY5FKfTDjXGYLSMr3CEukNM2yFYIXFZGbPT10cC8vvGR5G9rD111gMjFvpuMTxLBrNY_5UX9VECoNfYEZZ1UKVoC1Lw5Ls7QcMRuWduXaeEdlWzQZpxkeG48lkl7eh93-cO7DmxMaI/s1600/Instant_translate.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJ7pY5FKfTDjXGYLSMr3CEukNM2yFYIXFZGbPT10cC8vvGR5G9rD111gMjFvpuMTxLBrNY_5UX9VECoNfYEZZ1UKVoC1Lw5Ls7QcMRuWduXaeEdlWzQZpxkeG48lkl7eh93-cO7DmxMaI/s1600/Instant_translate.png" /></a></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<h3 style="text-align: right;">
<span style="font-family: FreeFarsi; font-size: medium;"><a href="https://wappalyzer.com/" target="_blank">Wappalyzer</a></span></h3>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">ابزاری برای توسعه دهنده های وب ، بعد از باز کردن وب سایت این نرم افزار وب سایت باز شده را آنالیز کرده و برنامه ها و فریم ورک هایی که وب سایت ازشون استفاده کرده رو نمایش می ده.</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<h3 style="text-align: right;">
<span style="font-family: FreeFarsi; font-size: medium;"><a href="https://chrome.google.com/webstore/detail/flashblock/gofhjkjmkpinhpoiabjplobcaignabnl?hl=en" target="_blank">Flash Block</a></span></h3>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">اگه سرعت اینترنتتون پایینه و یا حافظه موقت رایانتون کمه بهتون پیشنهاد می کنم از این نرم افزار استفاده کنید ، این افزونه جلوی باز شدن خودکار فایل های فلش رو می گیره ، در صورتی هم که بخواین فلش رو اجرا کنید با یک کلیک فایل فلش شروع به نمایش می کنه.</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<h3 style="text-align: right;">
<span style="font-family: FreeFarsi; font-size: medium;"><a href="https://chrome.google.com/webstore/detail/momentum/laookkfknpbbblfpciffpaejjkokdgca?hl=en" target="_blank">Momentum</a></span></h3>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;">یکی از جالب ترین و پر دانلود ترین افزونه های گوگل Momentum هستش ، هر دفعه که کروم رو باز می کنید با یه عکس زیبا از طبیعت رو به رو می شین .</span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeF5j2Fnyu9hqf1ykf2eQKzxZ834E5prvL2BD7UJrjz_hAoDzGecSvCY7nuX81kAcR3XVZ3Hn4PQYNKa7UFGfoCSwtHDVQPRcM4-up4H6K9UGcv6PQxJKBKt6fmmI0l4R-FpUg40tZ-84/s1600/momentum.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeF5j2Fnyu9hqf1ykf2eQKzxZ834E5prvL2BD7UJrjz_hAoDzGecSvCY7nuX81kAcR3XVZ3Hn4PQYNKa7UFGfoCSwtHDVQPRcM4-up4H6K9UGcv6PQxJKBKt6fmmI0l4R-FpUg40tZ-84/s1600/momentum.png" height="153" width="320" /></a></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in;">
<span style="font-family: FreeFarsi; font-size: medium;"><br /></span></div>
<div align="RIGHT" dir="RTL" style="margin-bottom: 0in; text-align: start;">
<span style="font-family: FreeFarsi; font-size: medium;">در آخر هم برای رفع خستگی دو بازیه <a href="https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=8&cad=rja&ved=0CEsQFjAH&url=https%3A%2F%2Fchrome.google.com%2Fwebstore%2Fdetail%2Fcanvas-rider%2Fpoknhlcknimnnbfcombaooklofipaibk%3Fhl%3Den&ei=_aATU56cBafE7AbNwYGQCg&usg=AFQjCNGzsGtlOHMaRbqHoym4xbejE4wcTw&sig2=2L-YhJSyupM-XRgkmQGxSg&bvm=bv.62286460,d.ZGU" target="_blank">Canvas Rider</a> و <a href="https://chrome.google.com/webstore/detail/the-fancy-pants-adventure/bbkegjmflkgobogelkobmmdeddkclooc?hl=en" target="_blank">The fancy pants adventures</a></span><span style="font-family: FreeFarsi; font-size: medium;"> رو بهتون پیشنهاد می کنم.</span></div>
</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com2tag:blogger.com,1999:blog-9019356430481842872.post-64470555874419828282013-12-31T19:03:00.000+03:302013-12-31T19:03:09.835+03:30Java Vs microsoft<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.youtube.com/embed/tb6ar-Fy5GQ?feature=player_embedded' frameborder='0'></iframe></div>
<br />
کلیپ جالب مقایسه جاوا با .net</div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-59002059935080587492013-06-08T13:11:00.001+04:302013-06-08T13:15:51.833+04:30نظرسنجی ها چه می گویند؟؟<div dir="rtl" style="text-align: right;" trbidi="on">
در بیشتر اوقات (یه جورایی همیشه) نظر سنجی قبل از انتخابات می تونه رییس جمهور آینده رو مشخص کنه ، و در اکثر کشور های دموکراتیک (نه نه منظورم تو یه سری از کشور هاست) کسی که تو نظرسنجی پیروز شده توی انتخابات نیز پیروز می شه !!<br />
<br />
می خوایم یه سری به سایت های نظر سنجی بزنیم تا ببینیم نظر سنجی ها چی می گن ،البته متاسفانه تعدادی از سایت ها مثل سایت صدا و سیما نظرسنجی انتخاباتی رو از روی سایتشون برداشتن!<br />
<br />
هر برداشتی از این مطلب بر عهده کاربر می باشد و به ما هیچ ربطی ندارد، اصلن به من چه !!<br />
<br />
<h3 style="text-align: center;">
<b>قضاوت با شما</b></h3>
1. <a href="http://isna.ir/" target="_blank">ISNA</a> (ایسنا)<br />
متاسفانه سایت ایسنا نظرسنجی رو برداشته از سایتش ولی یه عکس ازش داریم<br />
۱. عارف (٪51)<br />
۲.حسن روحانی (٪15)<br />
۳.قالی باف (٪10)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0jkZO-Jiv8VgkS0iSJpLoOuLjkMKCEdxHIgdYmPaFPQIBdtcCwbeJpw_ordNMelKRuPhlmuR9f7aTF4IaYA-SSM8CqH_xvx7WqC01HtPvfBXCduowGWcsCqJnjlKPKJkezs76WLqIZgc/s1600/Untitled-5.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="250" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0jkZO-Jiv8VgkS0iSJpLoOuLjkMKCEdxHIgdYmPaFPQIBdtcCwbeJpw_ordNMelKRuPhlmuR9f7aTF4IaYA-SSM8CqH_xvx7WqC01HtPvfBXCduowGWcsCqJnjlKPKJkezs76WLqIZgc/s320/Untitled-5.jpg" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
2. نظر آخر (<a href="http://www.nazareakhar.ir/">http://www.nazareakhar.ir</a>)<br />
۱. روحانی (16676 رای )<br />
۲. عارف (12491 رای )<br />
۳. قالی باف (6461 رای)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBW5IXxwYRx_vojSBR3wsT9A2YWZ75QwM8kjoSBjLCQf1VN1fuK65xQawzIHr6OykdeOtKc3FPujoiBnlUQfHapcW7EhHgePRe1FAwNKt3c0tIKrJAJvlDIE3wu40G0b8Arnn9s7hu2l4/s1600/Screenshot+from+2013-06-08+12:15:44.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="147" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBW5IXxwYRx_vojSBR3wsT9A2YWZ75QwM8kjoSBjLCQf1VN1fuK65xQawzIHr6OykdeOtKc3FPujoiBnlUQfHapcW7EhHgePRe1FAwNKt3c0tIKrJAJvlDIE3wu40G0b8Arnn9s7hu2l4/s320/Screenshot+from+2013-06-08+12:15:44.jpg" width="320" /></a></div>
<br />
3. انتخاب شما (<a href="http://www.entekhabeshoma.ir/">http://www.entekhabeshoma.ir/</a> )<br />
۱. عارف (٪27)<br />
۲. جلیلی (٪22)<br />
۳. روحانی (٪20)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhoFTIBfqBNo9toEa34utZaxGBVetNDW_Qt_29mdXXWei5uemTmIidEMqzuOfnwtKIkcsdKX8zhAzmUcty2pKA7sAD1dFOLPAdNyo_Y41U-KFxy4_Y7QMEm9PEN_8wOVXLq4SYLZF00TwY/s1600/Screenshot+from+2013-06-08+12:16:53.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="284" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhoFTIBfqBNo9toEa34utZaxGBVetNDW_Qt_29mdXXWei5uemTmIidEMqzuOfnwtKIkcsdKX8zhAzmUcty2pKA7sAD1dFOLPAdNyo_Y41U-KFxy4_Y7QMEm9PEN_8wOVXLq4SYLZF00TwY/s320/Screenshot+from+2013-06-08+12:16:53.jpg" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
4. یک رای (<a href="http://www.1ray.ir/poll/">http://www.1ray.ir/poll/</a>)<br />
۱. عارف (%29)<br />
۲. روحانی (%25)<br />
۳. جلیلی (%24)<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg51OKmib_ib-kWs4JqnM4c9mXxf0YMZg2G9j0Eh-3salzaKhtuR8eg7Jzwhw-82Qoq-UyLimcsjKCMcfbvylqhjRiEQYVTP3yzan1uHrysv493RonW3j_mbGeCiQRudlQkr3I_KanpMPU/s1600/Screenshot+from+2013-06-08+12%253A25%253A41.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="232" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg51OKmib_ib-kWs4JqnM4c9mXxf0YMZg2G9j0Eh-3salzaKhtuR8eg7Jzwhw-82Qoq-UyLimcsjKCMcfbvylqhjRiEQYVTP3yzan1uHrysv493RonW3j_mbGeCiQRudlQkr3I_KanpMPU/s320/Screenshot+from+2013-06-08+12%253A25%253A41.png" width="320" /></a></div>
<br />
5. جام نیوز (<a href="http://www.jamnews.ir/fans92">http://www.jamnews.ir/fans92</a> )<br />
<br />
۱. قالی باف (%26)<br />
۲. جلیلی (%20)<br />
۳. عارف (%11)<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQE2TLH_zjZVhZ2oP1BQxmuyJz8wSViDIxd3HSp2_0QAzHxT9Z9SCI4k-eHsyst2molXEka9SBTRFgWMSx8TsY6K_YgWKt254tq8SMe7LzZfyLM7yU3rpm5SDaFo0jZgpKjvfPd8KAee8/s1600/Screenshot+from+2013-06-08+12:28:38.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQE2TLH_zjZVhZ2oP1BQxmuyJz8wSViDIxd3HSp2_0QAzHxT9Z9SCI4k-eHsyst2molXEka9SBTRFgWMSx8TsY6K_YgWKt254tq8SMe7LzZfyLM7yU3rpm5SDaFo0jZgpKjvfPd8KAee8/s400/Screenshot+from+2013-06-08+12:28:38.jpg" width="206" /></a></div>
<br />
6. قطره (<a href="http://www.ghatreh.com/">http://www.ghatreh.com/</a>)<br />
متاسفانه این سایت هم صفحه نظرسنجی رو باز نمی کنه!!!! اما<a href="http://www.freezepage.com/1370346746WEQYXZWNKK" target="_blank"> صفحه فیریز</a> شده سایت رو داریم<br />
<br />
۱. روحانی (%29)<br />
۲. عارف (%22)<br />
۳. جلیلی و قالی باف (%14)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSrt9S2Lwx0WmAcVlnvGnG99hUuKRpN8ebGoUGd6DknWNZ7kFaDwRs466wZA5ZNz7Cn_cKgWfsxDG5dmOH6UOiUx3sJ9_thBbNjFnoFVJXV9eO1QFaQXAfDm8zQum0IXeVykprcafvbm0/s1600/Screenshot+from+2013-06-08+12%253A35%253A29.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="161" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSrt9S2Lwx0WmAcVlnvGnG99hUuKRpN8ebGoUGd6DknWNZ7kFaDwRs466wZA5ZNz7Cn_cKgWfsxDG5dmOH6UOiUx3sJ9_thBbNjFnoFVJXV9eO1QFaQXAfDm8zQum0IXeVykprcafvbm0/s320/Screenshot+from+2013-06-08+12%253A35%253A29.png" width="320" /></a></div>
<br />
7. فرارو (<a href="http://fararu.com/">http://fararu.com/</a>)<br />
<br />
۱. روحانی (%52)<br />
۲. عارف (%20)<br />
۳. رضایی (%6)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEeoqn14WlWZLJvPkeZYxHn-yqdvBiHcJBTUL7bzx5eAxABlDfGlekwnoDQYKrU-RYAcHTuW_0NkErKb6OXJMvvJ2OEHEsOUrB_ZbPMxuz-xz-lDi_HsnmAFz7nxegEmf1Ps5Yk1icrMY/s1600/Screenshot+from+2013-06-08+12%253A37%253A38.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEeoqn14WlWZLJvPkeZYxHn-yqdvBiHcJBTUL7bzx5eAxABlDfGlekwnoDQYKrU-RYAcHTuW_0NkErKb6OXJMvvJ2OEHEsOUrB_ZbPMxuz-xz-lDi_HsnmAFz7nxegEmf1Ps5Yk1icrMY/s320/Screenshot+from+2013-06-08+12%253A37%253A38.png" width="162" /></a></div>
<br />
8. وبلاگ فکر جدید (<a href="http://jadid1.blogfa.com/">http://jadid1.blogfa.com</a>)<br />
<br />
۱. روحانی (%34)<br />
۲. عارف (%25)<br />
۳. رضایی (%9)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjb9X4d14EaWD0MGDZnhj_6yORkTM3A56bThRqWJnP6unQ0p5yloZ-KrB5GILKPs7RBsxfljyGcAWUaAkNx0ZngJ2oJqDfPX8VM7XBYrxPZenjzoBR2AL9p4L7LZiscQUk6wCkdpnRBn1A/s1600/Screenshot+from+2013-06-08+12:38:50.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjb9X4d14EaWD0MGDZnhj_6yORkTM3A56bThRqWJnP6unQ0p5yloZ-KrB5GILKPs7RBsxfljyGcAWUaAkNx0ZngJ2oJqDfPX8VM7XBYrxPZenjzoBR2AL9p4L7LZiscQUk6wCkdpnRBn1A/s320/Screenshot+from+2013-06-08+12:38:50.png" width="293" /></a></div>
9. خبر پو (<a href="http://www.khabarpu.com/page/special/election-poll.htm">http://www.khabarpu.com/page/special/election-poll.htm</a>)<br />
<br />
۱. روحانی (%35)<br />
۲. عارف (%19)<br />
۳. قالی باف (%13)<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhj9hnvpytpQvvIeCrsPuuidlSuAo0qfvguyymScSm6kkq8kq1D7pe5NJr0D3R7LglByAMWz404mKDhEtgvXKMDL-_rlQaDOatE7yXakoJSfGukJSrnu5nx0QVJjVnY5sa-c6Xb4VuAT78/s1600/Screenshot+from+2013-06-08+12:40:46.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhj9hnvpytpQvvIeCrsPuuidlSuAo0qfvguyymScSm6kkq8kq1D7pe5NJr0D3R7LglByAMWz404mKDhEtgvXKMDL-_rlQaDOatE7yXakoJSfGukJSrnu5nx0QVJjVnY5sa-c6Xb4VuAT78/s320/Screenshot+from+2013-06-08+12:40:46.jpg" width="248" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: right;">
نظرسنجی رو می شناسین که ما از قلم انداخته باشیم ؟؟؟</div>
<br />
<br />
<br />
<br /></div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com3tag:blogger.com,1999:blog-9019356430481842872.post-70219981396472004022013-03-09T23:54:00.001+03:302013-03-10T00:05:45.888+03:30foxyproxy جایگزینی برای proxifier در اوبونتو<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIjMG-_5IpumChxHpD_GU7zDNiIuL3g8oESYLU8i0huA3vHNea6GvxVYfMOHMQDq_QEL6pAH64hdlnj50FZBqfZ-47Id5bzdoXSNerhWUTUdrOlklkkKEZvFifrSSvwU_4oE8YnrklG3E/s1600/48945.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><br /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgedmUQP0oE6mPw1wXu3Dkxeuq68AeoN9oQMGtdm5wsbWArVLPWq3itcWbJt_E-6fVmqPk_mpmCE8QqUfWIb74ahlaDsneGK8W3NkOI0_rQzi9v9S-_QtPYYNVFinMQMHjZ6JzHe7wcrQ/s1600/5857.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgedmUQP0oE6mPw1wXu3Dkxeuq68AeoN9oQMGtdm5wsbWArVLPWq3itcWbJt_E-6fVmqPk_mpmCE8QqUfWIb74ahlaDsneGK8W3NkOI0_rQzi9v9S-_QtPYYNVFinMQMHjZ6JzHe7wcrQ/s1600/5857.png" /></a></div>
<span id="goog_1909727910"></span><span id="goog_1909727911"></span><br />
foxyproxy افزونه فایرفاکس جایگزین مناسبیه برای proxifier در لینوکس اما تنها فایرفاکس می تونه ازش استفاده کنه, برنلمه های دیگه ای هم هستند مثل (<a href="http://www.squid-cache.org/" target="_blank">squid</a> , <a href="http://proxychains.sourceforge.net/" target="_blank">proxychains</a>) که تحت ترمینال اجرا می شن.<br />
<br />
<a href="https://addons.mozilla.org/en-US/firefox/addon/foxyproxy-standard/" target="_blank">لینک دانلود افزونه</a></div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com2tag:blogger.com,1999:blog-9019356430481842872.post-45930714357074633982013-02-26T01:42:00.001+03:302013-02-26T02:01:54.319+03:30Ubuntu on mini pc<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: right;">
نصب اوبونتو روی mini pc .... </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMSwIr1wYxRaAvMZM0gnIY7p38XuXW3faezXe-KVG5mWPl-lP48VkKX7q1WyksjkVpiUwijxlRbWDvIQjWGsyLOEPewLJ_o5WG-r2jY1xnPk_cmUt78EAzJvcCtSwSkiKA__iIAiOGxMY/s1600/ubuntu-on-mini-pc2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMSwIr1wYxRaAvMZM0gnIY7p38XuXW3faezXe-KVG5mWPl-lP48VkKX7q1WyksjkVpiUwijxlRbWDvIQjWGsyLOEPewLJ_o5WG-r2jY1xnPk_cmUt78EAzJvcCtSwSkiKA__iIAiOGxMY/s400/ubuntu-on-mini-pc2.jpg" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaFz5127_8_-wPDSGmZ9MjyqWIqp4wRQ7838r3Zl0VDYl2LsikFlf2fo6epT8FRVDsAENYaMoAf3IOba77wR_bIhRnQq1f2pWrUKH9SVx8HkbDgHxCss4xxPjeTcANZwyUkPQLY9iyfVI/s1600/ubuntu-on-mini-pc.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiaFz5127_8_-wPDSGmZ9MjyqWIqp4wRQ7838r3Zl0VDYl2LsikFlf2fo6epT8FRVDsAENYaMoAf3IOba77wR_bIhRnQq1f2pWrUKH9SVx8HkbDgHxCss4xxPjeTcANZwyUkPQLY9iyfVI/s400/ubuntu-on-mini-pc.jpg" width="400" /></a></div>
<br /></div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com4tag:blogger.com,1999:blog-9019356430481842872.post-34836246262715520882013-02-22T23:46:00.000+03:302013-02-26T02:05:54.538+03:30راحت ترین و بهترین کامپوننت مرورگر برای جاوا JxBrowser<div dir="rtl" style="text-align: right;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhk4_UFUvssu4j-Im0vFqC6U0igLHqaoDDXuhRFdDADH8oQSS_LViqTM13rsWcrc2_I-ghWyQSZvi-JNyD4n86fPSPccw7WNLJaP5x6riVYvBxL-Xp1Ep5kgvg1RQiu1J7JkxD3RVaaZig/s1600/jxbrowser-demo-lin.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="229" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhk4_UFUvssu4j-Im0vFqC6U0igLHqaoDDXuhRFdDADH8oQSS_LViqTM13rsWcrc2_I-ghWyQSZvi-JNyD4n86fPSPccw7WNLJaP5x6riVYvBxL-Xp1Ep5kgvg1RQiu1J7JkxD3RVaaZig/s320/jxbrowser-demo-lin.jpg" width="320" /></a></div>
<br />
به درستی بهترین کامپوننت مرورگر برای جاوا JxBrowser هستش . قیمت این کامپوننت 1349$ دلار معادل 5,126,200 میلیون تومان به پول ما می شه که واقعا خیلی گرونه , یعنی اگه پراید زیر پامون رو بفروشیم می توانیم فقط ۴ مجوز استفاده از این کامپوننت بخریم .<br />
JxBrowser لینوکس , ویندوز و مک رو پشتیبانی می کنه و برای نمایش صفحات وب هم از Firefox عزیز کمک می گیره ;) نسخه کرک شده این کامپوننت رو براتون گذاشتم , حالشو ببرید .<br />
<br />
لینک دانلود , کل حجم (106 MB )<br />
<a href="https://docs.google.com/file/d/0BxDt3sYGKorocUhPNnBDY2M5cDQ/edit?usp=sharing" target="_blank">دانلود بخش ۱ </a><br />
<a href="https://docs.google.com/file/d/0BxDt3sYGKoroQVY3MzNKX3QxN00/edit?usp=sharing" target="_blank">دانلود بخش ۲</a><br />
<a href="https://docs.google.com/file/d/0BxDt3sYGKoroTDBEdnYxNXh4MGc/edit?usp=sharing" target="_blank">دانلود بخش 3</a><br />
<a href="https://docs.google.com/file/d/0BxDt3sYGKoroZVZDVk1KakZUTnM/edit?usp=sharing" target="_blank">دانلود بخش 4</a></div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0tag:blogger.com,1999:blog-9019356430481842872.post-52782408348543918332013-01-11T22:34:00.000+03:302013-01-11T22:47:06.808+03:30GWT چیست ؟<div dir="rtl" style="text-align: right;" trbidi="on">
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6KNC4Eoz1fI7wFNhS2KRJCUprfFChuZ0ML5hxlxUq8xvQ2t1nG1Z2Jd8kEX6UwxQ-SXOxLkbR_7xWd7vNtzab6-bxEDs9pIVwIAAHr_DexK-9vxzRTtAPvbv8xOkVX4LKpCRZco4z_ZQ/s1600/Photo+editor+online+++free+image+editing+direct+in+your+browser+-+Pixlr.com-025859.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="178" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6KNC4Eoz1fI7wFNhS2KRJCUprfFChuZ0ML5hxlxUq8xvQ2t1nG1Z2Jd8kEX6UwxQ-SXOxLkbR_7xWd7vNtzab6-bxEDs9pIVwIAAHr_DexK-9vxzRTtAPvbv8xOkVX4LKpCRZco4z_ZQ/s200/Photo+editor+online+++free+image+editing+direct+in+your+browser+-+Pixlr.com-025859.png" width="200" /></a></div>
<br />
gwt یا همان google web toolkit جعبه ابزاری است که برای ساخت صفحات وب پیچیده و مبتنی بر Ajax توسط گوگل توسعه داده شده است. ابزاری رایگان و کدباز که گوگل نیز از این جعبه ابزار برای برخی از پروژهای خود استفاده کرده مانند : blogger , google wave ,google adwords و orkut<br />
<br />
جعبه ابزار گوگل شامل apiهای جاوا و ویجت ها است که به ما این امکان را می دهند با جاوا کد نویسی کنیم و بعد از کامپایل در سمت client (مشتری) کد جاوا اسکریپت بهینه شده و قابل اجرا برای تمامی مرورگر ها بدون هیچ برنامه اضافه داشته باشیم . در سمت سرور هم Java EE قدرتمند قرار دارد که به ما اجازه انجام هر کاری را می دهد.<br />
<br />
از آنجایی که جعبه ابزار گوگل بر مبنای جاوا کار می کند می توانیم در IDE (محیط کد نویسی مثل eclipse) مورد علاقه ی خود کد نویسی کرده و همانند یک برنامه جاوا دیباگ کنیم و از تمامی امکانات دیباگ جاوا نیز بر خوردار خواهیم بود.<br />
<br />
<br />
قابلیت های کلیدی gwt<br />
<div style="text-align: right;">
<ul style="text-align: right;">
<li>مکانیزم RPC (راه حلی ساده برای ارتباط با سرور)</li>
<li>مدیریت تاریخچه مرورگر</li>
<li>پشتیبانی از تمامی قابلیت های دیباگ جاوا</li>
<li>بهینه سازی کد نوشته شده برای انواع مرورگر ها به صورت خودکار</li>
<li>فراخوانی توابع جاوااسکریپت و کد نویسی محلی جاوااسکریپت</li>
<li>پشتیبانی از شی گرایی (به ارث برده از جاوا) و جلوگیری از بروز خطا در هنگام اجرا با استفاده از try .. catch</li>
<li>ویجت های گوناگون که توسط شرکت گوگل و شرکت های دیگر به صورت رایگان فراهم شده اند مانند ext gwt , smartGwt</li>
</ul>
<span style="font-size: x-small;"></span><br />
<div style="text-align: right;">
<span style="font-size: x-small;"><span style="font-size: x-small;"><br /></span></span></div>
<span style="font-size: x-small;">
لینک های مرتبط:</span></div>
<div style="text-align: right;">
<span style="font-size: x-small;"><br /></span></div>
<div dir="ltr" style="text-align: left;">
<span style="font-size: x-small;"><a href="https://developers.google.com/web-toolkit/" target="_blank">Google Web Toolkit</a></span></div>
<div dir="ltr" style="text-align: left;">
<span style="font-size: x-small;"><a href="https://developers.google.com/web-toolkit/examples/" target="_blank">Google Web Toolkit in Action</a></span></div>
<div dir="ltr" style="text-align: left;">
<span style="font-size: x-small;"><a href="http://www.smartclient.com/smartgwt/showcase/" target="_blank">Smart Gwt Showcase</a></span></div>
<br /></div>
Anonymoushttp://www.blogger.com/profile/05128410225063090995noreply@blogger.com0