-
چهارشنبه 19 اردیبهشت 1386, 21:02 عصر
#8
کاربر دائمی
بعد از اون ایرادهائی که گرفتم، ترجیح میدم این دو رو به گونه ای مقایسه کنم که ارزشهای بیسیک.نت نادیده گرفته نشه:
ابتدا عیب ها و مزیتهای بیسیک.نت رو مورد بررسی قرار میدیم :
1 مربوط به عیب بیسیک.نت و 2 مربوط به مزیت حاصل شده در آن است.
--- بیسیک.نت : تنظیمات متفاوت برای کامپایل کردن کدها.
--- سی# : تا جائی که میدونم، چنین چیزی نداره.
1) عیب : عدم هماهنگی بین کدهای نوشته شده توسط هر برنامه نویس.
2) مزیت : کنترل برنامه نویس بر کامپایل کدهای نوشته شده توسط خودش.
--- سی# : به مقررات کدنویسی پای بند است.
--- بیسیک.نت : زیاد به مقررات کدنویسی پایبند نیست، مثل استفاده از From1.Show() بدون ایجاد نمونه از Form1.
1) عیب : کد نویسی بصورت غیر اصولی.
2) مزیت : سازگاری با VB.
--- سی# : پارامترهای اختیاری، نداره.
--- بیسیک.نت : پارامترهای اختیاری داره.
توضیح : باید توجه داشت که وقتی یک متد دارای پارامترهای متفاوت هست، معمولا پیاده سازی های متفاوتی هم داره.
1) عیب : نمیدونم!
2) مزیت : سرعت در پیاده سازی متدهای خاص و همچنین ارتباط راحت تر با Office
--- بیسیک.نت : کلمه کلیدی With داره.
--- سی# : کلمه کلیدی With نداره.
توضیح : با عملیات Copy و Paste میتوان نتیجه مطلوب رو بکار برد.
1) عیب : نمیدونم!
2) مزیت : سرعت در نوشتن کدهای تکراری.
--- بیسیک.نت : Error Handling جالبی رو با Catch ارائه میده، یعنی Catch ex As IO.FileLoadException When attempt < 3
--- سی# : تا اونجائی که من میدونم، چنین چیزی نداره.
--- سی# : از Switch استفاده میکنه و به طبع باید break ها رو هم در آخر هر case قرار بده.
--- بیسیک.نت : از کلمه کلیدی Select Case استفاده میکنه و احتیاجی به آوردن break بعد از هر Case نیست و انعطاف بیشتری داره.
1) عیب : نمیدونم!
2) مزیت : افزایش سرعت در کد نویسی برای Select Case های طولانی.
--- بیسیک.نت : بیشتر به زبان گفتاری نزدیکه و سعی داره مفاهیم برنامه نویسی رو به زبان گفتاری نزدیکتر کنه.
--- سی# : از علائم و کلمات خاص برنامه نویسی، استفاده میکنه.
توضیح : یافتن بلاکها به کمک علائم } و { راحت تر است.
1) عیب : نوشتن کدها طولانی تر میشه.
2) مزیت : کدها راحت تر فهمیده میشه.
حال، عیب ها و مزیتهای سی# را مورد بررسی قرار میدهیم :
1 مربوط به عیب سی# و 2 مربوط به مزیت حاصل شده در آن است.
--- سی# : دارای عملگرهای کاهش و افزایش است.
--- بیسیک.نت : چنین عملگری ندارد.
--- سی# : سنتکس سی#، انعطاف بیشتری داره، مثلا میتوان از عمل انتساب بصورت چندگانه استفاده کرد یا از (,) سود برد و ...
--- بیسیک.نت : تا جائی که من میدونم، سنتکس بیسیک.نت، انعطاف کمتری به نسبت سی# داره.
1) عیب : نمیدونم!
2) مزیت : افزایش سرعت در کد نویسی و کاهش حجم کدهای نوشته شده.
--- سی# : به بزرگی و کوچکی حروف، حساس است.
--- بیسیک.نت : حساس نیست و برای حساس شدن به بزرگی و کوچکی اشیاء ایجاد شده، نیاز به کاراکترهای [ و ] داره.
1) عیب : ایجاد دو نام که تنها تفاوتشون ناشی از کوچکی و بزرگی باشه، میتونه جالب نباشه یا یک برنامه نویس مبتدی، با مشکل روبرو بشه.
2) مزیت : کنترل بیشتر بر نامهای تولید شده توسط برنامه نویس.
--- هم در بیسیک.نت هم در سی#، یک دستور را میتوان در چند خط نوشت، اما در سی# این کار راحت تر صورت میگیرد.
--- برنامه کامپایل شده توسط سی# حجم کمتری به نسبت همین برنامه در بیسیک.نت دارد.
--- در سی# موارد زیر هم ساپورت میشه :
1. Iterators
2. اشاره گرها
3. متدهای بدون نام
4. کامنت در چند خط
این مطلب با توضیحات دوستان BlackDal، __H2__
و بخصوص linux، ویرایش شد...
میدونم که گفتن جملاتی مثل "این زبان واسه small application" یا "این زبان سنتکس اش جالب تره" یا ... جملاتی هست که باعث میشه بحث منحرف بشه. ولی مطمئن هستم که اگه مشخصات هر زبان رو توضیح بدیم و مقایسه بشه، آنوقت خود برنامه نویس باید تشخیص بده که کدومش خوب هست و دیگه بحث منحرف نمیشه.
آخرین ویرایش به وسیله PC2st : شنبه 22 اردیبهشت 1386 در 18:40 عصر
دلیل: ویرایش شد 3
قوانین ایجاد تاپیک در تالار
- شما نمی توانید تاپیک جدید ایجاد کنید
- شما نمی توانید به تاپیک ها پاسخ دهید
- شما نمی توانید ضمیمه ارسال کنید
- شما نمی توانید پاسخ هایتان را ویرایش کنید
-
قوانین سایت