کاربرد Enumerable.Range - تاریخ: 1396/10/1 ساعت: 21:04
متد Range در کلاس استاتیک enumerable میتواند برای ایجاد مجموعه ای از اعداد در یک بازه مشخص تولید گردد. مثلا برای تولید اعداد بین 10 و 100 مینویسیم. Enumerable.Range(10,100) از طرفی این متد برای کاربرهای دیگری نیز میتواند مورد استفاده قرار گیرد. مثلا برای تولید داده های تستی هنگام نوشتن Unit Testها L...
#Different Type of Operators in C - تاریخ: 1396/10/1 ساعت: 21:04
در سی شارپ 5 نوع عملگر وجود دارد: 1- عملگرهای محاسباتی(Arithmetic Operators): + - * / % 2-عملگرهای منطقی (Logical Operators): && || ! 3- عملگرهای مقایسه ای (Comparison Operators): == = != 4- عملگرهای تعیین (Assignment Operators): = =+ -= *= /= ++ -- 5- عملگرهای بیتی(Bitwise Operators): > & | ^ به تو...
نوع داده ای Tuple - تاریخ: 1396/7/30 ساعت: 18:06
در مواقعی نیاز دارید تا مثلا بجای یک مقدار، چند مقدار از یم متد بازگشت دهید. راههای متفاوتی وجود دارد. استفاده از اشیا، یا ref, out. ولی راه دیگری که خیلی جاها خیلی بهتر است نیز وجود دارد. استفاده از Tuple ها: private Tuplestring, bool, int> GetItem(
Common Design Pattern Principles - اصول الگوهای طراحی - تاریخ: 1396/7/30 ساعت: 18:06
تعدادی اصول برای الگوهای طراحی و بطورکلی مبحث طراحی وجود دارد که به مرور زمان به عنوان مبنایی که نرم افزارهای سازمانی و با قابلیت Maintainability خوب میتوانند بر اساس آنها طراحی و ایجاد شوند. 1- اصل Keep It Simple Stupid یا KISS:این اصل میگه که کدتون
Design Pattern Groups - دسته بندی الگوهای طراحی - تاریخ: 1396/7/30 ساعت: 18:06
23 الگوی ذکر شده در کتاب GOF که به عنوان Bible استفاده از الگوهای طراحی است، به 3 دسته کلی تقسیم میشوند: 1- Creational:الگوهای ایجادی بر نحوه instantiate کردن اشیا و ارجاع آنها اشاره دارد. این الگوها در حقیقت مسیولیت ایجادنمونه های جدید اشیا را از ک
Hash Code Usability - موارد کاربرد Hashing در برنامه نویسی و دنیای وب - تاریخ: 1396/7/30 ساعت: 18:06
hashcode به طور خلاصه مقادیر عدی هستند که ازاجرای برخی الگوریتمها بر روی فایلها بدست آمده اند. میتوان این کدها را مانند اثر انگشت انسان در دنیای نرم افزار دانست. کاربردها:1- مهمترین کاربرد هش کدها، مقایسه دو فایل است. فرض کنید هش کد یک فایل را تولید
کاربرد Enumerable.Range - تاریخ: 1396/7/30 ساعت: 18:06
متد Range در کلاس استاتیک enumerable میتواند برای ایجاد مجموعه ای از اعداد در یک بازه مشخص تولید گردد. مثلا برای تولید اعداد بین 10 و 100 مینویسیم. Enumerable.Range(10,100)از طرفی این متد برای کاربرهای دیگری نیز میتواند مورد استفاده قرار گیرد. مثلا
5خطای معروف HTTP - 400 401 403 404 500 - تاریخ: 1396/3/21 ساعت: 22:02
ممکن هنگام مرور وب سایتها با خطاهای HTTP زیر مواجه شوید که هر کدام معنی خاصی دارند. - (HTTP ERROR 400 (BAD REQUEST: وب سرور از طریق اعلام خطای 400 به شما میگه که درخواست شما به وب سرور درخواست درستی نبوده است. یعنی وب سرور نتونسته معنی درخواست ارسالیرو بفمه و پاسخ بده. ممکنه وب سرور تشخیص داده باشه
تفاوت سطوح دسترسی مختلف برای کلاسها، فیلها، پروپرتیها و متدها - تاریخ: 1396/3/21 ساعت: 22:02
Private: این سطح دسترسی باعث میشود که اعضای این کلاس فقط توسط خود کلاس دیده شوند و در سایر کلاسها (و قاعدتا اسمبلیها) - و حتی کلاسهای فرزند- دیگر قابل دیدن و دسترسی نباشند. Protected: این سطح دسترسی شبیه Private است با این تفاوت که اعضای این کلاس فقط در این کلاس و کلاس هایی که از این کلاس ارث بری م
Polymorphism به زبان ساده - تاریخ: 1396/3/21 ساعت: 22:02
پلی مورفیسم یا چند ریختی یا چند شکلی، یکی از مفاهیم بسیار قدرتمند در مباحث شی گرایی میباشد. Polymorphism به همراه Encaplulation و Inheritance سه عنصر اصلی شی گرایی را تشکیل میدهند. بطور کلی پلی مورفیسم به معنای چندین شکل از یک متد است. مفهوم چندریختی اغلب به وسیلهٔ عبارت « یک رابط، چند متد» بیان م
نحوه ارایه دسترسی به دیتابیس در SQl Server به ApplicationPoolIdentity در IIS - تاریخ: 1396/3/21 ساعت: 22:02
- وارد کنسول مدیریت SQL Server شوید. - از پوشه Security و روی Logins، راست کلیک و New Login را انتخاب کنید. - در کادر login name بصورت زیر تایپ کنید : (دقت: دکمه Search را اصلا نزنید) 1- اگر IIS و SQL Server در یک سرور باشند(Local): IIS AppPoolMyAppPool 2- اگر IIS و Sql Server در دوسرور مجزا باشند(R...
ProtoType design Pattern - تاریخ: 1396/3/21 ساعت: 22:02
الگوی ProtoType یکی از الگوهای ساده است که تنها باید بدانید چه زمانی باید از آن استفاده کنید. دقیقا چه مشکلاتی با استفاده از این الگو قابل حل است؟؟ 1- زمانی است که ساختن یک شی جدید بسیار هزینه بر است. 2- زمانی است که میخواهیم state یک شی موجود را با ساخت شی جدید در آن شی جدید نیز عینا داشته با
FlyWeight Design Pattern - تاریخ: 1396/3/21 ساعت: 22:02
گرچه برنامه نویسی شی گرا انعطاف پذیری زیادی به همراه دارد ولی چالشهایی نیز به دنبال دارد. چرا که همه چیز را میخواهیم به صورت یک شی یا Object مدل کنیم و بنابر این مقادیر زیادی اسناد و کاراکترهایشان را در قالب شی مجبوریم ذخیره کنیم. این گونه برنامه ها باعث کلی overhead در زمان runtime میشوند.هدف: ای
الگوی State - تاریخ: 1396/3/21 ساعت: 22:02
الگوی State این الگو به شما در موارد زیر کمک میکند - Simplify کردن کد - امکان جدا کردن و مشخص نمودن مسولیتها - افزایش Maintainability این الگو به شی اجازه میدهد تا رفتار متدها را بر اساس وضعیت شی تغییر دهد. مثال: سیستم کنترل نسخه نرم افزار و زیر سیستم Tracking Work Item در
الگوی Momento - تاریخ: 1396/3/21 ساعت: 22:02
الگوی Momento هدف: ایجاد امکان قابلیتهای undo و redo در نرم افزار - زمانی که بخوای وضعیت یک شی را به حالتی در گذشته برگردانی. یعنی Undo - افزودن مستقیم قابلیت undo به کلاسهای شما قانون Single Responsibility رو نقض میکنه - شما نمی خواهید به وضعیت داخلی اشیا دسترسی بدید. چرا ک
الگوی طراحی Template - تاریخ: 1396/3/21 ساعت: 22:02
الگوی Template - فرض کنید شما میخواهید مراحل یک الگوریتم را برای client اجبار کنید ولی از طرفی میخواهید اجازه پیاده سازیهای متفاوتی در این الگوریتم داشته باشید به عبارت دیگر: - شما میخواهید امکان پیاده سازیهای متفاوت برای هر مرحله در حالیکه ساختار و ترتیب مراحل را فورس میکند را فر
تفاوت redirect permanent و redirect Temporary - تاریخ: 1396/3/21 ساعت: 22:02
منظور همون تفاوت 301 و 302 Redirect است. از دیدگاه من کاربر که سایت شما رو باز کردم تفاوتی بین اینا وجود نداره چرا که نتیجه یکیه. یعنی با کلیک یک لینک من بجای اینکه همون آدرس موجود در لینک رو در نوارد آدرس ببینم، آدرس دیگه ای رو میبینم. - ولی برای موتورای جستجو اینا تفاوت دارن. 301: بادیدن Permane