PDA

View Full Version : آشنایی با Net. - قسمت دوم



S.Azish
شنبه 25 بهمن 1382, 04:00 صبح
VB.Net

VB.Net زبان تقریبآ جدیدی هست که شرکت ماکروسافت براساس تکنولوژی روز و به صورت کاملآ شی گرا ارائه کرده است. VB.Net با داشتن تمام ویژگیهای جدید خود همچنان دستوارت قبلی VB رو هم در خود داره و اونها رو حمایت میکنه برای مثال برای نمایش یک پیغام از هر دو راه زیر میشه استفاده کرد



'VB.Net
"MessageBox.Show("Test)

'VB
MsgBox("Test")



امکانات جدید VB.Net اون رو به یکی از قویترین زبانهای موجود در دنیا برای برنامه نویسی سیستم عاملها و یا اینترنت تبدیل کرده است. دلیل ناسازگاری برنامه های نوشته شده تحت نسخه های قبلی VB با VB.Net در تغییراتی هست که در نوع بوجود آوردن کلاسها مانند فرمها داده شده. در VB هر فرم به صورت یک فایل Text ساده ذخیره میشد که تعریف اشیا در اون بود ولی در VB.Net فرم یک کلاس هست که از کلاس Windows.Forms تمام خصوصیات خود رو به ارث میبره و تمام کنترلها به مجموعه Controls اضافه میشن چه در حالت اجرا چه در حالت طراحی فرمها. البته تمام کدهای مربوط به ایجاد کنترلها رو Form Designer که در خود Visual Studio وجود داره انجام میده.

در VB.Net تقریبآ همه چیز یک شی هست که در نهایت همگی از شی به نام Object مشتق میشن, برای مثال در VB برای گرفتن طول یک رشته از تابع Len استفاده میکردیم ولی در VB.Net میشه نام متغیر رو گفت و از خصوصیت Length استفاده کرد




'VB
Dim sTest As String

sTest = "Test String"

If Len(sTest) = 5 Then
'Do something
End If

'VB.Net
Dim sTest As String = "Test String"

If sTest.Length = 5 Then
'Do Something
End If


البته همونطور که گفتم همچنان میشه از تابع Len هم استفاده کرد و اگر دقت کرده باشید میبینید که متغیر رو در همان زمان تعریف کردن میشه مقدار دهی هم کرد. تغییر دیگری که در VB.Net هست در مقدار دهی متغیرهای عادی و اشیا هست. ما در VB برای متغیرهای عادی به صورت ساده و با استفاده از = مقدار دهی میکردیم (یا اگر برنامه نویسهای قدیمیتر یادشون باشه با دستور Let) و برای اشیا از Set استفاده میکردیم ولی در VB.Net دیگه نیازی به استفاده از Set نیست و استفاده از همون = کافی هست.




'VB.Net
Dim oTest As Object

oTest = Me


نوع متغیرها و اندازه اونها کمی در VB.Net تغییر کرده و دارای امکانات بیشتری هست. از جمله تغییرات جدید طول عمر متغیر ها (Scope) اونها هست برای مثال




'VB.Net

Dim bTest As Boolean = True

If bTest Then
Dim aNewVariable As String = "Test"
End If

Msgbox(aNewvariable )


در مثال بالا در جایی که دستور Msgbox استفاده شده یک خطا ایجاد خواهد شد چرا که ما متغیر aNewvariable رو درون شرط If تعریف کردیم و فقط در همون Block معتبر هست که این امکان جدید امکان استفاده بهینه تر از حافظه رو به برنامه میده.

VB.Net دارای امکانات بسیار فوق العاده در تعریف توابع, کلاسها و طراحی فرمها هست که در ادامه همین مقالات براتون توضیح خواهم داد.

Vahab
شنبه 25 بهمن 1382, 17:20 عصر
ممنون استاد مفید بود

روح اله معینی زاده
یک شنبه 26 بهمن 1382, 13:24 عصر
با عرض سلام و خسته نباشید خدمت استاد گرامی

جناب آذیش بسیار خوبه.

یک نظر هم دارم اگه خوبه که زحمتتون به این روش بگید. اول چند تا دستور رو در ابتدا معرفی کنید و بعد توضیح براشون بدید. اگه دوستان سوال داشتند (در خصوص همون دستورات) پایین توضیح شما سوال کنن و اگه هم نه، خدا بده برکت و شما بعدی رو شروع کنید.

ببخشید اگه فضولی می کنم.

با احترام- خدانگهدار

HoneySaberi
سه شنبه 28 بهمن 1382, 10:02 صبح
استاد سعید عزیز سلام.
اولا که خیلی خیلی ممنون از لطف بزرگی که در حق خیلیها مثل من دارید میکنید و بلاخره مهاجرتمون میدین به net. .
من که توی هاگیر واگیر پروژم هستم و اصلا نمی خواستم خودمو درگیره مسئله دیگه ای بکنم اما این موضو فرق داره!!!
یه چیزی هم میخواستم بپرسم اونم اینکه اولا چه مواردی باعث میشه یه برنامه وابسته به OS بشه و ثانیا برای اجرای یه برنامه net. توی هر OS وجود FrameWorke. کافیه یا نحوه کامپایل شدن برنامه هم مهمه؟
شرمنده از اینکه سوالام مربوط به جلسه قبلیه :oops:

آدم به داشتن دوستی مثل شما افتخار میکنه :heart: گرچه مدتیه گرفتاریات زیاد شده و...

S.Azish
شنبه 02 اسفند 1382, 03:24 صبح
دوستان عزیز از جمله آقای صابری ببخشید بدلیل جواب دیر,

همونطور که قبلآ اشاره کرده بودم شما برنامه خود رو برای Net Framework. مینویسید و نه سیستم عامل پس نیاز به دوباره کامپایل شدن نیست (البته اولین بار که کد روی یک سیستم عامل اجرا میشه عمل کامپایل شدن آنی JIT انجام میشه که باعث میشه کد شما روی اون سیستم عامل قابل اجرا باشه).

همونطور که مشخصه Net Framework. باید به شکلی طراحی میشد که بتونه در سیستم عاملهای مختلف نتیجه یکسان تولید کنه به همین دلیل به صورت عمومی طراحی شده و اگر نیاز داشته باشید تا به بعضی از امکانات خیلی خاص یک سیستم عامل دسترسی داشته باشید باید از توابع API مخصوص همون سیستم عامل استفاده کنید که مسلمآ بعد از اون نرم افزار شما وابسته به اون سیستم عامل خواهد شد و در سیستم عاملهای دیگر اجرا نخواهد شد.