صفحه 3 از 6 اولاول 12345 ... آخرآخر
نمایش نتایج 81 تا 120 از 230

نام تاپیک: دلایل مهاجرت از visual basic به سی شارپ

  1. #81
    کاربر تازه وارد آواتار jerjis1912
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    کرج
    سن
    43
    پست
    37

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط Microsoft.net مشاهده تاپیک
    http://www.vbrad.com/article.aspx?id=63

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

    1-basic در ابتدا برای آموزش اومد.
    2-روال منطقی و علمی و اصولی سلسله مراتب آموزش از آسون به سخته.
    3-مطمعنا کسی که basic رو با هدف فوق بوجود آورد سعی کرد در سراسر این زبان اصل آسانی رو حفظ کنه.
    بنابراین basic یک زبان آسان است.از هر نظر.

    ادامه ماجرا با ذکر یک مثال:

    یک نفر امریکایی میخواد فارسی یاد بگیره.
    جمله زیر رو اولین بار میخواد یاد بگیره:
    ممکن است یک لیوان به من بدهید.
    if ..... then
    .
    .
    .
    end if


    بجاش میشه بهش یاد داد که بگه:
    میشه یه لیوان بدید
    (...) if
    }
    .
    .
    .
    {




    کلمات میشه و بدید و یه کجای فرهنگ لغت اومدن؟؟؟؟
    یک آسانی شکل گرفت ولی سه مشکل بوجود اومد.

    با روش دوم نرخ پیشرفتش چطوریه؟؟؟؟

    اگه چنتا از این جمله ها تو هم بپیچند و بخواد خلاصه کنه چی؟؟؟

    اگه بعد از گفتن جمله بخواد اونچه رو که گفته تحلیل کنه؟؟؟؟؟؟

    من یکی که بجای آمریکاییه بودم میرفتم vb یاد میگرفتم.
    باهاش جهشی پیشرفت میکردم و وقتمو سر شمردن } ها حدر نمیدادم.(میشه -یه -بدید)

    البته خوب به ترکا هم باید حق داد.( من خودم اصالتا ترکم)

  2. #82

    Wink نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط Microsoft.net مشاهده تاپیک
    http://www.vbrad.com/article.aspx?id=63

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

    Top 10 reasons C#‎ is better than VB.NET
    به :
    Top 10 Comic reasons C#‎ is better than VB.NET
    تغییر می دادم .
    من تصمیم داشتم بعد از خوندش مثائلی را که اشتباه گفته را اعلام کنم اما خوب اشتباهم اینجا بود که اولین Comment زیرش را هم خوندم. یک نفر قبل از من همه 70% نکاتی را که می خواستم بگم را گفته بود که من هم از اون 30% صرفه نظر می کنم. پیشنهاد می کنم شما هم اولین Comment زیرش را بخوانید.
    به زودی کمبود های #C را در برابر VB.Net به شما خواهم گفت، البته کمبود های اساسی نه چیزهای خنده داری مثل کامنت کردن متن که تو Vb.Net روشی بهتر از #C براش ساخته شده و نویسنده او مقاله ازش خبر نداشته و یا نحوه در چند خط نوشتن کد ها که ظاهرا از آن هم خبر نداشته. و ...

    همچنین می توانید کامنت های شماره : 9 ، 17 و 24 را هم بخوانی تا از نا آگاهی نویسنده مقاله آگاه بشوی.
    آخرین ویرایش به وسیله Mani_rf : دوشنبه 12 مرداد 1388 در 13:40 عصر
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  3. #83
    کاربر دائمی آواتار Navid Asadi
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    و در این نزدیکی
    سن
    31
    پست
    794

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    من هم خوندم و با شما موافقم

  4. #84
    کاربر دائمی آواتار emadfa
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    رشت
    پست
    193

    Talking نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    سلام بر همه اساتید vb کار!

    کدوم عبارت حرفه ای تره؟ ( عنوان بهتر: کدوم عبارت به لحاظ درک برنامه نویسی و استیل آن منطقی تره؟ )
    int intTestValue;

    Dim intTestValue As Integer
    معلومه که عبارت C-Style منطقی تره!
    بذارید این عبارت رو بازتر بکنم. اول از حساسیت زبان #C ( مثل بیشتر زبانها ) به حروف کوچک و بزرگ می گم. در زبان #C به طور پیش فرض همه کلمات رزرو شده و کلیدی از حروف کوچکند بنابراین یک برنامه نویس معمولی با IQ بالای 10 درصد نیاز به فکر کردن در مورد کوچک و بزرگ بودن نداره! قبول دارم که این احتمال هست که در هر چند هزار خط کد برنامه نویس یک اشتباه بکنه اما با realtime بودن کامپایلری مثل VS این قضیه منتفیه!

    یکی از دوستان قبلا به ; ایراد گرفته بود!
    یکی از نکاتی که در زبان های حرفه ای دنیا وجود دارد همین وجود ; است. دقت کنید که ; هیچ ارزشی ندارد بلکه این یک نماد است برای این که به کامپایلر عزیز! بفهماند که این statement تمام شده و برو به statement جدید! فکر می کنم استفاده از این نماد با توجه به کاربرد اون از کارکترهای زمخت و بی منطقی مثل _ بهتر باشه!

    ......البته کمبود های اساسی نه چیزهای خنده داری مثل کامنت کردن متن که تو Vb.Net روشی بهتر از #C براش ساخته شده.......

    MsgBox("Hello, cruel world!") ' A sample old-style comment

    MessageBox.Show("Hello, cruel world!"); // A professional comment

  5. #85

    Wink نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط emadfa مشاهده تاپیک
    یکی از دوستان قبلا به ; ایراد گرفته بود!
    یکی از نکاتی که در زبان های حرفه ای دنیا وجود دارد همین وجود ; است. دقت کنید که ; هیچ ارزشی ندارد بلکه این یک نماد است برای این که به کامپایلر عزیز! بفهماند که این statement تمام شده و برو به statement جدید! فکر می کنم استفاده از این نماد با توجه به کاربرد اون از کارکترهای زمخت و بی منطقی مثل _ بهتر باشه!
    []
    دوست عزیز اون کسی که از ; ایراد گرفته بود من بودم.
    به نکته جالبی اشاره کردی ، برای آنکه به کمپایلر بفهمانیم که یک statement تمام شده به یک کاراکتر نیاز داریم؛ اما مگر این کاراکتر حتما باید قابل رویت باشد؟؟؟؟ در زبان های برنامه نویسی کاراکتر ها به کد اسکی تبدیل می شوند؛ اگر شما بتوانید این را تشخیص دهید که کد اسکی ; برابر با 59 است ، و این را هم بدانید که Enter یکی از کاراکتر های کنترلی است و کد اسکی آن برابر با 13، به نظر شما کامپایلر نمی تواند آنها را تشخص دهد؟؟؟
    آیا به نظر شما تشخیص کد اسکی 59 با 13 برای تشخیص انتهای statement برای کامپایلر تفاوتی دارد؟؟؟
    یعنی کامپایلر های #C ؛ Java ؛ ++C باید کد ها را ببینند و تشخیص دهند که انتهای یک statement کجاست و کجا باید statement جدید را شروع کند!!!
    - آیا به نظر شما این کاراکتر برای برنامه نویسان در نظر گرفته نشده ؟
    - فکر نمی کنید که کاراکتر ; از کاراکتر کنترلی Enter زمخت تر و بی منطق تر و بدتر باشد؟؟؟
    - فکر نمی کنید که شما بعد از گذاشتن ; برای شروع خط جدید باید ، باید و باید کاراکتر کنترلی Enter را هم در انتهای خط قرار دهید (یا Enter را بزنید که برای شما کاراکتر را قرار می دهد و در عمل شما می بینید که خط جدیدی ایجاد شده)؟؟؟
    - آیا درصورت وجود Enter برای مشخص کردن انتهای خط دیگر نیازی به گذاشتن ; هم هست؟؟؟
    - و آیا برنامه نویسی را سراغ دارید که بیشتر از 5% دستورات خود را در یک خط مشترک بنویسد؟؟؟


    درباره کامنت هم تفاوت کوچکی در دو زبان وجود دارد اما نه برای یک خط بلکه برای مجموع چند خط که در VB.Net روش جدیدی ارائه شده که ظاهرا بیشتر از آن بی اطلاع ماندن.

    و نکته آخر اینکه من به شما یک تشکر بدهکارم - برای دادن معادل کد های دو زبان واقعا متشکرم من به یک مشاور #C کار حرفه ای نیاز دارم که اگر ایرادی نباشد از شما کمک می گیرم. باز هم سپاس گذارم
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  6. #86
    کاربر دائمی آواتار emadfa
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    رشت
    پست
    193

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    آیا به نظر شما تشخیص کد اسکی 59 با 13 برای تشخیص انتهای statement برای کامپایلر تفاوتی دارد؟؟؟
    یعنی کامپایلر های #C ؛ Java ؛ ++C باید کد ها را ببینند و تشخیص دهند که انتهای یک statement کجاست و کجا باید statement جدید را شروع کند!!!
    - آیا به نظر شما این کاراکتر برای برنامه نویسان در نظر گرفته نشده ؟
    - فکر نمی کنید که کاراکتر ; از کاراکتر کنترلی Enter زمخت تر و بی منطق تر و بدتر باشد؟؟؟
    - فکر نمی کنید که شما بعد از گذاشتن ; برای شروع خط جدید باید ، باید و باید کاراکتر کنترلی Enter را هم در انتهای خط قرار دهید (یا Enter را بزنید که برای شما کاراکتر را قرار می دهد و در عمل شما می بینید که خط جدیدی ایجاد شده)؟؟؟
    - آیا درصورت وجود Enter برای مشخص کردن انتهای خط دیگر نیازی به گذاشتن ; هم هست؟؟؟
    - و آیا برنامه نویسی را سراغ دارید که بیشتر از 5% دستورات خود را در یک خط مشترک بنویسد؟؟؟

    واضح است که کامپایلر برای تشخیص پایان دستورات از یک نماد استفاده می کند که آن می تواند معادل یک ; یا Enter باشد. اما فراموش نکنیم زمانی که تعداد دستورات زیاد شود با یک نگاه خیلی سریع می توان دستورات را تشخیص داد. مثلا در زبان های C-basedمثل #C کافی است که به ; نگاه کنیم. یک دلیل ساده تر: مثلا در دستور for می توانیم چهار دستور مشابه هم را ( به لحاظ عملکرد ) در یک خط کد قرار دهیم بدون این که نظم برنامه به هم بخورد چون ما برای تشخیص پایان دستور منتظر پایان خط نیستیم.
    باور کنید در بسیاری از کدهایی که من شخصا بررسی کردم ( حتی در نرم افزارهای بسیار حرفه ای ) این قضیه را مشاهده کردم. البته در صورتی که خودتان دستی در زبانهایی که گفتید بلدید داشته باشید این نکته را می دانید که هر چند خوانایی برنامه بسیار مهم است اما گاهی اوقات عمل کردن عکس قوانین موجود ( مثل نوشتن چند دستور در یک خط ) باعث خوانایی می شود. ) که البته #C دست ما را برای این عمل بسیار بسیار باز می گذارد!

  7. #87
    کاربر تازه وارد آواتار jerjis1912
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    کرج
    سن
    43
    پست
    37

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    دوستان سی شارپ کاری که با مقایسه - سی رو انتخاب کردید لطفا صادقانه به خودتون پاسخ بدید:

    آیا به این واقعیت که اکثر برنامه نویسای دنیا (مخصوصا ایران) ناخودآگاه تمایل دارن کد برنامه ای که مینویسن پیچیده تر و فهمش سخت تر باشه تا هر کی از راه رسید ازش سر در نیاره
    اعتقاد دارید؟

    آیا قبول دارید که سی کارا جدا از معلومات - خودشون رو یه سروگردن بالاتر از وی بی کارا میدونن؟

    به جرات میتونم بگم که 80 درصد از علت انتخاب سی پیچیده تر بودن اونه.

    آقای emadfa یادتونه اوایل تاپیک خودتون گفتین:

    من به شخصه زمانی VB هم بلد بودم اما به خاطر سادگی بیش از حد ( ضایع بودن بیش از حد! ) به C#‎ مهاجرت کردم. برای آینده هم قصد دارم در زمینه C++‎ سرمایه گذاری کنم ولی یک چیز خیلی واضح هست. دیگه هیچ وقت به VB بر نمی گردم!

    سی کارا اکثرا حتی زمانی که دو حالت از هر نظر معادل رو در وی بی و سی شارپ میبینن
    باز سعی میکنن با آوردن دلیل و برهان ....

    اگه دقت کنید میبینید دلایلی که تو اون سایت (ده علت) مطرح شده اکثرا مواردیه که در نوشتن یک برنامه به ندرت با اونا سرو کار داریم.در حالی که بحث ما روی 95 درصد بقیه ماجراست.

    بشینید و یه آمار بگیرید ببینید تو برنامه هایی که تا بحال نوشتین چنتا از اون موارد در این برتری دخیل بودن.

    آقای قاضی من حرف دیگه ای ندارم.

  8. #88
    کاربر دائمی آواتار emadfa
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    رشت
    پست
    193

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    آیا قبول دارید که سی کارا جدا از معلومات - خودشون رو یه سروگردن بالاتر از وی بی کارا میدونن؟

    به جرات میتونم بگم که 80 درصد از علت انتخاب سی پیچیده تر بودن اونه.

    آقای emadfa یادتونه اوایل تاپیک خودتون گفتین:

    من به شخصه زمانی VB هم بلد بودم اما به خاطر سادگی بیش از حد ( ضایع بودن بیش از حد! ) به C#‎ مهاجرت کردم. برای آینده هم قصد دارم در زمینه C++‎ سرمایه گذاری کنم ولی یک چیز خیلی واضح هست. دیگه هیچ وقت به VB بر نمی گردم!

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

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

    یک نکته مهم: تفاوت های این دو زبان دو گروه هستند. یک گروه که تفاوت های سلیقه ای هستند و گروه دوم که تفاوت های مهم و منطقی هستند. بنابراین این دو گروه را فراموش نکنید. شاید در بحث ها مهم باشند.

    در ضمن یک برنامه نویس ++C قطعا خود را بالاتر از برنامه نویسان .Net می بیند چون حجم کار و نوع نرم افزارهای تولیدی به هیچ وجه قابل مقایسه با زبان هایی مثل vb.Net نیست در عین حال تاکید دارم که مهمترین مشکل جامعه ما یادگیری ناقص است. در همین .Net هزاران مطلب گوناگون وجود دارد که برنامه نویسان ما به آن هیچ آشنایی ندارند چون آن ها فقط به فکر جیبشان هستند ( که به آن هم نمی رسند ) در صورتی که برنامه نویس باید شیفته کد نویسی باشد.

    موفق باشید.

  9. #89

    Wink نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    آقا مگه خودت نگفتی که :
    نقل قول نوشته شده توسط emadfa مشاهده تاپیک
    یکی از نکاتی که در زبان های حرفه ای دنیا وجود دارد همین وجود ; است. دقت کنید که ; هیچ ارزشی ندارد بلکه این یک نماد است برای این که به کامپایلر عزیز! بفهماند که این statement تمام شده و برو به statement جدید! فکر می کنم استفاده از این نماد با توجه به کاربرد اون از کارکترهای زمخت و بی منطقی مثل _ بهتر باشه!
    خوب من هم جواب این فرضیه محال شما را دادم !!!

    شما از اول این بهانه را می آوردی تا من هم به شما می گفتم که مگر شما نگفتید :
    زمانی که تعداد دستورات زیاد شود با یک نگاه خیلی سریع می توان دستورات را تشخیص داد. مثلا در زبان های C-basedمثل #C کافی است که به ; نگاه کنیم. یک دلیل ساده تر: مثلا در دستور for می توانیم چهار دستور مشابه هم را ( به لحاظ عملکرد ) در یک خط کد قرار دهیم بدون این که نظم برنامه به هم بخورد چون ما برای تشخیص پایان دستور منتظر پایان خط نیستیم.
    (حالا به این کاری نداریم که این دو حرف شما کاملا بر ضد همند و این نشاندهنده این است شما می خواهید کاراکتر اضافی را توجیح کنید)

    زمانی که تعداد دستورات زیاد شود و در چند خط باشند کسی به ; انتهای آنها توجهی نمی کند و فرمان های خطوط را می خواند ؛ و اگر چندین دستور در یک خط باشند برنامه نویس به جای در نظر گرفتن ; خوب : را در نظر می گیرد(دیگه آخه بابا یکم منطقی باشید ، سختی تشخیص این دوتا کجاست؟؟؟؟ )

    و اما نکته آخر :

    البته در صورتی که خودتان دستی در زبانهایی که گفتید بلدید داشته باشید این نکته را می دانید که هر چند خوانایی برنامه بسیار مهم است اما گاهی اوقات عمل کردن عکس قوانین موجود ( مثل نوشتن چند دستور در یک خط ) باعث خوانایی می شود. ) که البته #C دست ما را برای این عمل بسیار بسیار باز می گذارد!
    بله دوست عزیز من چندین زبان را آموختم تا بتوان آنها را با اطلاعات مقایسه کنم نه با احساسات. کاملا هم با حرف شما موافقم ؛ گاهی اوقات پیروی نکردن از قائده ها خوانایی را افزایش می دهد. اما خیلی دلم می خواهد آن امکاناتی را که برای خوانیی کد ها #C در اختیار شما قرار داده و VB در اختیار ما قرار نداده بشناسم . البته اگر می خواهید ; و امکان چندخط نویسی بدن کاراکتر اضافی را نام ببرید اگر نگویید بهتر است چون تاحالا 10 باری مطرح شده و من با دلایلی نقضشان کردم که کسی دلابلم را نقض نکرد.
    VB.NET
    به صورت معمولی هر کد در یک خط بدون نیاز به کاراکتر اضافی.
    به صورت معمولی هر کد در یک خط در شرایط خاص استفاده از کاراکتر : برای قرار دادن چندین کد در یک خط.
    #C.Net
    به صورت معمولی هر کد در یک خط بسته شدن کد با ;
    به صورت معمولی هر کد در یک خط در شرایط خاص قرار دادن چندین کد در یک خط بدون نیاز به کاراکتر اضافی.

    شما که این مطلب را می خوانید بگویید کدام منطقی تر است؟؟؟
    به زدن "آیا این پاسخ را مفید ارزیابی می کنید؟ " نظر دهید که حرف من درست است یا خیر.
    با تشکر.
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  10. #90
    کاربر تازه وارد آواتار jerjis1912
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    کرج
    سن
    43
    پست
    37

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    آقای emadfa شما گفتین :

    'من در ابتدا با ++C نیز آشنایی داشتم. اما مثل هر برنامه نویس دیگری گول زرق و برق برنامه نویسی visual را خوردم. '

    یعنی امروزه برنامه نویسی که بیاد مثلا هر کنترل datagrideview رو بشینه با ++c با کدنویسی
    بسازه گول زرق و برق برنامه نویسی visual را نخورده ؟!

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

    اگه اینجوری باشه که شما میگی هیچی دیگه هر کس از dll و com به هر نوعی استفاده کنه
    وارد جرگه فریب خوردگان شده.


    اگه صفحه اول رو ببینی منم گفتم که یکی از دلایل این مهاجرت تمایل به سمت دستیابی به ریشه و سرچشمه است.خوب منم همینکه میدیدم تو vb با انتخاب go to definition برای کلاسهای net.
    یه راست میرم به object browser و در #c میشه ریشه رو تو کد ادیتور دید خود به خود از #c خوشم میومد.

    اما این مزیت چه قدر در کارای من سودمند بود؟

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


    خوب افرادی مثل من و شما هم باید برای اینکه وقتشون هدر نره از اون عمق کمی بیان بالا تر و به جای اون کار , کلاسها و کامپوننتها رو در حد عالی بشناسن .

    ماها بایستی بجای اینکه روی یک راه و روش متمرکز بشیم و در سدد رفع اشکالاتش باشیم ; راه و روشهای بیشتر و بیشتری رو یاد بگیریم.
    مثلا فرض کنید کسی بخواد محتویات یک list view رو هنگام خروج جایی ثبت کنه. اگه با روش اول بخواد بره
    کلی باید وقت بذاره آخرشم یه روش غیر اصولی رو خودش اختراع کنه.(البته لذت حل مسئله رو هم میچشه )ولی اگه همین نفر قبلا با یک روز مطالعه درست با کلاسایی مثل binaryFormatter آشنایی داشته باشه...

    حالا شما بگین کدوم لذتش بیشتره؟

    و اصلا علت اونکه شما فرمودی که اکثر افراد تنها با بخش کوچکی از دات نت آشنایی دارن هم همینه که زمان و انرژی برای مطالعه ندارن.

    مخلص کلام : میدونی یکی از چیزایی که به عقیده من این زمان و انرژی رو ازشون میگیره چیه؟
    همین شمردن } ها - ترمیم سطوری که بعد از اجرا تازه مشکلشون تشخیص داده میشه - دقت در بکارگیری سمیکلن - صرف زمان نسبتا بیشتر برای بازخونی کد و تحلیل سلسله مراتبی و...

    البته یه کمی هم مناظره و مباحثه و مناقشه با وی بی کارا

  11. #91

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط Microsoft.net مشاهده تاپیک
    http://www.vbrad.com/article.aspx?id=63

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

    سلام دوست عزیز
    درمورد چیزی که فرمودید برعکسع . یعنی اینکه readability در وی بی بیشتر از C#‎ هست و بر عکس C#‎ نسبت به وی بی Writability بیشتری داره .

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

  12. #92
    کاربر دائمی آواتار emadfa
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    رشت
    پست
    193

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    آقای emadfa شما گفتین :

    'من در ابتدا با ++C نیز آشنایی داشتم. اما مثل هر برنامه نویس دیگری گول زرق و برق برنامه نویسی visual را خوردم. '

    یعنی امروزه برنامه نویسی که بیاد مثلا هر کنترل datagrideview رو بشینه با ++c با کدنویسی
    بسازه گول زرق و برق برنامه نویسی visual را نخورده ؟!

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

    اگه اینجوری باشه که شما میگی هیچی دیگه هر کس از dll و com به هر نوعی استفاده کنه
    وارد جرگه فریب خوردگان شده.............
    دوست عزیز شما کلا از منظور من بد برداشت کردی!
    من با برنامه نویسی visual مشکلی ندارم و اتفاقا با برنامه نویسی visual از نوع .Net مشکل دارم. همان طور که شما دوستان می دانید در Visual Studio یک نوع برنامه نویسی کلاسیک از نسخه های اولیه به نام برنامه نویسی native وجود دارد ( با نام visual ++C ) که دو حالت Win32 و MFC دارد. این نوع برنامه نویسی قدرتمند ترین شکل برنامه نویسی است. ببینید سخن من این نیست که مثلا در برنامه نویسی datagirdeview را دوباره طراحی و ایجاد کنیم ( که البته همین هم کار احمقانه ای است. ) سخن من این است که وقتی صرفا و صرفا با .Net برنامه نویسی می کنیم از خیلی از مسایل بی اطلاعیم. ابتدا این را بگویم که من شرکت مایکروسافت را دوست دارم که یک زمان مرا متهم به دشمنی با غرب نکنید اما این یک واقعیت است که هدف این شرکت این است خود را بر برنامه نویس تحمیل کند. یک مثل خیلی ساده:
    دوستان می دانید که در برنامه نویسی .Net عملا کنترل حافظه از دست برنامه نویس خارج است. این وظیفه به محیط CLR در بخش JIT واگذار شده است. در برنامه نویسی native عملا شما به هر شی یک حافظه اختصاص می دهید و بعد از انجام عملیات آن را آزاد می کنید. همه این کارها به شکل دستی انجام می شود. در صورتی که در Net این کار به شکل GC انجام می شود. این یک مزیت بزرگ است چون برنامه نویس از دست کنترل حافظه رها می شود اما فقط در برخی برنامه ها! مثلا در برنامه های گرافیکی شما نیاز دارید که خودتان شخصا این کار را انجام دهید!!!

    من با .Net مشکلی ندارم. .Net آمده است که برنامه نویسی را آسان کند اما .Net کسی را برنامه نویس نمی کند. .Net فقط و فقط یک مکمل برنامه نویس در کنار یک زبان قدرتمند دیگر ( مثل C++‎ یا Delphi یا python یا ... )

    من خودم با .Net نیز برنامه نویسی می کنم اما این زبان اولویت من نیست!! دوست عزیز از بحث اولیه منحرف شدیم اما خوب این بحث هم کم اهمیت نیست!!! فقط به این نکته توجه داشته باشید که کنترل کامل شما بر تمام زوایای برنامه اختراع چرخ نیست!!!

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

    این را هم بگویم که این تنها پاسخ من به انتقادات شما وگرنه شخصا .Net را دوست دارم اما نه در سطحی که به آن وابسته باشم!!!

    لطفا گفته هایم را باور نکنید فقط اندکی در مورد آن تحقیق کنید!!

    موفق باشید.

  13. #93
    کاربر دائمی آواتار Microsoft.net
    تاریخ عضویت
    آبان 1382
    محل زندگی
    مشهد
    پست
    584

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط pirmard مشاهده تاپیک
    سلام دوست عزیز
    درمورد چیزی که فرمودید برعکسع . یعنی اینکه readability در وی بی بیشتر از C#‎ هست و بر عکس C#‎ نسبت به وی بی Writability بیشتری داره .

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

  14. #94

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    با عرض سلام خدمت تمامی دوستان عزیز و بخصوص طرفداران #C و VB.Net

    من تمامی پست هارو خوندم و جاداره اینجا نظر خودم رو عرض کنم که بی لطف نیست که عرض کنم

    بنده برروی هر دو زبان تسلط دارم و باید عرض کنم که تمامی تفاوتهائی که در این دوزبان هست تنها تفاوتهای خیلی کوچکی هستند که به هیچ عنوان ابدا با در نظر گرفتن این مشکلها نمیشه گفت که کدام برتری داره من طرفدار بسیار شدید VB.Net هستم ( کورکورانه نیست ) ، ولی باید عرض کنم در زبان VB.net کاملا کد نویسی راحت تر و همچنین برطرف کردن Error ها بسیار آسانتر هست ، در کل زبان بسیار ساده و در عین حال بسیار کارآمد هست .

    در کل به نظر بنده اینها تنها زبانی برای برنامه نوشتن هستند و برای راه اندازی کارهای ما نوشته شدند و یک برنامه نویس باید به هردو این زبانها مسلط باشه و به نظر من اصلا گفتن اینکه از این زبان کوچ کنیم به زبان دیگه ابدا درست نیست چون مزیتهائی که در این زبان هست در آن زبان دیگه نیست که در بالا اشاره کردم و هزاران دلایل دیگه ................


    امیدوارمکه دوستان بتونن به هردوزبان مسلط باشن و ابدا به فکر کوچ کردن به زبان دیگری نباشن.



    موفق و پیروز و سربلند باشید.

  15. #95

    Wink نقل قول: دلایل مهاجرت از visual basic به سی شارپ

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

    بنده برروی هر دو زبان تسلط دارم و باید عرض کنم که تمامی تفاوتهائی که در این دوزبان هست تنها تفاوتهای خیلی کوچکی هستند که به هیچ عنوان ابدا با در نظر گرفتن این مشکلها نمیشه گفت که کدام برتری داره من طرفدار بسیار شدید VB.Net هستم.
    موفق و پیروز و سربلند باشید.
    دوست عزیز شما vb کار و من هم vb کار. شما VB و #C بلدید و من هم همینطور ؛ در این شکی نیست اما اگر شما به هر دو زبان تسلط داشتی این حرف را نمی زدی . در VB امکاناتی هست که در #C نیست.
    برای مثال خدمت شما و همه بچه های سایت عرض می کنم که در #C شما امکان پیش و پا افتاده ای مثل تعریف پارامتر اختیاری وجود ندارد. (Optioal Parameters).
    اگر کسی هست که می گه میشه بگه.

    امکان تعریف چنین روالی در #C وجود ندارد.

    Public Sub Test(Optional Byval Parameter as Integer)

    End Sub


    فقط برای نمونه این را لو دادم . چندین امکان دیگر در VB هست که در #C نیست.
    در مقاله ای که به زودی در سایت قرار خواهم داد چندین مورد دیگر را برایتان می آورم تا به ضعف های #C پی ببرید.

    اما از همه این گذشته آقا عماد قضیه سیمیکالون چی شد؟؟؟

    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  16. #96

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط Microsoft.net مشاهده تاپیک
    منبع ؟
    فکر می کنم اگه تعریف و برداشت خودتون رو از خوانایی و نویسایی می نوشتین زودتر به نتیجه می رسیدیم .
    در عین حال برای مطالعه، کتابهای کامپایلر معمولا همگی در ابتدا به بررسی این دو پارامتر می پردازند. مثلا کتاب کامپایلر ایهو .
    readability : هر چه کد خواناتر باشه (به زبان عامیانه انسان شبیه تر هم میشه) اصلاحا میگن ریدیبیلیتی بالاتری داره . و زبان سطح بالاتری به حساب می یاد .
    writability : هر چه نوشتن کد آسونتر باشه اون سینتکس نویسا تره .
    برای مثال به این قطعه کد در سی توجه کنید :
    If (i++) ++j ;


    میشه معادل این کد رو در بیسیک بنویسین ؟

  17. #97
    کاربر دائمی آواتار hossein-khoshseyar
    تاریخ عضویت
    دی 1387
    محل زندگی
    تهران
    پست
    532

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط jerjis1912 مشاهده تاپیک
    سلام - آقا درآمدتون چطوره؟ من خیلی دوست دارم تو این شرکتا مشغول شم.

    ولی جرات نمیکنم برم جلو. میشه نمونه هایی از کاراتونو بذارین؟
    شکر خدا در آمدش بد نست . نمونه برنامه رو به دلیل امنیتی نمی تونم بزارم .چون شرکتمون تو زمینه ... کار می کنه و ما تعهد داریم که برنامه ها رو بیرون لو ندیم
    به نظرم که اگه چند ساله برنامه نویسی می کنی می تونی یواش یواش دس به مار بشی

  18. #98
    کاربر دائمی آواتار hossein-khoshseyar
    تاریخ عضویت
    دی 1387
    محل زندگی
    تهران
    پست
    532

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    دوستان من خودم تو پستای قبلی به این قضیه تاکید کردم که این دو زبان با هم فرق آنچنانی ندارن
    و من هر دوتا رو بلدم ولی بیشتر با وی بی کد مینویسم
    شغلم هم همینه
    اما امروز به یه مسئله جدی برخورد کردم
    یه ضعف خیلی بزرگ وی بی در برابر سی شارپ
    وی بی در انجام کدهای پردازشی نظیر ضرب و جمع حدود 5 برابر از سی شارپ کند تره
    هرچند که این اصلا برام غیر قابل باور ولی امروز سر کار موقع کد نویسی وقتی یه کدی پردازشی سنگین رو نوشتم دیدم اجرای اون حدود 5 دقیقه طول می کشه بعد برای یه مقصودی نیاز داشتک که همون کد رو توی سی شارپ هم پیاده کنم که این بار نتیجه فوق العاده بود و توی یک دقیقه اجرا می شد.
    کد ها نوع متغیر ها دستورهای انتساب همه عین هم بود
    بازم شک کردم و خودم یه کد ساده چند خطی که یه for داشت و توش یه ضرب رو صدهزار بار انجام می داد رو تو دوتا زبون چک کردم اما باز نتیجه همون بود . حتی از فایل اجراییش استفاده کردم ولی باز سی شارپ خیلی سریعتر بود
    اگه کسی راه حلی داره بگه

  19. #99
    کاربر دائمی آواتار Navid Asadi
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    و در این نزدیکی
    سن
    31
    پست
    794

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    تا حالا کسی در مورد F#‎ چیزی شنیده....
    F#‎ تعاملی بین زبان های برنامه نویسی native و visual هستش و سرعت پردازش محاسباتیش چندین برابر C#‎ هستش...(دست رو دست بسیار است)
    من فکر نمیکنم درست برنامه های پردازشی خیلی سنگین رو با visual بنویسیم معمولا بهتره این کار ها رو با C++‎ و یا برنامه های تحت داس بنویسیم...
    البته اگه اشتباه میکنم بگین!

  20. #100
    کاربر تازه وارد آواتار jerjis1912
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    کرج
    سن
    43
    پست
    37

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط hossein-khoshseyar مشاهده تاپیک
    اما امروز به یه مسئله جدی برخورد کردم
    یه ضعف خیلی بزرگ وی بی در برابر سی شارپ
    وی بی در انجام کدهای پردازشی نظیر ضرب و جمع حدود 5 برابر از سی شارپ کند تره

    دوستان تمام چیزایی که میگین درست.
    اما میانگین بگیرین.همه چیز رو لحاظ کنین.

    بعد از همه بررسی ها این سوال کلیدی رو پاسخ بدید:

    اگر فرض کنیم که در طول یک سال بدون در نظر گرفتن هدف برنامه ها و کاربردشون ده هزار برنامه در سراسر دنیا نوشته بشه:

    الف-از این ده هزار برنامه برای نوشتن چندتاشون بهتره از VB استفاده بشه؟
    ب-از این ده هزار برنامه برای نوشتن چندتاشون بهتره از #C استفاده بشه؟
    ج-از این ده هزار برنامه برای نوشتن چندتاشون بهتره از زبانهایی بجز #C و VB استفاده بشه؟



    البته فکر میکنم بهتر باشه قبل از اینکار منتظر مقاله آقای رضایی باشیم و از مطالب ایشون هم در این بررسی سود ببریم.
    آخرین ویرایش به وسیله jerjis1912 : پنج شنبه 15 مرداد 1388 در 01:00 صبح

  21. #101

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط Mani_rf مشاهده تاپیک
    دوست عزیز شما vb کار و من هم vb کار. شما VB و #C بلدید و من هم همینطور ؛ در این شکی نیست اما اگر شما به هر دو زبان تسلط داشتی این حرف را نمی زدی . در VB امکاناتی هست که در #C نیست.
    برای مثال خدمت شما و همه بچه های سایت عرض می کنم که در #C شما امکان پیش و پا افتاده ای مثل تعریف پارامتر اختیاری وجود ندارد. (Optioal Parameters).
    اگر کسی هست که می گه میشه بگه.

    امکان تعریف چنین روالی در #C وجود ندارد.


    Public Sub Test(Optional Byval Parameter as Integer)

    End Sub


    فقط برای نمونه این را لو دادم . چندین امکان دیگر در VB هست که در #C نیست.


    در مقاله ای که به زودی در سایت قرار خواهم داد چندین مورد دیگر را برایتان می آورم تا به ضعف های #C پی ببرید.



    اما از همه این گذشته آقا عماد قضیه سیمیکالون چی شد؟؟؟


    با عرض سلام مجدد خدمت تمامی دوستان بخصوص دوست بسیار عزیزم Mani_rf

    دوست عزیز من هرگز نگفتم که #C بهتر از وی بی هست ، همونطور که میدونید #C تنها چند سالی هست که آمده و VB قدیمی تر و به قول معروف حرفه ای تر هست و بنا به این دلیل این زبان به علت اینکه سالهاست که کار شده ، بنابراین برروی تمامی قسمتها دسترسی داره و همیشه هم براین اساس میدونم هیچ موقع#C به پای وی بی نمیرسه .
    تنها خواستم عرض کنم که شما منظور من رو به خوبی متوجه نشدید.


    موفق و پیروز و سربلند باشید.

  22. #102

    Wink نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط omidghadiri مشاهده تاپیک
    با عرض سلام مجدد خدمت تمامی دوستان بخصوص دوست بسیار عزیزم Mani_rf

    دوست عزیز من هرگز نگفتم که #C بهتر از وی بی هست ، همونطور که میدونید #C تنها چند سالی هست که آمده و VB قدیمی تر و به قول معروف حرفه ای تر هست و بنا به این دلیل این زبان به علت اینکه سالهاست که کار شده ، بنابراین برروی تمامی قسمتها دسترسی داره و همیشه هم براین اساس میدونم هیچ موقع#C به پای وی بی نمیرسه .
    تنها خواستم عرض کنم که شما منظور من رو به خوبی متوجه نشدید.


    موفق و پیروز و سربلند باشید.
    سلام. اتفاقا من منظور شما را کاملا متوجه شدم اما خوب دنبال بهانه ای می گشتم که یکی از کوچکترین برتری های VB را بیان کنم که بعد از تاپیک شما دیگه مجبور شدم بگم تا #C کارها فکر نکنن که #C همه دنیای برنامه نویسی و VB بی استفاده است .
    به جرئت می توانم بگم بیشتر از 80% از #C کارهای فقط بخواطر بزرگی نام C به سمت #c رفتن نه با تحقیق و دانش ؛ اما خوب این رو هم می دونید که هرکسی اسمش رستم بود که نمی تونه با اسفندیار بجنگه(بابا اصطلاح ادبی).

    شما هم اگر چیزهایی از این قبیل را می دانید بگوید تا من در مقالم بگنجانم.البته Private بفرستید.(البته تا حالا 15 مورد را خودم کشف کردم.)
    منتظرم
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  23. #103
    کاربر دائمی آواتار hossein-khoshseyar
    تاریخ عضویت
    دی 1387
    محل زندگی
    تهران
    پست
    532

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط Mani_rf مشاهده تاپیک
    سلام. اتفاقا من منظور شما را کاملا متوجه شدم اما خوب دنبال بهانه ای می گشتم که یکی از کوچکترین برتری های VB را بیان کنم که بعد از تاپیک شما دیگه مجبور شدم بگم تا #C کارها فکر نکنن که #C همه دنیای برنامه نویسی و VB بی استفاده است .
    به جرئت می توانم بگم بیشتر از 80% از #C کارهای فقط بخواطر بزرگی نام C به سمت #c رفتن نه با تحقیق و دانش ؛ اما خوب این رو هم می دونید که هرکسی اسمش رستم بود که نمی تونه با اسفندیار بجنگه(بابا اصطلاح ادبی).

    شما هم اگر چیزهایی از این قبیل را می دانید بگوید تا من در مقالم بگنجانم.البته Private بفرستید.(البته تا حالا 15 مورد را خودم کشف کردم.)
    منتظرم
    دوست عزیز شما که اینقدر طرفداری وی بی رو می کنس چرا جواب سئوال من رو ندادید تو چند تا پست قبل یکی از بزرگترین عیب های وی بی رو نسبت به سی شارپ گفتم که اونم سرعت پایین وی بی . در باره این موضوع چه جوابی داری؟

  24. #104
    کاربر دائمی آواتار emadfa
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    رشت
    پست
    193

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    به جرئت می توانم بگم بیشتر از 80% از #C کارهای فقط بخواطر بزرگی نام C به سمت #c رفتن نه با تحقیق و دانش
    بابا شما عاشقان سینه چاک vb که هر چی از دهنتون در اومد به توسعه دهندگان نرم افزار که از C#‎ استفاده می کنند گفتید!! یعنی برنامه نویسان C#‎ اینقدر پرت اند؟

    اما خوب این رو هم می دونید که هرکسی اسمش رستم بود که نمی تونه با اسفندیار بجنگه(بابا اصطلاح ادبی).
    اتفاقا مثال جالبی بود چون vb و #c هم مثل رستم و اسفندیار به هم نزدیک اند!! منتها از مدت ها پیش این آقا رستم ما اسفندیار شما رو شکست داده!!

    موفق باشید.

  25. #105
    کاربر دائمی آواتار emadfa
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    رشت
    پست
    193

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    شما هم اگر چیزهایی از این قبیل را می دانید بگوید تا من در مقالم بگنجانم.البته Private بفرستید.(البته تا حالا 15 مورد را خودم کشف کردم.)
    راستی یک نکته مهم که فراموش کردم بگم.

    غیر ممکن هست که یک ویژگی در vb.netباشه ولی در #C نباشه!! چون مایکروسافت .net رو بر مبنای #C طراحی کرده و برخلاف vb.net ( که برخی دستورات از vb 6 به ارث! رسیده ) در .net همه چیز دقیقا براساس ساختار MSIL طراحی شده است.
    البته اگر منظور شما ابزارهایی است که به طور مستقیم در برنامه نقش ندارند و در هر کدوم از زبانهای .net وجود دارند اینجا هم #C پیشتازه!!!

    موفق باشید.

  26. #106

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    باسلام

    من از سال 2000 با وی بی 6 کار می کردم
    ولی درسال 2003 رفتم رو C#‎ و خیلی لذت می بردم و تا 2005 با سی شارپ کار می کردم
    ولی دیدم چون از اول با وی بی کار کردم دستم تو نوشتن کدهای وی بی سریعتر هست و از طرفی منابع وی بی به دلیل سادگی اون بیشتر بوده بنابراین وی بی رو انتخاب کردم (کمتر گیر میده ) خدارو شکر تا امروز هیچ مشکلی باهاش نداشتم

    در کل این دو زبان خیلی خوب هستن و این صحبتها فکر می کنم در حدی نیست که بخواهیم یک زبان برنامه نویسی رو ببریم زیر سوال



    ASP.NET MVC / Entity Framework / Design Pattern
    XCode Objective-C IOS Developer



  27. #107

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    عماد جان باز هم سلام (البته به سایرین هم سلام می کنم)


    غیر ممکن هست که یک ویژگی در vb.netباشه ولی در #C نباشه!! چون مایکروسافت .net رو بر مبنای #C طراحی کرده و برخلاف vb.net ( که برخی دستورات از vb 6 به ارث! رسیده ) در .net همه چیز دقیقا براساس ساختار MSIL طراحی شده است.
    البته اگر منظور شما ابزارهایی است که به طور مستقیم در برنامه نقش ندارند و در هر کدوم از زبانهای .net وجود دارند اینجا هم #C پیشتازه!!!

    من واقا متاسفم که این حرف را شما زده اید.
    اگر هر کسی غیر از شما گفته بود به خود نمی گرفتم و می گفتم از بی سوادی و اطلاعات کم است اما اطلاعات شما به من ثابت شده .
    باز هم متاسفاته باید بگویم که من گفته ام را درباره فرمانی که در #C نیست و در VB هست کاملا با تحقیق گفته ام. امکان تعریف پارامتر اختیاری(Optional Parameter ) در #C وجود ندارد.

    البته اگر شما فکر می کنید که هست خوب معادل آن را در #C بگویید . و باز هم می گویم که فرمان های دیگری هم وجود دارد که در #C نیست که خواهم گفت .

    و اما :
    بابا شما عاشقان سینه چاک vb که هر چی از دهنتون در اومد به توسعه دهندگان نرم افزار که از C#‎ استفاده می کنند گفتید!! یعنی برنامه نویسان C#‎ اینقدر پرت اند؟
    نه دوست عزیز برنامه نویسان #C پرت نیستند اما ایرانی ها همه به دنبال حرفند. شما خودتان می دانید که اگر ++C امکاناتی برای کنترل مستقیم حافظه داشته باشد آن امکانات در #C وجود ندارد.

    #C با دو هدف به وجود آمد.

    1- جلب برنامه نویسان ++C برای Application و Web نویسی.
    2- جلب برنامه نویسان Java برای Application و Web نویسی.
    (یادم نیست تو کدوم قسمت سایت ماکروسافت این رو خوندم وگرنه لینک می دادم. اویل ارائه #c این مطلب را دیده بودم. البته در سایت ماکروسافت.)

    پس عملا برتری های زبان C از بین می رود و می ماند چیزهایی ساده مانند :

    سادگی و زمان یادگیری.
    سینتکس ساده تر .
    ایراد یابی ساده تر.
    خواندن راحت تر کد ها .
    و...

    که برنامه نویس باید آن را تشخیص دهد. اما همه ما ایرانی ها دنبال حرف هم می دویم تحقیق نمی کنیم. برای همین بیشتر #C کار ها برای ابهت و بزرگی نام C که تقریبا هیچ ربطی به#C که آنها در ذهم دارند ندارد می شوند و معمولا غرور کاذبی برای برتری نداشته زبان شان دارند.برای همین 80% بدون آگاهی به آن روی می آورند.

    تاحالا دقت کردی که حتی خود شما هم فکر نمی کردی VB برتری هایی داشته باشد؟؟؟
    تاحالا دقت کردی که تو این 100 و خورده ای پوست که زده شده هیچ کس به این نکته اشاره نکرده بود؟؟؟
    شما سومین #C کاری بودی که با من وارد بحث شدید. دقت کردی که همه رفتند و من ماندم با کسانی که تازه وارد بحث می شوند با دلایل گوناگون VB را نقظ می کنند.
    و دقت کردی که کسی نتوانست ایرادی اساسی بهVB وارد کند؟؟؟
    اما خوب همه این ها به یک دلیل بود :
    به دلیل اینکه کسی تفاوت های دو زبان را مورد بررسی قرار نداده بود. و این یعنی اینکه کمتر کسی برای انتخاب زبان تحقیق می کند و زبان های مختلف را مورد بررسی قرار می دهد.
    البته متاسفانه...

    شما که VB هم می دانید آیا این را هم می دانید که در VB می توان تاریخ را به این صورت تعریف کرد؟
    Dim Da as Date = #01/01/2010#
    آیا در #C شما می توانید به این صورت متغییر تاریخ را مقدار دهی کنید؟
    و آیا این را می دانستید

    و N چیز مختلف دیگر که دست ما را در برنامه نویسی VB باز می گذارد و در #C شما باید با کد نویسی بیشتر همان اعمال را انجام دهید و اسم آن را حرفه ای گری در کد نویسی می گذارید!!!

    من واقا متاسفم.
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  28. #108

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط hossein-khoshseyar مشاهده تاپیک
    دوست عزیز شما که اینقدر طرفداری وی بی رو می کنس چرا جواب سئوال من رو ندادید تو چند تا پست قبل یکی از بزرگترین عیب های وی بی رو نسبت به سی شارپ گفتم که اونم سرعت پایین وی بی . در باره این موضوع چه جوابی داری؟
    سلام دوست عزیز .

    من حرفی که رو هوا زده شده با شد را جواب نمی دهم.
    شما و همه برنامه نویسان .Net می دانند که کامپایلر هر دوزبان یکی است و این حرف شما محال به نظر می رسد. اگر این حرف را درباره ++C می گفتید قابل حضم بود اما درباره #C ...

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

    کدتان را برسی کنید ، متغییر ها را به حداقل برسانید و در صورت حل نشدن مشکل کدتان را در سایت قرار دهید.

    موفق باشید...
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  29. #109

    Thumbs up نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط Mani_rf مشاهده تاپیک
    باز هم متاسفاته باید بگویم که من گفته ام را درباره فرمانی که در #C نیست و در VB هست کاملا با تحقیق گفته ام. امکان تعریف پارامتر اختیاری(Optional Parameter ) در #C وجود ندارد.

    البته اگر شما فکر می کنید که هست خوب معادل آن را در #C بگویید . و باز هم می گویم که فرمان های دیگری هم وجود دارد که در #C نیست که خواهم گفت .

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

    void func(int a)
    {
    }
    void func(int a, int opt)
    {
    }

  30. #110

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

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

    و N چیز مختلف دیگر که دست ما را در برنامه نویسی VB باز می گذارد و در #C شما باید با کد نویسی بیشتر همان اعمال را انجام دهید و اسم آن را حرفه ای گری در کد نویسی می گذارید!!!

    من واقا متاسفم.
    1- یک خط کد در صفحه ی قبل نوشتم . لطف کنید معادل آنرا در وی بی بنویسید .
    2- نظر خودتون رو در مورد مقایسه خوانایی و نویسایی بین این دو زبان بنویسید .

  31. #111
    کاربر دائمی آواتار emadfa
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    رشت
    پست
    193

    Thumbs up نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    سلام مانی جان!

    3 نکته نهایی:
    1) من سالها با vb.net برنامه نویسی کردم. اکنون نیز کدی از این زبان را نمی یابم که معادلی در #C نداشته باشد. این تجربیات شخصی من است! به هر حال منتظر مقاله شما هستم و خیلی دوست دارم که برترهای vb را به شکل کلی ببینم!
    2) من با آگاهی کامل #C را انتخاب کردم! من از هیچ زبانی به #C مهاجرت نکردم! چون مهاجرت به معنای ول کردن کامل زبان اولیه است در حالی که من هنوز برنامه نویس ++C هستم! متشکرم که اشاره کردید قدرت #C و ++C چگونه است. فکر می کنم که سایر برنامه نویسان #C ( جز اکثریت در ایران! ) نیز از اول با .Net آشنا هستند.
    3) همین جا از همه دوستانی که در این تاپیک شرکت کردند و باعث افزایش اعتبار آن شدند تشکر می کنم. من به دلیل یک سری مسایل ( توسعه نرم افزار آینده ) از ادامه بحث در این تاپیک ( و کل سایت تا مدتی ) اعلام انصراف می کنم. از دوست بسیار عزیزم Mani_rf کمال تشکر را دارم.

    موفق باشید.

  32. #112

    Wink نقل قول: دلایل مهاجرت از visual basic به سی شارپ

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

    من هم چند روزی سایت را ترک می کنم تا به کارهای عقب افتاده ام از جمله تکمیل همین مقاله برسم و کمی اطلاعات خودم و سایر برنامه نویسان را در باره دوزبان افزایش دهم. از شما هم می خواهم که درباره دو مطلبی که درباره تفاوت های دوزبان و ویژیگی هایی که در #C نیست گفتم کمی تحقیق بفرمایید.

    با سپاس فراوان.
    مانی رضایی...
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  33. #113

    Wink نقل قول: دلایل مهاجرت از visual basic به سی شارپ

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

    void func(int a)
    {
    }
    void func(int a, int opt)
    {
    }


    شوخی می کنی دوست عزیز؟؟؟
    این دوتا چه ربطی به هم دارند؟؟؟؟
    در ضمن Overload کردن چند خط به کد های برنامه اضافه می کنه؟؟؟
    شما فکر کنید که یک Sub یا Procedure مثلا 700 خط کد داشته باشد. برای سه متغیر اختیاری شما باید 3 بار تابع را کپی کنید یعنی 2800 خط که 1400 خط اون اضافی تازه برای اینکار باید 700 را به توان 3 رسوند تا همه حالت های اون را داشته باشه...

    و Overload در vb هم وجود دارد.


    برای تبدیل کد هم 3-4 روز دیگه که برگشتم معادلش را بهت میگم و میگم که چه فرمان هایی در Vb برای راحتی کار هست.
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  34. #114

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

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


    شوخی می کنی دوست عزیز؟؟؟
    این دوتا چه ربطی به هم دارند؟؟؟؟
    در ضمن Overload کردن چند خط به کد های برنامه اضافه می کنه؟؟؟
    شما فکر کنید که یک Sub یا Procedure مثلا 700 خط کد داشته باشد. برای سه متغیر اختیاری شما باید 3 بار تابع را کپی کنید یعنی 2800 خط که 1400 خط اون اضافی تازه برای اینکار باید 700 را به توان 3 رسوند تا همه حالت های اون را داشته باشه...

    و Overload در vb هم وجود دارد.


    برای تبدیل کد هم 3-4 روز دیگه که برگشتم معادلش را بهت میگم و میگم که چه فرمان هایی در Vb برای راحتی کار هست.

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

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

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

    برای نوشتن مشابه آن کد یک خطی که یک دستور شرطی ساده بود هم ما در خدمتیم .

    نظر خودتون رو در مورد مقایسه ی نویسایی و خوانایی هم سوال کرده بودم که جوابی ندادید .

  35. #115
    کاربر دائمی آواتار Microsoft.net
    تاریخ عضویت
    آبان 1382
    محل زندگی
    مشهد
    پست
    584

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط Mani_rf مشاهده تاپیک
    دوست عزیز شما vb کار و من هم vb کار. شما VB و #C بلدید و من هم همینطور ؛ در این شکی نیست اما اگر شما به هر دو زبان تسلط داشتی این حرف را نمی زدی . در VB امکاناتی هست که در #C نیست.
    برای مثال خدمت شما و همه بچه های سایت عرض می کنم که در #C شما امکان پیش و پا افتاده ای مثل تعریف پارامتر اختیاری وجود ندارد. (Optioal Parameters).
    اگر کسی هست که می گه میشه بگه.

    امکان تعریف چنین روالی در #C وجود ندارد.

    Public Sub Test(Optional Byval Parameter as Integer)

    End Sub


    فقط برای نمونه این را لو دادم . چندین امکان دیگر در VB هست که در #C نیست.
    در مقاله ای که به زودی در سایت قرار خواهم داد چندین مورد دیگر را برایتان می آورم تا به ضعف های #C پی ببرید.

    اما از همه این گذشته آقا عماد قضیه سیمیکالون چی شد؟؟؟

    متاسفانه بعضی وقتها سطحی نگری و نا آگاهی افراد باعث بوجود اومدن تعصبات بی جا میشه و جالبه که این موضوع رو با اکراه لو دادن میگن (مثل اینکه کشف بزرگی رو فاش کرده باشن!) ، این Optional بودن پارامتر ها متاسفانه از vb6 به vb.net با ارث رسیده و به علت هزینه های سنگین تصحیح کد مشتریان مایکروسافت حذف نشده ، ولی طبق اطلاعاتی که دارم تیم وی بی مایکروسافت امکان حذف این Option رو در ورژن های آتی داره برسی میکنه دلایلشم زیاده از ناخوانا و ابهام انگیز بودن کد موقعی که ترکیب پارامترهای Optional با غیر Optional بگیرید تا پیچیده شدن فرایند کامپایل و همچنین تولید کد IL تا اشکالاتی که در فاز Optimization برای کامپایلر بوجود میاره ... هرچند مطمینم الان یکی دیگه از دوستان پیدا میشه میگه نخیر این موضوع خوانایی برنامه رو بالا میبره (فکر میکنم توی تعریف خوانایی با هم اختلاف اساسی داریم ) در هرصورت یک وی بی کار وقتی به کد وی بی نگاه میکنه هر چقدر هم کد کثیف باشه به نظرش مفهوم تر میاد تا یه زبون دیگه واسه همینه که میگم تعریف خوانایی کد ما با هم متفاوته

  36. #116

    Wink کمبودی جبران ناپذیر

    دوستان عزیز باز هم سلام.
    اول از همه عضر خواهی من را برای چند وقت نبودنم بپذیرید تا بریم سراغ باقی ماجرا.

    اول درباره کدی که pirmard جان گفتند ترجمه کن. این کد شما بود درسته؟

    if (i++) ++j;
    دوست عزیز کد شما از لحاظ دستوری ایراد دارد، میگی نه؟؟ امتحان کن . شما به عنوان شرط نوشتی ++I
    مگر می توان برای شرط دستور انتصاب به کار برد؟
    بهتر نیست کمی بیشتر دقت کنی؟؟؟

    و بعد از آن اگر منظور شما :

    if (i) ++j;
    است باید بگویم بله معادل آن می شود :
    If i then j+=1

    دوست عزیز Increment و Decrement بهترین شکل انجام این کارند و من این را قبول دارم اما فراموش نکن که
    I++;

    برابر با 4 کاراکتر و :
    I +=1

    هم برابر 4 کاراکتر است.

    اما اگر قرار باشد با 2 جمع شود چی ؟؟؟

    و اما امکان دارد شما این کد را برای من به #C تبدیل کنی؟

    Dim TestLableObject As New Label With {.Text = "Test", .ForeColor = Color.FromArgb(QBColor(6)), .Top = 125}

    و یا این کد را :
    ِDim S as String ="01/01/2001"
    Dim D as Date = S
    البته با فرض اینکه S متغییری است که که کاربر به همین شکل برای شما آن را مقدار دهی می کند


    و اما
    :
    به شما نشان دادم که بدونین بر خلاف تصور شما امکان تعریف پارامتر اختیاری در سی شارپ وجود داره .


    دوست عزیز به این نمی گویند وجود پارامتر اختیاری به این می گویند درپوش گذاشتن بر نبود پارامتر اختیاری. عملکرد این دو کد کاملا متفاوت است در قسمت بالا گفتم که اگر شما تابعی با 4 متغیر اختیاری داشته باشید که دارای مثلا 200 خط کد باشد و 10 متغیر متفاوت و بخواهید آن را با Overloading پیاده سازی کنید باید 4^4*200 خط کد بنویسید. و 10 * 4 متغییر تعریف کنید که حجم کلاس شما را X برابر افزایش خواهد داد. (هم از لحاظ تعداد خط کد و هم از لحاظ حافضه اشغالی.)

    و اما:

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


    بله دوست عزیز من در این مورد کاملا با شما موافقم ، زیاد شدن تعداد خطوط برنامه نقطه ضعف نیست ؛ اما به شرط آن که شما بدانید که بهترین الگوریتم را برای انجام عمل انتخاب کرده اید. و زبان مجبورتان نکند برای اختیار دادن به خودتان برای مقدار دهی یک پارمتر، تابع را دو یا سه بار بنویسید.

    و اما :


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


    من در 10 سال سابقه برنامه نویسی ام چنین چیزی نه شنیده نه دیده ام. شما این مطلب را کجا خوانده اید ! لینک بدید تا اطلاعات ما هم بیشتر شود.

    به صورت واضح بگید که آیا این رو قبول دارید یا خیر ؟ اصلا بگید که آیا صحبت شما بر برنامه نویسی شی گرا تکیه داره ؟ یا صرفا تعداد خطوط کمتر و تعداد سمی کالون کمتر تنها ملاک کار شماست ؟


    به صورت واضح می گویم که هنگامی که پارامتر اختیاری در اختیار برنامه نویسی سان قرار دارد بهترین راه سریع ترین و کوتاه ترین راه است (البته منظورم از سریع و کوتاه تفاوت 10 یا 20 کاراکتر نیست بلکه تفاوت 40 یا 50 خط است).
    نه دوست عزیز من این را قبول ندارم ؛ این حرف شما فقط تعسب است.

    و اما :
    نظر خودتون رو در مورد مقایسه ی نویسایی و خوانایی هم سوال کرده بودم که جوابی ندادید .


    دوست عزیز شما را نمی دانم اما اگر در مقابل من این دو کد را قرار دهند :
    : #C
    {

    {

    {

    : Vb

    End IF

    Next

    While


    من می گویم تشخیص حلقه و شرط در VB راحت تر است تا در #C . مخصوصا که در #C باید آکولاد ها گذاشته شوند اما در VB انتهای حلقه و شرط توسط زبان گذاشته می شودند و نیازی به نوشتن نیست.

    و اما Microsoft.netعزیز .



    متاسفانه بعضی وقتها سطحی نگری و نا آگاهی افراد باعث بوجود اومدن تعصبات بی جا میشه و جالبه که این موضوع رو با اکراه لو دادن میگن (مثل اینکه کشف بزرگی رو فاش کرده باشن
    !)


    من کاملا با این حرف شما موافقم ، متاسفانه بعضی وقتها سطحی نگری و نا آگاهی افراد باعث بوجود اومدن تعصبات بی جا میشه، اما این نا آگاهی از کجا سرچشمه می گیرد؟؟؟


    این
    Optional بودن پارامتر ها متاسفانه از vb6 به vb.net با ارث رسیده


    بله دوست عزیز این امکان از نسخه های قبلی VB به آن ارث رسیده البته خوشبختانه و از VB5 نه 6.

    و به علت هزینه های سنگین تصحیح کد مشتریان مایکروسافت حذف نشده


    دوست عزیز چه هزینه سنگینی؟ مگر فرمان Let و SET حذف شد ما چیزی گفتیم و یا نوع Any یا شئ Object ،Line , OLE حذف شد و یا ... حذف شد ما دم زدیم؟؟؟

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

    ولی طبق اطلاعاتی که دارم تیم وی بی مایکروسافت امکان حذف این Option رو در ورژن های آتی داره برسی میکنه دلایلشم زیاده از ناخوانا و ابهام انگیز بودن کد موقعی که ترکیب پارامترهای Optional با غیر Optional بگیرید تا پیچیده شدن فرایند کامپایل و همچنین تولید کد IL تا اشکالاتی که در فاز Optimization برای کامپایلر بوجود میاره ...



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

    و اما در آخر من نه ، ماکروسافت و دیگر سایت هایی که امکانات4 #C را اعلام می کنند مژده داده اند که این امکان در نسخه 4 #C به آن اضافه خواهد شد. یعنی کمبودی در #C جبران خواهد شد و اگر هم به قول شما این کار هزینه سنگینی دارد سی شارپ هم این هزینه سنگین را متحمل خواهد شد.

    این هم لینک که نگویید از خودم این حرف را در آوردم :


    و اگر بیشتر می خواهید این عبارت را در Google جستجو کنید:
    optional parameters C#‎ 4

    و این هم پیش نمایشی از پیاده سازی این امکان در 4 #C برای دوستان علاقمند :



    public TextBoxInfo(
    [Optional, DefaultParameterValue("")] string text,
    [Optional, DefaultParameterValue(10f)] float size,
    [Optional, DefaultParameterValue(50f)] float width,
    [Optional] Color color)
    {
    this.text = text;
    this.size = size;
    this.width = width;
    this.color = color;
    }
    و در آخر هم تکیه ای می زنیم بر جمله دوست عزیزمان :

    متاسفانه بعضی وقتها سطحی نگری و نا آگاهی افراد باعث بوجود اومدن تعصبات بی جا میشه
    واقعا امان از این ناآگاهی ها و سطحی نگری ها...

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





    آخرین ویرایش به وسیله Mani_rf : سه شنبه 27 مرداد 1388 در 17:13 عصر دلیل: مهکم کاری
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  37. #117
    کاربر دائمی آواتار emadfa
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    رشت
    پست
    193

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    متاسفانه بعضی وقتها سطحی نگری و نا آگاهی افراد باعث بوجود اومدن تعصبات بی جا میشه و جالبه که این موضوع رو با اکراه لو دادن میگن (مثل اینکه کشف بزرگی رو فاش کرده باشن!)
    کاملا موافقم. زبانی که از نسخه kindergarten vb 6 به ازث رسیده! من از این دوست عزیز تعجب می کنم! همه دنیا دارن از زبانهای C-Style استفاده می کنند اون وقت دوستمون می گه که به زودی vb جایگزین #C می شه یا مثلا سبک vb از ++C بهتره!!!!
    من که تا الان با brace یا semicolon مشکلی پیدا نکردم فکر نمی کنم در دنیا به جز برنامه نویسای vb کس دیگه ای هم با اینا مشکل داشته باشه!!!

    راستی کتاب N برتری vb بر #C چی شده؟؟؟

  38. #118

    Wink نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    سلام عماد ، خوشحالم برگشتی.
    اما من کی گفتم که VB جای C را می گیره!!!!!!!!!!!!!!!!!!!

    آقا من فقط یک بار گفتم با وجود راحتی یادگیری ، Syntax ساده تر و .... کاربران و بازار کار بیشتری در آینده خواهد داشت.
    اصلا اگر من گفتم نقل قول کنید. اما سیمسکالون هیچ توجیهی ندارد قبول داری یا نه؟
    اما VB هم برای خود برتری هایی دارد.

    راستش را بخوای مقاله را حدودا 10 صفحه اش را تمام کردم اما یکم مونده. به اندازه کافی وقت و انرژی برای تموم کردنش ندارم اما خوب حتما تمومش می کنم
    آخرین ویرایش به وسیله Mani_rf : چهارشنبه 28 مرداد 1388 در 19:07 عصر
    دانلود حسابخانه مانی، برنامه مدیریت درآمد و هزینه رایگان

    هر آنچه که هستیم، نتیجه افکاریست که در گذشته داشته ایم. (بودا)
    واحد فاصله «متر» نیست، «اشتیاق» است. اگر مشتاقش باشی حتی يک قدم هم فاصله ای دور است.

    رنگ رنگی | آموزش

  39. #119
    کاربر تازه وارد آواتار MohsenPS
    تاریخ عضویت
    خرداد 1385
    محل زندگی
    تهران
    پست
    46

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    سلام
    قصدم دفاع از هیچکدوم از طرفین نیست، فقط فکر کردم خوبه تجربه خودم رو در مورد لزوم وجود پارامترهای انتخابی با شما مطرح کنم. نگاه کنید به کد زیر که برای باز کردن یک فایل اکسل در VB ازش استفاده میشه :
    ExcelWBook = ExcelApp.Workbooks.Open("C:\MyFile.xlsx")

    حالا ببینید برای باز کردن همون فایل در #C من باید چند پارامتر غیر ضروری به تابع بفرستم :
    ExcelWBook = ExcelApp.Workbooks.Open("C:/MyFile.xlsx", 0, false, 5, "", "",false, Excel.XlPlatform.xlWindows, "" ,true ,  false, 0, true, false,  false);


    امیدوارم همونطور که Mani_rf گفت این نقیصه در نسخه بعدی #C برطرف بشه، چون #C هم به اندازه VB برام دوست‌ داشتنیه.

  40. #120

    نقل قول: دلایل مهاجرت از visual basic به سی شارپ

    نقل قول نوشته شده توسط Mani_rf
    دوستان عزیز باز هم سلام.

    مگر می توان برای شرط دستور انتصاب به کار برد؟
    دوست عزیز Increment و Decrement بهترین شکل انجام این کارند و من این را قبول دارم اما فراموش نکن که
    I++;

    برابر با 4 کاراکتر و :
    I +=1

    هم برابر 4 کاراکتر است.
    اما اگر قرار باشد با 2 جمع شود چی ؟؟؟





    اصلا منظور تعداد کرکتر و سمیکالن نبود دوست عزیز . منظور استفاده از تقدم و تاخر مقداردهی و استفاده از مقدار آن بود .

    واضحتر بگم :
    int i;
    i = 0;
    if (i++ == 1) System.Windows.Forms.MessageBox.Show("ok");

    و مقایسه با :

    int i;
    i = 0;
    if (++i == 1) System.Windows.Forms.MessageBox.Show("ok");

    حال منظور روشن شد ؟ معادل این دو چه می شود در وی بی ؟
    (تاکید می کنم باز هم منظور من شمارش سمیکالن و آکولاد باز و ... نیست )

    نقل قول نوشته شده توسط Mani_rf مشاهده تاپیک
    و اما :
    نقل قول نوشته شده توسط Mani_rf مشاهده تاپیک
    نقل قول نوشته شده توسط Mani_rf مشاهده تاپیک
    دوست عزیز به این نمی گویند وجود پارامتر اختیاری به این می گویند درپوش گذاشتن بر نبود پارامتر اختیاری. عملکرد این دو کد کاملا متفاوت است

    من نمی دونم چرا نمی خاید قوبل کنید که سی شارپ پارامتر اختیاری رو هم ساورت می کنه ؟ ! در هر صورت من نشون دادم که پارامتر اختیاری رو میشه استفاده کرد با آورلودینگ و این یعنی اینکه پارامتر اختیاری وجود داره .
    اینکه کد طولانی میشه برای نوشتن یه کارکرد خاص به معنی ساپورت نکردن اون نیست ! در صورتی که ظاهرا شما گفتید پارامتر اختیاری نداریم چون کدش طولانیه !
    گفته بودید عملکرد این دو متفاوته . ممکنه فقط در مورد تفاوت این دو در عملکرد بنوییسید .

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


    بله دوست عزیز من در این مورد کاملا با شما موافقم ، زیاد شدن تعداد خطوط برنامه نقطه ضعف نیست ؛ اما به شرط آن که شما بدانید که بهترین الگوریتم را برای انجام عمل انتخاب کرده اید. و زبان مجبورتان نکند برای اختیار دادن به خودتان برای مقدار دهی یک پارمتر، تابع را دو یا سه بار بنویسید.

    //

    دوست عزیز شما را نمی دانم اما اگر در مقابل من این دو کد را قرار دهند :
    : #C
    {

    {

    {

    : Vb

    End IF

    Next

    While


    من می گویم تشخیص حلقه و شرط در VB راحت تر است تا در #C . مخصوصا که در #C باید آکولاد ها گذاشته شوند اما در VB انتهای حلقه و شرط توسط زبان گذاشته می شودند و نیازی به نوشتن نیست.
    بحث در این مورد یه کم تخصصی تره . و خوب حدس می زنم که شما زیاد طالب دونستن در این موارد نباشین وگرنه در درسهای رشته ی کامپیوتر به بررسی این موارد زیاد پرداخته میشه .
    فقط می تونم بگم که حرف شما مثل اینه که بگین زبان فلان مثلا تابغ فاکتوریل را دارد پس خوب است اما زبان فلان چون فاکتوریل ندارد و باید مثلا هی ضرب کنیم و طولانیه بد است ! که خوب مسلما چنین نیست . چیزی که شما تمام هم و غمتان را بر روی آن گذاشته اید (ساده نویسی) همان نویسایی است )writability( که من نظر شما رو در مورد خوانایی و نویسایی پرسیدم اما جواب شفاف نگرفتم که فکر می کنم لازمه براتون مجدد توضیح بدم :
    نویسایی یا رایتیبیلیتی به سهولت در نوشتن کد ربط دارد و بر عکس خوانایی یا ریدیبیلیتی به سهولت در خواندن کد
    مثلا همین مثالی که شما زده اید و آکولادهای سی شارپ را با next , while و ... مقایسه کرده اید مثال روشنی است . با توجه به اینها روشنه که نوشتن آکولاد ساده تر از نوشتن کلمات رزور وی بی ه . که این یهنی نویسایی بالاتر . از طرف دیگه به قول شما تضخیص حلقه و شرط (مخصوصا" تو در تو) در وی بی راحت تره و این یعنی خوانایی بالاتر .
    در مورد این مثال و مقایسه نویسایی و خوانایی اگر شبهه ای دارید بفرمایید .
    همیشه بین خوانایی و نویسایی رابطه ی عکس وجود داره . هر چه نویسایی بره بالا خوانایی میاد پایین و برعکس . زبان هایی که کاربران خودشون رو حرفه ای می دونن ، سعی در بالابردن نویسایی می کنن (تا سزعت نوشتن کد بالا بره) و از طرفی چون کاربر خودشون رو حرفه ای می دونن زیاد نگران ناخوانا شدن کد نیستن .(امیدوارم صرفا کلمه ی حرفه ای بودن و ... باعث موضع گیری شما نشه)
    به صورت تجربی هم دیدین که کسانیکه سی شارپ کار هستن برای اولین بار که کدهای وی بی رو ببینن یه چیزایی متوجه میشن . اما یه وی بی کار معمولا زمانیکه کد سی شارپ رو ببینه کمی گیج میشه و معمولا اولین ایرادی که می گیره از همین آکولادهاست و میگه که گیج کنندس . که خوب حرف قابل قبولیه .


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

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


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

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







صفحه 3 از 6 اولاول 12345 ... آخرآخر

برچسب های این تاپیک

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

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