عرب تك
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

اذهب الى الأسفل
avatar
tarik
عدد المساهمات : 134
تاريخ التسجيل : 08/10/2012

الجزء الاول   الفرق بين #c  و   vb.net Empty الجزء الاول الفرق بين #c و vb.net

الثلاثاء أكتوبر 09, 2012 9:22 am
[center]* أولاً : كونك مبرمج سي شارب لا تنس أن تضع ; في آخر كل سطر

* ثانياً : طريقة تعريف المتغيرات :
VB.net :
الكود:

 
Dim X as Integer
Dim X as ClassName=new ClassName()


C#
الكود:


 
int x;
ClassName x=new ClassName()

* ثالثاً : في حالة الشروط في VB.net اكتب = أما في C# اكتب == ، كما ستجد العلامة != لعدم المساواة بدلاً من <> .

* رابعاً : تعتمد لغة VB.net على جمل مثل End وتستخدمها في الاجراءات والكلاسات وغيرها مثلاً :

الكود:

 if x=1 Then
End if
بينما تجدها في C# باستخدام الأقواس :
الكود:

 
if(x==1)
{
}
وكذلك في الكلاس والاجراءات أيضاً :
VB.net :

الكود:

Imports System
Namespace MyNameSpace
Class HelloWorld
'Entry point which delegates to C-style main
Private Function
Public Overloads Shared Sub Main()
Main(System.Environment.GetCommandLineArgs())
End Sub
Overloads Shared Sub Main(args() As String)
System.Console.WriteLine("Hello World")
End Sub 'Main
End Class 'HelloWorld End Namespace 'MyNameSpace


C#

الكود:


using System
Namespace MyNameSpace
{
class HelloWorld
{
static void Main(string[] args)
{
System.Console.WriteLine("Hello
World")
}
}
}




* خامساً ، في فيجوال بيسك .net سوف تستخدم And,Or,Not,OrElse بينما في C# سوف تستخدم && || ! .

* سادساً : عند جمع النصوص استخدم & في VB.net ولكن في C# استخدم + .

* سابعاً : else if في C# هي ElseIf في VB.net

* ثامناً : كما اسلفنا في موضوع End ، ففي الحلقات التكرارية تعتمد C# على الأقواس أيضاً :

الكود:

for (i = 2; i < = 10; i += 2)
{
System.Console.WriteLine(i);
System.Console.WriteLine(i*10);
}
وفي حالة كونها سطر واحد يمكن الاستغناء عن الأقواس :
الكود:

 
for (i = 2; i < = 10; i += 2)
System.Console.WriteLine(i);
أما في VB.net فهي تأخذ شكلاً موحداً :
الكود:

For c = 2 To 10 Step 2
System.Console.WriteLine(c)
Next
ونفس الأمر بالنسبة لباقي الحلقات التكرارية While و for each وخلافه .

* تاسعاً : بالنسبة للمصفوفات وخلافه يستخدم القوس [] بدلاً من () في VB.net .

C#
الكود:

 
int[] nums = {1, 2, 3};
for (int i = 0; i < nums.Length; i++)
Console.WriteLine(nums[i]);
Vb.net
الكود:

Dim nums() As Integer = {1, 2, 3}
For i As Integer = 0 To nums.Length - 1
Console.WriteLine(nums(i))
Next
* لن تجد تعليقاً Comment لأكثر من سطر في VB.net مثل /* */ في C# ، وكذلك XML Comments على الرغم من أنني قرأت انها ستكون مدعومة في الاصدارة القادمة .

* في C# سوف تستخدم العلامة المئوية % بدلاً من Mod في VB.net للحصول على باقي القسمة .

* لن تدعم لك VB.net استخدام Bitwise Operations في حالة Assignment على عكس ال C# حيث تتيح لك ذلك .

لن اطيل لإنك - كما لاحظت معي - فإن هذه الفروقات لا تتعدى كونها فروقات لغوية ، وهي فروقات غير ذات قيمة بالمرة ، وفي الدرس القادم نواصل ...
الرجوع الى أعلى الصفحة
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى