Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

إعداد المشروع

جزء من قسم البرمجة كائنية التوجه في رحلة C على Coddy. الدرس 22 من 61.

challenge icon

التحدي

سهل

لنبدأ ببناء مكتبة Bank Account الخاصة بك! في هذه الخطوة الأولى، ستنشئ الواجهة العامة: ملف الترويسة الذي يعرّف العمليات الموجودة دون الكشف عن أي تفاصيل تنفيذ.

ستنشئ ملفين لإعداد أساس المشروع:

  • account.h: ملف الترويسة العامة الخاص بك. هذا هو الملف الذي سيقوم مستخدمو مكتبتك بعمل include له. عرّف نوع Account من نوع opaque باستخدام incomplete type declaration: لا يوجد جسم struct، بل مجرد forward declaration يخبر المصرّف بأن النوع موجود. ثم عرّف نماذج الدوال الأولية لـ create_account (تأخذ قيمة integer لمعرّف الحساب وتُرجع Account pointer) وdestroy_account (تأخذ Account pointer وتُرجع nothing). لا تنسَ حواجز include باستخدام الرمز ACCOUNT_H.
  • main.c: ملف اختبار بسيط للتحقق من أن الترويسة تُصرَّف بشكل صحيح. قم بعمل include لترويستك واطبع رسالة تؤكد أن الواجهة جاهزة. بما أننا لم ننفّذ الدوال بعد، اطبع مجرد رسالة تأكيد: سيأتي التنفيذ الفعلي في الدرس التالي.

الفكرة الأساسية هنا هي أن ترويستك تكشف ما يستطيع نموذج Account فعله (إنشاء الحسابات وتدميرها) من دون إظهار كيفية تخزينه للبيانات داخليًا. أي شخص يقوم بعمل include للملف account.h سيعرف أن نوع Account موجود وما الدوال المتاحة، لكنه لن يتمكن من الوصول إلى أي حقول داخلية، لأنك لم تعرّف أيًا منها في الترويسة!

يجب أن يُخرج ملفك الرئيسي:

Account interface ready

يمهّد هذا الطريق لنظام Bank Account الكامل الذي ستبنيه خلال الدروس العديدة التالية. ستتوسع الترويسة التي تنشئها الآن لتتضمن deposit وwithdraw وget_balance مع تقدمك في المشروع.

جرّب بنفسك

#include <stdio.h>
#include "account.h"

int main() {
    // TODO: اطبع رسالة تؤكد أن الواجهة جاهزة
    // The message should be: "Account interface ready"
    
    return 0;
}

جميع دروس البرمجة كائنية التوجه

تدرّب بنفسك: مترجم C عبر الإنترنت