DotNetZoom
2.95K subscribers
342 photos
18 videos
36 files
606 links
DotNetZoom
💎 Everything about .NET

ارتباط با مدیر و تبلیغات آگهی استخدام:
@mjebrahimi

لینک گروه ASPNET Core:
https://t.iss.one/+ufG25x7lVFgyYTNk
Download Telegram
Forwarded from Mohammad Ebrahimi
#DependencyInjection #DI #InversionOfControl #IOC
تزریق وابستگی چیست؟
—----------------------------------
تزریق وابستگی معمولا توی بزرگ کاربرد داره و به ما کمک میکنه لایه های پروژمون رو مجزا و ارتباط بین شون رو سست کنیم که اصطلاحا بهش میگن (loosely coupling) و این باعث میشه لایه های پروژمون به هم وابستگی نداشته باشند و درهم آمیخته (tightly coupled) نباشند.
این تکنیک نگهداری و توسعه کدمون رو راحت تر میکنه. یکی دیگر از مزایای اون هم سازه سازی عملیات unit testing هست.
—----------------------------------
به صورت خلاصه ترزیق وابستگی و یا dependency injection ، الگویی است جهت تزریق وابستگی‌های خارجی یک کلاس به آن، بجای استفاده مستقیم از آن‌ها در درون کلاس.
برای مثال شخصی را در نظر بگیرید که قصد خرید دارد. این شخص می‌تواند به سادگی با کمک یک خودرو خود را به اولین محل خرید مورد نظر برساند. حال تصور کنید که 7 نفر عضو یک گروه، با هم قصد خرید دارند. خوشبختانه چون تمام خودروها یک اینترفیس مشخصی داشته و کار کردن با آن‌ها تقریبا شبیه به یکدیگر است، حتی اگر از یک ون هم جهت رسیدن به مقصد استفاده شود، امکان استفاده و راندن آن همانند سایر خودروها می‌باشد و این دقیقا همان مطلبی است که هدف غایی الگوی تزریق وابستگی‌ها است. بجای این‌که همیشه محدود به یک خودرو برای استفاده باشیم، بنابر شرایط، خودروی متناسبی را نیز می‌توان مورد استفاده قرار داد.
Forwarded from Mohammad Ebrahimi
#DependencyInjection #DI #InversionOfControl #IOC
برای یادگیری تزریق وابستگی مقالات زیر رو بخوانید.
https://goo.gl/i2BDup
https://goo.gl/gMqcuU
https://www.dotnettips.info/courses/details/5
#Alert #Plugin #Bootstrap
ا SweetAlert یکی از بهترین پلاگین ها جهت نمایش پیغام
#Xamarin #MobilePrograming
زامارین (Xamarin) چیست؟
زامارین فریمورکی هست بر پایه پروژه سورس Mono که به وسیله اون میتونین توسط کد سی شارپ اپلیکیشن های Android - IOS - Windows Phone بسازید
اپ های ساخته شده با زمارین Naitive هستند و از Performance بالایی برخوردارند (حتی در بعضی موارد بیشتر از کد های جاوا)
ولی این به اون معنی نیست که زامارین کد های سی شارپ رو به کد های جاوا تبدیل می کنه. بلکه توسط واسطی به نام "واسط محلی جاوا" کار میکنه
JNI (Java Native Interface)
درواقع کد های سی شارپ توسط MonoCLR اجرا میشند و کد های جاوا توسط Dalvik . و در این بین فریمورک JNI که رابطی بین این دو است باعث میشه و کد های سی شارپ و جاوا بتوانند همدیگه رو صدا میزنند.
اطلاعات بیشتر :
https://goo.gl/qqNYrF
https://xamarin.com/platform
#Glimpse, #Profiler, #AspNet
Glimpse چیست؟
یک پروفایلر کاملا حرفه ای برای مانیتور و دیباگ کردن بخش های مختلف سایت و بررسی کارایی آن می باشد. اگه از مینی پروفایلر یا ابزارهای مشابه آن برای بررسی کوئری های تولید شده توسط EF و ... استفاده کرده باشید، این ابزار هم همه ی آن امکانات را به اضافه ی بسیاری قابلیت های مفید دیگر مانند نمایش درخواست های ایجکسی صفحه، زمان اجرای آنها، تعداد درخواست ها و ... در اختیار شما قرار میدهد. با استفاده از این ابزار شما تسلط کامل بر اتفاقاتی که در بخش های مختلف سایت تان رخ میدهد دارید و مثلا دقیقا مشاهده میکنید که به ترتیب چه اکشن هایی صدا زده میشوند، چه درخواست های ایجکسی اجرا میشود، چندبار اجرا میشوند، زمان اجرای هر کدام چقدراست، اگر چند پترن برای routing دارید از کدام استفاده میکند، چه دستور sql اجرا میشود و.... که برای پیدا کردن مشکلات پرفرمنسی بسیار مفید است.
لینک زیر راهنمای نصب و استفاده از این ابزار مفید و کاربردی می باشد:
https://www.asp.net/mvc/overview/performance/profile-and-debug-your-aspnet-mvc-app-with-glimpse
#Resharper #Utiltiy #Jetbrains
ریشارپر؛ ابزاری که هر برنامه نویس حرفه ای باید اون رو داشته باشه
#Resharper #Utiltiy #Jetbrains
امکانات و ویژگی‌های ابزار JetBrains Resharper :
- توسعه و بهینه‌کردن قابلیت تکمیل خودکار در ویژوال استودیو
- تجزیه و تحلیل کیفیت کدها و مرتب‌کردن، تمیزکردن و بهینه‌نمودن آن‌ها
- راه‌اندازی و آزمایش کدها و خطایابی و رفع عیب خودکار و پیشرفته‌ی آن‌ها
- بهینه‌سازی Referenceها و حذف موارد اضافی آن‌ها
- اعلام نیاز Reference های لازم و افزودن به پروژه
- تبدیل حلقه های foreach یا for به عبارات Linq
- بیلد خودکار پروژه و گرفتن Error ها و Exception ها در لحظه
- مسیریابی و جست‌جوی پیشرفته و دقیق فایل ها
- مطابقت کامل با استانداردهای روز برنامه‌نویسی
- وجود انواع قالب‌ها و امکان سفارشی‌سازی، پیکربندی و به‌اشتراک‌گذاشتن آن‌ها
- دارای ابزارهای ویرایش XAML
- و ...
لینک دانلود آخرین نسخه
https://bit.ly/1FYNZTo
#Excel #SqlServer
انتقال اطلاعات از فایل EXCELL به SQL SERVER
https://goo.gl/IziZze
#Performance #Analyse #PageSpeed #YSlow
سایتی برای سنجش performance و سرعت لود سایت به همراه پیشنهاد هایی برای بهبود سایت
gtmetrix.com
#SEO #MetaTag
لیست تمامی متاتگ های مورد نیاز برای SEO :

============== مقاله / اخبار ==============

<title>عنوان صفحه ، حداکثر 60 تا 70 کارکتر باشد</title>
<meta name="description" content="شرح صفحه ، حداکثر 150 کارکتر باشد" />
<!— Schema.org markup for Google+ —>
<meta itemprop="name" content="نام یا عنوان صفحه">
<meta itemprop="description" content="شرح صفحه">
<meta itemprop="image" content="نشانی اینترنتی عکسی که در پیشنمایش نشان داده میشود">

<!— Twitter Card data —>
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="کپی رایت نام سایت">
<meta name="twitter:title" content="نام یا عنوان صفحه">
<meta name="twitter:description" content="شرح صفحه">
<meta name="twitter:creator" content="نویسنده">
<!— Picture size at least 280x150px —>عکس پیشنمایش با ابعاد حداقل
<meta name="twitter:image:src" content="نشانی اینترنتی عکس مطلب">

<!— Open Graph data —>
<meta property="og:title" content="عنوان صفحه" />
<meta property="og:type" content="article" />
<meta property="og:url" content="نشانی سایت" />
<meta property="og:image" content="نشانی عکس مطلب" />
<meta property="og:description" content="شرح مطلب" />
<meta property="og:site_name" content="نام سایت" />
<meta property="article:published_time" content="تاریخ انتشار" />
<meta property="article:modified_time" content="تاریخ بروزرسانی" />
<meta property="article:section" content="نام بخش محتوی متن مقاله" />
<meta property="article:tag" content="نام تگ محتوی متن مقاله" />
<meta property="fb:admins" content="شناسه عددی کاربری شما در فیسبوک" />


============== محصولات ==============

<title>عنوان صفحه</title>
<meta name="description" content="شرح صفحه" />

<!— Schema.org markup for Google+ —>
<meta itemprop="name" content="عنوان صفحه">
<meta itemprop="description" content="Tشرح صفحه">
<meta itemprop="image" content="نشانی عکس محصول یا کالا">

<!— Twitter Card data —>
<meta name="twitter:card" content="product">
<meta name="twitter:site" content="کپی رایت سایت">
<meta name="twitter:title" content="عنوان صفحه">
<meta name="twitter:description" content="شرح محصول یا کالا">
<meta name="twitter:creator" content="نویسنده">
<meta name="twitter:image" content="نشانی عکس محصول یا کالا">
<meta name="twitter:data1" content="قیمت محصول یا کالا">
<meta name="twitter:label1" content="Price">
<meta name="twitter:data2" content="رنگ کالا یا محصحول">
<meta name="twitter:label2" content="Color">

<!— Open Graph data —>
<meta property="og:title" content="عنوان صفحه" />
<meta property="og:type" content="article" />
<meta property="og:url" content="نشانی سایت" />
<meta property="og:image" content="عکس محصول یا کالا" />
<meta property="og:description" content="شرح مصحول" />
<meta property="og:site_name" content="نام سایت" />
<meta property="og:price:amount" content="قیمت محصول یا کالا" />
<meta property="og:price:currency" content="واحد ارزی قیمت" />