صفحه 2 از 2 اولاول 12
نمایش نتایج 41 تا 50 از 50

نام تاپیک: توجیه استفاده زا vb.net بجای C#‎

  1. #41
    کاربر دائمی آواتار mortezagt
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    بوشهر
    پست
    381

    نقل قول: توجیه استفاده زا vb.net بجای C#‎

    نمیدونم چرا برای اینکه بخواید کاری رو که انجام دادید رو بگید ، همش مینویسید " من خودم " عزیز من یکیشو بنویس یا " من " یا " خودم " !
    مردم از بس که " من خودم " رو دیدم

  2. #42
    کاربر دائمی
    تاریخ عضویت
    آذر 1389
    محل زندگی
    بوشهر-بندر دیلم
    پست
    353

    نقل قول: توجیه استفاده زا vb.net بجای C#‎

    با سلام
    من خودم هم vb.net کار میکنم هم C#‎ ولی تا vb.net هم سادست هم کاربردی تره هر چند تو بازار واسه بعضی از شرکتا C#‎ کار میخوان ولی vb.net بهتره

    مثلا برای گرفتن یه فیلد از جدول تو C#‎ باید یه خط کامل شایدهم بیای خط بعد کد بنویسی ولی توی vb.net کافیه یه datarow تعریف کنی بعد dr.item(fielldname) رو توی یه متفیر یا تکست باکس بریزی

  3. #43
    کاربر دائمی آواتار zarifcomputer
    تاریخ عضویت
    آبان 1388
    محل زندگی
    تهران
    سن
    45
    پست
    112

    نقل قول: توجیه استفاده زا vb.net بجای C#‎

    سلام به همه

    خیلی با خودم کلنجار رفتم که نظر ندم ولی منو ببخشید . شاید اصلا درست نباشه در حضور اساتید بزرگ که این همه وقت گذاشتند و نظر دادند بنده کمترین هم عرض اندام کنم.

    نظرات بسیاری از دوستان حرفه ای و کاملا دقیق و کارشناسانه بود . بعضی از دوستان هم با استناد به منابع دیگر یا تجارب خودشون دلایلی را عنوان کردند که قابل احترام است.

    بنده فکر میکنم برای مقایسه این دو محصول بهتره چند مورد را که قبلا هم توسط سایر دوستان مطرح شد مد نظر بگیرید

    1- شاید بهتر باشه این مقایسه بین دو محصول از دو شرکت مختلف انجام بشه تا دو محصول از یک شرکت . چرا که خیلی از دوستان اشاره کردند که کامپایلر هر دو یکیست و این یعنی در ماکروسافت تولید کنندگان وی بی و سی شارپ هر دو از یک سفره نون میخورند . بهتره محصولات شرکت مایکروسافت را با سایر شرکت ها مقایسه کنید تا بهترین پاسخ ها را بدست بیارید

    2- تاریخچه تولید یک محصول تقریبا نشان دهنده تجربه تولید کننده اون محصول است - این یعنی در دنیای تجارت معمولا کسانی که زمان بیشتری را صرف رفع نقایص محصول خودشون کردند مشتری های راضی تری دارند (در این مورد فکر میکنم وی بی به دلیل با سابقه تر بودن تونسته کاربران بیشتری داشته باشه . در حالیکه سی شارپ تازه متولد شده)

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

    در انتها هم تجربه شخصی خودمو عرض میکنم
    بنده برنامه نویس تجربی هستم و با فاکس پرو در 12 سال پیش کارمو شروع کردم . بعدش به توصیه یکی از فنی ترین افراد همون زمان که سر راهم قرار گرفت به دلفی رو آوردم و با دلفی 4 و بعدش 5 و 6 و 7 کار کردم . بعد از اتفاقاتی که برای شرکت بورلند افتاد به ویژوال استودیو رو آوردم و 3 - 4 سالی هم دات نت کار کردم . متاسفانه سعادت نداشتم با وی بی کار کنم ولی تو این 3 - 4 سالی که با سی شارپ کار کردم روزی نبود که به ماکروسافت بد و بیراه نگم و لعنتشون نکنم. شاید بخاطر تجربه شیرینی بود که با دلفی به دست آورده بودم . وقتی هم که دوباره دلفی جون گرفت برگشتم سراغش و الان با نسخه XE2 کار میکنم . من محصول دو شرکت مختلف را تست کردم که کامپایلر شون یکی نبود . سینتکسشون یکی نبود و محیط و خروجی و ملزوماتش هم یکی نبود . به نظر من شاید بشه گفت سی شارپ یکی از بد ترین محصولات مایکروسافت است . چرا که به هیچ وجه راحتی کاربراشو در نظر نمیگیره و فقط بخاطر بستر دات نت تا حالا زنده مونده

    یه دوستی داشتم که شیفته محصولات مایکروسافت بود ولی دلفی هم کار میکرد و آشنا به دلفی هم بود. یه بار یه پروژه گرفت و مجبور بود به سفارش کارفرما با سی شارپ انجامش بده . بیچاره به زمین و زمان بد و بیراه میگفت تا پروژه تموم شد .

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

    ضمنا اون عزیزانی که میگن وب بی برای آموزش تازه کارها ساخته شده و برای کارهای علمی به درد نمی خوره لطفا دقیقا منظور خودشونو از کار علمی توضیح بدن
    گاهی اوقات فراموش میکنیم که هیچ کدوم از ما برنامه نویس به دنیا نیومدیم!!!!

  4. #44
    کاربر دائمی آواتار alimanam
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    لندن
    سن
    38
    پست
    1,556

    نقل قول: توجیه استفاده زا vb.net بجای C#‎

    با سلامی دوباره

    دوست داشتم در تکمیل فرمایشات دوست عزیزی که پست قبلی رو دادین این نکته رو هم اضافه کنم که به جز جاوا و تا حد خیلی کمتری دلفی , زبان پیتون هم از قلم نیوفته چون واقعاً قدرتمند و در حال پیشرفته در حال حاضر متاسفانه در ایران کمتر کسی به سمت این زبان قدرتمند میره در حالی که غول های 0 و 1 دنیا همیشه تو پروژه هاشون از این زبان استفاده کردن و میکنن , گوگل رو نگاه کنین از گوگل مپ و گوگل ارث گرفته تا Engine جستجوگرش داره از Python استفاده میکنه پس بیایم با این زیبای خفته !!! کم کم آشنا بشیم تا از دنیا عقب نمونیم .

    موفق باشید./

  5. #45
    کاربر دائمی آواتار rezaprogrammer
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    کرج
    سن
    39
    پست
    246

    نقل قول: توجیه استفاده زا vb.net بجای C#‎

    نقل قول نوشته شده توسط meisam3322 مشاهده تاپیک
    خدا خیرت نده مایکروسافت که بچه های فروم رو به جون هم انداختی، شما ها هنوز دارین سر VB و C بحث می کنین ... از این دات نت دست بردارین تو رو خدا .... سعی کنین به دنیای Java نزدیکتر بشین تا از برنامه نویسی لذت ببرین !!!!!!
    جاوا چه لذتی داره دوست من؟ جاوا چقدر می تونه نیازمارو به دستورات و برنامه نویسی برطرف کنه؟ آیا انعطاف دات نت رو داره؟ بعید می دونم

  6. #46

    نقل قول: توجیه استفاده زا vb.net بجای C#‎‎

    سلام
    یه کوچولو در مورد بعضی بخشا بگم. البته اینم بگم که خوب طبیعیه سوالی که در مورد مقایسه ویبی و سی شارپ تو بخش vb.net پرسیده بشه قطعا کسی نمیاد از C#‎‎ حمایت کنه که
    اگه این کارو بکنه یه جورایی طرف خودشو میبره زیر سوال. هدفم هم از بالا آوردن این تاپیک این نیست که مثل دوستان مقایسه کنم این دو تارو. فقط جواب دادن به بعضی سوالات مطرح شدس.
    قصد اینم ندارم که 2 تا من بگم 2 تا هم شما. حرفامو میزنم نتیجه گیریش به عهده خواننده
    البته نه اینکه سی شارپ قدرتمند نیست ! چرا هست اما وقتی فلسفه پیدایش یک زبانی بر مبانی رقابت با یک زبان دیگه باشه ( شما بخونین چشم و هم چشمی ) به نظر من نمیشه گفت نسبت به زبانی که پیشینه خیلی قدیمی تری داره ارجحیت داره
    رو حساب پیشینه که نمیشه گفت چه زبانی قویتره چه زبانی ضعیفتر. اسمبلی هم خیلی قبلتر از زبانی مثل جاوا به وجود اومده. میشه با هم مقایسشون کردو گفت اسمبلی خیلی قویتره، چون قدیمیتره؟ !!
    بعد اینکه چرا فکر میکنید سی شارپ برای رقابت با ویبی دا نت به وجود اومده؟ ماکروسافت که نمیاد با خودش رقابت کنه. به نظرم سی شارپ به وجود اومد تا ماکروسافت طرفداری سینتکس c رو از دست نده و
    اونا نرن سمت چه میدونم مثلا دلفی و برنامه های غیر ماکروسافتی دیگه. والا واسه ماکروسافت فرقی نداره برنامه نویسا از سی شارپ استفاده کنن یا از ویبی

    1) حالا یک سئوال:::::::::: چه کاری رو با C#‎‎‎ میشه انجام داد که با vb.net نمیشه انجام داد؟
    2) کدنویسی در محیط کدوم راحت تره؟
    3) خطا گیری کدوم سریعتره؟
    4) کدوم حجم کدش کمتره؟
    5) کدوم کارکتر های جاوا رو نداره و مسخره بازی توش نیست؟
    6) زمانی که کد مینویسی آخه چقدر ادم میخوام به نگارش فکر کنه فقط باید به کد بچسبی نه اینکه 100 خط تابع نوشتی بعد موقع run بفهمی که ; ندارن
    7) جدا چه کاری میشه کرد با C#‎‎‎ که با vb نمیشه انجام داد
    اما اگر محدوده دید خودتون رو بیشتر کنید، می بینید که برای برنامه ریزی بسیاری از Micro Controller ها از زبان Basic استفاده میشه!
    1) اگه در مورد #C و VB.NET بحث میکنی خوب چه کاری رو با VB.NET میشه انجام داد که با C#‎‎ نمیشه? حرف سر VB.NET هستش نه پدرو پدر بزرگو یا استفاده از سینتکس VB تو فلان Device
    هر دو کارای همدیگرو میتونن انجام بدن حالا تو یکی از طریق اسمبلی A و کلاس B تو اون یکی شاید از طریق یه اسمبلی دیگه و کلاس دیگه
    2) خوب شما با VB کار میکنی مطئنا ویبی. واسه کسی که C#‎‎ کار میکنه C#‎‎
    3) به نظر شما VB? به نظر من C#‎‎. اصلا تا جایی که بتونه نمیزاره اشتباه کنی
    4) چند خط کمتره؟ مثلا 1000 خط کد سی شارپ میشه 950 خط VB. ممکنه همون 1000 خط رو به یه حرفه ای بدی تبدیلش کنه به مثلا 600 خط. شاید VB هم بشه مثلا 580 خط. (گفتم مثلا، حالا n خط کد نزارید
    اینجا بگید فلانش کن. چرا؟ چون باید اون حرفه ای رو گیر بیارید. نه منو )
    5) کاراکترهای جاوا؟ نمیدونم منظورت چیه
    6) کسایی که با VB کار کردن و حالا میخوان C#‎‎ کار کنن (به هر دلیلی) معمولا این مشکلو دارن. والا C#‎‎ کارا هر خط دستور رو که کامل میکنن اوتوماتیک وار اون ; انتها رو هم میزارن. بدون اینکه اصلا حواسشون بهش باشه. جدی میگم یه سری کارا اصلا احتیاجی به حضور ذهنو این چیزا نداره. ضمن اینکه تو C#‎‎ اگه اون کاراکتر قشنگه رو (;) نزاری که درجا بهت پیغام ارور میده و احتیاجی به Run نداره. چه جوری بعد 1000 خط کد نویسی تازه متوجه بخش Error List میشی.
    7) توضیح دادم

    من خودم خیلی هایی که C#‎‎‎ کار بودن رو به vb دعوت کردم و همشون میگن که برنامه ای که با C#‎‎‎ میشه تو 2 روز نوشت رو با vb.net تو یک روز مینویسن
    از یک برنامه نویس گرافیکی (طراح موتور های گرافیکی) پرسیدم vb.net یا C#‎‎‎.net گفت vb زبان C#‎‎‎ مثل (دقیقا خود جمله این شخص)::: پیکان جوانان گوجه ای میمونه که آوردنش پایین کفش میخوره به زمین میمونه (خودش با C++‎‎‎) کار میکرد
    منم یه VB کارو کشوندم سمت C#‎‎. الان دیگه C#‎‎ رو ول نمیکنه. احتمالا اونا از همون اول باید میرفتن سراغ VB ولی این کارو نکردن. بحث همون سینتکسو ...
    نظر ایشون کاملا محترمه. به هر حال هر کی میتونه نظر خودشو داشته باشه و اونو بیان کنه ولی دلیلی بر درستی مثال ایشون نیست (پیکان جوانان و ...)

    میتونم به جرات بگم که نوشتن پایه یک برنامه تجاری با هردو اینها یکی هست.کاملا یکی. فقط یکم #C مسخره بازیش بیشتره ، چند تا از معایب #C رو میگم اونم فقط تو حالت ظاهری هست که VB نداره :
    1. گذاشتن علامت ";" آخر هر خط
    2. برای هر متغییری که استفاده میکنید فقط همون نوع متغییر رو توش میتونید بریزید، مثلا یک متغیر از نوع integer تعریف کرده باشید نمیتونید مستقیم داخل یک متغیر از نوع String بریزید باید از تابع ItoA استفاده کنید ولی زبان فوق اعاده VB این قابلیت رو داره که به طور هوشمند خودش این کار رو انجام بده. مثل کد زیر :

    Dim i As Integer
    Dim s As String
    s = "3"
    i = s * 3
    MsgBox(i)
    1) توضیح دادم
    2) همه تبدیلات هم تو تبدیل Str به int و اینا خلاصه نمیشه ها. ممکنه همین تبدیلاتی که VB خودش انجم میده (که احتمالا برنامه نویس هم حواسش به این موارد نیست) یه جایی کار دست برنامه نویس
    بده. مثلا
            Dim i As Integer
    Dim s As Integer
    s = "3.5"
    i = s * 3
    MsgBox(i)

    البته شاید بگید خوب جوابش میشه 12 و این که دیگه اینقد حرف و حدیث نداره. اینجا آره نداره. ولی تو یه برنامه بزرگ اگه همین مسائل از دست طرف در بره، یه کوچلو اینور اوندر شدن عدد ممکن نتایج بدی داشته باشه. حالا بعد غرغرهای استفاده کننده ها از اون برنامه (که آقا این داره اشتباه محاسبه میکنه) طرف باید بشینه n هزار خط کد رو بررسی کنه ببینه این وسط چیه که داره
    پارازیت میندازه. (ارور نه، محاسبه اشتباه)
    ضمن اینکه اون چیزی که از دید شما نبودنش مزیت هستش و بودنش تو C#‎‎ نقطه ضعف، برعکس از دید ما بودنش تو C#‎‎ به صورت اجباری یه مزیت فوق العاده هستش.
    اینم بگم که شما VB کارا هم میتونید این قابلیت رو داشته باشید که به صورت پیش فرض واسه شما غیر فعال هستش. واسه فعال کردنش هم تشریف ببرید تو Properties پروژه. تو تب Compile مطابق خواسته تون گزینه هاشو تغییر بدید. واسه تست، کدای دوستمون رو که میگن اررور نمیده کپی پیست کنید بعد از قسمت Compile Configurations اون 3 تا گزینه اول رو که رو None هست بزارید رو Warrning یا Error،
    اونوقت میبینید که درجا بهتون ارور میده

    1) من بخواطر اینا وی بی جونم رو ول نمیکنم وقتی عجله داری و کدت ممکنه خطا بده on error resume next به دادت میرسه
    2) بیخودی مجورت نمیکنه واسه یه منی برنامه ای که فقط چند بار باهاش کار داری کد های اصولی و دستو پا گیر بنویسی وقتت رو بزاری روی یه منی برنامه
    3) وقتی میخوای یک عدد رو بزری تو رشته یا برعکس لازم نیست بهش بگی که این یه عدد فقط کافیه بگی + یا & برای همین عاشق وی بیشم
    4) وقتی میخوای یک متقیر داشته باشی تو کل برنامت استفاده کنی بدون دردسر و چند خط کد اضافه به ماژول میسازی و توش اینو مینویسی public A as string
    هرکی میگه C#‎‎‎‎‎‎‎ بهتره از ویبی واسم اون دکمه طلایی Add Moduleرو تو C#‎‎‎‎‎‎‎ نشون بده !!! دقیقا اینجاست این یه قابلیته واسه اونایی که دوست ندارن بیخودی کلاس بنویسن و سر راست توابع و متقییر ها رو تو کل برنامه به صورت سراسری میتونن استفاده کنن بدون یک خط کد کلاس نویسی و دردسر هاش (البته تو مینی برنامه های من کاربرد فراوانی داره نه در پروژه های حساس)
    من جدا با گزینه های 1و 2 که اینجا ازشون به عنوان نقطه قوت ویبی یاد کردید، مشکل دارم. ببین خودت تو همین 2 جمله دلیله اصلی خودتو از انتخاب VB گفتی. وقتی عجله داری و ممکنه کدت خطا بده یعنی چی؟ چرا باید کدی بنویسیم که ممکنه ارور داشته باشه و بخوایم به قول شما on error resume next استفاده کنیم؟ این اصلا ربطی به VB یا C#‎‎ نداره ها. مشکلم با مفهوم جمله تونه
    تو قسمت 2 گفتی مجبور نیستی کدای اصولی بنویسی (هر چند تو ادامه گفتی واسه برنامه های موقت). اینقدر برنامه هست با #C که به صورت افتضاح، غیر اصولی نوشته شده. برعکسم هست، اینقدر هم برنامه های اصولی با VB طراحی شده. اگه همین برنامه های کوچیک رو که میگی، اصولی بنویسیم، اونوقت وقتی بریم سراغ برنامه های بزرگتر، اوتوماتیک وار کدا رو اصولی مینویسیم. دیدت رو عوض کن
    3) توضیح دادم
    4) تو یه تاپیک تو بخش ASP.NET یکی گفته بود آقا تو Add New Item من گزینه Handler رو ندارم. حالا چیکار کنم. مهدی موسوی گفته بود بابا Handler چیزی نیست جز یه کلاس ساده که از اینترفیس
    IHttpHandler ارث بری میکنه. همین نه بیشتر
    شما لطف کن از طریق همون بخش طلایی یه کلاس یه اینترفیس و یه ماژول اضافه کن به پروژه. نوع فایلهایی که به پروژه اضافه میشه و کدای داخل هر کدوم رو یه بررسی کن. همشون با پسوند .VB هستن و کداشون هم
    کلاس
    Public Class Class1

    End Class

    اینترفیس
    Public Interface Interface1

    End Interface

    ماژول
    Module Module1

    End Module

    اون ماژولی که اینقد ازش تعریف میکنید چیزی نیست جز کلاس زیر
    internal static class Module1
    {

    }

    که چون کلاس Static هستش، اجبارا اعضای داخل اون هم باید Static باشن و این یعنی همون جمله خودتون
    میخوای یک متقیر داشته باشی تو کل برنامت استفاده کنی
    Module Module1
    Public A As String
    End Module

    internal static class Module1
    {
    public static string A;
    }


    1) به نظرم بحث درمورد مقایسه دو زبان به جایی نمیرسه چون هر کدوم مزایا و معایب و کمبود های خودشون رو دارن
    2) برای مثال تو #C شما به کلاس جادویی My دسترسی ندارید! یا Import ها (Using های ) سطح پروژه ندارید ! و ...
    3) اما یکی از برتری های خیلی مهم سی شارپ این هست که شما وقتی در حال برنامه نویسی با اون هستید تقریبا مطمئن هستید که ( نسبت به VB.NET) خطای ران تایم کمتری خواهید داشت مخصوصا خطا های سهوی و خطای تبدیلات ، و این به خاطر کامپایلر بسیار محتاط سی شارپ هست
    1) نمیشه گفت معایب. هر کی با هر کدوم راحت تره میره سمت اون. این دلیل بر عیب اون یکی نیست
    2) تو ASP.NET اون Using های سطح پروژه رو داریم. احتمالا منظورتون تو Win app هستش. خوب اینکه من تو هر CodeBehind فقط Using های همون فرم رو داشته باشم، این از نظر شما یه عیبه؟!
    ضمن اینکه میشه با گزینه Organize Using اون Using هایی که الکی تو صفحه تعریف شدن رو حذف کرد. تو 2012 حتی میشه اون Refrence هایی که تو پروژه وجود داره ولی ازشون استفاده نشده حذف کرد
    این گزینه رو Resharper هم داره.
    اون کلاس جادویی (که البته یه NameSpace هستش نه کلاس) My چه کاره خاصی انجام میده؟ یکی از دوستان جلوتر یه مثال براش زده که اونجا توضیح میدم. ولی به فرض که C#‎‎ کارا به My دسترسی نداشته باشن. یعنی نمیتونن اسمبلی Microsoft.VisualBasic.dll رو به پروژشون اضافه کنن و از کلاساش استفاده کنن؟
    3) توضیح دادم که این قابلیت تو VB هم هست، فقط باید فعال بشه

    تو C#‎‎‎ یه چیزهایی رو نمیتونم تحمل کنم :
    1- ; آخر هر دستور
    2- وقتی کد مینویسی دائم اون خط قرمز زیرش هست تا وقتی که دستور کامل شه که تو VB اینجوری نیست
    3- TAB درست نمیزنه ! تو VB کد خیلی تمیز تره (به صورت پیش فرض)
    4- تو کدهای یکم بلند تر واقعا سر {} گیج میشم ! آخر کد {{{{ داری که نمیدونی هرکدوم مال کدوم شروع
    1) سلیقه شما اینجوریه. این ایراد #C نیست
    2) توضیح دادم
    3) چرا Tab درست نمیزنه؟ و چرا فکر میکنید تو #C کدا تمیز نیستن. تمیز کد نوشتن بستگی به خود فرد کد نویس داره نه به زبانی که باهاش کد مینویسه. خصوصا تو دات نت. چه بسیار کدای کثیفی که از طریق هر دو زبان نوشته شدن و بر عکس
    4) ایراد کار اینجاس که شما میخواید خطوط برنامه تون کم بشه، میخواید همه چیو تو دل هم جا بدید. ({{{{). واسه هر کدوم یه اینتر بزنید اونوقت با اون Then و End مقایسه کنید. البته اینم به سلیقه برمیگرده.
    به شخصه از اون End هایی که تو پروژه های VB هستن متنفرم. یه مثال الکی
            Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
    If 1=1 Then
    If 2=2 Then
    If 3=3 Then

    Else
    If 7=7 Then

    End If
    End If
    End If
    End If
    End Sub


    به نظر من کاری نیست که C#‎‎‎ انجام بده ولی vb انجام نده.
    و برعکس (قبلا توضیح دادم)

    و اما اینتر در vb در شرط if دستور رو مینویسی بعدش که کدت تموم شد بدون اینکه بخوای then رو بذاری یه اینتر میزنی خودش برات کاملش میکنه end if رو میگم و خیلی از کد های دیگش مثل try
    تو #C می نویسی try یه دونه اولش } رو بذار بعدش { رو بذار بعد Catch ex As Exception که اینم تو #C قاطینکنی , بازم }{ رو دوباره بذار
    واما تو vb
    try رو اینتر کن بدون دردسر
    تو #C هم بعد try ، tryf , if , ... دو بار Tab بزن بدون دردسر. (Code Snippet). کلید میانبرشون هم که مشخصه و قایل تنظیم (CTRL + K, S)

    سال پیش بود و در شرکتی مشغول به کار بودم که نیمی از برنامه نویس ها VB.net و نیمی C#‎‎‎‎‎‎‎ کار میکردند و هر روز ما این بحث رو داشتیم !طی این مدت همه به دنبال نقاط ضعف و قوت این سینتکس ها بودیم ! که پیروز این جنگ من شدم ! حال چند مورد کوچیک از مزایایی که C#‎‎‎‎‎‎‎ کارها اعتراف کردند vb توی این حالت بهتره رو براتون میگم . (در سایر حالت ها هم آخر همین پست توضیح دادم )
    واقعا اون گروه C#‎‎ کار رو باید اعدام کردا. لطمه زدن به جامعه برنامه نویسی.

    مزایای vb.net نسبت به C#‎‎‎‎‎‎‎ :

    - اولیش اینه که در سینتکس وی بی میشه به راحتی xml نوشت !!! که C#‎‎‎‎‎‎‎ نداره !! (کسی راهشو فهمید به ما هم بگه :)) ) ....

    Dim test As Integer = 11
    Dim x = <Element Attribute='d2' at='test'>
    <te tee3="5454">
    <%= test %>
    </te>
    </Element>


    دروغ نگم حدود 5 min به این نحوه کد نوشتن خندیدم. آخر بی نظمی. همه چی تو دل همدیگه
    این کد xml رو اگه بخوایم توی C#‎‎‎‎‎‎‎ تولید کنیم باید 7-8 کلاس بسازیم و مقدار دهی کنیم و اونها رو به همدیگه اضافه کنیم و ....
    نه. راه زیاده. 7و8 تا کلاس هم لازم نیست
                XDocument.Parse(
    @"<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
    <!-- List of books and magazines -->
    <library>
    <books>
    <book name='The Hunger&apos;s Games' author='Suzanne Doe'/>
    <book name='Breaking Dawn' author='Stephenie Meyer'/>
    <book name='The Last Song' author='Nicholas Sparks'/>
    </books>
    <magazine>
    <magazineName>&quot;MSDN Magazine&quot;</magazineName>
    <magazineName>&quot;Code Magazine&quot;</magazineName>
    </magazine>
    </library>").Save("01.xml");

    نگید ما یه متغیر وسطشم داریم یا Node ها رو میتونیم با حلقه ایجاد کنیم و .... کافیه هر جور که میخوایم رشته رو آماده کنیم و بعد رشته نهایی رو بدیم به تابع
    2- نداشتن NameSpace My :
    زیاد توضیح نمیدم چون همه ویبی کارها میدونند که این چه نعمتیه ! اگه یک C#‎‎‎‎‎‎‎ کار فقط بخواد از سیستمش صدای Beep رو در بیاره باید 4 خط کد بنویسه ... اون هم با سرچ (چون احتمالا یادش نیست ...)
    Beep!!!
    SystemSounds.Beep.Play();

    - خوانایی کدهای ویبی به مراتب بالاتره ! و دلیل دارم !!
    شما اگه جایی مجبور به استفاده از For های تو در توی زیاد و if های تو در تو و... بشید ! در انتهای یکی از این بلاک ها بخواید 1 خط در C#‎‎‎‎‎‎‎ اضافه کنید بین این همه {}{}{}{}{}}{}{}{}{}{}{} !!!! کجا باید اضافه بشه !؟
    این مشکل شاید توی Visual Studio خودش رو نشون نده ولی به طور مثال توی CodeSmith اگه بخواید با C#‎‎‎‎‎‎‎ یک Generator بنویسید توی اون IDE ضعیف ... به همین نتیجه میرسید !

    4- زبان ویبی در آفیس استفاده میشه !
    خوب این که خیلی مشخصه ... شما اگه C#‎‎‎‎‎‎‎ کار باشید و بخواید توی Access - Excel ویا .... 1 خط کدنویسی کنید به مشکل میخورید ولی سینتکس ویبی اونجا هم کاربرد داره !
    3) به نظرت اینکه CodeSmith نمیتونه یه مورد رو هندل کنه، این ضعف C#‎‎ هستش یا ضعف اون نرم افزار؟ چرا ربطش میدید به C#‎‎. در مورد }{ هم گفتم
    4) سینتکس C هم کم کاربرد نداره ها

    کلاس ها و ماژول های کار با String ها در ویبی :
    این کلاسها هم احتیاج به توضیح ندارند ! هر کس این 2 زبون رو بلد باشه میدونه که توابع درون ماژول Strings چقدر کار رو راحت کرده که توی C#‎‎‎‎‎ وجود نداره !
    واقعا اینو به عنوان یه قابلیت میدونید؟ هستا، نه این که نباشه. ولی بودو نبودش اینقدا هم که شما بزرگش کردید مهم نیست. مثلا فکر میکنید تابع Right از کلاس Strings چه کار عجیبی انجام میده؟
    میگه از سمت راست یه رشته به تعداد x کاراکتر جدا کن و برگردون. کدای تابع Right رو ببینیم
    C#‎‎
        public static string Right(string str, int Length)
    {
    if (Length < 0)
    {
    throw new ArgumentException(Utils.GetResourceString("Argumen t_GEZero1", new string[1]
    {
    "Length"
    }));
    }
    else
    {
    if (Length == 0 || str == null)
    return "";
    int length = str.Length;
    if (Length >= length)
    return str;
    else
    return str.Substring(checked (length - Length), Length);
    }
    }


    VB
        Public Shared Function Right(ByVal str As String, ByVal Length As Integer) As String
    If Length < 0 Then
    Throw New ArgumentException(Utils.GetResourceString("Argumen t_GEZero1", New String(0) {"Length"}))
    Else
    If Length = 0 OrElse str Is Nothing Then
    Return ""
    End If
    Dim strLength As Integer = str.Length
    If Length >= strLength Then
    Return str
    Else
    Return str.Substring(checked(strLength - Length), Length)
    End If
    End If
    End Function


    تو همه توابعی که مد نظر شماس اومده با یه سری توابع مربوط به نوع استرینگ و یه کم محاسبه، به نتیجه مورد نظر رسیده و اون توابع رو به صورت استاتیک (Shared) تو کلاس Strings جمع کرده و در اختیار
    برنامه نویس قرار داده. گیرم که من خودم حال و حوصله نوشتن این کدا رو نداشته باشم. اینقدر سخته که فضای نام Microsoft.VisualBasic رو به پروژه اضافه کنم؟

    مشخص نبودن Handle یک Event در C#‎‎‎ !
    1
    2
    3
    Private Sub Form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    End Sub




    خوب خیلی ساده اگه کنترلی از روی فرم Cut کنید و جایی Paste کنید Handle اون کنترل از بین میره و دیگه Event اجرا نمیشه ! توی ویبی میتونید همونجا آخر متد مربوطه بنویسید Handles MyBase.Load یا Handles Button1.Click و ... به همین راحتی میشه چند Event رو به یک متد نسیت داد ولی توی C#‎‎‎ این قسمت داخل Designer نوشته میشه !!!!!! که واقعا نمیدونم چرا !! و خیلی جاها شده که آدم نمیدونه چرا متدش یا مثلا Button کار نمیکنه !
    حالا حتما باید با یه بار کپی پست کردن به نتیجه برسید؟ این که به عنوان یه ضعف تو C#‎‎ ازش اسم بردید اینقد مهمه که طرف بیخیاله C#‎‎ بشه؟ فکر نمیکنم

    تا به امروز همه C#‎‎‎‎‎ کار ها حداقل یک بار NameSpace Vb رو به برنامشون اضافه کردند ... ولی کجا دیدید که یک ویبی کار احتیاج به NameSpace C#‎‎‎‎‎ داشته باشه
    ما خوشحال میشیم حاصل دسترنج VB کارا رو تو برنامه هامون استفاده کنیم. همونطور که شما از C#‎ استفاده میکنید. روشن ترین مثالشم همین اسمبلی Microsoft.VisualBasic.dll هستش که با #C نوشته شده. موضوع مهمی نیست. جای بحث هم نداره

    چون شما زیاد با وی بی کار کردی این نظرو داری . منم با سی شارپ بیشتر کار کردم به نظرم خوانا تره
    موافقم

    احتمالا سوادتون به استفاده از Generator ها نمیرسه !
    واسه همین مثال میزنم !
    فرض کن بخوای توی NotePad .... بشینی و با C#‎‎‎‎ فورهای تو در تو بنویسی و .... خوب اونجاست که خوانایی سینتکس کاملا مشخص میشه!
    اول اینکه تو بحث های این مدلی رعایت احترام مستحب نیست. واجبه. پس خواهشا رعایت کنید
    دوم اینکه من خودمو میگم. با سینتکس VB حتی تو خود VS هم مشکل دارم. چه برسه به Notepad. اگه قرار باشه تو Notepad هم کد بزنم (خدا اون روزو نیاره) انتخابم همین C#‎‎ هستش نه VB

    در ضمن دوستانی که تعصب دارند روی C#‎‎‎‎ ضعف هاش رو که من گفتن نسبت به وی بی رو توجیه کنند ! ....
    قصدم توجیه نبود. خواستم بگم شاید از دید من نوعی، یه موضوع اصلا درست نباشه یا توجیه نداشته باشه. (هر موضوعی تو هر زمینه ای نه فقط برنامه نویسی). ولی ایراد از دید من نسبت به اون موضوع باشه.
    ببینید قرار نیست هر 2 تا برنامه راههای یکسانی رو واسه حل یه مسئله در اختیار برنامه نویس قرار بدن که اگه اینجوری بود اصلا لازم نبود 2 تا زبان باشن. همون یکی کفایت میکرد
    ترکیدم از بس تایپ کردم
    خلاصه اینکه نباید 1 طرفه قضاوت کنیم. همونطوری که گفتم انتظار ندارم کسی از حرفام اینجا استقبال کنه. چون همه اینجا طرفدار VB هستن. همین تاپیک رو منتقل کنید به بخش C#‎‎ اونوقت ادامه این تاپیک میشه تعریف از C#‎‎ و بدگویی از VB که آی سی شارپ اینو داره و ویبی نداره و ... (حالا طرف واقعا هم نمیدونه ها، فقط شنیده)
    آخرین ویرایش به وسیله Himalaya : چهارشنبه 08 آذر 1391 در 17:19 عصر

  7. #47
    کاربر دائمی آواتار alimanam
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    لندن
    سن
    38
    پست
    1,556

    نقل قول: توجیه استفاده زا vb.net بجای C#‎

    با سلام

    رو حساب پيشينه که نميشه گفت چه زباني قويتره چه زباني ضعيفتر. اسمبلي هم خيلي قبلتر از زباني مثل جاوا به وجود اومده. ميشه با هم مقايسشون کردو گفت اسمبلي خيلي قويتره، چون قديميتره؟ !!
    در ابتدا اين مطلب رو همون اول براي بار 1000 ام ياد آور بشم که اين بحث ها ديگه واقعاً شور و بي مزه شده ! آخه برنامه نويس محترم شما با هر سينتکسي که راحتي کدت رو بنويس حالا ميخواد سي شارپ باشه ميخواد وي بي دات نت , ايني که ميگم راحت منظورم اينه که يکي دوست داره با همين امکانات فعلي که زبان مورد علاقه اش براش فراهم کرده کنار بياد و از محاسنش استفاده کنه چه بسا يکي کمبودها رو به نوعي با کمي کدنويسي بيشتر حل کنه و لذتش رو هم ببره اين ديگه به طرف و سليقه اش ربط داره و الا هر دوتا زبان در يک سطح هستن . واما بعد ...

    خوب دوست عزيزم شما ظاهراً منظور صحبت بنده رو درست متوجه نشدين بنده عرض نکردم سي شارپ ضعيفه و وي بي قوي ! من 2 تا زبان هم نوع وي بي و سي شارپ که از يک کلاس هستن مثال زدم نه سي شارپ و جاوا يا وي بي و سي پلاس پلاس ! من گفتم چون وي بي داراي عقبه قديمي تري هست حتماً حتماً ميتونه بهتر از زباني مثل سي شارپ که داراي پيشينه کمتري هست قابليت هاي زباني خودش رو بروز بده چون از مدتها قبل توسعه و کم کم اومده جلو , اين رو هر عقل سليمي ميتونه حس و درک کنه .

    بعد اينکه چرا فکر ميکنيد سي شارپ براي رقابت با ويبي دا نت به وجود اومده؟ ماکروسافت که نمياد با خودش رقابت کنه. به نظرم سي شارپ به وجود اومد تا ماکروسافت طرفداري سينتکس c رو از دست نده و
    اونا نرن سمت چه ميدونم مثلا دلفي و برنامه هاي غير ماکروسافتي ديگه. والا واسه ماکروسافت فرقي نداره برنامه نويسا از سي شارپ استفاده کنن يا از ويبي
    عزيزم من کي گفتم سي شارپ براي رقابت با وي بي به وجود اومده ؟!!!!!!! من گفتم اصل پيدايش زباني مثل سي شارپ در درجه اول رقابت با جاوا کارا و در درجه بعدي با دلفي کاراست , اگه دقت هم کرده باشي شرکت عزيز ! مايکروسافت تعداد زيادي از برنامه نويس هاي شرکت بورلند رو که اکثراً هم جزء رده هاي بالاي توسعه دهندهاي دلفي بودن رو جذب کرد و در تيم توسعه سي شارپ به کار گرفت . در درجات بعدي حرف شما درسته , يعني در درجه بعدي مايکروسافت سعي کرده برنامه نويس هاي کنجکاوي رو که هواي دات نت زده به سرشون ! و با سينتکس سي عادت به برنامه نويسي دارن رو از دست ندن چون انتخابشون محدوده يا بايد زباني مثل سي شارپ مي بود يا وي بي ( مابقي زبان هاي دات نتي مثل اف شارپ که کاربرد محدودتري دارن ) رو بايد انتخاب ميکردن ! خوب اينو ديگه هر بچه ايي ميدونه که کساني که عادت به سينتکس سي دارن واسشون عذاب آوره که بخوان سينتکس وي بي رو ياد بگيرن ( برعکسش رو نميدونم واسه خودم که عذاب آوره !!! ) پس با کمي هوشمندي اومدن سي شارپ عزيز ! رو ايجاد کردن يعني با يه تير چندين نشون رو زدن . حالا ما هي بزنيم تو سر هم ! بريم بالا بيائيم پايين ! اين 2 تا زبون هرجفتشون آخر دست به يه زبان ( البته IL زبان نيست ! ) تفسير و ترجمه و کامپايل ميشه . و اين سليقه شماست که بخواي با کدوم به مقصدت برسي يکي ميگه وي بي يکي ميگه سي شارپ يکي هم ميگه هيچکدوم ! يکي ميگه از فلان قسمتش خوشم مياد و کمبودهاي ناچيزش در مقابل محاسنش واسم مثل عسل شيرينه ! يکي ميگه واي اين عسل چقدر تلخه !

    مابقي صحبت هاي شما رو اگه مطالب بالا رو بخونين ديگه مجالي براي پاسخ دادن از سمت بنده رو نميبينين .

    موفق باشيد./

  8. #48
    کاربر دائمی
    تاریخ عضویت
    دی 1390
    محل زندگی
    رودبارجنوب
    سن
    31
    پست
    171

    نقل قول: توجیه استفاده زا vb.net بجای C#‎

    من با وی بی همه ی زبان های برنامه نویسی رو درک کردم اگه وی بی نبود برنامه نویسی نمی کردم و از همون اول قید کامپیوترو می زدم.

  9. #49

    نقل قول: توجیه استفاده زا vb.net بجای C#‎

    نقل قول نوشته شده توسط alimanam مشاهده تاپیک
    با سلام



    دوست عزیزم شما جواب سوال منو بدین بعد به جواب سوال خودت حتماً میرسین !

    دلیل پیدایش زبانی به نام سی شارپ چیست ؟! خوب من بهت جواب میدم ایی شاا.. به جواب سوال خودت هم میرسی !

    یکی از دلایل مهمش ( مهمترین دلیلش ) رقابت همه جانبه مایکروسافت با زبان محبوب و قدرتمند جاوا بود هست و خواهد بود ! زبانی نو که بیشترین شباهت رو با جاوا و سی داره به صورت خیلی خودمانی نسخه برابر با اصل ( البته این نسخه برابر با اصل چیزی در حد شوخی هستش چون قابلیت های اصلی جاوا رو عمراً نمیتونه داشته باشه و اون هم متکی بودن به ویندوز عزیز هستش چیزی که جاوا به هیچ عنوان تحمل نمیکنه یعنی روی هر Device که یه پردازنده داشته باشه میشه برنامه نوشته شده با جاوا رو روش اجرا کرد !!!!!!! )

    خوب فکر میکنم دلیل متولد شدن این سی شارپ کپی برداری شده از رو دست جاوا رو بهتر متوجه شده باشین البته ممکنه بگین خود جاوا داره از سینتکس سی استفاده میکنه ! درسته اما اصل بحث ما برمیگرده به سی شارپ نه شباهت سینتکس 2 زبان مجزا از هم دیگه .

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

    حرف آخر :

    عزیزم شما اگه از سینتکس سی یا جاوا خوشت اومده ( بخونین راحتترین ) بهتر سی شارپ رو دو دستی بچسبین . این دیگه به صلیغه برنامه نویس بر میگرده .
    خیلی ها رو دیدم که میگن ما سی شارپ رو انتخاب میکنیم چون اگه سی شارپ رو یاد بگیریم انگار که جاوا و سی رو یاد گرفتیم !!!!!! به نظرم جواب این نوع دوستان رو میشه خیلی ساده بدم و اون هم اینه که عزیز دل برادر هر گردی که گردو نیست این کجا و آن کجا Managed Code کجا و Unmanaged Code ...

    موفــــق باشید./

    دوست من اگر سی شارپ را به جای ویژوال بیسیک بخونید یا می خوندیم ، یاد گرفتن زبان هایی مثل C و ++C آسان تر می شد.( همون انگار یاد گرفتی ، یاد که نگرفتی)

  10. #50
    کاربر دائمی آواتار Hossis
    تاریخ عضویت
    آبان 1386
    محل زندگی
    بیرجند
    پست
    1,731

    نقل قول: توجیه استفاده زا vb.net بجای C#‎

    من هم تحقیق کردم از لحاظ کارایی سی شارپ هیچ مزیتی نداره که وی بی نداشته باشه فقط یه کم پرستیژ کاذب داره
    زبانی که یک Inputbox و msgbox درست و حسابی نداره و ماژول نمی تونی استفاده کنی و این قدر روی علائم و سینتکس سخت گیری می کنه، به چه دردی می خوره؟؟
    سی شارپ محصول رقابت مایکروسافت با جاواست و گرنه هیچ مزیتی که نداره، برنامه نویس رو از برنامه نویسی متنفر می کنه

صفحه 2 از 2 اولاول 12

تاپیک های مشابه

  1. مشکل در استفاده از ASP.Net Web Application
    نوشته شده توسط mr_esmaily در بخش VB.NET
    پاسخ: 5
    آخرین پست: سه شنبه 23 تیر 1383, 12:55 عصر
  2. استفاده از VB.Net و C#‎ با هم در ASP.Net
    نوشته شده توسط Barbababak در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: یک شنبه 13 اردیبهشت 1383, 17:53 عصر
  3. عدم استفاده از asp.net در hotmail
    نوشته شده توسط iman2 در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: چهارشنبه 13 اسفند 1382, 17:38 عصر
  4. سوال: استفاده از َADO.Net در ...
    نوشته شده توسط shsoft در بخش VB.NET
    پاسخ: 12
    آخرین پست: یک شنبه 10 اسفند 1382, 15:51 عصر
  5. استفاده از VB.Net
    نوشته شده توسط S.Azish در بخش VB.NET
    پاسخ: 0
    آخرین پست: پنج شنبه 18 دی 1382, 20:34 عصر

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

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