2007/09/12

Now C#

بعد مدة طويلة من المحادثات والدراسة وتتبع الأخبار من شبكة مبرمجي مايكروسوفت والمدونات البرمجية، بدأت في البرمجة بلغة Visual Studio 2005.NET Visual C# framework 2.0، مع أن النسخة الجديدة من لغة البرمجة (C# Version 3.0) في الطريق إلينا السنة القادمة، ويمكنك حالياً إنزال النسخة التجريبية من لغة البرمجة (VS.NET 2008) والتي تحمل الإسم الكودي (ORCAS).

وبما أنني من عشاق الفيجوال بيسك 6، وهواة الفيجوال بيسك نت، فلم أجد صعوبات كثيرة في التحول نحو C Sharp، من ناحية الأساسيات البرمجية، لكن الصعوبة تكمن في تعقيدات اللغة والجمل البرمجية عالية المستوى، والتعامل مع الكائنات البرمجية مثل (ADO.NET 2.0) و (Controls)، فبعد إتجاه مايكروسوفت نحو البرمجة كائنية المستوى (OOP) أصبحت كل التعريفات البرمجية عبارة عن كائنات تحتوي على خصائص وفئات وأحداث، بخيث يمكنك التحدث إليها والتحكم بها بصفة كاملة شاملة، ولعل أبسط مثال عندما تقوم بتعريف متغير كمتغير نصي:

string test;

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

ومن المشاكل التي تواجه من يتحول من لغة البرمجة (VB 6.0) الى (VS.NET C Sharp) هي طريقة تحويل كل شئ تقريباً إلى كائنات، مما نجم عنه صعوبة مبدئية في تقبل هذه الفكرة، فمثلاً عندما تضيف (Node) إلى (TreeView Control) فيجب عليك عندها تكوين (Object) وإعطائه خصائص مشابهة لخصائص (Node) بل ويمكنك أيضاً إعطاء خصائص جديدة مخصصة لطريقة عملك بدون الإلتفات إلى الخصائص العادية سابقة الإدماج، وهو ماسيجعلك في حاجة ماسة لدراسة كيفية تكوين وبرمجة الكائنات البرمجية.

وبصفة عامة فأنني أنصح الراغبين في تحديث برامجهم والبرمجة للمستقبل بالتحول نحو VS.NET C# 2.0 وقراءة التحديثات الجديدة في النسخة الثالثة منها.

No comments: