کدهک
1.92K subscribers
1.31K photos
7 videos
1 file
682 links
آموزشگاه تخصصی دات نت

https://codehaks.com

لینکدین :
https://www.linkedin.com/in/codehaks

یوتیوب:
https://www.youtube.com/@codehaksfa

ارتباط با مدیر :
Admin: @codehak
Email: ghods.hakim@hotmail.com
call: 09380146555
Download Telegram
در مدیریت به روش SCRUM پروژه را به لیستی از کارها به نام Backlog تقسیم می کنیم و آنها را در یک بازه های زمانی مساوی به نام Sprint پخش می کنیم. Sprint می تواند از یک روز تا یک ماه باشد.
سرور Kestrel در ASP NET Core پیامهای HTTP را دریافت می کند و به کلاس HttpContext تبدیل می میکند. این ابزار می تواند مستقیما جایگزین IIS شود. مزیت اصلی آن اجرا شدن روی لینوکس و MacOS است.
معمولا از Kestrel به همراه یک Reverse Proxy استفاده میشود. یعنی ابزای مانند IIS یا Apache یا Nginx در مسیر اصلی داده ها قرار میگیرد تا از امکانات امنیتی آنها استفاده شود.
قسمت Gist در GitHub به شما امکان میدهد کدهای خود را در این سایت یادداشت کنید و با دیگران به اشتراک بگذارید. امکان ذخیره گیست به صورت عمومی و خصوصی وجود دارد. برای اشتراک گذاری لینک آن را ارسال کنید.
نمونه کدها و گیست های Codehaks@ را می توانید از لینک زیر دنبال کنید :
https://gist.github.com/codehaks
قابلیت Virtual DOM در React و Vue.js یک نسخه ی مجازی از صفحه ی HTML را در خود نگه میدارد. تنها وقتی تغییری در DOM اتفاق میوفتد این حافظه بروز رسانی شده و سرعت نمایش اطلاعات در صفحه بیشتر میشود.
منظور از Inversion of Control یا کنترل معکوس در برنامه نویسی چیست ؟

معکوس کردن کنترل به این معنی است که شما بخشی از وظایفی که به عهده دارید به شخص دیگری بسپارید. مثلا بجای اینکه خودتان درهای فروشگاه را باز کنید یک چشم الکرونیکی حضور شما را تشخیص میدهد و در را باز میکند. در اینجا شما کنترل باز و بسته شدن در را از خودتان به چشم الکترونیک منتقل کرده اید.

در برنامه نویسی وقتی یک کلاس به چند کلاس دیگر وابسته است باید هر یک از آنها را نمونه سازی کنید. یعنی با استفاده از new یک نمونه جدید از کلاس وابسته را ایجاد و تخصیص دهید. شما می توانید این عملیات نمونه سازی را به یک IoC Container بسپارید. ابزاری مانند Ninject ، StructureMap ، AutoFac نقش چشم الکترونیک را به عهده دارند. آنها به عنوان کنترل معلکوس عمل میکنند و کلاسهای مورد نیاز هر کلاس را ایجاد و تخصیص میدهند و در پایان حذف میکنند. برای کار با این ابزار ابتدا باید یکی از روشها تزریق وابستگی یا Dependency Injection را بکار بگیرید.
فریم ورک Node.js ابزاری متن باز و Cross-platform است که به شما امکان میدهد با استفاده از زبان JavaScript برنامه نویسی سرور انجام دهید. در واقع معادل ASP.NET است ولی از زبان جاوا اسکریپت استفاده میکند.
دات نت استاندارد به مجموعه ای از دستورات دات نت گفته میشود که در همه ی فضاهای کاری دات نت اجرا میشوند. کدی که در محیط استاندارد پیاده شود در Xamarin ، Net Core و Net Framework قابل استفاده است.
چرخه ی گارتنر نشان میدهد که هر تکنولوژی جدید در ابتدا خیلی سریع رشد می کند و مورد توجه قرار میگیرد. بعد جامعه علاقه اش را ازدست میدهد. ولی در دراز مدت جایگاه خودش را پیدا میکند.
کدهک
چرخه ی گارتنر نشان میدهد که هر تکنولوژی جدید در ابتدا خیلی سریع رشد می کند و مورد توجه قرار میگیرد. بعد جامعه علاقه اش را ازدست میدهد. ولی در دراز مدت جایگاه خودش را پیدا میکند.
بر مبنای همین تئوری فریم ورکی مانند Node.js در ابتدا خیلی سریع رشد کرد و همه گیر شد. اما الان در دوره ی افول به سر میبرد. بسیاری از کسانی که در ابتدا جذب نود شدند الان در حال برگشت به تکنولوژی های قدیمی تر و با ثبات تر مانند ASP و PHP هستند. اینکه Node.js بتواند دوباره خودش را بالا بکشد جای سوال دارد. این امر اگه چه ممکن است اما به عوامل بسیاری بستگی دارد.
معماری Microservice در سایتهای بزرگ با ترافیک بالا مورد استفاده قرار میگیرد. به این ترتیب که سایت اصلی تبدیل میشود به مجموعه ای از سایتهای کوچک با دیتابیس جدا که می توانند در سرور مستقل اجرا شوند.
میکرو سرویس چیست ؟

وقتی بازدید یک سایت بالا میرود دیگر یک سرور جوابگوی ترافیک بوجود آمده نیست. در این مواقع اولین راه حل استفاده از سرورهای قویتر است. اما هزینه سرورهای قویتر رشد تساعدی دارد و در میزان ظرقیت آنها هم محدودیت وجود دارد. در دراز مدت تنها چاره استفاده از چند سرور برای پاسخگویی به کاربران است. اینجا Microservice ها مهم میشوند.

تیم برنامه نویسی قسمتهایی از سایت که ترافیک بالایی دارند را به سایتهای کوچک با دیتابیس مجزا میشکند و آنها را در سرورهای مستقل قرار میدهد. مثلا سیستم آپلود فایل در یک سایت فروش فایل یا سیستم ارسال Notification در یک شبکه ی اجتماعی می تواند جدا سازی شود و حجم زیادی از ترافیک سرور اصلی را کم کند.

هر کدام از Microservice ها می توانند با تکنولوژی متفاوتی پیاده شوند که دست برنامه نویسان را برای انتخاب بهترین ها باز میگذارد. مثلا میشود سایتی داشت که همزمان از ASP و PHP و Node استفاده کند و دیتابیس های آن هم ترکیبی از SQL Server و NoSQL و MangoDB باشد.

این جدا سازی باعث میشود بتوان یک قسمت از سایت را بدون درگیر کردن سایر قسمتها بروز رسانی کرد و در صورت بروز مشکل در یک قسمت کل سایت از کار نمی افتد.

استفاده از میکروسرویسها چالشهای زیادی هم دارد. بعد از جدا کردن فریم ورکها و دیتابیس ها باید راهی برای برقراری ارتباط بین آنها ایجاد کرد. معمولا از سیستمهای پیام رسان استفاده میشود که پیاده سازی پیچیده ای دارند.
با استفاده از سایت https://jsfiddle.net می توانید پروژه های تست جاوا اسکریپت و Html بسازید و آنها را با دیگران به اشتراک بگذارید. jsFiddle یک ادیتور کد آنلاین است که به شما امکان اجرای دستورات جاوا اسکریپت را میدهد.
پروتکل HTTPS ترکیبی از SSL و HTTP است که اطلاعات را بین کلاینت و سرور رمزگذاری میکند. این رمزگذاری از حملات هکری مانند Man in the middle جلوگیری میکند و امکان شنود یا دستکاری آن را ازبین میبرد.
با قابلیت جدید Pattern Matching از C-shartp 7.0 به بالا می توانید در Switch علاوه بر Data Type انواع مختلف Object را هم بررسی کنید. همینطور کلمه ی کلیدی when هم برای شرط گذاری اضافه شده است.
مقایسه تست سرعت فریم ورکهای زبان #C
در این تست فریم ورک باید عبارت "Hello,world" را برگرداند. میبینید که ارقام ASP.NET Core با ASP.NET قابل مقایسه نیستند.
منبع : www.techempower.com