C# vs VB.NET

أرسل من قبل foaad في الخميس, 2008/05/15 - 5:42am.
مدير
صورة foaad

تاريخ التسجيل: 2005-07-15
مشاركات: 2741

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الرابعة
الاختصاص: هندسة برمجيات

كتب The Tornado:
أحسن شي روحي على الـ #C
كتب mpcabd:
وقتها برأيي اتعلمي #C من الصفر.

طيب في سبب بخليكون تفضلوا C# على VB.NET ؟

 
دخول أو تسجيل لإرسال التعليقات | قراءة: 616

خيارات عرض التعليقات

اختر طريقتك المفضلة لعرض التعليقات و اضغط "حفظ الإعدادات" لتفعيل تغييراتك.
الأحد, 2008/05/11 - 5:44pm
مشرف
صورة mpcabd

تاريخ التسجيل: 2006-02-19
مشاركات: 2139

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الثانية

مجرد فرق بسيط بالـ Syntax, وقرب من الـ Java والـ ++C, والكود بصراحة صرت حسو مفهوم أكتر, يعني مدري شلون بيصير الكود أحلى, فؤاد بنصحك تجرب مانك خسران شي.

 
دخول أو تسجيل لإرسال التعليقات
الإثنين, 2008/05/12 - 5:45am
مدير
صورة foaad

تاريخ التسجيل: 2005-07-15
مشاركات: 2741

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الرابعة
الاختصاص: هندسة برمجيات

كتب mpcabd:
مجرد فرق بسيط بالـ Syntax, وقرب من الـ Java والـ ++C, والكود بصراحة صرت حسو مفهوم أكتر, يعني مدري شلون بيصير الكود أحلى, فؤاد بنصحك تجرب مانك خسران شي.
هو أنا مجرب مشان هيك عم اسأل, مشان اذا كان في شي أنا مانتبهتله.
لأنو مجرد قربه من الـ Syntax تبع الـ C والـ Java لايعتبر ميزة؟!
أما كونه أوضح فبجوز حسب الـ Syntax الي الواحد متعود عليه!
بس كمان في ناس رح يقولوا:
    Public Sub DoSomthing()

        For index As Integer = 0 To 1

            While index = 2

            End While
        Next
    End Sub
أو ضح من:
    public void DoSomthing()
    {
        for (int index = 0; index <= 1; index++)
        {
            while (index == 2)
            {
            }
        }
    }

مثلاً بالـC# مافيك تعرف القوس عم يسكر أي مجال مباشرةً
حلقة for فيها تعليمات مالها داعي, = و == , الفاصلة المنقوطة إلخ...

بس برأيي الفرق الملموس الوحيد هو الـ Editor تبع VB.NET بالـVisual Studio أحسن بكتير من تبع C#
هو على حد علمي هالشي بيرجع للـ Syntax نفسه كون انه أسهل انك تعمل Interpretor للـ VB.NET
مشان هيك وانت عم تكتب VB.NET الـ Background Compiler بيكتشف كل الأخطاء الموجودة بالكود وبيعلملك ياها وبتظهر بنافذة الـ Task List أما بالـ C# في أخطاء مابتظهر لتعمل Compile وبظن لو هالشي ممكن بالـ C# كانو عملوه لأنو مفيد كتير!

 
دخول أو تسجيل لإرسال التعليقات
الإثنين, 2008/05/12 - 1:41pm
صورة bayrn

تاريخ التسجيل: 2008-03-05
مشاركات: 204

الجامعة: الافتراضية
الكلية: تكنولوجيا المعلومات
المرحلة: السنة الثالثة
الاختصاص: غير ذلك

كتب mpcabd:
مجرد فرق بسيط بالـ Syntax, وقرب من الـ Java والـ ++C, والكود بصراحة صرت حسو مفهوم أكتر, يعني مدري شلون بيصير الكود أحلى, فؤاد بنصحك تجرب مانك خسران شي.

نحن قوم أعزنا الله بالاسلام ومهما ابتغينا العزة في غيره أذلنا الله عمر بن الخطاب رضي الله عنه

 
دخول أو تسجيل لإرسال التعليقات
الإثنين, 2008/05/12 - 7:57am
مشرف
صورة mpcabd

تاريخ التسجيل: 2006-02-19
مشاركات: 2139

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الثانية

كتب foaad:
مشان هيك وانت عم تكتب VB.NET الـ Background Compiler بيكتشف كل الأخطاء الموجودة بالكود وبيعلملك ياها وبتظهر بنافذة الـ Task List أما بالـ C# في أخطاء مابتظهر لتعمل Compile وبظن لو هالشي ممكن بالـ C# كانو عملوه لأنو مفيد كتير!
هالشي بشهدلو أكيد, يعني كانت الأخطاء تطلع تماما ً وأنت عمتكتب, وبجد أنا افتقدت لهالشي هلأ.
يلي صاير كمان أنو أغلب المشاريع يلي بتلاقيها عالإنترنت عالـ Code Project وغيرو من المواقع الخاصة بالبرمجة؛ عمبتكون مكتوبة #C, والواحد عمبيضطر أحيانا ً إذا اعتاز شي منها أنو يقلبها Visual Basic ليضمها بمشروعو إذا كان مو حابب يساويها Class Library وياخد عليها Reference.
المشكلة التانية يا صاحبي, أنك لما بيسألك واحد "أي لغة بتستعمل؟" رح تجاوبو "Visual Basic .NET" وبعدها بتقعد ساعة تقنعو أنو الـ Visual Basic .Net مو نفسو الـ Visual Basic 6, بينما لما تقللو #C بيسكت وبيحل عنك Mr. Green
هنن مو هالفرق الكبير بالنهاية, ويلي بيبرمج بهي بيبرمج بهديك, وبتصفى القصة قصة متطلبات عمل وتشوف شركاءك بالعمل على شو بيشتغلو, ويلي صاير أنو أغلب الناس بتعرف #C بس مو الكل بيقدر يفهم كود Visual Basic .NET إذا قراه.
والواحد حر بالأخير.

 
دخول أو تسجيل لإرسال التعليقات
الثلاثاء, 2008/05/13 - 10:43pm
صورة Carl Gustav

تاريخ التسجيل: 2008-05-13
مشاركات: 40

الجامعة: غير ذلك
الكلية: الهندسة المعلوماتية
المرحلة: متخرج
الاختصاص: هندسة برمجيات

قبل بروز VB.NET وأخواتها كانت المناظرة حول من أفضل Java أو C++ ، أو Java و C#...أي أنك تتوجه إلى شركة SUN وحلفائها أو مايكروسوفت.... لكن مايكروسوفت غيرت موضوع المناقشة الذي يناقشه المبرمجون إلى من أفضل C# أو VB.Net أي أنك تتوجه إما إلى مايكروسوفت أو إلى مايكروسوفت. موضوع المناقشة يصب في مصلحة مايكروسوفت بالنهاية...........

غريب أن تقارنوا بين اللغتين من ناحية طريقة الكتابة و سهولة قراة الكود..هذه أمور بسيطة لا تتميز بها اللغات و إنما يعود الأمر للمبرمج نفسه.
C#.NET هي افضل من vb.net بالقوة فهي تستطيع الوصول والتعامل المباشر من الذاكرة وهذا يتم عبر الشفرة غير الآمنة unsafe code وهي تنقية برمجية متقدمة وخطيرة بنفس الوقت و #C صممت من الصفر خصيصاً لإطار عمل NET. وبعض المزايا التي نقول بحق انC#.NET هي الآن افضل من VB.Net .....

 
دخول أو تسجيل لإرسال التعليقات
الأربعاء, 2008/05/14 - 3:56am
مدير
صورة foaad

تاريخ التسجيل: 2005-07-15
مشاركات: 2741

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الرابعة
الاختصاص: هندسة برمجيات

كتب Carl Gustav:
غريب أن تقارنوا بين اللغتين من ناحية طريقة الكتابة و سهولة قراة الكود..هذه أمور بسيطة لا تتميز بها اللغات و إنما يعود الأمر للمبرمج نفسه.
لكن بشو تتميز لغات البرمجة؟!
لازم تميز بين لغات البرمجة وبين المكتبات الافتراضية والملحقة الي بتجي مع هاللغات.
بعدين مافينا نقارن C# مع VB.NET إلا من خلال هالأمور لأنو بقية الأمور نفسها باللغتين!

كتب Carl Gustav:
C#.NET هي افضل من vb.net بالقوة فهي تستطيع الوصول والتعامل المباشر من الذاكرة وهذا يتم عبر الشفرة غير الآمنة unsafe code وهي تنقية برمجية متقدمة وخطيرة بنفس الوقت و #C صممت من الصفر خصيصاً لإطار عمل NET. وبعض المزايا التي نقول بحق انC#.NET هي الآن افضل من VB.Net .....

هي مقالة على ويكيبيديا بتوضح الفروقات بين اللغتين
بتلاحظ انو الفروقات بسيطة ولاتستحق الذكر, إلا بحالات خاصة جداً لما بكون في داعي لاستخدام unsafe code
وفي ميزات موجودة بـVB.NET مو موجودة بـ C# متل مو مذكور بالمقالة.
يعني مافينا نقول C# أفضل من VB.NET
ومؤخراً (بالـ VB 9) في كمان XML Literals مو موجودة بـ C# 3
في هالمقالة كتبها أحد أنصار C# بهالخصوص:
XLinq has me wanting to code in VB.NET

بس الي عم قولو أنا انو الفرق بالأدوات (بهالحالة Visual Studio) بيطغى على الفروقات البسيطة الموجودة بين اللغتين.
والغريب انو مع ذلك (كون VS أفضل بالتعامل مع VB من التعامل مع C#) لغة C# منتشرة أكتر بكتير من VB.NET بجوز متل ماقال mpcabd بسبب سوء الفهم أو بسبب العادة (استخدام C و Java)

 
دخول أو تسجيل لإرسال التعليقات
الأربعاء, 2008/05/14 - 8:52pm
صورة Carl Gustav

تاريخ التسجيل: 2008-05-13
مشاركات: 40

الجامعة: غير ذلك
الكلية: الهندسة المعلوماتية
المرحلة: متخرج
الاختصاص: هندسة برمجيات

كتب foaad:
كتب Carl Gustav:
غريب أن تقارنوا بين اللغتين من ناحية طريقة الكتابة و سهولة قراة الكود..هذه أمور بسيطة لا تتميز بها اللغات و إنما يعود الأمر للمبرمج نفسه.
لكن بشو تتميز لغات البرمجة؟!
لازم تميز بين لغات البرمجة وبين المكتبات الافتراضية والملحقة الي بتجي مع هاللغات.
بعدين مافينا نقارن C# مع VB.NET إلا من خلال هالأمور لأنو بقية الأمور نفسها باللغتين!

كتب Carl Gustav:
C#.NET هي افضل من vb.net بالقوة فهي تستطيع الوصول والتعامل المباشر من الذاكرة وهذا يتم عبر الشفرة غير الآمنة unsafe code وهي تنقية برمجية متقدمة وخطيرة بنفس الوقت و #C صممت من الصفر خصيصاً لإطار عمل NET. وبعض المزايا التي نقول بحق انC#.NET هي الآن افضل من VB.Net .....

هي مقالة على ويكيبيديا بتوضح الفروقات بين اللغتين
بتلاحظ انو الفروقات بسيطة ولاتستحق الذكر, إلا بحالات خاصة جداً لما بكون في داعي لاستخدام unsafe code
وفي ميزات موجودة بـVB.NET مو موجودة بـ C# متل مو مذكور بالمقالة.
يعني مافينا نقول C# أفضل من VB.NET
ومؤخراً (بالـ VB 9) في كمان XML Literals مو موجودة بـ C# 3
في هالمقالة كتبها أحد أنصار C# بهالخصوص:
XLinq has me wanting to code in VB.NET

مع C#) لغة C# منتشرة أكتر بكتير من VB.NET بجوز متل ماقال mpcabd بسبب سوء الفهم أو بسبب العادة (استخدام C و Java)

ما معنى سوء الفهم؟؟؟سيدي الكريم لغة #C منتشرة بين المختصين و تقول سوء فهم...!!
أنا معك أن الفروقات بسيطة جداً و دعني أقول بوضوح أكثر أن المهم هو البرنامج و فكرته و من ثم المبرمج و خبراته و بالنهاية لغة البرمجة...
و عندما قلت..."لكن بشو بتتميز لغات البرمجة"..
فأقول لك أن طريقة الكتابة و سهولة القراءة أمر نسبي فما هو صعب عليك سهل على غيرك و العكس صحيح.....

 
دخول أو تسجيل لإرسال التعليقات
الخميس, 2008/05/15 - 6:23am
مدير
صورة foaad

تاريخ التسجيل: 2005-07-15
مشاركات: 2741

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الرابعة
الاختصاص: هندسة برمجيات

كتب Carl Gustav:
ما معنى سوء الفهم؟؟؟سيدي الكريم لغة #C منتشرة بين المختصين و تقول سوء فهم...!!
سوء الفهم الي عم احكي عنه هو الاعتقاد بأن VB.NET أضعف من C# أو أنو في شغلات مافيك تساويها بـ VB.NET
وهو سوء فهم موجود ومنتشر (ولو انو الوضع تحسن مؤخراً) حتى انو ميكروسوفت اضطرت توضح هالنقطة كذة مرة, مثلاً هون:
اقتباس:
Because of the previous differences between Visual Basic and C/C++, many developers assume incorrectly about the capabilities of Visual Basic .NET. Many Visual Basic developers think that Visual C# is a more powerful language than Visual Basic. In other words, Visual Basic developers assume that you can do many things in Visual C# that you cannot do in Visual Basic .NET, just as there are many things that you can do in C/C++ but cannot do in Microsoft Visual Basic 6.0 or earlier. This assumption is incorrect.

كتب Carl Gustav:
أنا معك أن الفروقات بسيطة جداً و دعني أقول بوضوح أكثر أن المهم هو البرنامج و فكرته و من ثم المبرمج و خبراته و بالنهاية لغة البرمجة...
و عندما قلت..."لكن بشو بتتميز لغات البرمجة"..
فأقول لك أن طريقة الكتابة و سهولة القراءة أمر نسبي فما هو صعب عليك سهل على غيرك و العكس صحيح.....
متل ماقلتلك اذا بدك تقارن بين لغات البرمجة بشكل مجرد
فما بهمك البرنامج وفكرته أو المبرمج وخبرته!
بهمك أمرين الـ Syntax تبع اللغة و الـ Features أو الميزات تبع اللغة.
بما انو اللغتين الي عم نحكي عنهن متطابقتين تقريباً من حيث الـFeatures فبيصفى الـSyntax
قد يكون برأيك الـSyntax مو كتير مهم بس برأي البعض (وأنا من بينهون) هو كتير مهم لأنو هو واجهة استخدامك لهاللغة.

 
دخول أو تسجيل لإرسال التعليقات
الخميس, 2008/05/15 - 10:23am
عضو فعال
صورة BEN ADAM

تاريخ التسجيل: 2006-12-10
مشاركات: 1199

الجامعة: الافتراضية
الكلية: تكنولوجيا المعلومات
المرحلة: متخرج

يعني بالنهاية , كل واحد وإلو رأيو ورح يشتغل عيللي بيرتاح عليه , سواء كانت VB.net أفضل من #C أو العكس.

Google Is Your Friend(GIYF).

 
دخول أو تسجيل لإرسال التعليقات
الخميس, 2008/05/15 - 12:30pm
صورة bayrn

تاريخ التسجيل: 2008-03-05
مشاركات: 204

الجامعة: الافتراضية
الكلية: تكنولوجيا المعلومات
المرحلة: السنة الثالثة
الاختصاص: غير ذلك

يعني قد أتوافق مع البعض بأن المهم أولا خبرة المبرمج

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

نحن قوم أعزنا الله بالاسلام ومهما ابتغينا العزة في غيره أذلنا الله عمر بن الخطاب رضي الله عنه

 
دخول أو تسجيل لإرسال التعليقات
الخميس, 2008/05/15 - 8:18pm
صورة Carl Gustav

تاريخ التسجيل: 2008-05-13
مشاركات: 40

الجامعة: غير ذلك
الكلية: الهندسة المعلوماتية
المرحلة: متخرج
الاختصاص: هندسة برمجيات

كتب foaad:
كتب Carl Gustav:
ما معنى سوء الفهم؟؟؟سيدي الكريم لغة #C منتشرة بين المختصين و تقول سوء فهم...!!
سوء الفهم الي عم احكي عنه هو الاعتقاد بأن VB.NET أضعف من C# أو أنو في شغلات مافيك تساويها بـ VB.NET
وهو سوء فهم موجود ومنتشر (ولو انو الوضع تحسن مؤخراً) حتى انو ميكروسوفت اضطرت توضح هالنقطة كذة مرة, مثلاً هون:
اقتباس:
Because of the previous differences between Visual Basic and C/C++, many developers assume incorrectly about the capabilities of Visual Basic .NET. Many Visual Basic developers think that Visual C# is a more powerful language than Visual Basic. In other words, Visual Basic developers assume that you can do many things in Visual C# that you cannot do in Visual Basic .NET, just as there are many things that you can do in C/C++ but cannot do in Microsoft Visual Basic 6.0 or earlier. This assumption is incorrect.

كتب Carl Gustav:
أنا معك أن الفروقات بسيطة جداً و دعني أقول بوضوح أكثر أن المهم هو البرنامج و فكرته و من ثم المبرمج و خبراته و بالنهاية لغة البرمجة...
و عندما قلت..."لكن بشو بتتميز لغات البرمجة"..
فأقول لك أن طريقة الكتابة و سهولة القراءة أمر نسبي فما هو صعب عليك سهل على غيرك و العكس صحيح.....
متل ماقلتلك اذا بدك تقارن بين لغات البرمجة بشكل مجرد
فما بهمك البرنامج وفكرته أو المبرمج وخبرته!
بهمك أمرين الـ Syntax تبع اللغة و الـ Features أو الميزات تبع اللغة.
بما انو اللغتين الي عم نحكي عنهن متطابقتين تقريباً من حيث الـFeatures فبيصفى الـSyntax
قد يكون برأيك الـSyntax مو كتير مهم بس برأي البعض (وأنا من بينهون) هو كتير مهم لأنو هو واجهة استخدامك لهاللغة.
برأيك ما هو سبب ما تسميه "سوء الفهم"..

 
دخول أو تسجيل لإرسال التعليقات
الجمعة, 2008/05/16 - 3:24am
مدير
صورة foaad

تاريخ التسجيل: 2005-07-15
مشاركات: 2741

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الرابعة
الاختصاص: هندسة برمجيات

كتب Carl Gustav:
برأيك ما هو سبب ما تسميه "سوء الفهم"..
السبب مذكور بالاقتباس الي حطيته بالتعليق السابق:
اقتباس:
Because of the previous differences between Visual Basic and C/C++, many developers assume incorrectly about the capabilities of Visual Basic .NET. Many Visual Basic developers think that Visual C# is a more powerful language than Visual Basic. In other words, Visual Basic developers assume that you can do many things in Visual C# that you cannot do in Visual Basic .NET, just as there are many things that you can do in C/C++ but cannot do in Microsoft Visual Basic 6.0 or earlier. This assumption is incorrect.
وبجوز الأسماء كمان بتلعب دور من ناحية عندك Basic ومن الناحية التانية C Smile

 
دخول أو تسجيل لإرسال التعليقات
الجمعة, 2008/05/16 - 10:49am

تاريخ التسجيل: 2006-02-08
مشاركات: 65

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الخامسة
الاختصاص: ذكاء صنعي

السلام عليكم

أحببت فقط أن أبدي رأيي بالموضوع

ربما من وجهة نظر متقدمة c# أفضل من vb.net من ناحية معرفة التسلسل المنطقي لسير البرنامج لأن vb.net هي لغة برمجة مقادة بالأحداث event driven أي أنها تدعم ما يدعى rapid application development وهو مناسب جداً للمبتدئين, أما لغة c# فتتمتع بنمط أقل تشدداً (مع أن ما يدعى في لغات البرمجة بـ main message loop يقع ضمن أجزاء .net frame work في كلا الحالتين).
من وجهة نظر مطور برامج أنا أعتقد أن اللغتين متشابهتين وربما vb.net أسهل, أما من وجهة نظر مدير نظام فلغة c# أفضل, لأنه ببساطة ربط النظام ككل واكتشاف الأخطاء المتقدمة أسهل بكثير في لغة c#.

وفي الحقيقة أنا أفضل c# لأنها تدعم تقنيات c++ (لغتي المفضلة) وهي تقنيات لا تدعمها vb .net (مثل استخدام المؤشرات وتوابع الاستدعاء الخلفي.....).

اعمل لدنياك كأنك تعيش أبدا, واعمل لآخرتك كأنك تموت غدا

 
دخول أو تسجيل لإرسال التعليقات
الجمعة, 2008/05/16 - 3:34pm
صورة Carl Gustav

تاريخ التسجيل: 2008-05-13
مشاركات: 40

الجامعة: غير ذلك
الكلية: الهندسة المعلوماتية
المرحلة: متخرج
الاختصاص: هندسة برمجيات

كتب foaad:
كتب Carl Gustav:
برأيك ما هو سبب ما تسميه "سوء الفهم"..
السبب مذكور بالاقتباس الي حطيته بالتعليق السابق:
اقتباس:
Because of the previous differences between Visual Basic and C/C++, many developers assume incorrectly about the capabilities of Visual Basic .NET. Many Visual Basic developers think that Visual C# is a more powerful language than Visual Basic. In other words, Visual Basic developers assume that you can do many things in Visual C# that you cannot do in Visual Basic .NET, just as there are many things that you can do in C/C++ but cannot do in Microsoft Visual Basic 6.0 or earlier. This assumption is incorrect.
وبجوز الأسماء كمان بتلعب دور من ناحية عندك Basic ومن الناحية التانية C Smile
عفواً فأنا طلبت رأيك الخاص ...و ما وضعته هنا هو رأي مايكروسوفت
و ينطبق عليها القول "فيك الخصام و أنت الخصم و الحكم"...!!

 
دخول أو تسجيل لإرسال التعليقات
الجمعة, 2008/05/16 - 9:52pm
مشرف
صورة mpcabd

تاريخ التسجيل: 2006-02-19
مشاركات: 2139

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الثانية

كتب Ammar_N:
ربما من وجهة نظر متقدمة c# أفضل من vb.net من ناحية معرفة التسلسل المنطقي لسير البرنامج لأن vb.net هي لغة برمجة مقادة بالأحداث event driven أي أنها تدعم ما يدعى rapid application development وهو مناسب جداً للمبتدئين, أما لغة c# فتتمتع بنمط أقل تشدداً (مع أن ما يدعى في لغات البرمجة بـ main message loop يقع ضمن أجزاء .net frame work في كلا الحالتين).
فيك تشرحلنا أكتر وبالأمثلة لو سمحت؟
كتب Ammar_N:
, لأنه ببساطة ربط النظام ككل واكتشاف الأخطاء المتقدمة أسهل بكثير في لغة c#.
بالعكس, بالـ Visual Basic .NET الأخطاء بتعرفها قبل ما تخلص كتابة, مو بعد ما تستنالك شي ساعة وأنت عمتعمل Compile للمشروع.
كتب Carl Gustav:
و ما وضعته هنا هو رأي مايكروسوفت
يلي هون مو رأي Microsoft إنما هو توضيح للناس يلي لساتها مفكرة أنو الـ Visual Basic ضعيف أما الـ #C.

 
دخول أو تسجيل لإرسال التعليقات
الجمعة, 2008/05/16 - 10:31pm
مدير
صورة foaad

تاريخ التسجيل: 2005-07-15
مشاركات: 2741

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الرابعة
الاختصاص: هندسة برمجيات

كتب Carl Gustav:
عفواً فأنا طلبت رأيك الخاص ...و ما وضعته هنا هو رأي مايكروسوفت
و ينطبق عليها القول "فيك الخصام و أنت الخصم و الحكم"...!!
قلتلك رأيي الشخصي أولاً السبب الي ذكرته ميكروسوفت تانياً التسمية.

كتب Ammar_N:
ربما من وجهة نظر متقدمة c# أفضل من vb.net من ناحية معرفة التسلسل المنطقي لسير البرنامج لأن vb.net هي لغة برمجة مقادة بالأحداث event driven أي أنها تدعم ما يدعى rapid application development وهو مناسب جداً للمبتدئين, أما لغة c# فتتمتع بنمط أقل تشدداً (مع أن ما يدعى في لغات البرمجة بـ main message loop يقع ضمن أجزاء .net frame work في كلا الحالتين).
من وجهة نظر مطور برامج أنا أعتقد أن اللغتين متشابهتين وربما vb.net أسهل, أما من وجهة نظر مدير نظام فلغة c# أفضل, لأنه ببساطة ربط النظام ككل واكتشاف الأخطاء المتقدمة أسهل بكثير في لغة c#.
ذكر فوق انو اللغتين متطابقتين من حيث الميزات مع عدة مراجع لهالحكي (references)
اذا برأيك هالحكي مو صحيح ياريت تعطي أدلة أو أمثلة أو مراجع لحكيك.

 
دخول أو تسجيل لإرسال التعليقات
السبت, 2008/05/17 - 11:07am
صورة bayrn

تاريخ التسجيل: 2008-03-05
مشاركات: 204

الجامعة: الافتراضية
الكلية: تكنولوجيا المعلومات
المرحلة: السنة الثالثة
الاختصاص: غير ذلك

طيب في نوع محدد من التطبيقات بتقوم فيه #C و مابتقوم فيه VB
و هل العكس صحيح

نحن قوم أعزنا الله بالاسلام ومهما ابتغينا العزة في غيره أذلنا الله عمر بن الخطاب رضي الله عنه

 
دخول أو تسجيل لإرسال التعليقات
السبت, 2008/05/17 - 8:19pm

تاريخ التسجيل: 2006-02-08
مشاركات: 65

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الخامسة
الاختصاص: ذكاء صنعي

كتب foaad:
كتب Ammar_N:
ربما من وجهة نظر متقدمة c# أفضل من vb.net من ناحية معرفة التسلسل المنطقي لسير البرنامج لأن vb.net هي لغة برمجة مقادة بالأحداث event driven أي أنها تدعم ما يدعى rapid application development وهو مناسب جداً للمبتدئين, أما لغة c# فتتمتع بنمط أقل تشدداً (مع أن ما يدعى في لغات البرمجة بـ main message loop يقع ضمن أجزاء .net frame work في كلا الحالتين).
من وجهة نظر مطور برامج أنا أعتقد أن اللغتين متشابهتين وربما vb.net أسهل, أما من وجهة نظر مدير نظام فلغة c# أفضل, لأنه ببساطة ربط النظام ككل واكتشاف الأخطاء المتقدمة أسهل بكثير في لغة c#.
ذكر فوق انو اللغتين متطابقتين من حيث الميزات مع عدة مراجع لهالحكي (references)
اذا برأيك هالحكي مو صحيح ياريت تعطي أدلة أو أمثلة أو مراجع لحكيك.

مثلاُ إحدى التطبيقات التي مررت بها ويمكن تصميمها باستخدام c# ولا يمكن ذلك باستخدام vb .net:

من المعروف أن تطبيقات ويندوز كانت تستخدم GDI للرسم ثنائي الأبعاد (العادي يعني) وقد تم تطوير هذه التقنية إلى ما يدعى GDI+ وهو ما يستخدمه .net framework في عمليات الرسم الخاصة به. إلا أن المشكلة هي أن هذا GDI+ بطيء جداً جداً يعني أبطأ من GDI بشي 1000 مرة.
عند الحاجة إلى معالجة صورة ما(مثلاً عندي برنامج بدي أعطيه صورة وهو بيقلبها مثلاً) يمكن استخدام GDI+ يعني توابع التعامل التقليديةالمستخدمة في .net وهي متوفرة في كل من c# و vb .net وبياخذ قلب الصورة شي عشر ثواني, أما في حال أردت استخدام GDI فهو يتم عن طريق unsafe code والذي لا يدعمه vb .net قطعاً.

هذا أحد الأمثلة العديدة وهناك أمور أمثلة أخرى يمكن ذكرها إذا أردتم.

اعمل لدنياك كأنك تعيش أبدا, واعمل لآخرتك كأنك تموت غدا

 
دخول أو تسجيل لإرسال التعليقات
السبت, 2008/05/17 - 8:43pm

تاريخ التسجيل: 2006-02-08
مشاركات: 65

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الخامسة
الاختصاص: ذكاء صنعي

كتب mpcabd:
كتب Ammar_N:
ربما من وجهة نظر متقدمة c# أفضل من vb.net من ناحية معرفة التسلسل المنطقي لسير البرنامج لأن vb.net هي لغة برمجة مقادة بالأحداث event driven أي أنها تدعم ما يدعى rapid application development وهو مناسب جداً للمبتدئين, أما لغة c# فتتمتع بنمط أقل تشدداً (مع أن ما يدعى في لغات البرمجة بـ main message loop يقع ضمن أجزاء .net frame work في كلا الحالتين).
فيك تشرحلنا أكتر وبالأمثلة لو سمحت؟

يعني عزيزي mpcabd لما بتكون عملت event ضمن class ةبدك بعدين تربط delegate مع هذا الـ event (ونفس الشي من شان control events) بالـ c# بنستخدم العملية += وبيكون التنفيذ واضح وتسلسل التنفيذ معروف , أما في vb .net فإنا اكتب sub وأكتب في آخره كلمة handle وأحلى من هيك أنو فيني أكتب application.DoEvents يعني في حدا يكون خارق ويحزر شو تسلسل التنفيذ هون ومين عم يستدعي مين وإذا صار خطأ من وين عم يطلع!!!!

يمكن لحتى توضح وجهة نظري لازم تطلعوا على البنية الأساسية لتنفيذ برامج windows وهي سهلة الفهم بس صعبة التفيذ.

بدي أعطيك مثال شبيه يمكن يوصل الفكرة. عند تصميم موقع باستخدام asp .net (وطبعاً mpcabd معلم بالهشغلات) لما بيطلع خطأ ضمن إحدى خظوات التنفيذ التي لا تكتبها أنت يعني بقلك SqlDataSource عطا خطأ مدري وين, يا ترة بتقدر تحل هالأخطاء ببساطة؟ لو كان تسلسل التنفيذ ضمن الكود الخاص بك مو عند .net framework مو بيكون أسهل بكتير حل هيك مشاكل؟

آمل أنو تكون فكرتي وصلت وعذراً على الإطالة

اعمل لدنياك كأنك تعيش أبدا, واعمل لآخرتك كأنك تموت غدا

 
دخول أو تسجيل لإرسال التعليقات
السبت, 2008/05/17 - 11:35pm
مشرف
صورة mpcabd

تاريخ التسجيل: 2006-02-19
مشاركات: 2139

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الثانية

كتب Ammar_N:
يعني عزيزي mpcabd لما بتكون عملت event ضمن class ةبدك بعدين تربط delegate مع هذا الـ event (ونفس الشي من شان control events) بالـ c# بنستخدم العملية += وبيكون التنفيذ واضح وتسلسل التنفيذ معروف , أما في vb .net فإنا اكتب sub وأكتب في آخره كلمة handle
هلأ من جهة الـ Events ما بعتقد هي مشكلة, لأنك بكل بساطة فيك بس تقرا الـ Sub تشوف أي Event بيأطلقه, هاد بالإضافة لأنك بتقدر تعمل نفس عملية =+ بالـ #C, وهي أسمها AddHandler ومقابل الـ =- هو RemoveHandler.
كتب Ammar_N:
وأحلى من هيك أنو فيني أكتب application.DoEvents يعني في حدا يكون خارق ويحزر شو تسلسل التنفيذ هون ومين عم يستدعي مين وإذا صار خطأ من وين عم يطلع!!!!
من جهة DoEvents موجودة صحيح, بس إن استعملتها فأنت يلي بتكون نزعت تسلسل برنامجك بإيدك.
وبالمناسبة, شو رأيك لكن بيلي بيستعمل الـ Threading؟ مو إذا فتحت أكتر من Thread على نفس الـ Application ما عاد تعرف مين استدعى مين؟

 
دخول أو تسجيل لإرسال التعليقات
الأحد, 2008/05/18 - 12:11am
مشرف
صورة mpcabd

تاريخ التسجيل: 2006-02-19
مشاركات: 2139

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الثانية

لقيت هي المقالة, ظريفة, اقرأوها: http://downloads.develop.com/whyvbnet.htm

 
دخول أو تسجيل لإرسال التعليقات
الأحد, 2008/05/18 - 12:58am
عضو فعال
صورة Renwar

تاريخ التسجيل: 2005-02-24
مشاركات: 713

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الرابعة
الاختصاص: هندسة برمجيات

كتب mpcabd:
شو رأيك لكن بيلي بيستعمل الـ Threading؟ مو إذا فتحت أكتر من Thread على نفس الـ Application ما عاد تعرف مين استدعى مين؟

بـ Microsoft ما بعرف بصراحة بس بغيرها حكيك مو صحيح Smile و ال MultiThreading موضع تاني بينحكى كتير عنو و هالشي ما بيدل على ضعف البرنامج او قلة خبرة من المبرمج أبدا

If u think u R good then know there is better, and if u think u R better then know there is the Best, but if u think u R the best it won't take much time to realize u R the worst

 
دخول أو تسجيل لإرسال التعليقات
الأحد, 2008/05/18 - 3:47am
مدير
صورة foaad

تاريخ التسجيل: 2005-07-15
مشاركات: 2741

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الرابعة
الاختصاص: هندسة برمجيات

كتب Ammar_N:
يعني عزيزي mpcabd لما بتكون عملت event ضمن class ةبدك بعدين تربط delegate مع هذا الـ event (ونفس الشي من شان control events) بالـ c# بنستخدم العملية += وبيكون التنفيذ واضح وتسلسل التنفيذ معروف , أما في vb .net فإنا اكتب sub وأكتب في آخره كلمة handle وأحلى من هيك أنو فيني أكتب application.DoEvents يعني في حدا يكون خارق ويحزر شو تسلسل التنفيذ هون ومين عم يستدعي مين وإذا صار خطأ من وين عم يطلع!!!!
طبعاً handles اختيارية متل ماقال mpcabd
يعني اذا بدك لا تستخدمها, بس استخدامها ما بعقد تسلسل التنفيذ يعني بضل تسلسل التنفيذ معروف وحتى أوضح من استخدام += بـ C#
و الـ Application Class جزء من دوت نت framework يعني فيك تستدعي DoEvents من أي لغة دوت نت!
وكمان مافي أي مشكلة باستدعائها! والخطأ بضل معروف من وين جاية!

كتب Ammar_N:
يمكن لحتى توضح وجهة نظري لازم تطلعوا على البنية الأساسية لتنفيذ برامج windows وهي سهلة الفهم بس صعبة التفيذ.
مافي فرق بين C# و VB.NET من هالناحية.
ولغات البرمجة مانعملت فقط من شان نظام التشغيل ويندوز بجوز بدك تعمل compiler (متل البعض حالياً Smile ) شو بهمك وقتها بالـMessages و الـHandles كلهون. أو بجوز بدك تبرمج لغير نظام تشغيل.
كتب Ammar_N:
بدي أعطيك مثال شبيه يمكن يوصل الفكرة. عند تصميم موقع باستخدام asp .net (وطبعاً mpcabd معلم بالهشغلات) لما بيطلع خطأ ضمن إحدى خظوات التنفيذ التي لا تكتبها أنت يعني بقلك SqlDataSource عطا خطأ مدري وين, يا ترة بتقدر تحل هالأخطاء ببساطة؟ لو كان تسلسل التنفيذ ضمن الكود الخاص بك مو عند .net framework مو بيكون أسهل بكتير حل هيك مشاكل؟
كمان مافي فرق بين VB.NET و C# من هالناحية!
يعني مافي حالات ممكن بـC# تعرف الغلط من وين وبـ VB.NET ماتعرف.

كتب Ammar_N:
عند الحاجة إلى معالجة صورة ما(مثلاً عندي برنامج بدي أعطيه صورة وهو بيقلبها مثلاً) يمكن استخدام GDI+ يعني توابع التعامل التقليديةالمستخدمة في .net وهي متوفرة في كل من c# و vb .net وبياخذ قلب الصورة شي عشر ثواني, أما في حال أردت استخدام GDI فهو يتم عن طريق unsafe code والذي لا يدعمه vb .net قطعاً.
كمان مافي فرق بين VB.NET و C# من هالناحية!
اذا بدك تستخدم GDI بدك تستدعي توابع API من مكتبات GDI مباشرة وفيك تعمل هالشي بـ VB.NET أو C# أو حتى VB6

 
دخول أو تسجيل لإرسال التعليقات
الأحد, 2008/05/18 - 2:38pm
صورة bayrn

تاريخ التسجيل: 2008-03-05
مشاركات: 204

الجامعة: الافتراضية
الكلية: تكنولوجيا المعلومات
المرحلة: السنة الثالثة
الاختصاص: غير ذلك

بصراحة هذا الموضوع أقوى موضوع

 أنا اشتركت بالمنتدى من شهرين و نصف تقريبا

يعني فعلا و حسب رأيي هذا الموضوع من أقوى المواضيع التي أثيرت في المنتدى و من أكثرها اغناء و فائدة و ياريت يكون هناك المزيد من المواضيع بنفس المستوى

نحن قوم أعزنا الله بالاسلام ومهما ابتغينا العزة في غيره أذلنا الله عمر بن الخطاب رضي الله عنه

 
دخول أو تسجيل لإرسال التعليقات
الأحد, 2008/05/18 - 2:54pm
صورة Carl Gustav

تاريخ التسجيل: 2008-05-13
مشاركات: 40

الجامعة: غير ذلك
الكلية: الهندسة المعلوماتية
المرحلة: متخرج
الاختصاص: هندسة برمجيات

فعلاً يا إخوان كم أشعر بالفرح عندما أشاهد مثل هذا النقاش بين طلاب كليتنا العزيزة....و بصراحة بدأت تزول من عندي فكرة أن المواقع التي يصممها طلاب الكلية تكون للتسلية و مضيعة الوقت...
اسمحوا لي أن أبعتد عن سياق النقاش و أقول أن الشركة الخاصة بمثل هذه اللغات تضيف في كل فترة شيئاً جديداً إلى كليهما أو إلى واحدة منهما..لذلك فمن الصعب جداً أن تهيمن إحداهما على الأخرى و حتى لو حصل ذلك فإنه سيكون لفترة وجيزة جداً و لكني مع هذا كله أبقى من أنصار C# حتى و إن لم تكن الأقوى فأنا أرى أن من يتقن شيئاً غاية الإتقان أفضل ممن يتبع كل لغة حديثة دون أن يصبح خبيراً بها لأنه في كل فترة سيخرج إلينا شيء جديد...

 
دخول أو تسجيل لإرسال التعليقات
الأحد, 2008/05/18 - 9:29pm
مشرف
صورة mpcabd

تاريخ التسجيل: 2006-02-19
مشاركات: 2139

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الثانية

كان عمبيخطر ببالي تساؤل ....
هلأ مو الـ #C والـ Visual Basic .NET بيتحولوا لـ MSIL؟
طيب حدا شاف شو مقابل الـ Unsafe Block تبع الـ #C بالـ MSIL؟
ما ممكن يصير الـ Visual Basic Compiler قادر على إنتاج نفس الكود بالـ MSIL؟
ما بعرف هي فكرة خطرت على بالي, ممكن تتنفذ!

 
دخول أو تسجيل لإرسال التعليقات
الأحد, 2008/05/18 - 9:39pm
عضو فعال
صورة BEN ADAM

تاريخ التسجيل: 2006-12-10
مشاركات: 1199

الجامعة: الافتراضية
الكلية: تكنولوجيا المعلومات
المرحلة: متخرج

كتب mpcabd:
كان عمبيخطر ببالي تساؤل ....
هلأ مو الـ #C والـ Visual Basic .NET بيتحولوا لـ MSIL؟
طيب حدا شاف شو مقابل الـ Unsafe Block تبع الـ #C بالـ MSIL؟
ما ممكن يصير الـ Visual Basic Compiler قادر على إنتاج نفس الكود بالـ MSIL؟
ما بعرف هي فكرة خطرت على بالي, ممكن تتنفذ!

: I think you mean this

?VB vs. C# MSIL Code Generation: Are the results equal

Google Is Your Friend(GIYF).

 
دخول أو تسجيل لإرسال التعليقات
الأحد, 2008/05/18 - 9:47pm
مشرف
صورة mpcabd

تاريخ التسجيل: 2006-02-19
مشاركات: 2139

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الثانية

طيب, أنا عمبقول: ما ممكن يصير الـ Visual Basic Compiler يعطي نفس الترجمة للـ Unsafe Block متل الـ #C؟
يعني أكيد الكود بالـ MSIL بيفرق بين اللغتين, بس ما فيك تنفي التشابه, فمعناتها الـ NET Framework. بيقدر يفهم التنين, فلازم يكون قادر على فهم الـ Block بالحالتين, فوقتها ممكن حل هالمشكلة.

 
دخول أو تسجيل لإرسال التعليقات
الإثنين, 2008/05/19 - 10:56pm
مدير
صورة foaad

تاريخ التسجيل: 2005-07-15
مشاركات: 2741

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الرابعة
الاختصاص: هندسة برمجيات

كتب mpcabd:
طيب, أنا عمبقول: ما ممكن يصير الـ Visual Basic Compiler يعطي نفس الترجمة للـ Unsafe Block متل الـ #C؟
ممكن.
وممكن يصير الـ C# compiler يقبل الخيار Explicit Off يعني تستخدم متحولات بدون ماتعرفها.
بس هي قرارات بتصميم اللغة نفسها, اذا بدك تدعم هالشغلة أم لأ.

 
دخول أو تسجيل لإرسال التعليقات
الإثنين, 2008/05/19 - 11:16pm
مشرف
صورة mpcabd

تاريخ التسجيل: 2006-02-19
مشاركات: 2139

الجامعة: دمشق
الكلية: الهندسة المعلوماتية
المرحلة: السنة الثانية

أنا بدي أدعمها, أنت شو رأيك؟ Mr. Green
أخي تعو نشتكي لعمو Bill Gates, بركي بيظبطلنا ياها؟ Mr. Green
ممكن على فكرة نحاكي الشباب الطيبة تبع الـ Mono وتصير مميزة للـ Mono.

 
دخول أو تسجيل لإرسال التعليقات