اثر پروانه ای

برنامه نویسی حرفه ای کامپیوتر به زبان سی شارپ - لیست کامل کلمات کلیدی در ʚĭɞ - ßữʈʨɾflỵ ⓔⓕⓕⓔⓒⓣ

اثر پروانه ای

برنامه نویسی حرفه ای کامپیوتر به زبان سی شارپ - لیست کامل کلمات کلیدی در ʚĭɞ - ßữʈʨɾflỵ ⓔⓕⓕⓔⓒⓣ

اثر پروانه ای

اثر پروانه‌ای نام پدیده‌ای است که به دلیل حساسیت سیستم‌های آشوب‌ناک به شرایط اولیه ایجاد می‌شود. این پدیده به این اشاره می‌کند که تغییری کوچک در یک سیستم آشوب‌ناک چون جو سیارهٔ زمین (مثلاً بال‌زدن پروانه) می‌تواند باعث تغییرات شدید (وقوع توفان در کشوری دیگر) در آینده شود.

ایده‌ٔ این‌که پروانه‌ای می‌تواند باعث تغییری آشوبی شود نخستین بار در ۱۹۵۲ در داستان کوتاهی به نام آوای تندر اثر ری بردبری مطرح شد. عبارت «اثر پروانه ای» هم در ۱۹۶۱ در پی مقاله‌ای از ادوارد لورنتس به وجود آمد. وی در صد و سی و نهمین اجلاس ای‌ای‌ای‌اس در سال ۱۹۷۲ مقاله‌ای با این عنوان ارائه داد که «آیا بال‌زدن پروانه‌ای در برزیل می‌تواند باعث ایجاد تندباد در تکزاس شود؟»

آخرین نظرات
  • ۱۳ بهمن ۰۱، ۱۵:۳۱ - حسنا سادات و سما سادات
    عالی

۱۰۷ مطلب با کلمه‌ی کلیدی «programming» ثبت شده است

  • ۱
  • ۰

کلیدواژه const

کلمه کلیدی const ، در واقع اصلاحگری برای اعلان فیلد، یا متغیر محلی است و تعیین می کند که مقدار فیلد یا متغیر محلی ثابت است، به این معنی که مقادیر آنها قابل دستکاری نیست.

const int x = 0;
public const double gravitationalConstant = 6.673e-11;
private const string productName = "Visual C#";

ملاحظات

نوع یک اعلان ثابت، نوع اعضای معرفی شده توسط اعلان را تعیین می کند. یک عبارت ثابت باید مقداری از نوع هدف یا از نوعی که توانایی تبدیل ضمنی به نوع هدف داشته باشد را حاصل کند.

یک عبارت ثابت، عبارتی است که می تواند در زمان کامپایل بطور کامل ارزیابی شود (نیاز به پردازش های زمان اجرا نداشته باشد). بنابراین ، تنها مقادیر مجاز برای ثابت های نوع مرجع، string و null می باشد.

اعلان ثابت می تواند چندین ثابت را به شکل زیر اعلان کند:

public const double x = 1.0, y = 2.0, z = 3.0;

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

کلمه کلیدی checked

کلیدواژه checked برای فعال سازی صریح بررسی سرریز در تبدیلات و عملیات محاسباتی نوع-صحیح مورد استفاده قرار می گیرد.

بصورت پیش فرض، یک عبارت که تنها شامل مقادیر ثابت است، اگر مقداری که خارج از محدوده نوع مقصد باشد، تولید یک خطای کامپایلری می کند. اگر آن عبارت حاوی یک یا بیش از یک مقدار غیر-ثابت باشد، کامپایلر سرریز را تشخیص نمی دهد. در مثال زیر ارزیابی عبارتی که به i2 انتساب داده شده، سبب تولید خطای کامپایلری نمی شود.

// The following example causes compiler error CS0220 because 2147483647
// is the maximum value for integers. 
//int i1 = 2147483647 + 10;

// The following example, which includes variable ten, does not cause
// a compiler error.
int ten = 10;
int i2 = 2147483647 + ten;

// By default, the overflow in the previous statement also does
// not cause a run-time exception. The following line displays 
// -2,147,483,639 as the sum of 2,147,483,647 and 10.
Console.WriteLine(i2);

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

کلمه کلیدی char

کلمه کلیدی char برای اعلان کاراکتر یونیکد (Unicode) که محدوده آن در زیر آمده استفاده می شود. کاراکترهای یونیکد، کاراکترهایی 16-بیتی هستند که برای نمایش اکثر زبان های نوشتاری شناخته شده در دنیا مورد استفاده قرار می گیرند.

  • نوع: char
  • محدوده: از U+0000 تا U+ffff
  • اندازه: کاراکتر 16-بیتی یونیکد
  • نوع دات نتی: System.Char


لیترال ها:

ثابت های از نوع char می توانند بصورت لیترال های کاراکتری، توالی گریز شانزده شانزدهی (Hexadecimal escape swquence)، یا نماینده یونیکد، نوشته شوند. شما همچنین می توانید کد های کاراکتری صحیح را قالب ریزی (cast) کنید. در مثال زیر چهار متغیر char با کاراکتر X ، مقداردهی اولیه شده اند:

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

کلیدواژه class

کلاس ها با استفاده از کلمه کلیدی class ، بصورتی که در مثال زیر نشان داده شده، اعلان می شوند.

class TestClass
{
    // Methods, properties, fields, events, delegates 
    // and nested classes go here.
}

ملاحظات

بر خلاف ++C ، در #C فقط یک ارث بری مجاز است. به بیانی دیگر، پیاده سازی یک کلاس فقط می تواند از یک کلاس پایه ای ، ارث بری شود. هرچند، یک کلاس می تواند بیش از یک رابط (interface) را پیاده سازی (implement) کند. جدول زیر مثال هایی از ارث بری کلاس و پیاده سازی رابط را نشان می دهد.

ارث بری مثال
بدون ارث بری
class ClassA { }
ارث بری یگانه
class DerivedClass: BaseClass { }
بدون ارث بری، پیاده سازی دو رابط
class ImplClass: IFace1, IFace2 { }
ارث بری یگانه، پیاده سازی یک رابط
class ImplDerivedClass: BaseClass, IFace1 { }

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

بیان try-catch-finally

یک کاربرد عمومی از catch و finally به همراه هم، برای بدست آوردن و استفاده از منابع در بلوک try، دست و پنجه نرم کردن با شرایط استثنایی در بلوک catch و آزاد کردن منابع در بلوک finally می باشد.

برای اطلاعات و مثال های بیشتر در زمینه دوباره پرتاب سازی خطا ها به تاپیک های try-catch و "پرتاب استثناها" مراجعه کنید.

مثال

public class EHClass
{
    void ReadFile(int index)
    {
        // To run this code, substitute a valid path from your local machine
        string path = @"c:\users\public\test.txt";
        System.IO.StreamReader file = new System.IO.StreamReader(path);
        char[] buffer = new char[10];
        try
        {
            file.ReadBlock(buffer, index, buffer.Length);
        }
        catch (System.IO.IOException e)
        {
            Console.WriteLine("Error reading from {0}. Message = {1}", path, e.Message);
        }

        finally
        {
            if (file != null)
            {
                file.Close();
            }
        }
        // Do something with buffer...
    }
}

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

کلمه کلیدی void

کلمه کلیدی void وقتی به عنوان نوع خروجی یک متد استفاده می شود، نشان می دهد که آن متد هیچ مقداری را برگشت نمی دهد.

کلیدواژه void در لیست پارامتر های متد، مجاز نیست. متدی که هیچ پارامتری ندارد و هیچ مقداری را برگشت نمی دهد بصورت زیر اعلان می شود:

void SampleMethod();

void همچنین در یک زمینه نا امن (unsafe context - محیطی که سیستم مدیریت حافظه در آن دخالت نمی کند) برای اعلان یک اشاره گر به یک نوع نامشخص، استفاده می شود.

کلمه کلیدی void نام مستعاری برای نوع دات نتی System.Void می باشد.

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

این مطلب رو با یک مثال شروع می کنم:

enum E:byte{sat,sun=2,mon,tue=8};

نوع پیش فرض در enum نوع int است ولی می توان شبیه مثال بالا نوع های دیگر را به غیر از char به آن اختصاص داد.

با صفت FlagsAttribute می توان کارکرد enum را به طرز جالبی تغییر داد:

[FlagsAttribute]
enum E{sat=0,sun=1,mon=2,tue=4};
for(int i=0;i<4;i++){
Console.WriteLine(((E)i).ToString());
}

جالب اینجاست که هرجا که مقدار معادل متغیرشمارنده حلقه (i) در enum وجود نداشته باشد، ثابت های دیگر را طوری با هم ترکیب می کند تا آن مقدار بدست بیاید. البته باید دقت شود که حتما شماره گذاری عناصر enum توانی از 2 باشد. و از صفت FlagsAttribute قبل از تعریف نوع شمارشی (enum) استفاده شود.

  • غلامعلی حسینی بهجانی