PDA

View Full Version : چند خط درباره وی سی دات نت



Inprise
یک شنبه 03 فروردین 1382, 19:18 عصر
در این مقاله کوتاه با بخشی از توانائی های ویژوال سی دات نت آشنا خواهید شد .

با توسعه مجموعه دات نت و ویژوال استودیو دات نت تحول بزرگی در عرصه برنامه نویسی ( فعلا ) ویندوز پدید آمده است . آنچه که این روزها بر سر زبانهاست تنها بخشی از توانائی هائیست که دات نت در اختیار گسترش دهندگان نرم افزار قرار میدهد . ( برنامه نویسان ویژوال بیسیک که قبلا از نعمت توانائی طراحی برنامه های سرویس - چند ریسمانی و مد کنسول محروم بودند این حقیقت را بهتر از دیگران درک میکنند !!! )

زبان برنامه نویسی در عالم دات نت تنها یک معنا دارد و آن چیزی نیست جز : Syntax ! کلاسهای واحد و محیط توسعه قدرتمند و قابل گسترش دات نت یکی از بزرگترین تحولاتیست که در عالم نرم افزار تا کنون رخ داده است . این تغییر تاثیرات شگرفی بر ویژوال سی برجای گذارده که معدودی از آنها ذیلا معرفی میشود .

هر چند برنامه نویسان ویژوال سی همچنان میتوانند از MFC و حتی ATL برای توسعه نرم افزار استفاده کنند ( که این خود بزرگترین امتیاز برای این محیط محسوب میشود . برنامه نویسان ویژوال سی مثل برنامه نویسان وی بی لازم نیست لباس جدید و رسمی بپوشند (!) و خود را برنامه نویس معرفی کنند !!! ) اما با باز کردن پروژه های قدیمی خود در محیط ویژوال استودیو دات نت و دادن پاسخ مثبت به یک سوال و به تبع آن تولید یک فایل sln . توسط محیط توسعه میتوانند از امکانات جدید و فدرتمند دات نت استفاده کنند و لزومی به تغییر هیچکدام از جزئیات برنامه نیست !

دیگر اثری از ClassWizard نمیبینید ! مایکروسافت با تقلیدی (!) هوشمندانه از محیطهای توسعه شرکت اینپرایز اکنون به توسعه دهندگانش این امکان را میدهد که در قالبی سهل و البته عاقلانه تر به گسترش نرم افزار های مبتنی بر رخداد ( event-Driven ) بپردازند .

در صورتیکه تمایل دارید همچنان از قابلیتهای میانبر کیبورد نسخه های قدیمی ویژوال سی و محیط تسوعه نرم آن به جای محیط جدید استفاده کنید کافیست از منوی Help گزینه Show Start Page را انتخاب کرده و با دستکاری کردن My Profile در انتهای صفحه خود را به عنوان Visual C++ Developer معرفی کنید و بس !!

بزرگترین تغییر از دست رفتن محیط یکدست توسعه رابط کاربری است !!! ( بهتر است بگوئیم غم انگیز ترین تغییر !!! ) . برنامه نویسان ویژوال سی دیگر مثل گذشته های دور و دوست داشتنی (!) امکان تولید برنامه های GUI را با آن قالب سابق ندارند . هر چند مایکروسافت برای این برخورد خود تفاصیل زیادی آورده است ( ر.ک ام اس دی ان ) اما با تقلیدی دیگر ( و هوشمندانه تر از مورد قبل ! ) سیستم ثبت اطلاعات موقعیتی GUI را از اینپرایز قرض گرفته و توسعه دهنده برنامه مبتنی بر ویژوال سی میتواند مولفه های ظاهری برنامه خود را در محیطهای سی شارپ یا وی بی طراحی کرده و مشخصات ضبط شده آن را برای پیاده سازی به محیط ویژوال سی وارد کند .

در پایان - هر چند بی ربط - چند سطری هم در مورد تفاوتهای ویژوال سی و سی شارپ بخوانید :

الف )سی شارپ ( برادر کوچکتر دلفی !!! ) برای تفکیک subnamespace از Namespace ایضا تفکیک Class از Namespace و همچنین دسترسی به متدها و اعضای یک کلاس از نقطه ( Dot ) استفاده میکند در حالیکه ویژوال سی همچنان از :: و <- مثل گذشته استفاده مینماید .

ب) سی شارپ ( برادر کوچکتر دلفی !!! ) بعد از استفاده از New یک نمونه از شی تولید شده را بر میگرداند در حالیکه ویژوال سی تنها یک اشاره گر به موقعیت شی را برخواهد گرداند .

ج)برای نوشتن برنامه های #C نیازی به ورود دستی منبع توابع به پروژه را ندارید و میتوانید از طریق منو های موجود این کار را انجام دهید در حالیکه در محیط ویژوال سی مجبورید از Using# استفاده کرده و آدرس منبع ( مثلا System.dll ) را وارد کنید . ( نگران نباشید !!! اینبار مایکروسافت مشتریانش را شگفت زده کرده است !!! از طریق راهنمای برخط محیط میتوانید بفهمید که کدام کلاس در کدام اسمبلی و محدوده وجود دارد و در کدام فایل ! )

د) Null در سی شارپ با حروف تمام کوچک و در ویژوال سی با حروف تمام بزرگ نوشته میشود !

ه) سی شارپ pre-processor ندارد !

و) سی شارپ :


this.button1.Click += new System.EventHandler(this.button1_Click);



( تعجب نکنید ! این اصلا دلفی نیست ! این سی شارپ است ... Hello world !!!! ;) )

ویژوال سی :


button1->Click += new System::EventHandler(this, &Form1::button1_Click);





امید است این سطوری اطلاعات مفید ( هر چند اندک ) درباره محیط جدید توسعه نرم افزار مایکروسافت به شما داده باشد ( ... و ای کاش مایکروسافت در حرکتی جوانمردانه (!) نام محصول جدید خود یعنی سی شارپ را * مایکروسافت دلفی * میگذاشت !!! ;) )

موفق و سلامت و جوانمرد (!) باشید ! ;) inpriZ

Vahid_Nasiri
یک شنبه 03 فروردین 1382, 20:29 عصر
حدود یک سال و نیم پیش در یکی از مجلات کامپیوتری داخل کشور مقاله بسیار جالبی در مورد شباهت های جاوا و سی شارپ منتشر شده بود در طی 4 صفحه دو ستونه ( که حجم مطلب آنرا حتما می توانید حدس بزنید) . اگر قرار است مقایسه ای هم صورت گیرد بهتر است با اصل و ریشه آن صورت گیرد و نه زبانهای دیگر. :twisted:

Inprise
یک شنبه 03 فروردین 1382, 20:56 عصر
مقایسه کجا بید ؟

یه سری از مشخصات اولیه وی سی دات نت رو گفتم و چند تا از تفاوتهای کلیدیش با سی شارپ و محیط قبلی وی سی . :roll:

توسعه نویس
پنج شنبه 13 اردیبهشت 1386, 19:45 عصر
بعد از گذشت 4 سال از مطالب بالا ، خیلی جالب میشه دوباره روش بحث کرد.

یکیش اینه ای عجب زود گذشته. 4 سال + یک نیم سال از زمان همون مقالهه = 5/5 سال.

یکیشم اینه شاید کم استقبال ترین بخش .Net برنامه نویسی Visual C++ .Net باشه.

:متفکر:

AlgorithmX
پنج شنبه 27 مرداد 1390, 00:53 صبح
ببخشید یههو اومدم تو خاطراتتون!!:لبخند: من این قسمت ها از خاطرت تونو نفهمیدم!:لبخند:


ه) سی شارپ pre-processor ندارد ! inpriZ
این یعنی چی؟



سی شارپ :


this.button1.Click += new System.EventHandler(this.button1_Click);


inpriZ
کار این خط چیه؟!