الملفات الخارجية
جزء من قسم Object Oriented Programming في رحلة C# على Coddy — الدرس 1 من 70.
تتيح لك الملفات الخارجية تنظيم الـ classes الخاصة بك في ملفات C# منفصلة والإشارة إليها في برنامجك الرئيسي باستخدام الـ namespaces.
قم بإنشاء ملف C# منفصل يسمى MyClass.cs
namespace MyApp
{
public class MyClass
{
public string Name { get; set; }
public MyClass(string name)
{
Name = name;
}
public string Greet()
{
return $"Hello, I'm {Name}";
}
}
}قم بالإشارة إلى مساحة الاسم في ملفك الرئيسي
using MyApp;أنشئ مثيلاً واستخدمه
MyClass obj = new MyClass("Alice");
Console.WriteLine(obj.Greet());الناتج:
Hello, I'm Aliceتسمح لك عبارة using MyApp; باستخدام الفئات من مساحة الأسماء MyApp دون الحاجة إلى كتابة الاسم الكامل لها. تقوم مساحة الأسماء بتجميع الفئات ذات الصلة معاً. داخل مشروع واحد، يمكن الوصول إلى الفئات عبر الملفات بشكل افتراضي؛ وتحديد الفئة كـ public هو ما يجعل الوصول إليها ممكناً من المشاريع الأخرى (assemblies) أيضاً.
التحدي
متوسطلقد تم تزويدك بملفات C# (MyClass.cs و Program.cs)، قم بإضافة عبارة using في ملف Program.cs لربط الملفات واستخدام الفئة (class) من الملف الخارجي!
جرّب بنفسك
// TODO: استبدل ? بمساحة الاسم (namespace) الصحيحة لاستخدام MyClass
using ?;
using System;
class Program
{
static void Main()
{
string testCase = Console.ReadLine();
// قم بإنشاء مثيل (instance) من MyClass واستدعِ GetMessage()
MyClass obj = new MyClass();
Console.WriteLine(obj.GetMessage());
}
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Object Oriented Programming
1أساسيات OOP
الملفات الخارجيةNamespaces والتوجيهاتمقدمة في Classes و Objectsالكلمة المفتاحية 'this'Methods والمعاملاتFields مقابل PropertiesConstructorsObject Initializersمراجعة - آلة حاسبة بسيطة4الوراثة
صيغة الوراثة الأساسية (:)الكلمة المفتاحية 'base'الكلمات المفتاحية Virtual و Overrideالأصناف المختومة (Sealed Classes)الفئة الأساسية 'object'مراجعة - هيكلية الموظفين7ميزات متقدمة
تحميل العوامل (Operator Overloading)المفهرسات (Indexers (this[]))إعادة تعريف ()ToStringدوال التوسعة (Extension Methods)ملخص - Custom List2الخصائص والأعضاء الساكنة (Static Members)
الخصائص المطبقة تلقائيًا (Auto-Implemented Properties)خصائص القراءة فقط والكتابة فقطالحقول والدوال الساكنة (Static)الفئات الساكنة (Static Classes)الأعضاء ذات البنية التعبيرية (Expression-Bodied Members)5تعدد الأشكال والواجهات (Polymorphism & Interfaces)
تعدد الأشكال: وقت التجميع مقابل وقت التشغيلالواجهة مقابل الفئة المجردة (Abstract Class)الواجهات المتعددةالواجهات الصريحةUpcasting و Downcastingملخص - حاسبة الأشكال8مفاهيم البرمجة كائنية التوجه (OOP) المتقدمة
التركيب بدلاً من الوراثةالـ Generics (الأصناف والدوال)الـ Delegates والأحداثالـ Attributes والـ Reflectionواجهة IDisposable وجملة usingأساسيات Dependency Injection