استفاده از OData تنها به عملیات CRUD معطوف نمیشود و در عمل شما این قابلیت را دارید که متدهای سفارشی و کاملا مجزایی را از همدیگر در سرویسهای خود داشته باشید. هرچند در بعضی از سناریوها نیازی به استفادهی بیشتر از CRUD مربوط به آن entity وجود ندارد، اما در اکثر موارد نیاز به رفتاری دارید که به راحتی با استفاده از CRUD معمولی قابلیت پیاده سازی را ندارد. در اینگونه موارد Actionها و Functionها هستند که به راحتی با استفاده از آنها، قابلیت طر ...
دانای اطلاعات ( Information Expert ) بر طبق این اصل میتوان برای واگذاری
هر مسئولیت، کلاسی را انتخاب کرد که بیشترین اطلاعات را در مورد انجام آن در اختیار
دارد و لذا نیاز کمتری به ایجاد ارتباط با دیگر مولفهها خواهد داشت. در مثال زیر مشاهده میکنید که کلاس User، اطلاعات کاملی را از عملیات اضافه کردن آیتمی را به لیست خرید و تسویه حساب، ندارد و پیاده سازی این عملیات در این کلاس، نیاز به ایجاد وابستگیه ...
مدتی پیش نیاز پیدا کردم تا فراخوانی متدهایی را Serialize کرده و در مواقعی خاص، آن متدها را فراخوانی کنم که نتیجهی آن را در زیر با هم میبینیم. در نظر بگیرید متدی داریم به شکل زیر: public class EmailSender
{
public void Send(string emailAddress)
{
Console.WriteLine($"an email was sent to {emailAddress}");
}
} و میخواهیم نحوه فراخوانی این متد را Serialize کرده ...
قطعا ASP.NET MVC 5.x به عنوان یک فریم ورک بالغ و با امکانات فراوان شناخته میشود که در این مساله هیچ بحثی نیست. اما آیا در همهی پروژهها حتما باید از این فریم ورک استفاده شود؟ امروزه اکثر وب اپلیکیشنها از فریم ورکهای SPA استفاده میکنند و بنده به وفور در پروژههای مختلف شاهد این بودهام که ASP.NET MVCی که در کنار آن استفاده میشود، عملا چیزی بیشتر از یک کنترلر Home و یک متد Index و حداکثر یک Layout، نیستند و معمولا در کنار آن از Web Api اس ...
در مطلب « ارتقاء به ASP.NET Core 1.0 - قسمت 3 - Middleware چیست؟ » با اصول مقدماتی Middlewareها آشنا شدیم. همچنین در مطلب « آشنایی با OWIN و بررسی نقش آن در ASP.NET Core » یک مثال سفارشی از آنها، بررسی شد. در اینجا میخواهیم نکات بیشتری را در مورد تهیهی Middlewareهای سفارشی بررسی کنیم.
تفاوت بین متدهای app.Use و app.Run در چیست؟
Middlewareها به همان ترتیبی که در متد Configure کلاس آغازین برنامه معرف ...
برنامه نویسی شیء گرا در این بخش میخواهیم به بررسی یکسری از ویژگیها و نکات ریز برنامه نویسی شیء گرا در جاوا اسکریپت بپردازیم که یک برنامه نویس حرفهای جاوا اسکریپت حتما باید بر آنها واقف باشد تا بتواند کتابخانهها و Framework های موثرتر و بهینهتری را ایجاد کند. لازم به ذکر است که در این مجموعه مقالات، پیادهسازی اشیاء و شیوهی کد نویسی، بر اساس استاندارد ECMAScript 5 یا ES5 ...
معرفی برخی عملگرها در مقالات قبلی مقدماتی را جهت ورود به برنامه
نویسی شیء گرا در جاوا اسکریپت مطرح کردیم و در اینجا نیز به معرفی برخی عملگرها میپردازیم که در برنامه نویسی شیء گرا نقشی اساسی را ایفا میکنند. عملگر typeof از آنجائیکه جاوا اسکریپت دارای نوع دادهای
ضعیف یا Loosely Typed میباشد، باید در بکارگیری متغیرها و یا آرگومانهای ورودی توابع، دقت لازم را
...
عناصر داخلی تابع در داخل هر تابع دو شیء خاص به نامهای arguments و this
وجود دارند. شیء arguments ، که
قبلا در مورد آن صحبت کردیم، دارای یک ویژگی به نام callee میباشد که به
تابعی اشاره میکند که arguments
متعلق به آن است. به مثال زیر توجه کنید که تابع فاکتوریل را به صورت بازگشتی
پیاده سازی نموده است: fun ...
انواع ارجاعی قبلا در مورد مقادیر ارجاعی صحبت کردیم. در
اینجا نیز به این موضوع اشاره میکنیم که هر مقدار ارجاعی، نمونهای ایجاد
شده از یک نوع ارجاعی میباشد. انواع ارجاعی در واقع ساختارهایی هستند که
جهت گروه بندی دادهها و عملکرد بین آنها استفاده میشوند. در سایر زبانهای برنامه نویسی شیء گرا، به انواع ارجاعی، کلاس و به مقادیر ارجاعی، شیء میگویند. در
جاوا اسکریپت نیز، به مقادیر ارجاعی و یا نمونههای ایجاد شده از ...