اشتراک‌ها
مجموعه‌ی DotNetAnalyzers

جمع آوری افزونه‌ها و آنالیز کننده‌های سورس باز مبتنی بر Roslyn

مجموعه‌ی DotNetAnalyzers
اشتراک‌ها
حل مشکلات Json در یک استاندارد جدید به نام Hjson

همانطور که می‌دانید در چند سال اخیر استفاده از فرمت json برای فایل‌های کانفیگ بسیار رایج شده است. در این مورد یک توییت جالب همه را به چالش کشید: «خواهش می‌کنم از json برای کانفیگ فایل‌ها استفاده نکنید، تو json نمی‌شه کامنت نوشت و بدون کامنت مدیریت کانفیگ‌ها خیلی سخته». این نکته برای من خیلی جالب بود. به نظر می‌رسد فرمت json برای فایل‌هال کانفیگ چالش‌هایی دارد.

لینک زیر یک فرمت جدید رو که اسمش Human Json یا Hjson هست را معرفی کرده که نه تنها مشکل کامنت را ندارد، بلکه خیلی مشکلات دیگر که هنوز به آن فکر نشده بود را هم ندارد! جالبه که کتابخانه‌هایی هم برای این استاندارد نوشته شده که استفاده از اون رو در بیشتر زبان‌های محبوب مانند Java, C#, JavaScript, Mono, Ruby, Python, Noder.js, PHP, Go و زبانهای دیگر ساده می‌کند. 

حل مشکلات Json در یک استاندارد جدید به نام Hjson
اشتراک‌ها
خودتان بسازید! مخزنی از بهترین منابع خودآموز

قطعاً بارها پیش آمده است برای اینکه بهتر یاد بگیرید، پروژه‌ای برای خود تعریف کنید تا یک پکیج یا اتفاق آماده را از نو بنویسید و طی آن تجریبات خوبی به دست آوردید. این مخزن شاید بهترین منبع برای این هدف باشد.

پی‌نوشت: به نظر می‌رسد دوستان علاقه‌مند به C# و .Net در این مخزن به اندازه کافی مشارکت نداشته‌اند. در صورتی که مطالب خوبی را می‌شناسید، حتماً به این مخزن اضافه کنید.

خودتان بسازید! مخزنی از بهترین منابع خودآموز
نظرات مطالب
چگونه از SVN جهت به روز رسانی یک سایت استفاده کنیم؟
بحث اینجا کار تیمی است نه تک نفره و deploy به سرور. به همین جهت صحبت از مخزن کد شد و SVN.
این‌ها مشکلات web deploy است:
-با IIS 6 آنچنان سازگار نیست و IIS7 را طلب می‌کند. (با روش فوق سرور شما آپاچی هم باشد کار می‌کند)
-بحث rollback با webdelpoy اصلا معنی ندارد. اما با سورس کنترل به سادگی انجام می‌شود. فرض کنید الان به اشتباه یک سری کار به مخزن SVN ارسال شده. بلافاصله هم با روش فوق در ریشه سایت قرار گرفته. اصطلاحا revert به نگارش پایدار قبلی در SVN بسیار ساده است.
+ تمام مزیت‌های ورژن کنترل را هم لحاظ کنید. با روش فوق دقیقا مشخص است چه کسانی روی فایل‌ها کار کرده‌اند و چه زمانی. تاریخچه ارسال‌ها موجود است. امکان حرکت بین نگارش‌های مختلف و سوئیچ بین آن‌ها معنا پیدا می‌کند و ...
- روش فوق نیاز آنچنانی به داشتن دسترسی بالا روی سرور ندارد.

به همین جهت برای کار حرفه‌ای با web deploy از برنامه team city و یک سری مخلفات دیگر استفاده می‌کنند. یک سری 5 قسمتی رو اینجا می‌تونید پیدا کنید: (+)
و پس از مطالعه به این نتیجه خواهید رسید که روش فوق پایدارتر و دردسر کمتری دارد. حتی روی یک سرور لینوکسی هم قابل پیاده سازی است
نظرات مطالب
مراحل ارسال یک پروژه‌ی Visual Studio به GitHub
GitHub امکان تهیه مخزن کد خصوصی هم دارد ولی رایگان نیست. سایت BitBucket امکان ایجاد مخزن کد خصوصی رایگان را دارد؛ البته با محدودیت حداکثر 5 کاربر تعریف شده‌ی برای کار با یک مخزن.
نظرات مطالب
غیرمعتبر کردن توکن و یا کوکی سرقت شده در برنامه‌های مبتنی بر ASP.NET Core

یک نکته‌ی تکمیلی: به روز رسانی کتابخانه‌ی UAParser

در این مطلب از کتابخانه‌ی UAParser استفاده شد. این کتابخانه، چندسالی است که به‌روز نشده؛ البته چون نیازی نبوده! در اصل، این کتابخانه از فایل yaml مخصوصی که به صورت جاسازی شده (embedded) در آن قرار دارد، برای شناسایی مرورگرها استفاده می‌کند (مفهوم استفاده از متد ()Parser.GetDefault همین مورد است). بنابراین یا باید خودتان این فایل yaml را دستی به روز کرده (کار مخزن کد فعال UAParser-Core، فقط همین یک مورد است) و سپس کتابخانه را مجددا کامپایل و استفاده کنید و یا می‌توانید محتویات فایل yaml ذکر شده را دریافت و سپس با استفاده از متد Parser.FromYaml این کتابخانه، اطلاعات جدید دریافتی را پردازش و استفاده کنید؛ مانند UAParserService.