1.5RAD: توليد تطبيق كامل
الأساسي في 30 ثانية
- RAD يولّد تلقائيًا من التحليل: نوافذ، جداول، قوائم، أزرار، كود تسيير البيانات، وأحيانًا تقارير.
- يعتمد كليًا على جودة التحليل: نموذج مختلّ يعطي تطبيقًا مختلًّا، لكن أسرع.
- لا يعوّض المطوّر: الكود المولّد عام ويتجاهل قواعد مهنتك، التي عليك كتابتها لاحقًا.
حالة مصغّرة متسلسلة — ياسين يشغّل RAD على تحليله
تحليل ياسين جاهز (العميل، المنتج، الطلب، سطر الطلب). يشغّل RAD. في دقائق، يولّد WinDev تطبيقًا كاملًا: نافذة استعراض بجدول الطلبات، ونوافذ إضافة وتعديل، وقائمة، والأزرار وكود التسيير القياسي للبيانات. يستطيع ياسين الآن الإدخال والاستعراض — أمر مذهل. لكنه يلاحظ الحدود سريعًا: RAD لا يعرف أن شركته تمنح خصم 5% فوق عشرة مقالات، ولا أن الطلب يجب منعه عند المستحقات، ولا أن المخزون يجب ألا يصبح سالبًا. هذه القواعد المهنية عليه كتابتها بنفسه (القسمان 1.3 و1.4). فيستخدم RAD حسب العنصر لإضافة نافذة على ملف جديد، ثم يخصّص. يستخلص ياسين: RAD مسرّع انطلاق رائع، لا بديل عن التصميم.
حالة مستقلة لهذا القسم: تعود في الدرس والمخطّط والسكربت وتحدّي 48 ساعة للقسم 1.5.
1. ما يولّده RAD
RAD (Rapid Application Development) هو الميزة الرمزية في WinDev: من تحليلك، يولّد تلقائيًا تطبيقًا كاملًا وعاملًا — نوافذ إدخال، ونوافذ استعراض بجداول، وقوائم، وأزرار إجراء، وكود تسيير البيانات، بل وتقارير طباعة.
في دقائق، ننتقل من نموذج بيانات إلى تطبيق يمكن تشغيله والإدخال فيه والبحث والطباعة فعلًا. ونميّز RAD الكامل (كل التطبيق) عن RAD حسب العنصر (نافذة لملف محدد) — وهذا الأخير غالبًا الأكثر فائدة يوميًا.
2. ما لا يفعله RAD
RAD يسرّع الانطلاق بإنتاج قاعدة عمل متناسقة وفق معايير الورشة. لكنه لا يعوّض المطوّر: الكود المولّد عام ولا يعرف شيئًا عن قواعد مهنتك (الخصم، رقابة التناسق، مسار التأكيد).
وهو يعتمد كليًا على جودة التحليل: التحليل المختلّ ينتج تطبيقًا مختلًّا، أسرع لكن مختلًّا. والنتيجة دائمًا بحاجة إلى تخصيص — هندسة الاستخدام، التسميات، القواعد، التسلسلات.
3. مسرّع، لا بديل
المنهج الصحيح: الاعتناء بالتحليل، ثم التوليد (RAD كامل عند الانطلاق، أو حسب العنصر تدريجيًا)، ثم اختبار التطبيق المولّد، ثم التخصيص بإضافة قواعد المهنة.
وأخيرًا، RAD أداة تعلّم ممتازة: قراءة الكود المولّد تكشف دوال الورشة والممارسات الجيدة. يستخدمه ياسين نقطة انطلاق، لا تسليمًا نهائيًا.
🔎 مثال ملموس — 🔎 مثال ملموس — RAD كامل أم حسب العنصر؟
استخدامان لـRAD في مشروع ياسين:
RAD complet : analyse "NegoceElec" → application entière
(fenêtres Ajout / Modification / Consultation, menus, tables, états)
RAD par élément : un fichier précis (ex. Facture) → une fenêtre dédiée
(souvent le plus maniable au quotidien)
→ base fonctionnelle générée, PUIS on ajoute en WLangage :
remise 5 %, blocage sur impayé, stock non négatif…
القراءة: RAD يسلّم قاعدة عملية فورية؛ وكل ما يخص مهنة ياسين يبقى للكتابة.
الانعكاس: الاعتناء بالتحليل أولًا، ثم التوليد، ثم التخصيص.
مفردات القسم
- RAD
- Rapid Application Development: توليد تلقائي، من التحليل، لتطبيق كامل (نوافذ، جداول، قوائم، كود تسيير، تقارير).
مثال بسيط: يشغّل ياسين RAD فيحصل على تطبيق تجارة عامل في دقائق.
ما ليس كذلك: إعادة برمجة كل نافذة يدويًا بينما RAD يولّدها.
رد فعل: تحليل جاهز → التوليد بـRAD.
- RAD كامل / RAD حسب العنصر
- RAD الكامل يولّد التطبيق كله دفعة واحدة؛ وRAD حسب العنصر يولّد نافذة (أو تقريرًا) لملف محدد.
مثال بسيط: يولّد ياسين نافذة مخصصة على ملف الفاتورة بـRAD حسب العنصر.
ما ليس كذلك: إعادة توليد التطبيق كله لإضافة شاشة واحدة.
رد فعل: شاشة محددة → RAD حسب العنصر.
- الاعتماد على التحليل
- RAD يستند كليًا إلى التحليل: نموذج بيانات مختلّ ينتج تطبيقًا مختلًّا، لكن أسرع.
مثال بسيط: يعتني ياسين بتحليله لأن RAD يعتمد عليه مباشرة.
ما ليس كذلك: تشغيل RAD على تحليل مرتجل وتسليم تطبيق غير متناسق.
رد فعل: RAD جيد → تحليل جيد أولًا.
- قواعد المهنة (للكتابة)
- الكود المولّد عام: الحسابات والرقابات والتأكيدات والتسلسلات الخاصة بالمهنة تُكتب بـWLangage.
مثال بسيط: يبرمج ياسين بنفسه خصم 5% والمنع عند المستحقات.
ما ليس كذلك: الاعتقاد بأن RAD سيخمّن القواعد التجارية للشركة.
رد فعل: قواعد مهنة → يكتبها المطوّر.
- أداة تعلّم
- فحص الكود المولّد بـRAD طريقة ممتازة لاكتشاف دوال الورشة والممارسات الجيدة.
مثال بسيط: يعيد ياسين قراءة الكود المولّد ليتعلّم دوال HFSQL.
ما ليس كذلك: تجاهل الكود المولّد بدل استخدامه للتقدّم.
رد فعل: البداية → اقرأ كود RAD.
في التطبيق — عمليًا — توليد تطبيق بـRAD
- تأكد أولًا أن تحليلك صحيح (ملفات، بنود ذات أنواع، مفاتيح أساسية، روابط) — فRAD يعتمد عليه كليًا.
- شغّل RAD (كاملًا لتطبيق كامل، أو حسب العنصر لتوليد نافذة على ملف محدد) واترك WinDev ينتج القاعدة.
- اختبر التطبيق المولّد: الإدخال، البحث، التعديل، الحذف، الطباعة.
- خصّص بعد ذلك: هندسة الاستخدام، التسميات، التسلسلات، والأهم أضف قواعد مهنتك (رقابات، حسابات) التي لا يستطيع RAD تخمينها.
سكربت خطوة بخطوة — ولّد ثم خصّص كما يفعل ياسين (4 دقائق)
1) تحقق من التحليل (ملفات، أنواع، مفاتيح، روابط): RAD يعتمد عليه. 2) شغّل RAD الكامل للحصول على التطبيق كله، أو RAD حسب العنصر لملف محدد. 3) شغّل التطبيق المولّد واختبر الإدخال والبحث والتعديل والحذف. 4) خصّص هندسة الاستخدام والتسميات. 5) أضف قواعد مهنتك بـWLangage (خصم، منع، مخزون) التي لا يخمّنها RAD. 6) أعد قراءة الكود المولّد لتتعلّم.
RAD لا يعرف أولوياتك ولا قواعد مهنتك: التخصيص جزء من العمل.
نموذج للنسخ واللصق — قائمة تحقّق RAD عند ياسين
[ ] Analyse vérifiée (fichiers, types, clés primaires, liaisons)
[ ] Mode choisi : RAD complet (application) ou RAD par élément (un écran)
[ ] Application générée et testée (saisie, recherche, modification, suppression)
[ ] Ergonomie et libellés personnalisés
[ ] Règles métier ajoutées en WLangage (remise, blocage, stock…)
[ ] Code généré relu (outil d'apprentissage)
[ ] Base fonctionnelle adoptée comme point de départ, pas comme livrable final
RAD كامل عند الانطلاق
يولّد ياسين تطبيق التجارة كله دفعة واحدة للحصول سريعًا على قاعدة عمل.
RAD حسب العنصر
عندما تضيف الإدارة تسيير الفواتير، يولّد ياسين نافذة ملف الفاتورة فقط.
التعلّم
يعيد ياسين قراءة الكود المولّد لفهم دوال HFSQL والاستلهام منها في شاشاته.
التخصيص المهني
بعد التوليد، يضيف ياسين قواعده: خصم 5%، ومنع عند المستحقات، ورفض المخزون السالب.
✓ ممارسات جيدة
- اعتَنِ بـالتحليل قبل تشغيل RAD: فهو يعتمد عليه كليًا.
- استخدم RAD مسرّع انطلاق، ثم خصّص.
- أضف بنفسك قواعد المهنة التي لا يستطيع RAD تخمينها.
✗ أخطاء شائعة
- تسليم التطبيق المولّد كما هو، دون تخصيص.
- تشغيل RAD على تحليل مرتجل.
- الاعتقاد بأن RAD يكتب قواعد مهنتك بدلًا عنك.
النقاط الأساسية
- RAD يولّد تلقائيًا تطبيقًا كاملًا من التحليل: نوافذ، جداول، قوائم، كود تسيير.
- يعتمد كليًا على جودة التحليل: نموذج مختلّ يعطي تطبيقًا مختلًّا.
- لا يعوّض المطوّر: الكود المولّد عام ويتجاهل قواعد مهنتك.
- نستخدمه مسرّع انطلاق، ثم نخصّص — وقراءة الكود المولّد تساعد على التعلّم.
تحدي 48 ساعة — طبّقه غدًا
خذ تحليلًا صغيرًا (ملفات، أنواع، مفاتيح، روابط) وولّد تطبيقًا بـRAD، كما يفعل ياسين. اختبره، ثم أضف قاعدة مهنية بـWLangage لا يعرفها RAD. اكتب في جملة واحدة لماذا لا يعفي RAD من تعلّم البرمجة.
- أفهم ما يولّده RAD تلقائيًا من التحليل.
- أعرف كيف أختار بين RAD الكامل وRAD حسب العنصر.
- أعرف أن قواعد المهنة تبقى للكتابة بعد التوليد.
أسئلة شائعة
هل يسمح RAD فعلًا بتطوير تطبيق دون معرفة البرمجة؟
لا: RAD يولّد قاعدة عملية مبهرة دون كتابة سطر، لكن كل تطبيق حقيقي يتطلب قواعد مهنة ورقابات وتسلسلات تستلزم معرفة البرمجة. RAD يسرّع المطوّر ولا يعوّضه. يستخدمه ياسين للانطلاق سريعًا، ثم يكتب بنفسه خصمه 5%، ومنعه عند المستحقات، ورقابته للمخزون.
هل نستخدم RAD في مشروع حقيقي أم نبرمج يدويًا؟
استخدم RAD نقطة انطلاق، ثم خصّص: فهذا أفضل توازن بين توفير الوقت والتحكّم. برمجة كل شيء يدويًا تهدر الوقت في الجزء المتكرر؛ والتوليد دون مراجعة ينتج تطبيقًا عامًا وفاقدًا للشخصية. المنهج: الاعتناء بالتحليل، والتوليد، والاختبار، ثم تخصيص هندسة الاستخدام وإضافة قواعد المهنة — مع إعادة قراءة الكود المولّد كمثال على الممارسات الجيدة.
ماذا يفعل RAD وما حدّه الرئيسي؟