-
در مورد Collection از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 14:57
در دات نت فریم ورک System.Collection شامل چندین نوع از Collection ها می باشد. انواع Collection ها به شرح زیر می باشد: § ArrayList : داینامیک است. در مورد Add دو متد Add و AddRange را دارد که AddRange دیتا را به انتهای ArrayList اضافه می کند. البته از Insert کردن دیتا در یک محل خاص نیز ساپورت می کند که در این صورت دو...
-
معرفی Boxing و UnBoxing از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:59
Boxing تبدیل ValueType ها به RefrenceType را انجام می دهد. Boxing به سیستم OverHead اضافه می کند. UnBoxing تبدیل RefrenceType ها به valueType ها را انجام می دهد. مثالی از عمل Boxing که یک Integer را که یک ValueType است به یک Object که RefrenceType است تبدیل می کند: Int i =123; Object o = (object)i; مثالی از unBoxing...
-
در مورد Attricute ها - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:59
Attribute ها برای نوصیف تایپ، متد و یا پراپرتی مورد استفاده قرار می گیرند. به عنوان مثال Attribute با عنوان Serializable برای تعریف قابلیت Serializable مورد استفاده قرار می گیرد.
-
چگونگی پاسخ دادن به Event - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:59
متدی برای پاسخ به Event ایجاد شود که Signature این متد مانند Signature ایست که برای Delegate تعریف شده است که نمونه ای از آن به شرح زیر است: Private void button1_click (object sender , EventArgs e) { } اضافه کردن یک EventHandler برای نمایش دادن اینکه کدام متد باید Event را Raise کند. نمونه ای از آن در زیر آورده شده...
-
معرفی Delegate از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:59
Delegate کلاسی است که می تواند Reference به متد را نگهدارد. برخلاف سایر کلاس ها، Delegate کلاسی است که دارای Signature است و می تواند Reference هایی به متدهایی نگهدارد که Signature آنها مانند Signature خودش است. Delegate ها موارد استفاده دیگری نیز دارند که یکی از آنها EventHandling است. یک نمونه از تعریف Delegate به...
-
درباره ی Event - از Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:58
در فرم های ویندوز منتظر کلیک Button توسط کاربر هستیم تا به آن پاسخ دهیم. در برنامه های سروری هم منتظر درخواستی از طرف شبکه هستیم. به Object ای که باعث Event می شود Event Sender و به Objetc ای که Enent را دریافت می کند و پاسخ می دهد Event Receiver می گویند. EventSender نمی داند که کدام آبجکت یا متد این Event ای که آن...
-
در مورد Generic ها - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:46
Generic ها از تایپ های دات نت فریم ورک هستند که با استفاده از آنها می توان تایپی را تعریف کرد در حالیکه برخی از جزئیاتش تعریف نشده باشد. با استفاده از generic ها به جای تعیین تایپ پارامترها و اعضای کلاس می توان تعیین آن را به استفاده کننده از کد سپرد. Generic ها در دات نت 1 و 1.1 وجود نداشته است. Nullable یک تایپ...
-
معرفی برخی از اینترفیس های خاص - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:46
اینترفیس IComparable متد CompareTo را معرفی کرده است که این امکان را ایجاد می کند که دو Instance از کلاس بتوانند با یکدیگر مقایسه شوند. اینترفیس IDispose برای Dispose کردن دستی آبجکت ها استفاده می شود. اینترفیس Iconvertible می توان کلاس Base را به تایپ های پایه مانند boolean ، Byte ؛ double و String تبدیل کرد....
-
معرفی Stream ها - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:46
استریم ها از تایپ های متداول برای استفاده هستند زیرا برای خواندن و نوشتن روی دیسک و نیز برای ارتباطات در شبکه مورد استفاده قرار می گیرند. استریم های شبکه در مسیر stem.Network.Socket قرار دارند. · StreamReader : برای خواندن اطلاعات از استریم StreamReader sr=new StreamReader(txt.txt) Console.Writeline(sr.ReadtoEnd())...
-
ارسال پارامتر به متد - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:46
ارسال پارامتر با روش های ByValue , ByReference ، Out و Param می باشد.
-
درباره ی Properties ها - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:46
اگر برای Getter و یا Setter تعریف AccessModifier انجام شده باشد، این AccessModifier باید از AccessModifier ای که برای Property تعریف شده است، محدودتر باشد. به عنوان مثال اگر Property به صورت Private تعریف شده باشد، Setter آن نمی تواند Public باشد.
-
معرفی Static در کلاس - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:28
فیلد Static : در یک کلاس متغیرهای Static به هر Instance متعلق نمی باشند بلکه به کلاس تعلق دارند. متد Static : برای دسترسی به متدهای Static نیازی به داشتن Instance از کلاس نمی باشد بلکه از طریق خود کلاس می توان به آن متد دسترسی داشت. Static Constructor : کلاس Static :
-
تعریف آرایه - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:28
در تعریف آرایه ها از [] استفاده می شود و اولین عضو آرایه عضو صفرم آن است. Int[] ar={3,1,2}; Array.Sort(ar); نیازی نیست که عناصر آرایه در زمان تعریف مقداردهی شوند زیرا اگر عناصر آرایه مقداردهی اولیه نشده باشد، در زمان اجرا به صورت زیر مقداردهی می شود: · ReferenceType ها مثلا مانند String به null مقداردهی می شود. ·...
-
ساختن رشته ای که ترکیبی از چند رشته ی دیگر است - از کتاب Microso
سهشنبه 9 شهریورماه سال 1389 13:28
اگر برای ساخت رشته به صورت زیر عمل کنیم : S=”fa”; //s=fa S+=” ri”;//s=fa ri S+= ” ba”//s=fa ri ba در نهایت فقط یک اشاره گر به رشته < Fariba > را داریم و بقیه رشته ها در طی عملیات GarbageCollection حذف شده اند. این اضافه کردن عملیات باعث GarbageCollection کاهش Performance می شود. روش های بهتری برای ساخت اینگونه...
-
Exception Handling - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:28
وقتی چندین Catch داریم، ترتیب نوشتن آنها از جزئی ترین به کلی ترین است. وقتی یک کلاس از کلاس دیگری مشتق می شود در حقیقت Exception ها را نیز از همان کلاس Base استفاده می کند. ما فقط لازم است Exception های جدید این کلاس جدید را در آن Handle کنیم.
-
معرفی Generic ها - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:28
یکی از فواید مهم Generic ها Performance است. علاوه بر کلاس های generic می تواند متد Generic نیز تعریف کرد.
-
معرفی Collection ها - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:10
امکان ذخیره سازی، جستجو و گردش ( Iterate ) در مجموعه ای از آبجکت ها را فراهم می کنند. ArrayList یک کلاس ساده است که یک UnOrderedCountainer برای آبجکت هایی از تایپ های مختلف است. طول ArrayList داینامیک است و هر زمان که آبجکتی به آن اضافه می شود طول آن نیز افزایش می یابد. ArrayList برای اضافه کردن از دو متد Add و...
-
معرفی Explicit و Implicit - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:10
Explicit : در این نوع Cast مقدار دیتای مورد نظر و دقت آن ممکن است از بین برود مانند تبدیل Long به Int Implicit : در این تبدیل از بین رفتن دیتا و یا کاهش دقت وجود ندارد. Implicit مانند تبدیل int به Long است.
-
معرفی RefrenceType ها - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 13:10
بیشتر تایپ ها در دات نت فریم ورک از نوع RefrenceType است. RefrenceType ها Performance خوبی در زمان ارسال به متدها دارند. String ها و Exception ها جزء RefrenceType ها هستند. RefrenceType ها آدرس داده خود را نگهداری می کنند و معمولا به عنوان اشاره گرهای موجود در یک Stack شناخته می شوند. داده های واقعی که این اشاره گرهای...
-
معرفی ValueType ها - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 12:57
تایپ هایی مانند int ، Boolean از این نوع هستند. ValueType ها متغیرهایی هستند که به جای اینکه آدرس حافظه ای که دیتای آنها در آن ذخیره شده است را داشته باشند، مستقیماً خود داده را دارند. Instance هایی که از ValueType ها ایجاد می شود، در جایی از حافظه که Stack نامیده می شود نگهداری می شوند. به صورت RunTime و با کمترین...
-
چه چیزی را چه وقت استفاده کنیم - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 12:56
وقتی کاملاً از رفتار و خواص شی مورد نظر مطمئن هستید از کلاس استفاده کنید. وقتی از رفتار شی مورد نظر آگاهید اما شیوه ی آن رفتار برای شما مشخص نیست از ابنترفیس ها استفاده نمایید. وقتی بعضی از رفتارها برای شما مشخص و بعضی نامشخص هستند از کلاس های Abstract استفاده نمایید.
-
معرفی متدها و پارامترها - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 12:56
متد: وسیله ای است برای گردآوری مجموعه ای از دستورات برای انجام عملی مشخص Refactoring : انتقال تعدادی از دستورات از یک متد بزرگ به متدی مجزا Refactoring نامیده می شود. این عمل تعداد کد های تکراری را کم و خوانایی کد را زیاد می کند. در ویژوال بیسیک Global Function داریم که به کلاس خاصی وابسته نیستند اما در C# هر Function...
-
تفاوت اینترفیس و Abstract Class - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 12:41
در پیاده سازی اینترفیس، سلیقه دست خود پیاده ساز است اما در پیاده سازی کلاس های Abstract خصوصیات و رفتارهای پیاده سازی شده برای آن کلاس هم در اختیار برنامه نویس قرار می گیرد.
-
معرفی ویژگی هایی از اینترفیس - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 12:41
از طریق اینترفیس می توان کلاس را مجبور کرد که از قانون خاصی پیروی کند زیرا کلاس مجبور است که Member های اینترفیس را پیاده سازی کند. همه زبان های ObjetcOriented از اینترفیس پشتیبانی نمی کنند. اینترفیس های نمی توانند Instantiate شوند. آنها فقط Signature اعضای خود را دارند. اینترفیس ها نمی توانند constructor داشته باشند....
-
معرفی کلمه ی کلیدی Partial - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 12:41
کلمه کلیدی Partial به Class ، Struct و Interface اجازه می دهد که در چندین فایل گسترده شوند.
-
تفاوت های کلاس و Struct - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 12:34
کلاس ReferenceType ای است که در Heap ذخیره می شود در حالیکه Struct از نوع ValueType است و در Stack ذخیره می شود. کلاس از inheritace پشتیبانی می کند اما Struct نمی کند. به خاطر بالا رفتن Performance برای حجم داده ای کم یعنی کمتر از 16 بایت استفاده از Struct توصیه می شود. Struct مانند کلاس Constructor ها را پشتیبانی می...
-
معرفی ویژگی هایی از Struct - از کتاب Microsoft 70-536
سهشنبه 9 شهریورماه سال 1389 12:30
Struct ها هم می توانند اینترفیس ها را پیاده ساز ی کنند. یعنی علیرغم اینکه Inheritance را پشتیبانی نمی کنند از Inheritance از اینترفیس ها پشتیبانی می کنند. Struct ها همیشه می توانند از System.ValueType مشتق شوند و همچنین می توانند از یک یا چند اینترفیس که توسط برنامه نویس تعیین شده است، مشتق شود.
-
معرفی ویژگی های کلاس - از کتاب Microsoft 70-536
دوشنبه 8 شهریورماه سال 1389 19:47
به صورت پیش فرض همه متدها و فیلدهای کلاس به صورت Private تعریف می شود. استفاده از دو کلاس با نام های یکسان که در حد حروف کوچک و بزرگ متفاوت هستند، صحیح نمی باشد. این کلاس ها در زبان هایی مثال ویژوال بیسیک که به حروف حساس نیست کار نمی کند. بسته به نوع داده، فیلدهای داخل کلاس با مقادیر 0، false و null مقداردهی می شود...
-
معرفی ویژگی هایی از سرویس - از کتاب Microsoft 70-536
دوشنبه 8 شهریورماه سال 1389 19:20
سرویس callable entities or application functionalities است که از طریق مبادله پیام قابل دسترسی می باشد. برای تسهیل این مبادلات برای WebService ها یک قرارداد واضح – اینترفیس- تعریف شده است. استفاده کننده ی سرویس برای استفاده از سرویس ابتدا به سرویس دایرکتوری مراجعه می کند تا سرویس را بیابد و استفاده کند و در صورت نبودن...
-
معرفی ویژگی هایی از #C - از کتاب Microsoft 70-336
دوشنبه 8 شهریورماه سال 1389 19:06
همه چیز در داخل کلاس تعریف می شود. متد Main در C# به صورت Static است که معادل GlobalMethod در ویژوال بیسیک است. متد Main در C# به صورت Static تعریف می شود تا کامپایلر برای اجرای آن که اولین متدی است که اجرا می گردد، مجبور نباشد که Instance ایجاد نماید. در C# امکان تخصیص مقدار پیش فرض به پارامتر متد وجود ندارد. مثلا...