برگزیده های پرشین تولز

آهای دات نتی ها ، سی شارپی ها

MehdiC#

کاربر تازه وارد
تاریخ عضویت
2 نوامبر 2004
نوشته‌ها
55
لایک‌ها
0
محل سکونت
ابهر
سلام علیکم
آهای دات نتی ها ، سی شارپی ها ، کجایید
بابا آخه به شما هم میگن برنامه نویس ، این فروم پر شده از C و VB6 و دلفی
یه تکونی بدین به این جا ، بحثای دات نت و سی شارپ و از این حرفا راه بندازین بذارین حال کنیم ،
بحثای فراتر از معمول (مثل CLR , Metadata , Attribute ,Assembly و .... )
در ضمن این جانب (با اطلاعات بسیار ناچیزم) در زمینۀ سی شارپ و دات نت ،
همه جوره هستم
مخلص همگی بر و بچ سی شارپ کار
 

MehdiC#

کاربر تازه وارد
تاریخ عضویت
2 نوامبر 2004
نوشته‌ها
55
لایک‌ها
0
محل سکونت
ابهر
آقا سلام
والا چه بگم نمیدونم از کجا شروع کنم ، ولی به هرحال یه سری چیز دربارۀ دات نت و اصول اولیۀ اون می نویسم
اگه ایراد داشت اصلاح کنید ، اگه هم کم و کاست داشت تکمیلش کنید.
از دفعات بعد میریم سراغ مطالب جون دار و پیشرفته
بسم الله
برای اونایی که با دات نت آشنا نیستن باید عرض کنم که دات نت فریم ورک ، یک چارچوب برنامه نویسیه که مایکروسافت حدودای سال 2000 اون رو عرضه کرد و کارش اینه که یک محیطی رو برای طراحی و ساخت برنامه های شی گرا ایجاد می کنه که دارای امنیت بالا ، سرعت اجرای بالا و همچنین امکان نوشتن برنامه های چند زبانه است (یعنی بتونیم مثلا کلاسی رو در VB بنویسیم و از اون یک کلاس در سی شارپ مشتق کنیم و این کلاس رو در Perl استفاده کنیم.) از دیگر مزایای دات نت ، اینه که یه پوششی (wrap) از سیستم عامل زیرین رو در اختیار برنامه نویس قرار میده که در تمامی زبان های تحت دات نت یکسانه و کار با اون هم بسیار راحته (یعنی با هر زبانی میتونید برنامه های کامل بنویسید ، نه مثل گذشته که مثلاً برنامه نویسی ویندوز با VB با برنامه نویسی ویندوز با سی پلاس پلاس از زمین تا آسمون فرق داشت ، و نیازی هم به یاد گرفتن کلی API ندارین----به عنوان مثال اگه تحت دات نت ، یه برنامه با VB بنویسین که با شبکه ارتباط برقرار میکنه ، همون برنامه رو با سی شارپ ، دقیقا با همون کلاسها و توابع می نویسین و این برنامه ها از نظر داخلی هیچ فرقی با هم نخواهند داشت (دلیلش رو بعدا میگم) ، فقط از نظر سینتکس برنامه نویسی با هم فرق میکنن)
یکی دیگر از مزایای دات نت ، پشتیبانی ذاتی از استانداردهاست (مثل XML , HTTP , SOAP ) همچنین چون مایکروسافت زبان سی شارپ و خود دات نت رو استاندارد کرده ، هر کسی میتونه برای هر سیستم عاملی یه دات نت بنویسه که این باعث میشه برنامه ها در هر محیطی اجرا بشن (در حال حاضر خود مایکروسافت ، دات نت رو فقط تحت ویندوز ارائه میکنه ، اما کسان دیگری در حال کار بر روی ورژن های دیگر اون هستن که مهمترینشون پروژۀ Mono است که دات نت رو تحت لینوکس پیاده کرده)
مزایای دیگه :
مدیریت خودکار حافظه ؛ سازگاری با فن آوری های قبل از دات نت ( مثل COM) ؛
بهره گیری از یک سیستم سازگار و بسیار قدرتمند مدیریت استثناها ؛
بحث دربارۀ CLR , JIT ,GC, FCL , IL , CTS , CLS بمونه برای دفعات بعد
راستی اگه کسانی باشن که مشتاق باشن ، میتونیم در زمینۀ انتخاب بین دو زبان سی شارپ و وی بی دات نت و
فرقا و شباهتا و اینا شون بحث کنیم.
همچنین دفعۀ بعد یه سری منبع معرفی میکنم.
فعلا
 

hkiani

کاربر تازه وارد
تاریخ عضویت
18 آگوست 2004
نوشته‌ها
21
لایک‌ها
0
محل سکونت
Khorasan, Iran
سلام دوستان
مطالب شما بسيار ارزنده است. لطفا ادامه بدهيد. من هم با نظر شما موافقم،‌ برنامه نويسان سي++ هم بايد كمي بيشتر مطلب بنويسند.
با تشكر
 

MehdiC#

کاربر تازه وارد
تاریخ عضویت
2 نوامبر 2004
نوشته‌ها
55
لایک‌ها
0
محل سکونت
ابهر
سلام
بابا پس چي شد ، شما هم یه چیزی بنویسید دیگه ، همش که نشد من بنویسم ،( مخصوصاً آقای شرلوک هلمز )
یه نظری ، پیشنهادی ، انتقادی ، بابا جهنم یه سوالی چیزی.
آقا عرض شود که دات نت از دو بخش تشکیل شده : 1- ّّFCL و 2- CLR
FCL یا Framework Class Library : شامل کلاس ها و انواع داده ای(type) مختلف در دات نته که تمامی زبانهای برنامه نویسی به طور یکسانی با این type ها کار می کنند (به عنوان مثال ، خوندن محتویات یه فایل ، در VB .NET و سی شارپ و جاوا شارپ و خلاصه توی تموم زبانهای تحت دات نت ، از طریق یک کلاس و یک متد مخصوص خواهد بود که این ، یاد گرفتن زبون های مختلف رو خیلی راحت میکنه)
CLR یا Common Language Runtime ، همونطور که از اسمش پیداست یه محیط مشترک برای اجرا و debugging برنامه های تحت دات نته و در واقع قلب دات نته . از وظایفش میشه به اجرای برنامه ها ، کامپایل کردن کد MSIL به کد native ، ارتباط بین دات نت و Win32 و COM ، مدیریت حافظه و ... اشاره کرد.
امروز به دو مفهوم اساسی دیگه هم اشاره میکنم : Assembly و metadata
Assembly : اشتباه نکنید ، این با اون زبان اسمبلی یا زبان ماشین فرق داره ، در دنیای دات نت ، کوچکترین جزء قابل نصب ( و پخش ) ، اسمبلی نامیده میشه ، برای اینکه گیج نشید و وارد مطالب پیشرفته نشیم ، فقط همین رو میگم که هر فایل اجرایی یا dll که میسازید ، یه اسمبلیه ( این تعریف غلطه ، ولی برای شروع ، کارمونو راه میندازه )
هر اسمبلی ، یه ورژن مخصوص داره و همچنین یه کد داخلی که اون رو از دیگر اسمبلی ها متمایز میکنه.
metadata : یادتون هست گفتم CLR ، قلب دات نته ؟ اغراق نکردم اگه بگم metadata روح و بنیان دات نته .
metadata اطلاعاتی دربارۀ اجزای برنامه تونه ، مثلا اگه شما یه کلاس در برنامه تون داشته باشین ، metadata ی اون کلاس توصیفی از اون کلاس و فیلدهای داخلشه (میدونم که کمی گیج کننده است ، اما یواش یواش متوجه نقش اون خواهید شد )
وقتی شما یه برنامه با VB .NET یا سی شارپ می نویسید ، کامپایلرتون برنامه شما رو به کد IL (زبان اسمبلی مخصوص دات نت ) تبدیل میکنه و این کد ها و همچنین metadata ی برنامه تون رو داخل فایل نهایی تون (exe یا dll )
ذخیره میکنه .
metadata هزاران کاربرد داره ولی فعلاً یکیش رو که زیاد به چشم می یاد میگم :
وقتی اسم یه متغیر رو در Visual Studio .NET می نویسید و نقطه ('.') رو فشار میدید ، لیستی از متد ها و Property ها به صورت metadata در یک منو ظاهر میشه ؛ این اطلاعات از طریق Reflection (که خودتون هم میتونید انجامش بدین ) ، به دست می یاد .
خواهشاً وارد بحث بشین تا از هم دیگه چیز یاد بگیریم ، اگه هم سوال یا انتقادی داشتین ، دربست در خدمتم بدون مسافر.
فعلاً.
 
بالا