التعليقات
الملاحظة في برنامج Pine لمن يقرأ الملف. الشاشة تبقى pine. Console.WriteLine("pine"); ما زال السطر الذي يكتب تلك الكلمة. هذه الصفحة تضيف الملاحظة بشكلين، وتُظهر أن pine ما زال السطر الوحيد، ثم تُظهر الموضع الوحيد الذي يزيل pine. أنت لا تثبّت SDK من جديد. وأنت لا تعيد قراءة أي سطر هو Main. أبقِ الفئة العامة باسم Pine، وأبقِ أمر الكتابة نشطًا في الملف الذي تحتفظ به.
الملاحظة ليست أمرًا
الأمر سطر ينفّذه C#. Console.WriteLine("pine"); أمر. يكتب pine وينهي السطر. الملاحظة نص تتركه في الملف حتى تتذكر أنت، أو القارئ التالي، شيئًا. المترجم ووقت التشغيل يتجاوزان الملاحظة. التجاوز يعني أن الملاحظة لا تُنفَّذ، ولا تُكتب على الشاشة. أحرف الملاحظة تبقى في الملف بعد التشغيل. يمكنك فتح الملف وقراءتها. لا تجدها على الشاشة. الشاشة ما زالت سطرًا واحدًا، وذلك السطر هو pine، ما دام أمر الكتابة نفسه ليس هو الملاحظة.
هناك شكلان. ملاحظة السطر تبدأ بشرطتين مائلتين، //. يتجاوز C# من هاتين الشرطتين حتى نهاية ذلك السطر نفسه. السطر التالي سطر عادي مرة أخرى. ملاحظة الكتلة تبدأ بـ /* وتنتهي عند أول */. يتجاوز C# كل ما بين العلامتين، بما في ذلك الانتقالات إلى سطر جديد. ملاحظة الكتلة قد تقع في سطر واحد أو عبر عدة أسطر. كلا الشكلين ملاحظات. لا يكتب أي منهما الشاشة. الشرطتان المائلتان لا تُطبعان. والنجوم لا تُطبع. والكلمات التي تضعها بينهما لا تُطبع.
الملف الذي تحتفظ به
احتفظ بهذا الشكل التعليمي. فيه ملاحظة سطر فوق أمر الكتابة، وملاحظة سطر على سطر الأمر نفسه، وملاحظة سطر قرب Main. أمر الكتابة ما زال موجودًا، وليس خلف شرطة مائلة.
using System;
public class Pine
{
// the teaching type is Pine
public static void Main()
{
// a note for the reader
Console.WriteLine("pine"); // the screen is this word
}
}
اقرأ من الأعلى، وقرر لكل سطر هل تستقبله الشاشة أم لا. سطر using System; يجهّز الأسماء القصيرة ولا يكتب الشاشة. سطر الفئة ما زال public class Pine. ذلك السطر يسمّي النوع ولا يكتب الشاشة. السطر التالي هو // the teaching type is Pine. الشرطتان المائلتان تبدآن ملاحظة، فتلك الكلمات لك. الشاشة لا تُظهرها. ولا تُظهر الشرطتين أيضًا. سطر public static void Main() هو حيث يبدأ وقت التشغيل، ولا كلمة من تلك الكلمات على الشاشة. هذا لم يتغيّر عن First Program.
داخل Main، السطر // a note for the reader ملاحظة فقط. يصل إليه وقت التشغيل، يتجاوزه، وينتقل إلى السطر التالي. السطر التالي هو المهم: Console.WriteLine("pine"); // the screen is this word. اقرأ ذلك السطر جزءين يفصل بينهما الشرطتان. قبل الشرطتين، الأمر هو Console.WriteLine("pine");. ذلك الأمر يكتب pine وينهي السطر. بعد الشرطتين، كلمات the screen is this word ملاحظة. تجلس على نفس سطر الأمر، وما زالت تُتجاوز. الملاحظة لا يجب أن تشغل سطرًا وحدها. إذا ظهر // بعد أمر مكتمل، ينفَّذ الأمر وبقية السطر لا. الفاصلة المنقوطة هي ما يُنهي الأمر. الشرطتان بعد الفاصلة المنقوطة تبدآن الملاحظة. اترك تلك الفاصلة حيث هي. الشاشة تُظهر pine. لا تُظهر the screen is this word. ولا تُظهر سطرًا ثانيًا.
شغّله بنفس الطريقة بعد التثبيت. في مجلد المشروع اكتب dotnet run. الشاشة تُظهر pine. سطر واحد. بلا علامات اقتباس. بلا شرطتين مائلتين. بلا سطر ثانٍ. كلمة pine ما زالت الكلمة بين علامتي الاقتباس. ليست كلمة كتبتها في الأمر، وليست كلمة كتبتها في ملاحظة. الملاحظات لا تُفشل البناء، ولا تطبع نفسها.
ملاحظة الكتلة
ملاحظة الكتلة هي الشكل الآخر. تستخدمها عندما تكون الملاحظة أطول من سطر، أو عندما تريد أن يكون نهاية الملاحظة علامة تختارها أنت، لا نهاية السطر. علامة الفتح هي /*. علامة الإغلاق هي */. يتجاوز C# من الفتح حتى الإغلاق، وأول */ هو النهاية. */ لاحق ليس جزءًا من هذه الملاحظة، لأن الملاحظة انتهت أصلًا. هذه الصفحة تستخدم ملاحظة كتلة واحدة، فترى فتحًا واحدًا وإغلاقًا واحدًا.
استبدل ملاحظات السطر داخل Main بملاحظة كتلة واحدة، واترك أمر الكتابة في مكانه. الشاشة لا تتغيّر. هذا هو الملف الثاني. أنت تنظر إلى شكل الملاحظة. الملف الذي كنت تحتفظ به استخدم ملاحظات سطر. هذا يستخدم ملاحظة كتلة. كلاهما يكتب pine.
using System;
public class Pine
{
public static void Main()
{
/* a note
across two lines */
Console.WriteLine("pine");
}
}
تبدأ ملاحظة الكتلة على السطر الذي يبدأ بـ /*. كلمات a note داخلها. السطر التالي، across two lines، داخلها أيضًا، لأن */ الإغلاق لم يظهر بعد. */ في نهاية ذلك السطر الثاني ينهي الملاحظة. ثم ينفّذ C# Console.WriteLine("pine"); لأن ذلك الأمر خارج الملاحظة، تحت علامة الإغلاق. الشاشة تُظهر pine. كلمات a note وacross two lines ليست على الشاشة. النجوم والشرطتان المائلتان ليست على الشاشة. إذا حرّكت */ لأعلى حتى يجلس على السطر الأول، مباشرة بعد a note، فالسطر الثاني لم يعد داخل الملاحظة. ذلك السطر الثاني يجب أن يكون سطر C# حقيقيًا، وacross two lines ليس أمرًا. البناء سيكتب خطأ بدل أن يبقى هادئًا. على هذه الصفحة يبقى */ في نهاية السطر الثاني، فتُتجاوز الملاحظة كلها ويبقى البناء هادئًا.
لا تحاول وضع ملاحظة كتلة داخل أخرى. أول */ ينهي الملاحظة، حتى لو كنت تقصد أن ذلك */ ينهي ملاحظة داخلية. بعد علامة الإغلاق الأولى، C# يقرأ أوامرًا مرة أخرى. هذه الصفحة لا تُعشّش الملاحظات. فتح واحد، إغلاق واحد، ثم أمر الكتابة.
الخطأ الذي يزيل pine
الملاحظة وأمر الكتابة أسطر مختلفة، أو أجزاء مختلفة من سطر واحد، في الملفات أعلاه. الخطأ هو وضع الشرطتين المائلتين أمام أمر الكتابة، حتى يصير الأمر نفسه الملاحظة. احفظ هذا الشكل الثالث فقط بما يكفي لترى الشاشة الفارغة، ثم أعد أمر الكتابة. هذا ليس الملف الذي تحتفظ به.
using System;
public class Pine
{
public static void Main()
{
// Console.WriteLine("pine");
}
}
dotnet run بعد ذلك لا يكتب شيئًا مفيدًا على الشاشة لهذا الفحص التعليمي. لا يوجد pine. لا توجد كلمة مقتبسة فارغة. لا يوجد سطر ثانٍ. الشاشة فارغة لأن الأمر الذي كان يكتب pine خلف //. أحرف Console.WriteLine("pine") ما زالت في الملف ويمكنك قراءتها، لكنها ملاحظة الآن. علامات الاقتباس لا تنقذها. علامات الاقتباس تعلّم كلمة داخل أمر. لا تحوّل ملاحظة إلى أمر من جديد. الشرطتان المائلتان في الأمام هما من يقرر، ويقرران أن بقية السطر للقارئ.
أعد الملف إلى الذي تحتفظ به. سطر الكتابة يجب أن يكون Console.WriteLine("pine"); مع الملاحظة، إن أردت واحدة، بعد الفاصلة المنقوطة. ثم dotnet run يكتب pine مرة أخرى. إذا كانت الشاشة فارغة، ابحث عن // قبل Console. هذا هو الفحص كله. أنت لا تعيد تثبيت .NET SDK لشاشة فارغة سببها ملاحظة. أبقِ عادات Java المتبقية مع System.out.println بعيدة عن هذه الصفحة وأنت تتدرب على سطر كتابة C#. وأبقِ اختراع مسارات ASP.NET بعيدًا عن هذه الصفحة.
الشاشة ما زالت pine
يمكنك الآن وضع ملاحظة في ملف Pine دون تغيير الشاشة. ملاحظة السطر تبدأ بـ //. ملاحظة الكتلة تبدأ بـ /* وتنتهي عند أول */. شاشة الملف الذي تحتفظ به هي pine، مكتوبة بـ Console.WriteLine("pine");. إذا وقف // أمام ذلك الأمر، فلا سطر على الشاشة. الملاحظة قد تحتوي أي كلمات، بما فيها Pine وMain وpine. تلك الكلمات ما زالت ليست على الشاشة. الصفحة التالية تغيّر كيف تُكتب أسطر المخرجات، حتى تستطيع الشاشة إظهار أكثر من عادة قصيرة واحدة. ملاحظات هذه الصفحة تبقى ملاحظات.
🧠 اختبر معرفتك
اختبر معرفتك
تحدى نفسك مع هذا الاختبار التفاعلي واكتشف مدى فهمك للموضوع
📝 التعليمات
- اقرأ كل سؤال بعناية
- اختر أفضل إجابة لكل سؤال
- يمكنك إعادة الاختبار عدة مرات كما تريد
- سيتم عرض تقدمك في الأعلى