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

نظام حجز وإدارة الطيران

تطبيق سطح مكتب لحجز وإدارة رحلات الطيران، بواجهة Flutter ونظام خلفي مبني بلغة C++.

  • C++
  • Flutter
  • Dart
  • FFI

نظرة على المشروع

نظام حجز وإدارة الطيران

01

المشكلة

نظام حجز الطيران لازم ينظم المسافرين والرحلات والمقاعد والأمتعة والأسعار ومستويات الإدارة من غير خلط في المسؤوليات أو فقد بيانات.

02

الحل

عملت تطبيق Windows بواجهة Flutter ونظام خلفي C++ كائني التوجه. استخدمت Dart FFI للربط بين الواجهة والمنطق، وملفات CSV للتخزين المحلي في النسخة التعليمية.

03

مسؤوليتي

  • صممت المسافرين والإداريين والرحلات والتذاكر والمقاعد والأمتعة في C++.
  • طبقت الوراثة وتعدد الأشكال وأنماط Factory وSingleton.
  • ربطت C++ بواجهة Flutter عن طريق FFI.
  • بنيت الحجز والإلغاء واختيار المقاعد والتسعير وأدوات الإدارة.

04

أهم التحديات

  • نقل البيانات بأمان بين Dart ومكتبة C++.
  • مزامنة المقاعد والتذاكر بعد الحجز أو الإلغاء.
  • تطبيق صلاحيات المسافر والإداري والمدير الرئيسي.
  • تجهيز مشروع متعدد اللغات بخطوات تشغيل واضحة.

05

طريقة التشغيل

  1. 01

    Install the requirements

    Use Windows 10 or 11, Flutter with Windows desktop support, Visual Studio 2022 Desktop development with C++, and CMake 3.14 or newer.

    flutter doctor
  2. 02

    Download the project

    Clone the repository or use the Download ZIP button.

    git clone https://github.com/Ahmed-hesham2306/airline-reservation-system.git
    cd airline-reservation-system
  3. 03

    Set local demo passwords

    Choose passwords for the two administrator roles in PowerShell.

    $env:AIRLINE_ADMIN_PASSWORD="choose-a-local-admin-password"
    $env:AIRLINE_SUPER_ADMIN_PASSWORD="choose-a-local-super-admin-password"
  4. 04

    Build the C++ bridge

    CMake builds the native library and places it where the Flutter Windows runner can load it.

    cmake -S cpp_src -B cpp_src/build -G "Visual Studio 17 2022" -A x64
    cmake --build cpp_src/build --config Release
  5. 05

    Launch the desktop app

    Install the Flutter packages and run the Windows target.

    cd flutter_app
    flutter pub get
    flutter run -d windows