PDA

View Full Version : visual basic 2005 , VB.NET



محسن بابائی
پنج شنبه 15 تیر 1385, 08:25 صبح
سلام
زبان برنامه نویسی که من دارم کار می کنم VB 6 هست و می خوام از دل بکنم و به Vb 2005 یا VB.NET برم ولی نمی دونم کدو را انتخاب کنند.
می خواستم بدونم چه تفاوتهایی این دو باهم دارند.
ممنون

m_nejad
پنج شنبه 15 تیر 1385, 09:31 صبح
vb2005 در واقع همان vb.net هست

mostafa_leman
پنج شنبه 15 تیر 1385, 09:40 صبح
هردو نرم افزار یکی هستند اما 2005 قابلیت های بیشتری داره
بهتون توصیه میکنم با 2005 شروع کنین
اگه کمکی خواستین در خدمتم

محسن بابائی
پنج شنبه 15 تیر 1385, 09:52 صبح
رسی که جواب دادین
حالا تفاوت بارزی که با VB6 دارند چیه؟ و چرا باید VB.NET کار کنیم

SYSMAN
دوشنبه 23 مرداد 1385, 12:57 عصر
تفاوتش به حدی هست که اگر با NET. کار کنی دیگه با VB6 نمی تونی کار کنی.

comp_j
چهارشنبه 17 آبان 1385, 23:03 عصر
NET. خیلی قدرتمند تر VB6 است و کار کردن در NET. آسانتر VB6 است.

SeniorDevs
پنج شنبه 10 اسفند 1385, 23:36 عصر
دوست عزیز، من ابتدا تفاوت های VB6.0 را با VB.NET بیان می کنم و سپس در مورد آن توضیح می دهم و سپس خودتان قضاوت کنید:


در زبان VB6.0 برای استفاده از تکنولوژی Multi-Threading باید با مفاهیم بسیار پیچیده TLS آشنا باشید تا بتوانید یک برنامه Safe Threading را طراحی کنید اما در VB.NET شما در صورت دانستن مفاهیم ابتدایی Multi-Threading قادر هستید برنامه متوسطی بسازید نه حرفه ای. چون هنوز VB.NET بطور کامل این تکنولوژی را Support نمی کند.
در زبان VB6.0 شما یک جعبه ابزار ToolBox نسبتا کاملی در اختیار دارید که تا حد خوبی احتیاجات برنامه نویسان متوسط را برآورده می کند اما Vb.NET دارای جعبه ابزار بسیار گسترده ای است تا حدی که برنامه نویسان را تنبل کرده است و در واقع برنامه نویس اصلا دیگر کدی نمی نویسد تنها Property های کنترل ها را set می کند که این کار شرکت Micr$soft در آینده می تواند آینده ما برنامه نویسان را به خطر بیندازد .
برنامه های کامپایل شده با زبان VB6.0 به ماشین مجازی MSVBVM60.DLL برای اجرا شدن نیاز دارند که حجمی در حدود 1.5 مگابایت دارد اما برنامه های کامپایل شده با VB.NET به NET FrameWork نیاز دارند که حجمی در حدود 20 مگابایت دارد و دارای Class های بیشماری در اکثر زمینه ها است که واقعا برنامه نویسان را مفت خور کرده است.
زبان VB6.0 قادر است با استفاده از Webclass ها برنامه های کاربردی مبتنی بر ASP تولید کند که تا امروز بیشترین استفاده را در دنیا داشته است اما VB.NET با استفاده از WebForm ها برنامه های کاربردی مبتنی بر ASP.NET تولید می کند که به نظر شخصی من به غیر از مفت خوری هایی که در ASP.NET شده است تفاوت چندانی با ASP ندارد همانطور که ASP.NET حتی نتوانسته است بزرگترین بانک اینترنتی جهان E-Gold را مجبور به استفاده از خود کند فقط کافی است به آدرس https://www.e-gold.com بروید تا ببینید که تمامی صفحات آن با ASP نوشته شده اند بنابراین ASP.NET و ASP تفاوت چندانی با هم ندارند.
فایل های خروجی VB6.0 بصورت 32 بیتی کامپایل می شوند و VB.NET هم همینطور است.
فایل خروجی VB6.0 بصورت EXE میباشد یعنی به زبان ماشین 80x86 در آمده است و دیگر نمی توان آن را به شکل سورس کد اولیه اش درآورد اما از آنجایی که VB.NET فایل EXE خروجی اش را به زبان ماشین کامپایل نمی کند بنا براین به راحتی می توان با یک VB.NET Decompiler آنرا به شکل سورس کد اولیه اش درآورد فقط کافی است یک Search در اینترنت بکنید. بنابراین VB6.0 بسیار بسیار ایمن تر و قابل اطمینان تر است چون تمام زحمات برنامه نویسان را به یکباره نابود نمی کند.
. . . . . .حال می خواهم یک نتیجه گیری کنم :

اگر تمام مطالب مستند بالا را خوب خوانده باشید متوجه می شوید که بین VB6.0 و VB.NET تفاوت چندانی وجود ندارد فقط اگر می خواهید با کنترل های VB.NET بازی کنید بروید بسوی VB.NET و اگر می خواهید واقعا به معنای واقعی کلمه برنامه نویسی کنید از نظر من VB6.0 تمام احتیاجان یک برنامه نویس متوسط و حرفه ای را یکجا برآورده کرده است و از امنیت بالاتری هم بر خوردار است.

و بر طبق آخرین اعلامیه ها، شرکت Microsoft در نظر دارد پشتیبانی از VB6.0 را به مدت 10 سال دیگر تمدید کند و همچنین تمامی فایل های RunTime زبان VB6.0 را هم برای راحتی کار برنامه نویسان بصورت پیش فرض در ویندوز Vista قرار داده است. در link زیر شما می توانید سند این مطلب را ببینید:


http://msdn2.microsoft.com/en-us/vbrun/ms788708.aspx

دوست عزیز این جمله یکی از بزرگترین برنامه نویسان جهان است که همیشه سعی کن بخاطر داشته باشی:

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

با آرزوی موفقیت برای شما:متفکر:

CodeMasterX
جمعه 03 فروردین 1386, 01:20 صبح
SeniorDevs تو یه تاپیک دیگه در مورد تفاوت ها و برتری های VB6 و VB.NET بحث کرده.یه جستجو بکن.تاپیک ها و مقاله های زیادی تو همین سایت در این باره هستند.پیشنهاد می کنم تو سایت خود مایکروسافت پیش درآمد دات نت رو بخونی.

http://msdn.microsoft.com/vb

حامد مصافی
جمعه 03 فروردین 1386, 11:29 صبح
@ SeniorDevs (http://www.barnamenevis.org/forum/member.php?u=34897) :
ظاهراً تو فقط نگران مفت خور بار اومدن برنامه نویسان هستی!

اما قبل از اون بذار ازت بپرسم با کدام یک از زبان های Basic و Visual Basic و .NET Basic stntax (VB.NET) کار کردی؟؟



در زبان VB6.0 شما یک جعبه ابزار ToolBox نسبتا کاملی در اختیار دارید که تا حد خوبی احتیاجات برنامه نویسان متوسط را برآورده می کند اما Vb.NET دارای جعبه ابزار بسیار گسترده ای است تا حدی که برنامه نویسان را تنبل کرده است و در واقع برنامه نویس اصلا دیگر کدی نمی نویسد تنها Property های کنترل ها را set می کند که این کار شرکت Micr$soft در آینده می تواند آینده ما برنامه نویسان را به خطر بیندازد .
برنامه های کامپایل شده با زبان VB6.0 به ماشین مجازی MSVBVM60.DLL برای اجرا شدن نیاز دارند که حجمی در حدود 1.5 مگابایت دارد اما برنامه های کامپایل شده با VB.NET به NET FrameWork نیاز دارند که حجمی در حدود 20 مگابایت دارد و دارای Class های بیشماری در اکثر زمینه ها است که واقعا برنامه نویسان را مفت خور کرده است.خود وی بی هم کمی ما رو تنبل کرده! چطوره بریم به سمت اسمبلی (برای نوشتن برنامه های تجاری مون) ؟؟؟ در روندی که ساختار برنامه سازی داره به سمت مهندسی شدن میره (و از حالت کلاسیک الگوریتمیک فاصله میگیره) این خیلی طبیعیه که امکاناتی به زبان اضافه بشه!





زبان VB6.0 قادر است با استفاده از Webclass ها برنامه های کاربردی مبتنی بر ASP تولید کند که تا امروز بیشترین استفاده را در دنیا داشته است اما VB.NET با استفاده از WebForm ها برنامه های کاربردی مبتنی بر ASP.NET تولید می کند که به نظر شخصی من به غیر از مفت خوری هایی که در ASP.NET شده است تفاوت چندانی با ASP ندارد همانطور که ASP.NET حتی نتوانسته است بزرگترین بانک اینترنتی جهان E-Gold را مجبور به استفاده از خود کند فقط کافی است به آدرس https://www.e-gold.com (https://www.e-gold.com/) بروید تا ببینید که تمامی صفحات آن با ASP نوشته شده اند بنابراین ASP.NET و ASP تفاوت چندانی با هم ندارند.ASP.NET و ASP با هم قابل مقایسه نیستند.
در ASP.NET ساختار پروژه های کاربردی به صورت واحد تعریف می شود. بدین معنی که در ASP.NET گسترشگر اعمال مستقیمی روی کل سایت دارد اما در ASP کلاسیک اینگونه نیست.
در ASP.NET کنترل های وب معرفی شدند که باعث بوجود آمدن نقش برنامه نویس ثانویه در روند شکل گیری پروژه کاربردی شما خواهد شد. که با الطبع اطمینان و سرعت در روند برنامه سازی را در پی خواهد داشت.
و...
وقتی داری از تغییر و تحول در مورد یک مجموعه بزرگ صحبت می کنی هزینه های جانبی این کار رو در نظر داشته باش. e-gold سیستم خودشو داره. و به خوبی هم داره کار می کنه. حالا چرا باید بخواد بی خود و بی دلیل این سیستم رو به ASP,NET ارتقا بده؟؟
ضمن اینکه یاهو و گوگل دارن از ASP.NET استفاده می کنند (هر دو سال پیش به نسخه 2.0 ارتقا دادند)

فایل خروجی VB6.0 بصورت EXE میباشد یعنی به زبان ماشین 80x86 در آمده است و دیگر نمی توان آن را به شکل سورس کد اولیه اش درآورد اما از آنجایی که VB.NET فایل EXE خروجی اش را به زبان ماشین کامپایل نمی کند بنا براین به راحتی می توان با یک VB.NET Decompiler آنرا به شکل سورس کد اولیه اش درآورد فقط کافی است یک Search در اینترنت بکنید. بنابراین VB6.0 بسیار بسیار ایمن تر و قابل اطمینان تر است چون تمام زحمات برنامه نویسان را به یکباره نابود نمی کند.نه Vb.NET Decompiler بلکه .NET Decompiler چون بعد از کامپایل کردن برنامه های دات نت دیگه فرقی نداره که با کدوم زبون نوشته شدند. اما در این مورد حق با شماست میشه برنامه های نوشته شده به زبان دات نت توسط یک برنامه نویس بی خبر رو در کامپایل کرد. نه به این معن که میشه کاملاً به سورس اولیه دست پیدا کرد بلکه میشه از ساختار و الگوریتم های برنامه اطلاع پیدا کرد.
اما با وجود ابزار های محافظت از سورس دات نت دیگر جایی برای ترس نیست.




اگر تمام مطالب مستند بالا را خوب خوانده باشید متوجه می شوید که بین VB6.0 و VB.NET تفاوت چندانی وجود ندارداین
اصلاً اینطور نیست!

VB:
این زبان به منظور تقویت برنامه نویسان آماتور و تربیت آنان به منظور توسعه در سکوهای مایکروسافتی توسط مایکروسافت تولید شد. لقب اولیه این زبان Toy (اسباب بازی) بود. این زبان در نسخه های اولیه فقط و فقط محیط کد نویسی بود (خروجی اجرایی نداشت) .
اما در نسخه 2 مفسر بیسیک هم به این زبان اضافه شد بدین ترتیب شما می توانستید برنامه را اجرا کنید. در نسخه 4 توانایی ساخت فایل اجرایی به این زبان اضافه شد در همین نسخه وی بی ساختار جدیدی به نام VBX را معرفی کرد که بعدا با نام ActiveX معروف شد. همین موضع باعث پیشرفت وی بی شد.

.NET:
از سال 98 در شرکت مایکروسافت پروژه ای با نام com+ شروع شد که هدف تغییر بستر سیستم عامل و رابط های تعاملی برنامه های کاربردی با یکدیگر و اجزا (کامپوننت ها) بود.
این پروژه با نام دات نت در کنفرانس توسعه دهندکان حرفه ای در سال 2000 معرفی شد.
و بعد ها با ASP+ ادغام شد و ASP.NET شکل گرفت.


این دو در زیر سیستم و ساختار دو چیز کاملاً متفاوت هستند.

CodeMasterX
یک شنبه 05 فروردین 1386, 04:30 صبح
WOW پسر من همین امروز پست SeniroDevs رو خوندم. پسر با نی کارت Microsoft رو با 1 صفحه به جایی کشوندی که الان مهندس هاش تو گور رو ویبره هستند!
گزافه گویی نمی کنم BlackDal مثل همیشه جواب ها رو داده، ولی حتما حتما حتما بهت توصیه می کنم کتاب Introducing Microsoft .NET 2.0 رو بگیری و بخونی!

benighted.boy
دوشنبه 27 فروردین 1386, 11:28 صبح
به نظر منم اینکه بگین .net با vb6.0چندان فرقی نداره و.net ادمو تنبل میکنه اشتباست
مهم اینه که ادم با هر زبونی که مینویسه
1.بتونه مفهوم واقعیه برنامه نویسی رو درک کنه
2.بتونه به اون هدفی که داره براش برنامه مینویسه به بهرین نحو برسه
به نظر من محاسنی که .net داره با vbاصلا قابل مقایسه نیست.کوچکترین نمونه بارزش محیط و دسرسی ساده به ابزارهاو پشتیبانی از خیلی چیزاست

kaveh ezati
یک شنبه 16 اردیبهشت 1386, 19:58 عصر
vb.net با vb2005 تفاوت زیادی نداره اما پیشنهاد من فقط vb2005

a_mohammadi_m
پنج شنبه 06 تیر 1387, 10:48 صبح
سلام
Vsual Studio 2008 ( .Net 3.5 ) هم اومد
اون ببينيد چي ميگيد؟
در ضمن هدف ميكروسافت هدايت برنامه نويسها به Platform مخصوص خودش .Net هست كه كار رو براي برنامه نويسها راحتتر ميكنه و درامد جهاني ميكرو سافت رو بالاتر ميبره
( شما كه Licence محصولات برنامه نويسي ميكروسافت رو نخريدن ولي تو دنيا اولا لايسنس اون خيلي گرونه و در ثاني هر محصولي كه با ابزارهاي ميكروسافت توليد كنيد بايد به اونا هم درصد بديد براي فروش محصول خودتون )