نمایش نتایج 1 تا 10 از 10

نام تاپیک: مقدمات فراگیری پلتفرم توسعه نرم افزار دات نت

  1. #1
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    Iran - Tehran
    پست
    799

    مقدمات فراگیری پلتفرم توسعه نرم افزار دات نت

    با سلام ،
    از اونجایی که خیلی از دوستان وی بی کار میخوان دانش خودشون رو آپگرید کرده و به دات نت رو بیارند ،
    بر آن شدم تا در این راهنمای کوتاه ، مراحل این ارتقا را به صورت خلاصه بیان کنم.

    به طور کلی برای فراگیری استفاده از پلتفرم دات نت ، برای تولید برنامه نیاز هست که به دو چیز مسلط شد.
    یکی Class Library دات نت فریم ورک هست و دیگری زبانی هست که قراره با استفاده از اون برنامه تحت دات نت تولید بشه. (به عنوان مثال VB.Net).

    در هیچ یک از زبان های برنامه نویسی تا به این حد قواعد زبان از Class Library جدا نشده است. به عنوان مثال به تکه کد لازم جهت جدا کردن قسمتی از یک رشته در زبان های مختلف توجه کنید :

    VB :
    Dim str As String
    str = "This is a test"
    str = Mid(str,6,2)


    Object Pascal :
    var str : string;
    begin
    str := 'This is a test';
    str := MidStr(str,6,2);


    Net Platform with VB.Net. :
    Dim str As String
    str = "This is a test"
    str = str.SubString(6,2)



    # Net Platform with C. :
    string str;
    str = "This is a test";
    str = str.SubString(6,2);


    به کد مورد نظر در زبان های VB و Object Pascal توجه کنید ، برای جدا کردن قسمتی از یک رشته در هر زبان دستوری خاص وجود دارد (Mid و MidStr) ، اما در پلتفرم دات نت این رابطه بین زبان و کتابخانه کلاس کاملا قطع شده است.
    همانطور که میبینید چه در #C و چه در VB.Net فقط یک متغیر از جنس string تعریف میشه و بعد با استفاده از توابع کلاس string کار جدا سازی انجام میشود.
    به عبارت ساده تر شما لازم نیست برای نوشتن برنامه تحت دات نت با زبان های مختلف ، دستورات خاص هر زبان را فرا بگیرید ، بلکه در صورت آشنایی با Class Library ، برای نوشتن برنامه با زبانی دیگر فقط لازم است به تفاوت های قواعد این دو زبان بپردازید. (به عنوان مثال سمی کولونی که در آخر دستورات C#‎ قرار میگیرد ولی در وی بی دات نت خیر ! )

    دقیقا همین مسئله باعث میشه که انتخاب زبان نوشتن برنامه هیچ محدودیتی در کارایی رو برای شما به وجود نیاره . به عبارت دیگه قدرت تمامی زبان ها "تقریبا++" در یک سطح قرار میگیره.
    در نتیجه مسئله شناختن کتابخانه کلاس و اینکه برای هر کاری از چه کلاسی استفاده میشه از درک قواعد خود زبان مهمتر هستش.

    کتاب VB.Net Developers Guide برای فراگیری خود زبان توصیه میشه (در صورتی که قبلا وی بی کار میکردید در هنگام مطالعه خواهد دید که بسیاری از قواعد همون ها هستند.)
    کتاب Oreily .Net Framework Essential برای فراگیری Class Library و مفاهیم این پلتفرم توصیه میشه و بعد از اون کار زیاد با کلاس های مختلف دات نت فریم ورک (ته و توی همشون رو در آوردن :mrgreen: ! ) و انجام کار ها با استفاده از خود کلاس ها به جای استفاده از Windows APIs و کد های مدیریت نشده.

    نکته ای که باید به اون توجه داشت اینه که چیزی که باعث میشه VB از VB.Net بسیار متفاوت باشه ، Class Library مورد استفاده هستش . قواعد زبانی وی بی تحول چندانی نکرده به جز اضافه شدن چندین قاعده دستوری جدید.
    بنابراین دوستانی که سابق وی بی کار میکردند و حالا میخوان رو به این پلتفرم بیارند ، سعی کنند بیشتر توجه خودشون رو به Class Library معطوف کنند.



    موفق باشید.

  2. #2
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379
    به کد مورد نظر در زبان های VB و Object Pascal توجه کنید ، برای جدا کردن قسمتی از یک رشته در هر زبان دستوری خاص وجود دارد (Mid و MidStr) ، اما در پلتفرم دات نت این رابطه بین زبان و کتابخانه کلاس کاملا قطع شده است.
    میشه این مورد رو بیشتر توضیح بدید؟

    این به چه مفهومی است؟

  3. #3
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    Iran - Tehran
    پست
    799
    به این معنی که تمامی امکانات فقط و فقط از طریق اجزاء کتابخانه کلاس به دست میاد.
    هیچ امکانی برای انجام کاری ، به زبانی خاص داده نمیشه . به عبارت دیگه یک کتابخانه کلاس کاملا شئ معابانه که زبان ها دور اون جمع شده و از این کتابخانه کلاس، نیاز های خودشون رو درخواست میکنند. (تمامی این زبان ها در استفاده از این مرکز به یک اندازه سهم دارند - همگی در پیشگاه این مرکز یکسان هستند !)
    هر چند که VCL یا MFC هم هدفشون این بوده که چنین چیزی بوجود بیارند ولی در هیچیک تا به این حد اصول شی گرایی رعایت نشده.
    همون مثال بالا رو در نظر بگیرید ، تابع MidStr هر چند که جزئی از VCL به شمار میاد ، ولی به جای عضوی از یک کلاس بودن فقط یک پراسیجر است.
    نمونه دیگری از این کتابخانه کلاس منظم و شی گرا رو میتونید در کتابخانه کلاس های پلتفرم جاوا ببینید .

  4. #4
    کاربر دائمی
    تاریخ عضویت
    تیر 1382
    محل زندگی
    ایران - تهران
    پست
    447
    اگه میشه در مورد همین Class Library توضیح بدید و مثالهای هم بزنید
    از لطفتون ممنون

  5. #5
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    Iran - Tehran
    پست
    799
    کتابخانه کلاس چیزی نیست به جز کلاس های مختلف مثل IO.FileStream ، Data.Dataset ، System.Drawing.Graphics که برای مقاصد مختلف (ترسیم اشیا و نقاشی ، دریافت اطلاعات از منابع مختلف و ذخیره آنها در خود ، کار با فایل ها) ساخته شده اند و کنار هم قرار گرفته اند.
    همونطور که گفته شده برای شناختن این کلاس ها باید دید چطور میشه با استفاده از هر کدوم به تامیین نیاز های مختلف پرداخت.

  6. #6
    کاربر دائمی
    تاریخ عضویت
    مرداد 1382
    محل زندگی
    تهران
    پست
    182
    ممنون مفید بود

  7. #7
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379
    من باز هم متوجه نشدم اینکه فلان پروسیجر یا تابع بجای اینکه مستقل باشه، عضو یک کلاس باشه چه مزیتی داره و به چه درد میخوره. در کل از نقطه نظر من بعنوان برنامه نویس این چیزی رو عوض نمیکنه و تفاوت خاصی ایجاد نمی‌کنه.

  8. #8
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    تهران
    پست
    240
    دیدگاه Object Oriented دنبال classified کردن همه چیزه. یه جور طبقه بندی کردن مثل همون کاری که شما در این سایت کردید و اون رو به بخشهای مختلف تقسیم کردین.و خوب این دسته بندی کردن هم باعث میشه که اشیا در یه نظام سلسله مراتبیبه طور منظم قرار بگیرند و خواص مراتب بالا تر رو به ارث ببرند و....
    مطالعه مستندات دیدگاه شی گرا (مثلا کتاب Thinking Java که با یه search ساده تو اینترنت پیدا میشه ) در این خصوص می تونه مفید باشه .

  9. #9
    کاربر دائمی
    تاریخ عضویت
    مرداد 1382
    محل زندگی
    استان فارس
    پست
    1,054
    این کلاس لایبرری رو چه جوری میشه یاد گرفت؟ کتابی؟ منبعی؟ یا لینک یه ای بوک ...

  10. #10
    توی خود MSDN کاملا توضیح داده شده

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •