الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الفرق بين VB.netو vC#.net

مغلق
بدأه kadhum في 12 أبريل 2005 · 19 رد · 2,607 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

السلام عليكم و رحمة الله

اخواني الاعزاء

اني مبتدا في عالم الدوت نت

و عندي مشكلة في استيعاب بعض الامور و المفاهيم

لكن المشكلة الاساسية هي ما هو الفرق الاساسي الذي يميز ال C# عن ال VB.NET بالرغم من وجه الشبه الكبير الذي بيدو لي من اول وهلة عندما اشغل احدهما يظهر كالاخر فهل هنالك من يفيدني جزاكم الله خير الجزاء عنا و عنكم

#2

VB.net و C# وجه الشبه بينها صغير , ووجه الشبه هو فى تصميم الفورم و الريفرنس ...

لكن فى البرمجة C# مثل C++ فى كل شئ و سى شارب تعتمد كليا على الــOOP و سى شارب اسرع بكتير من فى بى دوت نت ...

فا من الاخر سى شارب اول لغة برمجة حقيقية تعملها مايكروسفت , فانا فى نظرى انو الفى بى لغة تصميم او تطوير ليس لها علاقة بالبرمجة !!

#3

شكرا يا اخي على هذا التوضيح السريع

لكن من اين ابدا بتعلم VC#.net

#4
اقتباس
و سى شارب اسرع بكتير من فى بى دوت نت

عفوا، لكن المعلومة غير صحيحة

حتى أكون منصف أكثر، فهناك في بعض "الحالات" قد تكون سي شارب أسرع بقليل من VB.Net ولكن هذا لا يعتبر فرق كبير بينهم

أيضا كل من مترجم ال سي شارب و VB.Net لا يقومو بأي عملية تحسين أو تسريع Optimization في الكود المنتج ك IL، وهذا يعتبر من الجوانب المهمة التى قد تجعل هناك فرق بين لغة واخرى

وكل اللغتين تعمد على OOP

ويمكنك الوصول إلى مبتغاك في كل اللغتين بنفس الطريقة والكفاءة

العامل الأساسي لتفضيل اي من اللغتين هوا، معرفتك السابقة بأحد اللغات، فأكثر مبرمجي فيجوال بيزيك السابقين إنتقلو الى نسخة دوت منها، ومبرمجي السي++ والجافا إنتقلو إلى سي شارب

ففي النهاية تفضيل شخصي، وإذا وجدت نفسك تتعلم لغة بشكل اسرع من الأخرى فأهتم بها أكثر،

وايضا الأهم في الدوت نت معرفتك بهيكل عامل الدوت نت Net framework. فهو الأساس لكل اللغات

أما اللغات فمجرد معرفتك لطريقة كتابة الكود والنص فيمكنك إستخدام كل منهم في نفس المشروع

لا تحزن:

إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.

لا تحزن:

فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.

#5

على حد علمى ان الفيجوال استديوا بتاع الدوت نت معمول بالسى شارب تقريبا ....

#6

بالنسبة للفروق فهي طفيفة جدا و هذا هو الهدف الاساسي بسبب ان Microsoft كانت تتلقى Feedback من مبرمجين VB ان الشركات تعتبرهم اقل مقدرة و مهارة من مبرمجين C++ و لهذا تم وضع VB.net و C#.net على مستوى واحد من ال Framework بالاضافة الى باقي اللغات مثل ال J#.net و ان ظلت ال C++ هي الاقوى

بالنسبة للفروق فهنا فرق وحيد اتذكره الان هو ان C#.net تمكنك من استخدام ال Pointers مثل ال C++ و لكن في حدود ال Unsafe Mode بينما لا يمكن في ال VB و هذا يعتبر الفارق الوحيد تقريبا

بالنسبة للسرعة لا توجد اي فروق في السرعة بين ال C# و ال VB.net و لكن كلاهما ابطأ من ال C++

كما ان ال C#.net ليست اول لغة من تصميم Microsoft فقد سبقها ال Basic و ال VB و ال J++ .

و ايضا ال Visual Studio لم تستخدم ال C# في تطويره و انما اعتقد انه تم استخدام Visual C

تم تعديل هذه المشاركة بواسطة bashmohandes في 12 أبريل 2005 في 20:22

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#7
bashmohandes كتب:
بالنسبة للفروق فهي طفيفة جدا و هذا هو الهدف الاساسي بسبب ان Microsoft كانت تتلقى Feedback من مبرمجين VB ان الشركات تعتبرهم اقل مقدرة و مهارة من مبرمجين C++ و لهذا تم وضع VB.net و C#.net على مستوى واحد من ال Framework بالاضافة الى باقي اللغات مثل ال J#.net و ان ظلت ال C++ هي الاقوى

بالنسبة للفروق فهنا فرق وحيد اتذكره الان هو ان C#.net تمكنك من استخدام ال Pointers مثل ال C++ و لكن في حدود ال Unsafe Mode بينما لا يمكن في ال VB و هذا يعتبر الفارق الوحيد تقريبا

بالنسبة للسرعة لا توجد اي فروق في السرعة بين ال C# و ال VB.net و لكن كلاهما ابطأ من ال C++

كما ان ال C#.net ليست اول لغة من تصميم Microsoft فقد سبقها ال Basic و ال VB  و ال J++ .

و ايضا ال Visual Studio لم تستخدم ال C# في تطويره و انما اعتقد انه تم استخدام Visual C

اساسا اللغات اللى قبل كدة ليست تعد لغة برمجة , بلا هى لغة تطوير و فقط ...

لكن الدوت نت هى لغة برمجة ...

لكن لقد نسيت الــJ++

للنسبة للسرعة فسى شارب اسرع من vb.net ,,, لكنها تفرق او ترجع للمبرمج و كيفية كتابتو للبرنماج !!!

#8
اقتباس
اساسا اللغات اللى قبل كدة ليست تعد لغة برمجة , بلا هى لغة تطوير و فقط ...

لكن الدوت نت هى لغة برمجة ...

يا سلام على الكلام

مفيش حاجة اسمها لغة تطوير اساسا كل اللغات اللي بتستخدم في التطوير او البرمجة اسمها لغات برمجة و موضوع السرعة ده مش حقيقي طبعا لان كل من C#.net و ال Vb.net بيتحولوا في النهاية الى MSIL بعد ال Compilation و اثناء الRuntime بيقوم ال JIT Just Intime Compiler بتحول ال MSIL الى MachineCode فليس هناك اي فرق مابين ال VB.net و ال C#.net لانهم بمجر حدوث عملية ال Compilation لم يصبح هناك فرق بينهم.

اما كلمة الدوت نت لغة برمجة فهي خطأ لان الدوت نت ليس لغة و انما هو Framework او Infrastructure

تم تعديل هذه المشاركة بواسطة bashmohandes في 13 أبريل 2005 في 02:05

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#9

بسم الله الرحمن الرحيم

الاخوان الاعزاء اللذين اثرو معلوماتي المتواضعة اشكرهم جداااااااااا و اتمنى من كل قلبي ان تدوم الحوارات الهادفة لانه هذه هي اول مشاركة لي في هذا المنتدى و شفت كيف الاخوان ما قصرو معي

شكرااااااااااااااااا للكل

#10

اسف انا مش اقصد بالدوت نت اللى هو Framwork انا كنت بتكلم عن اللغات اللى جاية مع دوت نت زى سى شارب و الحقبة بتاعتها , فلو انتا تعتبر انو الفيجوال بيسك لغة برمجة يبقى السى شارب لهجة بقى ,,, فيجوال بيسك لا هى الا استخدام الAPI بتاعت البرماج المعمولة و ده مش برمجة لانى لو ده بقى برمجة يبقى السكريبتنج هو كمان برمجة , للنسبة للغات البرمجة ههى اللى تتفهم فى كل البيائات فالفيجوال بيسك يشتغل فلا البيئة بتعاتو و بس مع dll بتاعتو , و استخدام دوت نت فرام بردو ده مش برمجة كل ده تطوير , بس البرمجة انك تنتج الــClass بتاعتك , يعنى من المضحك انك تقدر تعمل فى الفيجوال بيسك Web Browser فى اقل من 3 دقائق , لانو استخدم الAPI بتاعت Micsoroft IEXplorer ده بقى هو البرمجة عندك ؟

يبقى بقى فيه لغات برمجة كتتتتتتتتتتتتتتتتتير جدآ لو انتا تعتبر ديه البرمجة !!! انا فى نظرى الفيجوال بيسك لا هو الا لغة تصميم و تطوير !!!

#11

كلام غريب :blink: :blink:

<_< <_< <_< <_< <_<

#12
XzaB كتب:
اسف انا مش اقصد بالدوت نت اللى هو Framwork انا كنت بتكلم عن اللغات اللى جاية مع دوت نت زى سى شارب و الحقبة بتاعتها , فلو انتا تعتبر انو الفيجوال بيسك لغة برمجة يبقى السى شارب لهجة بقى ,,, فيجوال بيسك لا هى الا استخدام الAPI بتاعت البرماج المعمولة و ده مش برمجة لانى لو ده بقى برمجة يبقى السكريبتنج هو كمان برمجة , للنسبة للغات البرمجة ههى اللى تتفهم فى كل البيائات فالفيجوال بيسك يشتغل فلا البيئة بتعاتو و بس مع dll بتاعتو , و استخدام دوت نت فرام بردو ده مش برمجة كل ده تطوير , بس البرمجة انك تنتج الــClass بتاعتك , يعنى من المضحك انك تقدر تعمل فى الفيجوال بيسك Web Browser فى اقل من 3 دقائق , لانو استخدم الAPI بتاعت Micsoroft IEXplorer ده بقى هو البرمجة عندك ؟

يبقى بقى فيه لغات برمجة كتتتتتتتتتتتتتتتتتير جدآ لو انتا تعتبر ديه البرمجة !!! انا فى نظرى الفيجوال بيسك لا هو الا لغة تصميم و تطوير !!!

و من قال لك أن السكريبتينج ليست برمجة؟

العديد من لغات البرمجة المشهورة مثل Perl و Python هي لغات سكريبتينج. برنامج مشاركة الملفات BitTorrent الشهير الذي جعل شركات الأفلام ترتجف مبرمج بالـPython.

ما هو تعريفك للغة البرمجة؟

الوصول الى حل المشكلة بأعقد طريقة ممكنة؟

لماذا تعيد اختراع العجلة ما دامت العجلة موجود أصلاً و جاهزة للإستخدام؟

أتعتقد أن استخدام الـAPI يعني أن ما تفعله ليس برمجة؟ اذن عندي لك خبر مزعج. حتى مبرمجوا الـ++C و الـC ليسوا بمبرمجين لأنهم هم أيضاً يستخدمون الـAPI. بل و يستخدمون مكتبات قام ببرمجتها أشخاص غيرهم.

اذا كان قصدك أن استخدام فيجول بيسك دوت نيت للفريموورك يجعلها لغة تطوير بعكس #C فعليك مراجعة معلوماتك. لأن الـ#C أيضاً (مثلها مثل كل لغات الدوت نيت) تستخدم الفريموورك و لا تعمل من غيره. و كلا اللغتين تنتج Classes.

و بالنسبة لمقولتك "للنسبة للسرعة فسى شارب اسرع من vb.net ,,, لكنها تفرق او ترجع للمبرمج و كيفية كتابتو للبرنماج !!!" فهي خاطئة تماماً للأسف. فكلا فيبي دوت نت و #C تتو ترجمتهما للغة واحدة هي الـMSIL لذا فرق السرعة بينهما (ان كان موجوداً) فهو ضئيل. أما الجملة الأخيرة فهي صحيحة لجميييييييع لغات البرمجة. برنامج مكتوب بالجافاسكريبت بشكل صحيح سيكون أسرع من برنامج أسيمبلي مكتوب بطريقة خاطئة.

أنا أخمن فقط، و لكنني مستعد للجزم أنك لم تقم ببرمجة أي نظام أو برنامج كبير في حياتك. لأنك لو قمت بذلك لأدركت مدى فداحة ما كنت تقوله عن معنى البرمجة.

#13
اقتباس
على حد علمى ان الفيجوال استديوا بتاع الدوت نت معمول بالسى شارب تقريبا

لا، كتب بإستخدام فيجوال سي++، أيضا يمكنك تشغيل الفيجوال ستوديو بدون هيكل الدوت نت، لكن لن تعمل النماذج، لانها الجزء الوحيد حسب علمي كتبت بال سي شارب

اقتباس
بيسك لغة برمجة يبقى السى شارب لهجة بقى ,,, فيجوال بيسك لا هى الا استخدام الAPI بتاعت البرماج المعمولة و ده مش برمجة لانى لو ده بقى برمجة يبقى السكريبتنج هو كمان برمجة

سؤال بسيط، مذا تسوى لغة سي شارب من خلال الدوت نت؟، لا شيء طبعا

أيضا إذكر لغة برمجة لويندوز لا تستخدم ال API، كل عملة التخاطب مع ويندوز تتم من خلال ال API، حتى الفيجوال سي++ ، ومكتبها MFC ما هي الا عبارة عن غطاء أو غلاف لل API

أيضا Net framework. يستخدم ال API

وهل دائما علينا أن نبني كل شيء من الصفر؟، حتى نستطيع أن نقول عن أنفسنا مبرمجين؟، بالعكس لو إعتمدنا هذا النظام عمر الواحد ما هيعمل برنامج ولا هيصير مبرمج

لا تحزن:

إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.

لا تحزن:

فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.

#14

انا الحقيقة كنت ناوي ارد على الاخ XzaB لكن الحقيقة الاخوة قاموا باللازم و زيادة شويتين

:D

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#15

محمد نسمان : لقد تأثرت من كلامك و كلامك جميل جدآ جدآ ...

System Down : انا اللى اتعلمتو انو فيه حاجة اسمها : Programming & Developing و الدفلوبين يعنى تطوير و تصميم , و البرمجة هى يعنى برمجة Algoirthms we Classes we Functions و كدة و مش مصدقيننى , عندكم google.com دورو فيه عن الكلام اللى ممكن ليكم غريب !!! لانو لو طلع غير كدة يبقى انا هكون أسف ليكم كلكم , بس الصراحة انا بعمل دلوقتى Search و طلع انى فيه فرق بين لغة برمجة و لغة تطوير !!!!

للنسبة للسى ++ تعتمد على ملفات Headersطيب ايه المشكلة ؟ منتا ممكن تعملها , بس الفيجوال بيسك اذن انك متقدرشى تبرمج API بنفسك بس السى++ و هناك فرق بين API و Headers/Classes !!!

#16

الظاهر انك محتاج تراجه معلوماتك تاني كلها من الاول عن البرمجة

انت متخيل ان لغة البرمجة هي اللي تقدر تعمل بيها System APIs يبقى على كده مفيش ولا لغة في الدنيا حتعملك APIs لان الAPIs دي APIs داخلية للSystem و لا يمكن تغييرها او زيادتها الا بمعرفة ال System Programmers اللي هما كتبوها اساسا قبل كده

و موضوع ال Header Files ده يعني مالوش علاقة بان دي لغة برمجة لان دي اساسا في اثناء عملية ال Precompilation بيتم عملية Copy لكل الData اللي موجودة فيها داخل ال File الاصلي و ادخال الناتج ككل على ال Compiler

و كمان ال Header Files مش موجودة في ال Compiled Programming Languages بس زي ال C++ دي كمان موجودة في ال Scripting Languages زي ال Classical ASP

من الاخر بطل مقاوحة

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#17
XzaB كتب:
محمد نسمان : لقد تأثرت من كلامك و كلامك جميل جدآ جدآ ...

System Down : انا اللى اتعلمتو انو فيه حاجة اسمها : Programming & Developing و الدفلوبين يعنى تطوير و تصميم , و البرمجة هى يعنى برمجة Algoirthms we Classes we Functions و كدة و مش مصدقيننى  , عندكم google.com دورو فيه عن الكلام اللى ممكن ليكم غريب !!! لانو لو طلع غير كدة يبقى انا هكون أسف ليكم كلكم , بس الصراحة انا بعمل دلوقتى Search و طلع انى فيه فرق بين لغة برمجة و لغة تطوير !!!!

للنسبة للسى ++ تعتمد على ملفات Headersطيب ايه المشكلة ؟ منتا ممكن تعملها , بس الفيجوال بيسك اذن انك متقدرشى تبرمج API بنفسك بس السى++ و هناك فرق بين API و Headers/Classes !!!

و أيضاً نعيد و نقول السي++ تستخدم الـAPI و ليس فقط الـheaders. ثم من قال لك أن لغات السكريبتينج و الفيجول بيسك دوت نت (و غيرها و غيرها) لا تستخدم الخوارزميات Algorithms؟ هل تعرف ما هي الـAlgorithms أصلاً؟

و لغة فيجول بيسك دوت نت لغة كائنية التوجه Object Oriented مثل السي ++ أي أنها أيضاً تبنى بواسطة Classes و Functions. و الغالبية العظمى من لغات البرمجة الحديثة بما فيها لغات السكريبتنج التى لا تعجبك أيضاً تقوم بصنع Functions.

تقول أنك عملت Search، طيب تسمح تعطينا لينك لصفحة تقول الكلام الذي تقوله؟

http://www.maccaws.org/kit/glossary/#programming

هذا تعريف للبرمجة

Programming

The formal definition of programming is “creating a sequence of instructions to enable the computer to do something”.

البرمجة:

التعريف الرسمي للبرمجة هو "صنع سلسلة من التعليمات تمكن الكمبيوتر من القيام بشئ ما"

أما الـDeveloping أو التطوير هو جزئية متخصصة من البرمجة (أي أن التطوير هو برمجة أيضاً) تحتوي على أعمال أخرى غير البرمجة.

http://searchwin2000.techtarget.com/sDefin...i936454,00.html

1. What is software development?

Software development is the process of developing software through successive phases in an orderly way. This process includes not only the actual writing of code but also the preparation of requirements and objectives, the design of what is to be coded, and confirmation that what is developed has met objectives.

ما هو تطوير البرمجيات؟

تطوير البرمجيات هي عملية تطوير البرنامج من خلال مراحل متلاحقة بطريقة منظمة. هذه العملية لا تتضمن كتابة الكود نفسها فحسب بل تتضمن أيضاً اعداد المتطلبات و الأهداف، تصميم الجزء الذي سيكتب الكود له، و التأكد من أن الذي تم تطويره يحقق أهدافه.

تم تعديل هذه المشاركة بواسطة System Down في 14 أبريل 2005 في 13:01

#18

الأخوة bashmohandes و System Down

أعتقد من الأفضل ان نتقوف عن الكلام، فيبدو من الأخ XzaB انه لا يريد الإستفادة أو الإعتراف بخطأ معلوماته

ما يقوم به أي أخ هنا هوا محاولة للمساعدة والإستفادة للجميع، حتى أنا أحيانا يكون لدي فهم خاطئ عن شيء ما ويتم تصحيحه من الأخوة واتقبل بذلك بصدر رحب لاني تعلمت شيء جديد، لكن لا اجادل في شيء أكتشفت أنه خطأ

حاول أن تتعلم وتستفيد أكتر وليس ان تجادل فقط من اجل المجادلة وليس العلم

ودائما تذكر "من قال أعلم فهو لا يعلم"

أنا لن أرد بعد ذلك على هذا الموضوع، فالأخ صاحب السؤال أعتقد حصل على إجابة وافية عن سؤاله

تحياتي للجميع

لا تحزن:

إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.

لا تحزن:

فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.

#19

انا اوافقك الراي و اطلب غلق الموضوع

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#20

اود ان اعلق تعليق بسيط لا على المعلومات البرمجية و لكن على اسلوب الرد فأنا أجد اسلوب الرد به بعض التجريح و خصوصا بعد ان قال الأخ

اقتباس
محمد نسمان : لقد تأثرت من كلامك و كلامك جميل جدآ جدآ ...

System Down : انا اللى اتعلمتو انو فيه حاجة اسمها : Programming & Developing و الدفلوبين يعنى تطوير و تصميم , و البرمجة هى يعنى برمجة Algoirthms we Classes we Functions و كدة و مش مصدقيننى , عندكم google.com دورو فيه عن الكلام اللى ممكن ليكم غريب !!! لانو لو طلع غير كدة يبقى انا هكون أسف ليكم كلكم , بس الصراحة انا بعمل دلوقتى Search و طلع انى فيه فرق بين لغة برمجة و لغة تطوير !!!!

للنسبة للسى ++ تعتمد على ملفات Headersطيب ايه المشكلة ؟ منتا ممكن تعملها , بس الفيجوال بيسك اذن انك متقدرشى تبرمج API بنفسك بس السى++ و هناك فرق بين API و Headers/Classes !!!

فكان يجب بعد هذا مجرد الأيضاح بدون تجريح و خصوصا الأخ لbashmohandes لأن و جدت له رد أخر فى مشاركة اخرى وكأنه يربى من يرد عليه و هذا قد يكون جارحا و سامحونى إن قلت شيأ خطأ وجزاكم الله خيرا على ردودكم.

هذا الموضوع مغلق.

مواضيع مشابهة