كمستخدم حاسب تقليدي Regular User يثيره ويسعده جدا صدور أي إصدار جديد لـ Windows (او غيره من البرامج)، ولكن كمبرمج Programmer فالاحباط المبدئي والكآبة لها نصيب كبير من ردة الفعل الأولية، والسبب تغير التقنيات ويصبح كل ما تعلمه في الفترات السابقة (قد) لا يسمن ولا يغني من جوع، مما يؤدي به (في احيان كثيرة) الى التقاعد من عالم البرمجة.
عند الحديث عن Windows Vista فالخيارات كثيرة جدا للمبرمجين، ويصعب علي سردها جميعا، ولكني سأبدأ بالاساليب التقليدية ومن ثم الانتقال الى أحدث التقنيات البرمجية فيه ((عرض موجز وسريع فقط، فلا تتوقع الكثير)).
شفرات غير مدارة Unmanaged Code:
ان كنت من مبرمجي C\Win API فلا تزال تلك البرمجة الكلاسيكية الفائقة الروعة (من منطلق تحسين الكفاءة Optimization) مدعومة، ويمكنك الاستفادة منها لانجاز البرامج الخفيفة والمصغرة (والتي تفضل دائما ان تعمل في الخلفية Background)، وقد أضيفت اكثر من 7000 دالة API جديدة، والعدد في زيادة مستمرة.
بخصوص اللغات والتقنيات الأخرى، كتطوير برامج معتمدة على C++\MFC فستعمل بكفاءة دون مشاكل تذكر (بالمناسبة، 90% من شفرات Office 2007 لازالت من مواليد C++\C)، وبخصوص مبرمجي VB6 فقد صرحت Microsoft بأنها قد قامت بتحديث مكتبات VB Runtime Libraries ويفترض أن تعمل البرامج المنشئة بـ VB6 بلطف مع Windows Vista -مع العلم أنها لا تضمن أي مكونات من طرف ثالث 3rd party components (كأدوات OCX مثلا).
شفرات مدارة Managed Code:
بخصوص المشاريع المنجزة تحت اطار عمل .NET Framework 2.0 فتعمل بكفاءة عالية في اصدارات Windows Vista دون أي مشاكل تذكر، وقد أعلنت Microsoft ان تطبيقات .NET 2.0 تعمل في Win Vista بكفاءة أعلى من Win XP. وبخصوص الخادم IIS، فأضاف اصداره الجديد السابع (والذي يأتي مع Windows Vista) دعم إضافي لخدمات ويب Web-Services وتطبيقات ASP.NET Applications بشكل عام.
WinFX (البرمجة الحقيقية لـ Windows Vista):
هنا أهم فقرة في الموضوع، وقد تغيرت المصطلحات، فركز معي رجاء...
أحدث تقنية ولدت وهدفها (الرئيسي) العمل تحت منصة Windows Vista والتي تمثل البرمجة الحقيقة والتوجه المستقبلي والرؤية الاستراتيجية لتطوير التطبيقات تحت منصة Windows Vista هي تقنية WinFX. مفهوم ؟؟ اوكيه،
تتكون تقنية WinFX من اربع تقنيات أساسية تمثل الأركان الرئيسية لها وهي:
• Windows Presentation Foundation:
تقنية WPF (كانت تسمى على ما أذكر Avalon) تمثل الجيل القادم لتطوير واجهات الاستخدام للتطبيقات، حيث تمكنك من إستخدام لغة XML أيضا لبناء واجهات الاستخدام عوضا عن الأكواد، ويمكنك تطوير واجهات ثلاثية أبعاد 3D بسهولة ويسر ودون الحاجة الى استخدام تقنيات متقدمة او معقدة كـ DirectX ودون الحاجة لفهم الأساس الرياضي لهذا النوع من التطبيقات.
السيد Michael Weinhardt كتب مقالا في قمة الروعة يمثل دليلك المبدئي الى تقنية WPF.
• Windows Communication Foundation:
بالنسبة لتقنية WCF (والتي كانت تسمى Indigo)، فهي الحل الأمثل لبناء تطبيقات خدمية التوجه Service-Oriented Applications أو الأنظمة المتصلة Connected Systems (والمبنية فلسفتها أساسا على خدمات ويب Web-Services).
• Windows CardSpace:
محاولة جادة من Microsoft لتوفير مجموعة من الخدمات ذات معايير ومواصفات موحدة عالمية لتطبيق سيناريو المعرفات الرقمية Digital Identities، حيث تمكن مختلف التطبيقات والمواقع من لباس زي موحد لتطبيق مفهوم التصديق Authentication ومعرفة المستخدم الحالي للنظام.
• Windows Workflow Foundation:
أخيرا، تقنية WWF (يذكرني الإختصار بحلبات المصارعة) عبارة عن مجموعة من الأدوات ومصممات Designers هدفها التعامل مع التقنيات السابق ذكرها (في الفقرات السابقة) لتسهيل عمليات بناء التطبيقات وسيناريوهات الاعمال Business Scenarios.
أسطورة المبرمجين ( المبرمج الايطالي الشهير Dino Esposito ) سبق وكتب مقالا حول هذا الموضوع في مجلة MSDN Magazine ايضا.
عليك معرفة أن كل تقنية من هذه التقنيات تمثل بحر كبير (ليس له نهاية)، ولا أبالغ إن قلت ان كل بحر بحاجة الى آلاف الصفحات وعشرات الكتب للتحدث عن شواطئه، وفي الموقع الرسمي لمبرمجي Windows Vista (لاحظ لمبرمجي وليس لمستخدمي) تجد مدخلا لكل تقنية من هذه التقنيات.
أخيرا، أرجو منك الانتباه بأن عنوان هذه الفقرة WinFX سيبدأ في الاختفاء شيئا فشيئا في الايام القادمة، والسبب أنه كان الاسم الكودي Code Name للمشروع، حيث إعتمدت Microsoft الاسم الجديد له وهو Microsoft .NET Framework 3.0 (ولا تقول تركي ما قال!).
ماذا أحتاج لكي أبدأ بتلطيخ يدي في هذا الوحل؟
الخطوة الأولى: اطار عمل .NET Framework 3.0 اولا وقبل كل شيء، إن كنت من مستخدمي Win XP عليك انزال اطار العمل Microsoft .NET Framework 3.0 Redistributable Package اولا، اما إن كنت من مستخدمي Win Vista فتنصح Microsoft ((بعدم)) استخدام هذا الرابط والاعتماد على النسخة التي تأتي من قرص النظام، انتقل الى لوحة التحكم ثم Programs and Features ثم Turn Windows features on or off ليظهر لك صندوق حوار بعنوان Windows features، حدد العناصر الفرعية للعنصر الجذري Microsoft .NET Framework 3.0:
الخطوة التالية: إن كنت من مستخدمي Visual Studio 2006 (والذي لا يزال تجريبي)، فلست بحاجة الى إنزال اي اضافة، اما مستخدمي Visual Studio 2005 (وأنا منهم)، فعلينا انزال مجموعة من الاضافات تجدها في الروابط التالية:
• Visual Studio 2005 extensions for .NET Framework 3.0 (Windows Workflow Foundation)
• Visual Studio 2005 extensions for .NET Framework 3.0 (WCF & WPF)
بالنسبة لمستخدمي Visual Studio 2003 فلست متأكدا من قدرتهم لتطوير هذا النوع من المشاريع والسبب (على ما اعتقد) ان Microsoft لم توفر اي دعم لهم، ويبقى تقشير البصل الحل الأمثل لمن يريد التوقف عن تطوير مشاريع على اصداراتهم .NET Framework 1.x
أعلم أنك بدأت تشعر بالصداع وأتاك الاحباط المبدئي لكثرة الخيارات، ولكن عجلة التطور من سنة الحياة ولن تجد لسنة الله تبديلا، ولا يزال باب التوبة مفتوح امامك لشراء صحة ذهنك والتوقف عن البرمجة فأطفالك بانتظارك!
-- تركي