تشخیص تعداد تخصیصهای حافظهی یک برنامه
یکی از مواردی که فشاری بر روی garbage collector را بالا میبرد، تخصیصهای حافظهی مخفی یا Hidden allocations هستند که سبب تخصیصهای حافظهی کوچک و عموما پر تعدادی بر روی heap میشوند. برای نمونه به...
View Articleنمایش ایجکسی یک partial view در popover بوت استرپ 3
فرض کنید بخواهیم نمایش رای دهندههای یک مطلب را با popoverبوت استرپ 3 نمایش دهیم: Popover بوت استرپ برای کار با منابع remote طراحی نشدهاست و نیاز است توابع API آنرا به همراه jQuery Ajax ترکیب کرد تا...
View Articleآموزش Linq - بخش ششم : عملگرهای پرس و جو قسمت دوم
در ادامهی سری آموزشی LINQ، عملگرهای پرس و جوی مرتب سازی، گروه بندی و مجموعه را بررسی خواهیم کرد. عملگرهای مرتب سازی Ordering Operators این عملگرها عناصر توالی ورودی را به خروجی ارسال میکنند؛ با...
View Articleمعرفی برنامه انتخاب واحد
حتما همهی شما با فرآیند انتخاب واحد دانشگاهها آشنا هستید. معمولا دانشجویان سعی میکنند، دروسی را انتخاب کنند تا در حداقل تعداد روزهای هفته، بیشترین تعداد واحد ممکن را بگیرند. اما این کار وقتی که...
View Articleکتابخانه GMap.Net
نقشه گوگل در حال حاضر یکی از محبوبترین و کاملترین نقشههای جهان است و امکانات خوبی هم دارد. در این راستا بسیاری از مردم سعی در استفاده از این نقشهها و امکانات آنها دارند. به همین دلیل گوگل در...
View Articleمعرفی DNTBreadCrumb
سال نو مبارک! با آرزوی بهترینها برای تمام همراهان سایت. فرصتی پیدا شد تا قالب سایت، با بوت استرپ 3 انطباق داده شود و در این بین یکی از کمبودهایی که احساس میشد، نبود bread crumb و مشخص نبودن عمق...
View Articleتوسعه اپلیکیشنهای Node.js در ویژوال استودیو
آشنایی با Node.jsNode.js یک پلتفرم جاوا اسکریپتی سمت سرور است که ابتدا توسط Ryan Dahl در سال 2009 معرفی گردید. از Node.js جهت ساخت اپلیکیشنهای مقیاسپذیر تحت شبکه و با زبان برنامهنویسی جاوا اسکریپت...
View Articleطراحی یک ماژول IpBlocker در ASP.NET MVC
همانطور که میدانید وب سایتهای اینترنتی در معرض انواع و اقسام حملات قرار دارند و یکی از این حملات Dosاست. در این نوشتار میخواهیم تکه کدی را ارائه دهیم، تا این نوع حملات را دفع نماید. همانطور که میدانید...
View Articleچرا TypeScript؟
زبان TypeScript به عنوان superset زبان JavaScript ارائه شدهاست و هدف آن، strong typing و ارائهی قابلیتهای پیشرفتهی زبانهای شیءگرا، جهت نوشتن برنامههای کلاینت و سرور، با کمترین میزان خطاها است....
View Articleمبانی TypeScript؛ متغیرها و نوعها
روشهای مختلف تعریف متغیرها در TypeScript تمام توسعه دهندههای JavaScript با واژهی کلیدی var آشنایی دارند؛ اما TypeScript واژههای کلیدی let و const را نیز اضافه کردهاست (که جزئی از ES 6نیز...
View ArticleDelegate در سی شارپ
یک Delegate نوعی اشارهگر است به توابع در سی شارپ که میتواند ارجاعی را به یک یا چند تابع بخصوص داشته باشد. منظور از توابع در سی شارپ، متدها هستند. امضای یک Delegate باید با متدی که به آن اشاره میکنید...
View Articleمبانی TypeScript؛ متدها
توابع جزو ساختارهای پایهایی زبان جاوا اسکریپت هستند و از آنها جهت شبیهسازی کلاسها، کپسولهسازی اطلاعات و همچنین ایجاد ماژولها استفاده میشود. هر چند در زبان TypeScript به راحتی میتوانیم از...
View Articleمبانی TypeScript؛ اینترفیسها
اینترفیس، مانند قراردادی است که یک نوع را تعریف میکند. کامپایلر از اینترفیسها جهت بررسی نوعها و اجبار به رعایت قرارداد استفاده میکند. در این حالت اگر متدها یا خواص معرفی شدهی در نوع اینترفیس، توسط...
View Articleپیاده سازی Conventional UI در ASP.NET MVC
بعد از مدتی کار کردن با فریمورک ASP.NET MVC، شاید ایجاد یک فریمورک شخصی برپایه آن، یکی از بایدها برای شما باشد. در این راستا، نظم بخشیدن به ویوها برای جلوگیری از تکرار یکسری کد که اکثرا مورد استفاده...
View Articleمبانی TypeScript؛ کلاسها
تا قبل از ES 6 در جاوا اسکریپت از توابع جهت ایجاد کامپوننتهایی با قابلیت استفاده مجدد استفاده میشد. این امر برای برنامهنویسانی که با زبانهای OOP آشنایی دارند، شاید چندان خوشایند نباشد. در...
View Articleمعرفی پروژه فروشگاهی Iris Store
پروژه IrisStore، یک سیستم فروشگاهی متن باز برای راه اندازی فروشگاههای اینترنتی کوچک است که سورس آن را میتوانید از آدرس زیر دریافت کنید: https://github.com/MehdiSaeedifar/IrisStore همچنین نمونهی...
View Articleمبانی TypeScript؛ ماژولها
تاریخچه تا پیش از نگارش 1.5 تایپ اسکریپت، مفاهیم internal modules و external modules وجود داشتند. جهت نامگذاری بهتر و کاهش سردرگمی در استفادهی آنها، از نگارش 1.5 به بعد، ماژولهای داخلی به namespaces...
View Articleآموزش Linq - بخش ششم : عملگرهای پرس و جو قسمت سوم
عملگرهای تبدیل Conversion Operator عملگرهای پرس و جوی تبدیل، توالیهایی را که از جنس <IEnumerable<T هستند، به انواع دیگر مجموعه تبدیل میکنند. از عملگرهای پرس و جوی زیر میتوان برای تبدیل...
View Articleمبانی TypeScript؛ تهیه فایلهای تعاریف نوعها
فایلهای تعاریف نوعها (Type Definitions) امکان استفادهی سادهتر از انواع و اقسام کتابخانههای جاوا اسکریپتی موجود را فراهم میکنند. این فایلها حاوی تعاریف نوعهای استفاده شدهی در کتابخانههای جاوا...
View Articleمبانی TypeScript؛ فضاهای نام
همانطور که عنوان شد به ماژولهای داخلی، فضاهای نام (namespace) گفته میشود. بنابراین از namespaceها نیز جهت مدیریت و ساماندهی پروژههای بزرگ با تعداد فایلهای زیاد استفاده میشود. در واقع یک namespace...
View Article