Forwarded from Mohammad Ebrahimi
Forwarded from Mohammad Ebrahimi
#DependencyInjection #DI #InversionOfControl #IOC
تزریق وابستگی چیست؟
—----------------------------------
تزریق وابستگی معمولا توی بزرگ کاربرد داره و به ما کمک میکنه لایه های پروژمون رو مجزا و ارتباط بین شون رو سست کنیم که اصطلاحا بهش میگن (loosely coupling) و این باعث میشه لایه های پروژمون به هم وابستگی نداشته باشند و درهم آمیخته (tightly coupled) نباشند.
این تکنیک نگهداری و توسعه کدمون رو راحت تر میکنه. یکی دیگر از مزایای اون هم سازه سازی عملیات unit testing هست.
—----------------------------------
به صورت خلاصه ترزیق وابستگی و یا dependency injection ، الگویی است جهت تزریق وابستگیهای خارجی یک کلاس به آن، بجای استفاده مستقیم از آنها در درون کلاس.
برای مثال شخصی را در نظر بگیرید که قصد خرید دارد. این شخص میتواند به سادگی با کمک یک خودرو خود را به اولین محل خرید مورد نظر برساند. حال تصور کنید که 7 نفر عضو یک گروه، با هم قصد خرید دارند. خوشبختانه چون تمام خودروها یک اینترفیس مشخصی داشته و کار کردن با آنها تقریبا شبیه به یکدیگر است، حتی اگر از یک ون هم جهت رسیدن به مقصد استفاده شود، امکان استفاده و راندن آن همانند سایر خودروها میباشد و این دقیقا همان مطلبی است که هدف غایی الگوی تزریق وابستگیها است. بجای اینکه همیشه محدود به یک خودرو برای استفاده باشیم، بنابر شرایط، خودروی متناسبی را نیز میتوان مورد استفاده قرار داد.
تزریق وابستگی چیست؟
—----------------------------------
تزریق وابستگی معمولا توی بزرگ کاربرد داره و به ما کمک میکنه لایه های پروژمون رو مجزا و ارتباط بین شون رو سست کنیم که اصطلاحا بهش میگن (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
برای یادگیری تزریق وابستگی مقالات زیر رو بخوانید.
https://goo.gl/i2BDup
https://goo.gl/gMqcuU
https://www.dotnettips.info/courses/details/5
#Alert #Plugin #Bootstrap
SweetAlert
https://t4t5.github.io/sweetalert/
https://github.com/t4t5/sweetalert
—-------------------
SweetAlert for Bootstrap
https://lipis.github.io/bootstrap-sweetalert/
https://github.com/lipis/bootstrap-sweetalert
—-------------------
SweetAlert in Mvc
https://barnamenevisan.org/ArticleGroup/5/Asp-Net-MVC
SweetAlert
https://t4t5.github.io/sweetalert/
https://github.com/t4t5/sweetalert
—-------------------
SweetAlert for Bootstrap
https://lipis.github.io/bootstrap-sweetalert/
https://github.com/lipis/bootstrap-sweetalert
—-------------------
SweetAlert in Mvc
https://barnamenevisan.org/ArticleGroup/5/Asp-Net-MVC
GitHub
GitHub - t4t5/sweetalert: A beautiful replacement for JavaScript's "alert"
A beautiful replacement for JavaScript's "alert". Contribute to t4t5/sweetalert development by creating an account on GitHub.
#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
زامارین (Xamarin) چیست؟
زامارین فریمورکی هست بر پایه پروژه سورس Mono که به وسیله اون میتونین توسط کد سی شارپ اپلیکیشن های Android - IOS - Windows Phone بسازید
اپ های ساخته شده با زمارین Naitive هستند و از Performance بالایی برخوردارند (حتی در بعضی موارد بیشتر از کد های جاوا)
ولی این به اون معنی نیست که زامارین کد های سی شارپ رو به کد های جاوا تبدیل می کنه. بلکه توسط واسطی به نام "واسط محلی جاوا" کار میکنه
JNI (Java Native Interface)
درواقع کد های سی شارپ توسط MonoCLR اجرا میشند و کد های جاوا توسط Dalvik . و در این بین فریمورک JNI که رابطی بین این دو است باعث میشه و کد های سی شارپ و جاوا بتوانند همدیگه رو صدا میزنند.
اطلاعات بیشتر :
https://goo.gl/qqNYrF
https://xamarin.com/platform
Tosinso
معرفی Xamarin.Android برای نوشتن برنامه های اندروید به زبان #C
#Glimpse, #Profiler, #AspNet
Glimpse چیست؟
یک پروفایلر کاملا حرفه ای برای مانیتور و دیباگ کردن بخش های مختلف سایت و بررسی کارایی آن می باشد. اگه از مینی پروفایلر یا ابزارهای مشابه آن برای بررسی کوئری های تولید شده توسط EF و ... استفاده کرده باشید، این ابزار هم همه ی آن امکانات را به اضافه ی بسیاری قابلیت های مفید دیگر مانند نمایش درخواست های ایجکسی صفحه، زمان اجرای آنها، تعداد درخواست ها و ... در اختیار شما قرار میدهد. با استفاده از این ابزار شما تسلط کامل بر اتفاقاتی که در بخش های مختلف سایت تان رخ میدهد دارید و مثلا دقیقا مشاهده میکنید که به ترتیب چه اکشن هایی صدا زده میشوند، چه درخواست های ایجکسی اجرا میشود، چندبار اجرا میشوند، زمان اجرای هر کدام چقدراست، اگر چند پترن برای routing دارید از کدام استفاده میکند، چه دستور sql اجرا میشود و.... که برای پیدا کردن مشکلات پرفرمنسی بسیار مفید است.
لینک زیر راهنمای نصب و استفاده از این ابزار مفید و کاربردی می باشد:
https://www.asp.net/mvc/overview/performance/profile-and-debug-your-aspnet-mvc-app-with-glimpse
Glimpse چیست؟
یک پروفایلر کاملا حرفه ای برای مانیتور و دیباگ کردن بخش های مختلف سایت و بررسی کارایی آن می باشد. اگه از مینی پروفایلر یا ابزارهای مشابه آن برای بررسی کوئری های تولید شده توسط EF و ... استفاده کرده باشید، این ابزار هم همه ی آن امکانات را به اضافه ی بسیاری قابلیت های مفید دیگر مانند نمایش درخواست های ایجکسی صفحه، زمان اجرای آنها، تعداد درخواست ها و ... در اختیار شما قرار میدهد. با استفاده از این ابزار شما تسلط کامل بر اتفاقاتی که در بخش های مختلف سایت تان رخ میدهد دارید و مثلا دقیقا مشاهده میکنید که به ترتیب چه اکشن هایی صدا زده میشوند، چه درخواست های ایجکسی اجرا میشود، چندبار اجرا میشوند، زمان اجرای هر کدام چقدراست، اگر چند پترن برای routing دارید از کدام استفاده میکند، چه دستور sql اجرا میشود و.... که برای پیدا کردن مشکلات پرفرمنسی بسیار مفید است.
لینک زیر راهنمای نصب و استفاده از این ابزار مفید و کاربردی می باشد:
https://www.asp.net/mvc/overview/performance/profile-and-debug-your-aspnet-mvc-app-with-glimpse
Docs
Profile and debug your ASP.NET MVC app with Glimpse
Glimpse is a thriving and growing family of open source NuGet packages that provides detailed performance, debugging and diagnostic information for ASP.NET a...
#Resharper #Utiltiy #Jetbrains
امکانات و ویژگیهای ابزار JetBrains Resharper :
- توسعه و بهینهکردن قابلیت تکمیل خودکار در ویژوال استودیو
- تجزیه و تحلیل کیفیت کدها و مرتبکردن، تمیزکردن و بهینهنمودن آنها
- راهاندازی و آزمایش کدها و خطایابی و رفع عیب خودکار و پیشرفتهی آنها
- بهینهسازی Referenceها و حذف موارد اضافی آنها
- اعلام نیاز Reference های لازم و افزودن به پروژه
- تبدیل حلقه های foreach یا for به عبارات Linq
- بیلد خودکار پروژه و گرفتن Error ها و Exception ها در لحظه
- مسیریابی و جستجوی پیشرفته و دقیق فایل ها
- مطابقت کامل با استانداردهای روز برنامهنویسی
- وجود انواع قالبها و امکان سفارشیسازی، پیکربندی و بهاشتراکگذاشتن آنها
- دارای ابزارهای ویرایش XAML
- و ...
لینک دانلود آخرین نسخه
https://bit.ly/1FYNZTo
امکانات و ویژگیهای ابزار JetBrains Resharper :
- توسعه و بهینهکردن قابلیت تکمیل خودکار در ویژوال استودیو
- تجزیه و تحلیل کیفیت کدها و مرتبکردن، تمیزکردن و بهینهنمودن آنها
- راهاندازی و آزمایش کدها و خطایابی و رفع عیب خودکار و پیشرفتهی آنها
- بهینهسازی Referenceها و حذف موارد اضافی آنها
- اعلام نیاز Reference های لازم و افزودن به پروژه
- تبدیل حلقه های foreach یا for به عبارات Linq
- بیلد خودکار پروژه و گرفتن Error ها و Exception ها در لحظه
- مسیریابی و جستجوی پیشرفته و دقیق فایل ها
- مطابقت کامل با استانداردهای روز برنامهنویسی
- وجود انواع قالبها و امکان سفارشیسازی، پیکربندی و بهاشتراکگذاشتن آنها
- دارای ابزارهای ویرایش XAML
- و ...
لینک دانلود آخرین نسخه
https://bit.ly/1FYNZTo
#SEO #URL #Route #AspMvc
SEO (and user) Friendly URL in AspNet MVC
https://goo.gl/z4kBxb
https://goo.gl/Eb6ZJ2
https://goo.gl/4W7nXk
https://goo.gl/qua1Tj
SEO (and user) Friendly URL in AspNet MVC
https://goo.gl/z4kBxb
https://goo.gl/Eb6ZJ2
https://goo.gl/4W7nXk
https://goo.gl/qua1Tj
Stack Overflow
Asp.net MVC SEO Friendly URL
I want to implement a SEO friendly URL for my ASP.NET MVC website.
Currently i have a URL like:
https://www.domain.com/product?id=productid
but now i want to rewrite my URL like:
https://www.doma...
Currently i have a URL like:
https://www.domain.com/product?id=productid
but now i want to rewrite my URL like:
https://www.doma...
#API #DetectBrowser #UserAgent
سایتی برای تشخیص نوع و ورژن مرورگر و سیستم عامل کلاینت از طریق API
https://www.useragentstring.com/pages/api.php
سایتی برای تشخیص نوع و ورژن مرورگر و سیستم عامل کلاینت از طریق API
https://www.useragentstring.com/pages/api.php
Useragentstring
UserAgentString.com - API
Understand what information is contained in a user agent string. Get an analysis of your or any other user agent string. Find lists of user agent strings from browsers, crawlers, spiders, bots, validators and others..
#DetectMobile #DetectBrowser #UserAgent
سایتی برای تشخیص موبایل بودن یا نبودن کلاینت و هدایت به ادرس صحیح
https://detectmobilebrowsers.com/
سایتی برای تشخیص موبایل بودن یا نبودن کلاینت و هدایت به ادرس صحیح
https://detectmobilebrowsers.com/
Detectmobilebrowsers
Detect Mobile Browsers - Open source mobile phone detection
Open source scripts to detect mobile browsers and phones using Apache, JavaScript, PHP, ASP, ColdFusion, C#, .NET, Python, JSP and Rails.
#Performance #Analyse #PageSpeed #YSlow
سایتی برای سنجش performance و سرعت لود سایت به همراه پیشنهاد هایی برای بهبود سایت
gtmetrix.com
سایتی برای سنجش performance و سرعت لود سایت به همراه پیشنهاد هایی برای بهبود سایت
gtmetrix.com