قابلیت چند زبانه و Localization در AngularJs بخش اول: معرفی angular-translate
در این مقاله قصد داریم با استفاده از ماژول Angular-Translateامکان ایجاد یک سیستم چند زبانه را تشریح کنیم.angular-translate یک ماژول توسعه داده شده AngularJs میباشد که با استفاده از i18n و l10n، قابلیت...
View ArticleEf 6 و Ngen : شروعی سریعتر برای برنامه های مبتنی بر Entity Framework
تولید کد Native زمانی اتفاق میافتد که کامپایلر JIT، کد اسمبلیهای MSIL را به کدهای Native در ماشین محلی کامپایل میکند و این عمل بلافاصله قبل از اجرای متد برای اولین بار اتفاق میافتد. این کد به صورت...
View Articleقابلیت چند زبانه و Localization در AngularJs- بخش دوم: بررسی اجمالی قابلیت...
در بخش قبلی به معرفی ماژول angular-tanslate پرداختیم. در این بخش قصد داریم تا به بررسی مفهومی قابلیتهای موجود در این ماژول بپردازیم.شکل زیر یک شمای کلی را از قابلیتهای angular-translate، نمایش...
View ArticleRoslyn #1
معرفی Roslyn سکوی کامپایلر دات نت یا Roslyn (با تلفظ «رازلین») بازنویسی مجدد کامپایلرهای VB.NET و #C توسط همین زبانها است. این سکوی کامپایلر به همراه یک سری کتابخانه و اسمبلی ارائه میشود که امکان...
View Articleبررسی مشکلات AngularJS 1.x
از اولین مقالهای که در مورد AngularJS در این سایت منتشر کردم، بیش از دو سال میگذرد. در آن زمان فقط از این فریمورک تعریف و تمجید کردم؛ اما بد نیست بعد از چند تجربهی کاری دلایل تنفری را که نسبت به آن...
View ArticleRoslyn #2
شروع به کار با Roslyn Roslyn از زمان ارائهی نگارش Visual Studio 14 CTP3 با ویژوال استودیو یکپارچه شد. بنابراین اگر از نگارش نهایی آن یعنی Visual Studio 2015 استفاده میکنید، اولین پیشنیاز کار با آن را...
View ArticleRoslyn #3
بررسی Syntax tree زمانیکه صحبت از Syntax میشود، منظور نمایش متنی سورس کدها است. برای بررسی و آنالیز آن، نیاز است این نمایش متنی، به ساختار دادهای ویژهای به نام Syntax tree تبدیل شود و این Syntax...
View ArticleRoslyn #4
بررسی API کامپایل Roslyn Compilation API، یک abstraction سطح بالا از فعالیتهای کامپایل Roslyn است. برای مثال در اینجا میتوان یک اسمبلی را از Syntax tree موجود، تولید کرد و یا جایگزینهایی را برای...
View ArticleRoslyn #5
بررسی Semantic Models همانطور که از قسمت قبلبهخاطر دارید، برای دسترسی به اطلاعات semantics، نیاز به یک context مناسب که همان Compilation API است، میباشد. این context دارای اطلاعاتی مانند دسترسی به...
View Articleقابلیت چند زبانه و Localization در AngularJs- بخش سوم: Best Practiceهای...
در این بخش قصد دارم تا در قالب یک پروژه، تمامی قابلیتهایی را که در angular-translate و ماژولهای مرتبط با آن وجود دارند، به شما معرفی کنم. پروژهی نمونه را از لینک زیر دریافت...
View ArticleRoslyn #6
معرفی Analyzers پیشنیاز این بحث نصب مواردی است که در مطلب «شروع به کار با Roslyn» در قسمت دوم عنوان شدند: الف) نصب SDK ویژوال استودیوی 2015 ب) نصب قالبهای ایجاد پروژههای مخصوص Roslyn البته این...
View ArticleRoslyn #7
معرفی Workspace API Workspace، در حقیقت نمایش اجزای یک Solution در ویژوال استودیو است و یک Solution متشکل است از تعدادی پروژه به همراه وابستگیهای بین آنها. هدف از وجود Workspace API در Roslyn، دسترسی...
View Articleافزونه مدیریت فایل های رایگان Roxy FileMan برای TinyMce و CkEditor
در این مقاله سعی در پیاده سازی Roxy FileMan در Asp.net mvc داریم. البته خود وب سایت آن (اینجا) برای .net Framework 4.5 پروژهایی را آماده کرده است که بنده بنا دارم همان پروژه را توضیح دهم.قبل از شروع...
View Articleشروع به کار با Aurelia
در این مطلب قصد داریم نحوهی راه اندازی و شروع به کار با Aurelia را توضیح دهیم. برای شروع ابتدا باید Git را نصب کنیم. زیرا میخواهیم از jspm برای نصب محتویات Aurelia استفاده کنیم و برای کار کردن با...
View Articleآشنایی با WPF قسمت هفتم: DataContext بخش چهارم
تا قسمت قبلیکنترل لیست را پر نمودیم. در این مقاله قصد داریم آخرین کنترلT یعنی تقویم را بایند کرده و یک نکته از Binding را جهت تکمیل کردن بحث بیان کنیم. تقویم در دروس گذشته اطلاعات را از متدی به نام...
View Articleقابلیت چند زبانه و Localization در AngularJs- بخش چهارم و نهایی: Best...
در بخش پیشین چند مورد از قابلیتهای angular-translate را بررسی نمودیم. در این بخش به بررسی باقی موارد میپردازیم.ex7_load_static_files در این مثال خواهیم دید که چگونه یک فایل translate table در موقع...
View ArticleC# 6 - String Interpolation
تا پیش از C# 6 یکی از روشهای توصیه شدهی جهت اتصال رشتهها به هم، استفاده از متدهایی مانند string.Format و StringBuilder.AppendFormat بود:using System; namespace CS6NewFeatures { class Person {...
View ArticleC# 6 - The nameof Operator
یکی دیگر از قابلیتهای جذاب نسخهی جدید سیشارپ، عملگر nameof است. هدف اصلی آن ارائه کدهایی با قابلیت Refactoring بهتر است؛ زیرا به جای نوشتن نام فیلدها و یا متدها در صورت نیاز به صورت hard-coded،...
View ArticleC# 6 - Null-conditional operators
برنامه نویسهای سیشارپ پیشتر با null-coalescing operator یا ?? آشنا شده بودند. برای مثال string data = null; var result = data ?? "value"; در این حالت اگر data یا سمت چپ عملگر، نال باشد، مقدار value...
View Articleروشی برای DeSerialize کردن QueryString به یک کلاس
چند روز پیش در حال استفاده از افزونهی jQuery Bootgridبودم که دادههای خود را در قالب زیر به صورت کوئری استرینگ ارسال...
View Article