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

سي# أم VB.NET ؟

مغلق
بدأه هاني الأتاسي في 17 يونيو 2002 · 6 رد · 1,237 مشاهدة · في قسم تكنولوجيا Microsoft .NET العام
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

العصر السابق ولّاـ وذهب . سي# و فجوال بيسك.نيت هما الاثنتين تقريبا لغة واحدة سوى أنه في السي# يمكنك من تحميل العوامل وكتابة كود غير آمن أو unsafe . الاثنتين بنفس القوة تماما . أعتقد أن ميكروسوفت سوف تغير هذا بالمستقبل بأن تجعل ميزات لغة أكثر من الأخرى . وحتى يحدث هذا، سوف يكون السبب الرئيسي في اختيار اللغة هو الميول الشخصي للغة معينة . أو بكلمة أخرى الميول للتركيب اللغوي syntax .

بصراحة المبرمجين متعلقين جدا بالكيفة التي يبدو بها شكل برنامجهم أو كودهم . مبرمجين السي يحبون الأقواس الكبيرة {} ، ومبرميجن الفجوال بيسك يشعرون بالأمان عند استخدام Dim في برامجهم . لذلك ليس من الداعي ولا يوجد سبب لمبرمجين الفجوال بيسك من الانتقال لسي# لأن كلا اللغتين لهما نفس القوة . حتى أن مستندات الدوت نيت في MSDN أو الانترنت تكون مكتوبة بكلا اللغتين .

بالرغم من هذا ، أتوقع أن أي مبرمج يعرف سي# يجب على الأقل أن يعرف قرائة كود الفجوال بيسك.نيت والعكس صحيح .

في عالم دوت-نيت ، لا يجب أن تعتبر نفسك أنك مطور بفجوال بيسك.نيت أو مطور بسي# . أي لغة سوف تستخدمها سوف تكون أنت في الواقع مطور لـ NET Framework.

:)

Coding on the Cloud and for the Cloud!

My Blog

#2

من فضلك اخي الكريم

عبارتك في التوقيع جدا ممتازة وعملية..اهنئك

هل ممكن اذا كان لديم موضوع بالعربي يتحدث عن ماهية الframwork

في microsoft.net

اود ان اقراء في هذا الموضوع فهل من مساعدة ولكم جزيل الشكر

#3

شكرا هاني .....

قرأت منذ مدة في أحد الكتب الذي يتحدث عن تطوير البرامج من VB.6الى VB.net مقارنة بسيطة عن ذلك .... هذه هي ..

Is Visual Basic Still the Best Choice for Visual Basic Developers?

If you are faced with learning the new features of Visual Basic .NET, you may ask yourself, “Why should I stick with Visual Basic? Why don’t I choose another language instead? Why not move to C# (a new language in Visual Studio .NET derived from C++)?” Although the choice is yours, we should point out that Visual Basic .NET is now as powerful as C#, Visual C++, or any other language. All the .NET languages have access to the same .NET Framework classes. These classes are powerful, and they allow Visual Basic .NET to smash through the “glass ceiling” of previous versions.

Visual Basic .NET also keeps the spirit of Visual Basic alive. It is designed by Visual Basic developers for Visual Basic developers, whereas a language like C# is designed for C developers. Each language has some unique features that are not available in other languages. Let’s compare C# with Visual Basic to see what makes each language unique.

Features Found in C# but Not in Visual Basic .NET

The C# language supports pointers. Pointers allow you to write “unsafe” code that modifies memory locations directly. The following code shows how to use pointers in C#:

 
unsafe static void Main(string[] args) 
{ 
int myInt = 5; 
int * myptr = & myInt; 
* myptr = 55; 
Console.WriteLine(myInt.ToString() ); 
}

Although Visual Basic .NET doesn’t support pointers in the language itself, as you will see in Chapter 16, you can still access memory locations using methods of the .NET Garbage Collector class. C# also supports document comments that allow you to embed self-documenting comments in your source code. These comments are compiled into the metadata of the component and can be extracted and built into help files.

Features Found in Visual Basic .NET but Not in C#

Visual Basic .NET’s most appealing feature is the human-readable Visual Basic language, which is case insensitive with great IntelliSense. If you declare a variable as MyVariable and then later change the case to myVariable, Visual Basic .NET automatically changes the case of all occurrences in the code. C# and Visual C++ don’t do this. In fact, C# treats MYVariable and myVariable as two separate variables. Most Visual Basic programmers have grown to know and become comfortable with case-insensitive behavior and will find Visual Basic .NET the most natural language to use.

Visual Basic .NET also supports late binding and optional parameters. C# supports neither of these. In addition, Visual Basic supports automatic coercions between types. For example, in C#, you cannot assign a Long to an Integer without using a conversion method (since it may cause an overflow). Visual Basic allows narrowing conversions like this one, since in most cases overflows don’t occur. If you want to prevent automatic coercions, you can use a new compiler option, Option Strict On, that enforces C-like strict type coercion.

Visual Basic has richer IntelliSense and better automatic formatting than any other language. It automatically indents code, corrects casing, and adds parentheses to functions when you press Enter.

The result is a true Visual Basic experience, enhanced by background compilation as you type. For example, if you misspell the keyword Function, as in

Funtion myFunction

as soon as you move off the line, the compiler parses it and puts a compiler error in the Task List. It also underlines the word “Funtion” with a blue squiggle indicating the location of the compile error. As soon as you correct the line, the compiler removes the Task List item and erases the underline. Background compilation helps you write better code and is unique to Visual Basic—no other language has a background compiler.

The language you use is a matter of choice. However, if you enjoy programming in Visual Basic, you will find Visual Basic .NET a great experience and the best upgrade ever.

هذا كلام كل من :

Ed Robinson

Michael Bond

Robert lan Oliver

في كتابهم : UPGRADING Visual Basic 6.0 TO Visual Basic . net

وهؤلاء كانوا من ضمن فريق العمل الذي أنشأ Visual Basic . net

ولكن ياترى كيف سيكون المستقبل لكلا اللغتين ... طبيعي ان لا يبقى كلا اللغتين على هذا الحال ولكن أيهما ستدعمه مايكروسوفت مستقبلا ؟؟؟

وبالتالي لماذا ؟؟؟؟؟

كثير من مبرمجي فيجوال بيسك يرون في هذا التشابه بين اللغتين إنذار لهم !!!!!! ولكن هل ترون أنه من السهل إنهاء دعم لغة برمجية كالفيجوال بيسك مثلا !!!

وشكرا ......

واثق الخطوة يمشي ملكا !!

#4

أخ رفعت بصراحة ماأعرف أي دليل عن .NET Framework بالعربي ؟؟ آسف لعدم المساعدة ..

أخ محمد هالكلام حلو .. وفعلا هالفروقات ماخطرت على بالي متل خاصية استخلاص ال documentation من الكود على هيئة XML ياللي بتتميز بها سي# .. بس الشي ياللي بيقهر أنو ليش ال سي# مو موجود بها default parameter مو عيب عليهم :mad: :mad: بدي أبهدلهم على هالشي :cool: :D

أنا أعتقد المستقبل هو أن يتم تطوير اللغتين إلى مرحلة يتم فيها تطوير السي# أكثر .. لأن ميكروسوفت تريد من أحد اللغتين أن تبقى سهلة ولا تتعقد كتيرااااا .

انهاء دعم أي لغة من ميكروسوفت فهو مستحيل ... حتى الفجوال بيسك 6 سوف تبقى ميكروسفت تدعمها لفترة غير قصيرة .

Coding on the Cloud and for the Cloud!

My Blog

#5

قمت بسؤال مدير فريق سي# (Scott Wiltamuth) عن سبب عدم وجود ال default operator في سي# وهي بالمكان من اضافتها لاحقا ؟؟ فقال التالي :

We don't have any plans to add this particular feature, but the C# language is by no means frozen.  We will continue innovating in the language.

At a high level, the reason for not having support for optional parameters in C# is that C# supports overloading.  The combination of both overloading support and optional parameter support results in some significant complexity.  VB has both opeional parameters and overloading because it had optional parameters already, and had to add overloading in order to play nicely with other .NET languages. 

--Scott

Coding on the Cloud and for the Cloud!

My Blog

#6

يعطيك العافية

#7

أعتقد أن مايكروسوفت اهتمامها الأكبر هيكون للسي# بس عندي تعليق علي المقال أن الفيجوال بيسيك.نت ميزته في الintellisence دي ميزة برنامج الكتابة

بالنسبة لناس كتير من اللي بييشتغلوا بالفيجوال بيسك مش هايستعملوا الفيجوال بيسك.نت لأن مبدأ التوريث جديد عليهم ألا لو كانوا عارفين جافا أو سي++

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

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