أولا : مقدمة :
معظم تطبيقات لغة السى شارب تعالج معلومات (مدخلات) وتعرض النتائج (مخرجات) . في هذا الدرس ، سوف نقدم تطبيقات "الكونسول" console والتى تكون مدخلاتها ومخرجاتها عبارة عن نصوص text في نافذة الكونسول ، وهى نافذة سوداء تشبة نظام التشغيل DOS وتعرف فى نظام النوافذ باسم "موجه الأوامر" Command Prompt .
سوف نبدأ بالعديد من الأمثلة والتي ببساطة تعرض رسائل messages على الشاشة. ثم نعرض أحد التطبيقات التي تحصل على رقمين من المستخدم ، وتحسب مجموعهما وتعرض النتيجة . ستجري حسابات حسابية مختلفة وتحفظ النتائج لاستخدامها لاحقًا . تحتوي العديد من التطبيقات على منطق إتخاذ القرارات decisions - المثال الأخير في هذا الدرس يوضح أساسيات صنع القرار من خلال عرض كيفية مقارنة الأعداد وعرض الرسائل استنادًا إلى نتائج المقارنة . على سبيل المثال ، يعرض التطبيق رسالة تشير إلى أن رقمين متساويين فقط إذا كان لهما نفس القيمة. سوف نقوم بتحليل كل كود سطر بسطر .
ثانيا :تطبيق بسيط على البرمجة بلغة السى شارب C# : عرض سطر من النص Text
يظهر التطبيق وخرجة في الشكل 1 الذي يوضح العديد من الخصائص المهمة للغة C# . يشتمل كل برنامج نقدمه في هذا الدرس على أرقام السطور ، والتي لا تشكل جزءًا من كود C# الفعلي . ( لعرض أرقام السطور إذهب إلى القائمة Tools واختار Options ومنها اختار Text Editor ثم اختار All Languages ومن اليمين حدد Line numbers ) . وسنرى قريبًا أن السطر رقم 10 يقوم بالعمل الحقيقي للتطبيق – أي ، عرض العبارة
Welcome to C# Programming! على الشاشة. نناقش الآن كل سطر من التطبيق – وتسمى هذه العملية بالتجوال خلال الكود .
![مدخل البرمجة بلغة السى شارب وتطبيقات الكونسول Console Applications 113](https://i.servimg.com/u/f62/18/74/92/45/113.jpg)
Code :
- الكود:C#
1 // Fig. 1: Welcome1.cs
2 // Text-displaying app.
3 using System;
4
5 public class Welcome1
6 {
7 // Main method begins execution of C# app
8 public static void Main( string[] args )
9 {
10 Console.WriteLine( "Welcome to C# Programming!" );
11 } // end Main
12 } // end class Welcome1
1- التعليقات Comments :
السطر رقم 1 :
- الكود:C#
// Fig. 1: Welcome1.cs
يبدأ هذا السطر بالأحرف ( // ) ، مشيرا إلى أن ما تبقى من السطر هو تعليق comment . سوف يتم إدراج تعليقات لتوثيق تطبيقاتك وتحسين إمكانية قراءتها. يتجاهل مترجم لغة C# التعليقات ، بحيث لا يتسبب في قيام الكمبيوتر بأي إجراء عند تشغيل التطبيق . سوف نبدأ كل تطبيق بتعليق يشير إلى رقم الشكل واسم الملف الذي تم تخزين التطبيق فيه.
يسمى التعليق الذي يبدأ بـالأحرف // تعليق سطر واحد ، لأنه ينتهي في نهاية السطر الذي يظهر عليه. يمكن أن يبدأ التعليق // أيضًا في منتصف السطر ويستمر حتى نهاية هذا السطر (كما هو الحال في السطور 7 و 11 و 12).
• التعليق المحدد Delimited comments مثل :
- الكود: C#
/* This is a delimited comment.
It can be split over many lines */
يمكن تقسيمه على عدة سطور . يبدأ هذا النوع من التعليق بالمحدد delimiter ( /* ) وينتهي بالمحدد ( */ ) . يتم تجاهل كل النص بين المحددات بواسطة المترجم compiler .
أخطاء برمجية : الخطأ رقم 1 :
نسيان أحد المحددات الخاصة بتعليق محدد هو خطأ في بناء الجملة syntax error .يحدث خطأ في بناء الجملة عندما يواجه المترجم الكود الذى ينتهك قواعد لغة C# .
في هذه الحالة ، لا ينتج المترجم ملفًا قابلاً للتنفيذ . بدلاً من ذلك ، فإنه يصدر رسالة خطأ واحدة أو أكثر لمساعدتك في تحديد التعليمات البرمجية غير الصحيحة وإصلاحها . تسمى أخطاء بناء الجملة أيضاً أخطاء المترجم compiler errors ، أوأخطاء وقت الترجمة compile-time errors أو أخطاء الترجمة compilation errors ، لأن المترجم يكتشفها أثناء مرحلة الترجمة . لن تتمكن من تنفيذ تطبيقك حتى تصحح جميع أخطاء بناء الجملة فيه.
السطر رقم 2 :
- الكود: C#
// Text-displaying app.
وهو تعليق من سطر واحد يصف الغرض من التطبيق.
2- التوجيه "استخدام" “using” Directive
السطر رقم 3 :
- الكود:C#
using System;
عبارة عن "توجيه" directive يستخدم لإخبار المترجم بمكان البحث عن "فئة أو طبقة" class والتى تستخدم في هذا التطبيق . القوة الكبيرة فى الفيجوال سى شارب تكمن فى أنه غنى بمجموعة من الفئات (الطبقات) المعرفة مسبقًا التي يمكنك إعادة استخدامها بدلاً من "إعادة اختراع العجلة". يتم تنظيم هذه الفئات ضمن (تحت) "حيز الأسماء" namespaces – مجموعات مسماة من الفئات ذات الصلة . بشكل جماعي ، تتم الإشارة إلى حيز أسماء الدوت نت NET’s namespaces باسم "مكتبة فئات إطار العمل دوت نت" NET Class Library).( .
يحدد كل توجيه using فضاء (مساحة) اسم تحتوي على فئات محددة مسبقًا يمكن لتطبيقات السى شارب استخدامها.
يشير التوجيه الذي يستخدم في السطر 3 إلى أن هذا المثال يعتزم استخدام الفئات من حيز اسم "النظام" System namespace ، التي تحتوي على فئة "الكونسول" Console class المحددة مسبقًا (التي سيتم مناقشتها بعد قليل) والمستخدمة في السطر 10 ، والعديد من الفئات المفيدة الأخرى .
تلميحات لمنع الوقوع فى الأخطاء 1
نسيان تضمين التوجيه باستخدام using من أجل حيز اسم namespace تحتوي على فئة مستخدمة في تطبيقك عادة ما ينتج عنه خطأ في الترجمة ، يحتوي على رسالة مثل :
“The name 'Console' does not exist in the current context.”
وتعنى الاسم "كونسول" غير موجودة في السياق الحالي . عند حدوث ذلك ، تحقق من أنك قد قمت بتوفير التوجيهات الصحيحة واستخدام أن الأسماء في التوجيهات المستخدمة مكتوبة بشكل صحيح ، بما في ذلك الاستخدام الهجاء الصحيح والحروف الكبيرة والصغيرة.
لكل فئة "دوت نت" (.NET) جديدة نستخدمها ، نشير إلى حيز الاسم namespace التي تقع فيها. تعتبر هذه المعلومات مهمة ، لأنها تساعدك في تحديد أوصاف كل فئة في وثائق الدوت نت . يمكن العثور على نسخة تستند إلى الويب من هذه الوثائق على الرابط
msdn.microsoft.com/en-us/library/ms229335.aspx
يمكن أيضًا الوصول إلى هذا عبر قائمة المساعدة Help . يمكنك النقر فوق اسم أي فئة class أو طريقة (أسلوب) method دوت نت ، ثم الضغط على المفتاح F1 للحصول على مزيد من المعلومات . وأخيرًا ، يمكنك التعرف على محتويات حيز اسم محدد بالانتقال إلى :
msdn.microsoft.com/namespace
لذلك ، يأخذك الرابط msdn.microsoft.com/System إلى وثائق حيز الاسم System .
3- السطور الفارغة Blank Lines والمسافات البيضاء Whitespace
السطر رقم 4 :
هو ببساطة سطر فارغ . تجعل الأسطر الفارغة والمسافات الكود أسهل في القراءة ، وتعرف هى وأحرف التبويب tab باسم المسافات (الفراغات) البيضاء whitespace . تُعرف أحرف المسافات وعلامات التبويب على وجه التحديد بأحرف المسافات البيضاء . يتم تجاهل المسافات البيضاء بواسطة المترجم .
ليست هناك تعليقات:
Write Comments