الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

برنامج Hello World - باستخدام Double S

مغلق
بدأه محمود سمير في 18 نوفمبر 2007 · 21 رد · 3,023 مشاهدة · في الأخبار والنقاشات التقنية
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

مرحبا اعزائى المبرمجين

بداية : السلام عليكم ورحمة الله وبركاته

كاحد المبرمجين العرب - الذين يستمتعون بتطوير البرمجيات والحلول المتكاملة - فانى طالما امضى الكثير من الوقت فى البحث عن كل ماهو جديد فى المجال وكثيرا مايشغل بالى التفكير فى مختلف القضايا التى يتعرض لها عالم المبرمجين - مثل تنوع انواع التطبيقات بين التطبيقات الهندسية والرياضية و قواعد البيانات وتعدد الوسائط والشبكات والويب وامن المعلومات والمواجهة بالحاسب والذكاء الاصطناعى وغيرها - وكذلك يثير انتباهى قضية تنوع منصات تطوير البرمجيات التى تنتجها الشركات العملاقة مثل مايكروسوفت Microsoft وصن Sun وغيرها - واخير قضية البرمجة بالادوات المجانية مفتوحة المصدر - التى هى حلمى منذ سنوات - وخاصة انى على علم بان المبرمجين فى العالم الغربى تمكنوا من انتاج برمجيات على مستوى تقنى عالى مستخدمين فى ذلك ادوات مجانية مفتوحة المصدر.

منذ مدة طويلة وانا احاول الدخول فى عالم تطوير البرمجيات مستندا على الادوات المجانية - ولكنى طالما كنت اواجه المشاكل والعقبات وكان السبب الذى يقف وراء ذلك هو ان الادوات المجانية مفتوحة المصدر غالبا تخاطب المبرمجين Programmers وليس المطورين Developers - وعلى الرغم من انى احمل كلا اللقبين الا ان قلبى لم يعد يتعمل اعداد تطبيقات Applications جديدة بدون استخدام ادوات التطوير المرنة - ولهذا كنت ابحث دائما عن طريق سهل لتطوير البرمجيات بسهولة استنادا على الادوات المجانية مفتوحة المصدر.

فى الحقيقة ان الطرق كثيرة - ولا يمكننى الجزم بانى اخترت افضل الطرق - ولكن يمكن ان اقول انى توصلت الى طريق مناسب على الاقل بالنسبة لى وبالنسبة لغيرى من المطورين الذين يبحثون عن اداة سهلة وقوية ومجانية ومفتوحة المصدر جاهزة للاستخدام فى تطوير برمجيات تجارية.

ان الاداة التى توصلت لها هى DoubleS Framework - تلك الاداة التى عملت على تطويرها بنفسى - وهى عبارة عن اداة مجانية مفتوحة المصدر يمكن استخدامها فى تطوير مختلف انواع التطبيقات التى تعمل تحت نظام التشغيل Microsoft Windows

cqo42969.gif

ان محيط التطوير DoubleS يعد من الادوات المجانية مفتوحة المصدر التى تتميز بسهولة التعلم والاستخدام - وهو ذو انتاجية عالية فى مختلف انواع التطبيقات

ونظرا لان محيط التطوير DoubleS قد وصل الى مرحلة عالية من الكفاءة فى العمل - قررت ان اقدم الدروس التعليمية التى تشرح كيفية التعامل مع واستخدامه - واتمنى التوفيق فى تلك المهمة التى تستلزم العمل المتواصل.

وفيما يلى المعمارية الخاصة بمحيط التطوير

LPk42896.gif

ونلاحظ ان الاساس يعود الى مترجم لغة C او ++C المجانى مفتوح المصدر GNU C

وقد قام عدد من المبرمجين (مجموعة من اكثر من 60 مبرمج حول العالم) ببناء مترجم اخر يحول الى لغة سى - ويسمى xHarbour - وهذا المترجم هو عبارة

عن مترجم للغة برمجة من لغات الجيل الرابع - المتخصصة فى قواعد البينات استنادا على xBase وهو مشابها بذلك للغة البرمجة CA-Clipper و Visual FoxPro

ومن ثم فوق هذا المترجم xHarbour تم بناء المكتبة MiniGUI التى تتيح امكانية عمل تطبيقات رسومية GUI تحت نظام Microsoft Windows

وايضا تم بناء المكتبة DoubleS والتى تتيح امكانية تطوير تطبيقات استنادا على نمط البرمجة DoubleS

وهذا النمط يعد قلب محيط التطوير DoubleS Framework

تلك هى المعمارية الخاص باداة البرمجة DoubleS Framework التى انوى باذن الله تعالى تقديم دروس وافية لها - حتى يبصح لدى المبرمجين العرب الالمام بكيفية تطوير تطبيقات تجارية مستخدمين تلك الاداة المجانية مفتوحة المصدر - والتى يمكن الحصول عليها من الموقع http://www.sourceforge.net/projects/doublesvsoop

ولهذا اذا كنت اخى الحبيب من المهتمين بالموضوع - ولديك اى استفسار - فانا ارحب بك - ويمكنك الاستمرار والتواصل معى لنحصد الفائدة جميعا باذن الله تعالى

والله الموفق

مع تحياتى

محمود فايد

#2

وعليك السلام اخي ..

أنا كنت قرأت كتاب عن DoubleS وأعتقد أنها تعني البرمجة بدون أكواد , صح ؟

وعلى كل حال , جزاك الله خيرا على المعلومات أخي الكريم وننتظر الدروس

اقتباس
If A is success in life, then A equals x plus y plus z. Work is x; y is play; and z is keeping your mouth shut

Albert Einstein

مدخل إلى برمجة وتصميم الألعاب : كيف أبدأ ؟

#3

احبائى المبرمجين

السلام عليكم

اقتباس
أنا كنت قرأت كتاب عن DoubleS وأعتقد أنها تعني البرمجة بدون أكواد , صح ؟

ان DoubleS تعنى SS وهى اختصار لـ Super Server اى الخادم الممتاز او الخارق - وهو عبارة عن نمط برمجة جديد New Programming Paradigm بديل لنمط برمجة الكائنات Object Oriented Programming - OOP وياخذ هذا النمط الجديد فى الاعتبار - هياكل البيانات المعقدة Complex Data Structure ونظام ادارة الاحداث Event-Driven System وتطبيقات الشبكات Network Applications - كما ان النمط الجديد ياخذ فى الاعتبار بلا شك برمجة الكائنات ويقدمها فى ثوب جديد تحت مسمى Embedded OOP

اما بخصوص البرمجة بدون كود codeless programming فان نمط البرمجة DoubleS يدعمها بكل قوة - ولكن البرمجة بدون كود يتم التعامل معها من خلال تكنولوجيا تسمى RPWI - Real/Rapid Programming without Instructions/Code - وهى تكنولوجيا مدفونة داخل محيط التطوير DoubleS

وخطة الدروس التى اقدمها لكم باذن الله تعالى

1 - تعلم نمط البرمجة DoubleS

2 - تعلم البرمجة بدون كود RPWI

3 - التعامل مع الواجهة الرسومية GUI

4 - التعامل مع قواعد البيانات Database

5 - برمجة تطبيقات الشبكات Network Applications

6 - برمجة تطبيقات تعدد الوسائط MultiMedia

والان على بركة الله - ابدا الدرس الاول - وهو عبارة عن برنامج Hello World - باستخدام DoubleS Framework

وكبداية بسيطة فان التطبيق الناتج عبارة عن Console Application

الصور التالية - تبين خطوات عمل هذا التطبيق - كنقطة بداية

ان وحدة البناء الاساسية لاى تطبيق يتم بناءه تحت منصة التطوير DoubleS Framework هى الخادم Server - حيث ان الخادم فى نمط البرمجة DoubleS

يعتبر وحدة البناء الاساسية لاى تطبيق او مشروع - وهو بذلك يقابل الفصيلة Class فى برمجة الكائنات Object Orieneted Programming

ويتم تعريف الخادم - بثلاث معطيات هى

1 - اسم الخادم Server Name

2 - نوع الخادم Server Type

3 - القيمة المميزة Eigen Value

وبنسبة للوضع الحالى لاينبغى علينا الانشغال بنوع الخادم Server Type او Eigen Value - فاننا نتعرض لهما مستقبلا ان شاء الله

اما بخصوص اسم الخادم فهو بلاشك - اختيارى

aj802214.gif

ان عملية التحكم فى سير العمليات داخل التطبيق تتم من خلال وحدة تسمى - وحدة الكود Code Unit وهى بدورها عبارة عن تمثيل مبسط جدا للدوائر الكهربية بهدف خلق مرونة وسهولة فى التحكم فى البرنامج

ان المقاومة Resistance يمكن اعتبارها كبديل للدالة او الوظيفة Function كما فى البرمجة الهيكلية Structure Programming وكذلك هى بديل للطريقة Method فى برمجة الكائنات - وبديل للحدث Event فى نظام ادارة الاحداث

كل ما عليك معرفته الان - كمجرد بداية ان المقاومة - هى عبارة عن مجموعة من التعليمات البرمجية Block of code موضوعة داخل فرع Branch الذى بدوره موضوع داخل دائرة Circuit

والمقاومة الرئيسية تسمى الـ Main Resistance والتى من الممكن ان تكون نقطة انطلاق لعمل الخادم اثناء وقت التشغيل Runtime - ويكون لهذه المقاومة الرئيسية المسار التالى Circuits\Main\Main\Main

حيث ان المقاومة Main تكون داخل الفرع Main الوجود بالدائرة Main

55C02272.gif

qjI02309.gif

zB602346.gif

hTx02394.gif

1ru02438.gif

Uxw02488.gif

وبخصوص الكود الذى تم كتابته فى المقاومة

فهو كالتالى

? " Hello World !"
wait

وهذه التعليمات تستند على لغة البرمجة xHarbour

حيث يتم عرض رسالة الترحيب بالعالم - ثم الانتظار حتى يضغط المستخدم اى مفتاح

U9102524.gif

اما بخصوص ترجمة البرنامج وتشغيله - فهى تتم على المراحل التالية

1 - حفظ الخادم فى ملف يحمل الامتداد SSF وهو اختصار لـ DoublS File

2 - تحديد ملف يشتمل على التعليمات البرمجية Code المستخرجة تلقائيا من محيط التطوير - وهذا الملف يحمل الامتداد PRG اى Program

3 - ترجمة هذا الملف من خلال المترجم xHarbour مع استعمال المكتبة DoubleS الخاصة بنمط البرمجة الخادم الممتاز

4 - ترجم الملف الناتج بلغة سى C من المترجم xHarbour من خلال مترجم لغة C ومن ثم المرور على الرابط Linker لاسخراج ملف تنفيذى Exe

5 - تشغيل البرنامج

T1N02563.gif

gQc02596.gif

هذه هى نهاية الدرس الاول

واذا كان هناك توفيق - فالحمد لله رب العالمين

- وان كان هناك اى اسئلة - قبل المضى فى عرض الدروس التالية - فانا ارجب بجميع الاسئلة والاستفسارات - لان الاهم من عرض الدروس

هو فهمها واستيعابها جيدا من قبل المهتمين

مع تحياتى

محمود فايد

تم تعديل هذه المشاركة بواسطة محمود سمير في 18 نوفمبر 2007 في 19:43

#4
اقتباس
وبخصوص الكود الذى تم كتابته فى المقاومة

فهو كالتالى

? " Hello World !"
wait

وهذه التعليمات تستند على لغة البرمجة xHarbour

1-

من كتب هذا الكود، المبرمج ! هذه هي البرمجة من دون كود ؟

2-

الكود بلغة Clipper

كل ما قمنا به هو كتابة الكود فوق في ملف نصي بلاحقة .prg - لاحقة لغة Clipper -

ثم استخدمنا xharbour لتحويل الكود من Clipper الى C

ثم استخدمنا مترجم C لعمل Compiler ثم Link للحصول على ملف تنفذي EXE الذي يعمل في Console !

وما فائدة كل هذا ؟

كانك تمرر يدك اليمنى وراء راسك نحو اذنط اليسرى لتقول: هذه أذن!

d4baa0.gif
#5

احبائى المبرمجين

السلام عليكم

بداية تم تغير عنوان الموضوع - من (البرمجة بالادوات المجانية مفتوحة المصدر) - الى (برنامج Hello World باستخدام Double S )

وقد تم التغيير على اعتبار ان عنوان الموضوع مهم لدرجة كبيرة - وهذا يعرض الموضوع للاغلاق

عامة - ليس هناك شك فى اهمية البرمجة بالادوات المجانية مفتوحة المصدر - وهذا ينطبق على الاداة DoubleS Framework - ولهذا فان العنوان الاساسى كان جيدا ويتناسب مع الموضوع واهميته

وبالتاكيد ذلك شأن المشرفين - ولكن اود التنبيه الى ان العنوان الجديد برنامج Hello World باستخدام Double S - لايتناسب مع سلسلة من الدروس

تهدف الى تعليم اداة كاملة للبرمجة - وليس برنامج Hello World

اقترح العنوان ( البرمجة بالاداة المجانية مفتوحة المصدر DoubleS Framework ) حتى يتناسب المحتوى مع اسم الموضوع -

اقتباس
من كتب هذا الكود، المبرمج ! هذه هي البرمجة من دون كود ؟

نعم المبرمج كتب هذا الكود - وبالتاكيد ليست هذه البرمجة بدون كود - فتلك مرحلة متقدمة سوف نتعرض لها لاحقا فى الدروس ان شاء الله

اقتباس
الكود بلغة Clipper

الكود يتناسب مع اى لغة برمجة او قاعدة بيانات تنتمى الى العائلة xBase وهذه اللغات وقواعد البيانات كثيرة جدا منها

1 - قاعدة البيانات DBase مثل دى بيس ثرى بلاس الشهيرة فى عالم DOS

3 - قاعدة البيانات FoxPro مثل FoxPro For Dos, FoxPro Windows & FoxPor for Mac

3 - لغة البرمجة CA-Clipper

4 - لغة البرمجة Harbour او HarbourMiniGUI

5 - لغة البرمجة xHarbour او Harbour MiniGUI Extended

6 - قاعدة البيانات و لغة البرمجة Visual FoxPro

7 - قاعدة البينات Quick Silver

واثناء حديثى ذكرت لغة البرمجة xHarbour لانها هى المستخدمة من قبل محيط التطوير DoubleS Framework

ولهذا المترجم Compiler قصة

فقد تم بناء Harbour اولا لاعادة ترجمة تطبيقات لغة البرمجة Clipper تحت اى نظام تشغيل شهير مثل Dos و Windows وLinux و OS/2

ثم بعد ذلك تم بناء xHarbour والذى يقدم اضافات جديدة لم تكن متوفرة فى لغة البرمجة Clipper بصورة مباشرة - مثل دعم الشبكات

وتقوم فكرة المترجم xHarbour Compiler على التحويل الى لغة C

اقتباس
وما فائدة كل هذا ؟

كانك تمرر يدك اليمنى وراء راسك نحو اذنط اليسرى لتقول: هذه أذن!

تلك المقولة قالها بعض المبرمجين الذين اعتادو على لغة C حينما رأوا لغة البرمجة Java لاول مرة

لايتم الحكم على اى اداة للبرمجة من برنامج Hello World - بل يستخدم للتعرف عليها

مع تحياتى

محمود فايد

#6
اقتباس
نعم المبرمج كتب هذا الكود - وبالتاكيد ليست هذه البرمجة بدون كود - فتلك مرحلة متقدمة سوف نتعرض لها لاحقا

انت كتبت اكثر من موضوع تقول البرمجة من دون كود البرمجة من دون كود

واول مثال وضعت به كود والان تقول تلك مرحلة متقدمة

يا سبحان الله

اقتباس
الكود يتناسب مع اى لغة برمجة او قاعدة بيانات تنتمى الى العائلة xBase وهذه اللغات وقواعد البيانات كثيرة جدا منها

1 - قاعدة البيانات DBase مثل دى بيس ثرى بلاس الشهيرة فى عالم DOS

3 - قاعدة البيانات FoxPro مثل FoxPro For Dos, FoxPro Windows & FoxPor for Mac

3 - لغة البرمجة CA-Clipper

4 - لغة البرمجة Harbour او HarbourMiniGUI

5 - لغة البرمجة xHarbour او Harbour MiniGUI Extended

6 - قاعدة البيانات و لغة البرمجة Visual FoxPro

7 - قاعدة البينات Quick Silver

لا حول ولا قوة الا بالله

عندما يوجد كود مثل هذا

BEGIN
  WriteLn('Hello World');
END.

يقال كود بلغة باسكال Pascal ولا يقال

  1. Turbo Pascal
  2. Quick Pascal
  3. Borland Pascal
  4. Pascal for windows
  5. Delphi
  6. Kylix
  7. Free Pascal
  8. Virtual Pascal
  9. Micosoft Pascal
  10. Dev-Pascal
  11. GNU Pascal

الاشياء تسمى باسمائها...

d4baa0.gif
#7
اقتباس
انت كتبت اكثر من موضوع تقول البرمجة من دون كود البرمجة من دون كود

واول مثال وضعت به كود والان تقول تلك مرحلة متقدمة

يا سبحان الله

سبحان الله عدد خلقه

لك ان تتعجب - ولى ان اختار اسلوب التعليم المناسب - فانا مصمم الاداة DoubleS Framework وتكنولوجيا البرمجة بدون كود RPWI المختبئة به - واعلم ماهو الاسلوب المناسب - الذى ينبغى ان اتبعه فى الدروس - حتى يصل المفهوم بدون تعقيد ان شاء الله - والله الموفق.

اقتباس
يقال كود بلغة باسكال Pascal ولا يقال

  1. Turbo Pascal
  2. Quick Pascal
  3. Borland Pascal
  4. Pascal for windows
  5. Delphi
  6. Kylix
  7. Free Pascal
  8. Virtual Pascal
  9. Micosoft Pascal
  10. Dev-Pascal
  11. GNU Pascal

الاشياء تسمى باسمائها...

حسنا يااخى اذا اردت ان تسمى الاشياء باسمائها

فلا تسمى الكود كود لغة Clipper

لانه اساسا قبل لغة كليبر (التى تم تاسيس شركة نانتوكيت لانتاجها عام 1984 - واول اصدار تجريبى عام 1986 - واول اصدار تجارى عام 1987 ) كان هناك

قاعدة البيانات Dbase وكانت تشمل هذا الكود

وايضا لايعود ذلك الكود الى قاعدة البيانات Dbase (التى تم تطويرها للعمل على الحاسب الشخصى PC عام 1982 من خلال الاصدار Dbase 2 كبداية)

بل يرجع الى اللغة الاولى xBase التى كانت ضمن اللغة Vulcan

هل تريد ان اقول ان الكود هو كود لغة Vulcan حتى اسمى الاشياء بمسمياتها - لم يعد احد يذكر Vulcan الى فى كتب التاريخ

حتى انت جئت تذكر Clipper ولم تذكر Dbase التى اصبحت تاريخا حل محله Clipper

الذى ايضا اصبح تاريخا - حل محله Harbour

الذى تحول تاريخا - حل محله xHarbour

ولما اساسا الدخول فى موضوع فرعى - ان مايهمنى هو xHarbour لانه هو المستخدم فى DoubleS Framework

مع تحياتى

محمود فايد

#8

أخ محمود فايد، تحياتي لك...

وأرجو أن تستمر في الدروس ليستفيد الجميع....

ومن لا يريد أن يقرأ فبإمكانه ألاّ يفتح هذه الصفحة...

مع ‘حترامي للجميع.. لكن استغرب الأسلوب العصبي لأخي B.M.AbdelAziZ ... لماذا العصبية...

هذا موضوع شيق يغير قليلا جو الأسئلة وطلب حل الواجبات.

أخي B.M.AbdelAziZ ليس هناك شيء عندي ضدك لكن أعبر عن شعورب بالفعل بالاستغراب من هجومك على الموضوع

أخ محمود فايد أرجو أن تكمل ما بدأت.

تذكير: ما كان الرفق في شيء إلا زانه، ولا نزع من شيء إلا شأنه‏

#9
اقتباس
لك ان تتعجب - ولى ان اختار اسلوب التعليم المناسب - فانا مصمم الاداة DoubleS Framework وتكنولوجيا البرمجة بدون كود RPWI المختبئة به - واعلم ماهو الاسلوب المناسب - الذى ينبغى ان اتبعه فى الدروس

سانتظر حدوث ذلك...ان كان، وعندها نرى...

الى ذلك اليوم هي برمجة بكود

اقتباس
فلا تسمى الكود كود لغة Clipper

لانه اساسا قبل لغة كليبر (التى تم تاسيس شركة نانتوكيت لانتاجها عام 1984 - واول اصدار تجريبى عام 1986 - واول اصدار تجارى عام 1987 ) كان هناك

قاعدة البيانات Dbase وكانت تشمل هذا الكود

وايضا لايعود ذلك الكود الى قاعدة البيانات Dbase (التى تم تطويرها للعمل على الحاسب الشخصى PC عام 1982 من خلال الاصدار Dbase 2 كبداية)

بل يرجع الى اللغة الاولى xBase التى كانت ضمن اللغة Vulcan

هل تريد ان اقول ان الكود هو كود لغة Vulcan حتى اسمى الاشياء بمسمياتها - لم يعد احد يذكر Vulcan الى فى كتب التاريخ

حتى انت جئت تذكر Clipper ولم تذكر Dbase التى اصبحت تاريخا حل محله Clipper

الذى ايضا اصبح تاريخا - حل محله Harbour

الذى تحول تاريخا - حل محله xHarbour

ولما اساسا الدخول فى موضوع فرعى - ان مايهمنى هو xHarbour لانه هو المستخدم فى DoubleS Framework

xBase ليست لغة وانما كلمة تطلق على كل محاولات Clone تقليد ل dBase

-

ما سمي Vulcan كان مقتبس من JPLDIS الذي بنفسه كام متاثر ب RETRIEVE و القصة طويلة

و لم يكن يعمل على الحواسب الشخصية PC بل كان مبني على CP/M

-

تسمى Clipper لانك تستدعي xHarbour

xHarbour ما هو الا لغة Clipper مفتوحة المصدر تم اضافة اليها اشياء

اقتباس
xHarbour - Open Source Extended Clipper Language

http://www.xharbour.org

d4baa0.gif
#10
إسماعيل ابراهيم كتب:
مع ‘حترامي للجميع.. لكن استغرب الأسلوب العصبي لأخي B.M.AbdelAziZ ... لماذا العصبية...

أخي B.M.AbdelAziZ ليس هناك شيء عندي ضدك لكن أعبر عن شعورب بالفعل بالاستغراب من هجومك على الموضوع

اين العصبية ؟

d4baa0.gif
#11

موضوع جميل جدا ..

بصراحة دائما تعجبني مثل هذه الافكار ..

واخي محمود خبرته جيده في هذا المجال .. لذلك فهو له الفضل في تعليمنا لمثل هذه الامور القويه والجديده في عالم البرمجة ..

اقتباس
-

من كتب هذا الكود، المبرمج ! هذه هي البرمجة من دون كود ؟

2-

الكود بلغة Clipper

كل ما قمنا به هو كتابة الكود فوق في ملف نصي بلاحقة .prg - لاحقة لغة Clipper -

ثم استخدمنا xharbour لتحويل الكود من Clipper الى C

ثم استخدمنا مترجم C لعمل Compiler ثم Link للحصول على ملف تنفذي EXE الذي يعمل في Console !

وما فائدة كل هذا ؟

كانك تمرر يدك اليمنى وراء راسك نحو اذنط اليسرى لتقول: هذه أذن!

اسمحلي اخي العزيز ان اتدخل قليلا هنا ..

لو عدت قليلا الى مواضيع كتبت قبل اشهر ..الى موضوع عن لغة برمجة عربيه جديده .. كتبت هذه اللغة بالسي شارب..وهي ليست متكامله او كامله ولكنها مشروع اساسي لها .. طيب ..

تعتمد اساسيات هذه اللغة على السي شارب .. فانت تكتب الكود بالعربيه .. ولكن عند القيام بتنفيذ البرنامج هو يحول الى السي شارب .. او بشئ من التعقيد والتفصيل لا اريد الدخول اليه لكي لا تقول ان فهمي للمعلومات هذه خطأ ..

ولكن الذي اقصده .. مالفائده من وراء كتابة الكود بالعربي وعند التنفيذ يحول داخليا الى السي شارب .. هلو هو فقط ترجمة الكود .. اليس تمرير لليد اليمنى للوصول الى الاذن اليسرى ..

ولكن في موضوع اخي محمود .. نحن نلمس شيئا جديدا .. تقنية جديده .. سيكون لها صداها الواسع بعد اكتمالها ...

وانا بدوري الان اطلب من كل عضو ومشرف واي شخص يقرأ مواضيع للاخ محمود عن هذه التقنية وهذا المبدأ ان يناقشه في صلب الموضوع اي لو كانت لديه امر غامض بخصوص هذا الموضوع يسال عنه .. او فقط يرد عليه بالشكر والدعاء بالتوفيق لكي يستمر بعمله ..

انا قرأت الدرس الاول هذا قراءة اوليه ووجدت شرحه مفيد وموضوعه بسيط ولكن لم اطبقه لانني حاليا احمل الاداة لان حجمها كبير 82 ميكا . ولكن بعد ان اكمل التحميل ساقوم بالتطبيق على الدرس ..

وادعو الان لمحمود بالتوفيق في دراستك وفي مشروعك هذا وانا انتظر الدرس الثاني لاطبقه ولكن ادعيلي انت ان يكتمل التحميل لدي ..

واطلب من كل الاعضاء الدعاء ايضا له بالتوفيق ..

تحياتي العطره .. .. . ..

يَارَبُ إِن ضَاقَت قُلُوُب الْنَّاسٍ عَنْ مّافِي .. مِنْ خَيْرٍٍ فَعَفْوكَ لَا يَضِيْقْ ..

#12

السلام عليكم ,,

موضوع وبحث واضح المجهود الذي بذل فيه والاصرار على التقدم وهذا شئ يدعو الى الاعجاب والتقدير ..

القيت نظره خاطفة على المشروع بعد ان قمت بتحميل جميع ملفاته من على SF , واحببت ان اطرح بعض النقاط كمشاركة ايجابية على مجهودك ..

1- حاولت البحث على الشيفره المصدرية لبيئة الـ DoubleS فلم اجدها ووجدت ملف التنصيب setup فقط, ربما تاهت علي , فارجوا ان تدلني على مكانها ..

2- انا اعتقد من الافضل تسمية الفكرة, Programming without coding , وليس Programming without code , لان التعبير الاول اوضح , حيث ان Programming without code تدل على ان التقنية لا تستخدم كود بالمرة وهذا غير صحيح , فهناك كود , ولكن الكود يتم توليده ولا يقوم الانسان بكتابته "Coding" .

3- انا وجدت انك عملت خليط من Design Pattern مع IDE مع Wizard .

4- اعتقد انه سوف تعود الحاجه الى كتابة شفرات Coding عندما يتطلب التطبيق تخصيص اكثر , لان مهماه كانت بيئة توليد الكود ذكية , فلن تستطيع الاحاطه بكل الاحتمالات ..

مجهود , واصرار تستحق الاشادة عليه والله يوفقك ..

لا إله الإ الله وحده لا شريك له الملك وله الحمد يحي ويميت وهو على كل شئ قدير

------------------------------------------------------------------------------------------------

gazabigBanner.jpg

------------------------------------------------------------------------------------------------

#13

احبائى المبرمجين

السلام عليكم

اقتباس
حاولت البحث على الشيفره المصدرية لبيئة الـ DoubleS فلم اجدها ووجدت ملف التنصيب setup فقط, ربما تاهت علي , فارجوا ان تدلني على مكانها ..

فى الاصدارات الاولى من DoubleS Framework كان يتم اطلاق كل من الشفيرة المصدرية + بيئة العمل فى صورة قابلة للتشغيل بصورة مباشرة

ولكن فى الاصدارات الاخيرة - بما فيها الاصدار الحالى - يتم اطلاق الشفيرة القابلة للتنفيذ مباشرة - للاسباب التالية

1 - الاسلوب المتبع فى تصميم المشروع - اسلوب استكشافى - والشفيرة المصدرية - هى كود تجريبى - والسبب وراء ذلك - ان المشروع هى ناتج بحث علمى

فى تطور مستمر - كلما ورد شيئا جديدا - كلما اصبح التغير مطلوب - وقد يكون هذا التغير كبيرا لدرجة تعنى اعادة بناء اجزاء كاملة من المشروع الذى يشتمل

على اكثر من 30 الف سطر برمجى بدرجة من التعقيد (نتيجة الاسلوب المتبع فى التطوير) لاتتناسب مع اى مبرمج يود التطوير فى المشروع

2 - حتى الان - لايمكن للمبرمجين المساهمة فى تطوير محيط التطوير - نظرا لان تصميم محيط التطوير - قابل للتغير

ولكن

مرحلة التطور والتغير فى التصميم شارفت جدا على الانتهاء - ومن المخطط انه الاصدار القادم سوف يكون SP15 والذى يليه سوف يكون Rev. 6

وهذا الاصدار - ان شاء الله تعالى يتم اطلاقة بالشفيرة المصدرية - وفتح باب المشاركة فى محيط التطوير.

اقتباس
انا اعتقد من الافضل تسمية الفكرة, Programming without coding , وليس Programming without code , لان التعبير الاول اوضح , حيث ان Programming without code تدل على ان التقنية لا تستخدم كود بالمرة وهذا غير صحيح , فهناك كود , ولكن الكود يتم توليده ولا يقوم الانسان بكتابته "Coding" .

انت على صواب - فالخطأ هنا خطا لغوى - وقد اشار اليه عدد من المبرمجين الاجانب المهتمين بالمشروع - وان شاء الله تعالى يتم تصويب هذا الخطا.

اقتباس
انا وجدت انك عملت خليط من Design Pattern مع IDE مع Wizard .

هذا صحيح - ويضاف الى الخليط - مجموعة المصممات Designers بالاضافة الى المكتبات Libraries

اقتباس
اعتقد انه سوف تعود الحاجه الى كتابة شفرات Coding عندما يتطلب التطبيق تخصيص اكثر , لان مهماه كانت بيئة توليد الكود ذكية , فلن تستطيع الاحاطه بكل الاحتمالات ..

اطمئن - الاساس العلمى للمشروع - قام بحل تلك المشكلة

1 - يتم عمل واجهة رسومية GUI لجميع امكانيات لغة البرمجة المتوفرة بصورة مباشرة (عدد محدد من الاحتمالات) Low Level RPWI

2 - ثم بعد ذلك يتم استعامل تلك الواجهة الرسومية فى توسيع الواجهة الرسومية فى حد ذاتها فى المستقبل High Level RPWI

والان مع الدرس الثانى

والهدف من هذا الدرس هو عمل النافذة الرئيسية للتطبيق Application - Main Window - والتى تحمل العنوان Hello World

فى البداية تم تعريف

1 - اسم الخادم hello2

2 - نوع الخادم Slave Server

3 - القيمة المميزة 000

كما فعلنا فى الدرس الاول

Mut51727.gif

تم انشاء المقاومة الرئيسية Main Resistance التى تحمل العنوان Circuits\Main\Main\Main كما فعلنا فى الدرس الاول

ثم تم كتاب التعليمات البرمجية Code الخاص بهذه المقاومة

بحيث تم تعريف النافذة الرئيسية للتطبيق - وتم تحديد مكان ظهورها على الشاشة - وتم تحديد العنوان الخاص بها

ثم بعد ذلك تم عمل تنشيط لها حتى تعمل.

هذه التعليمات الخاصة بالتعامل مع الواجهة الرسومية GUI تستند على المكتبة MiniGUI والتى هى احد الادوات المتاحة لعمل واجهة رسومية فى عالم المترجم xHarbour - ويوجد ادوات اخرى - ولكن تم اختيار تلك الاداة لانها شائعة وسهلة الاستخدام وتوفى معظم المتطلبات.

3yq51836.gif

والان - جاء وقت ترجمة الخادم - وتشغيله

ونلاحظ هنا اختيار xHarbour/MiniGUI/DoubleS لان التطبيق عبارة عن تطبيق رسومى GUI Application

o0O51886.gif

وهنا التشغيل - تظهر لنا اول نافذة

Knm51948.gif

مع تحياتى

محمود فايد

#14
اقتباس
اقتباس
اعتقد انه سوف تعود الحاجه الى كتابة شفرات Coding عندما يتطلب التطبيق تخصيص اكثر , لان مهماه كانت بيئة توليد الكود ذكية , فلن تستطيع الاحاطه بكل الاحتمالات ..

اطمئن - الاساس العلمى للمشروع - قام بحل تلك المشكلة

1 - يتم عمل واجهة رسومية GUI لجميع امكانيات لغة البرمجة المتوفرة بصورة مباشرة (عدد محدد من الاحتمالات) Low Level RPWI

2 - ثم بعد ذلك يتم استعامل تلك الواجهة الرسومية فى توسيع الواجهة الرسومية فى حد ذاتها فى المستقبل High Level RPWI

اخي الكريم , انا هنا لا اتحدث عن موضوع الواجهات الرسومية , بل عن مفهوم الاحتياجات البرمجية بشكل عام . مثلاً هل هناك امكانية عمل override لبعض الاساليب التي تنتجها البيئة التي تكون لاتناسب احتياجات التطبيق ؟

لا إله الإ الله وحده لا شريك له الملك وله الحمد يحي ويميت وهو على كل شئ قدير

------------------------------------------------------------------------------------------------

gazabigBanner.jpg

------------------------------------------------------------------------------------------------

#15

السلام عليكم

اقتباس
اخي الكريم , انا هنا لا اتحدث عن موضوع الواجهات الرسومية , بل عن مفهوم الاحتياجات البرمجية بشكل عام .

اظن ان هناك لبس فى ايصال المعلومة

لااقصد بالواجهة الرسومية - الواجهة الخاصة بالتطبيق الذى تطوره

بل اقصد الواجهة الرسومية الخاصة بلغة البرمجة بدون كود

حيث انه بدلا من الواجهة الخطية (كتابة الكود) - فان المواجهة اصبحت كلها رسومية (بدون كود)

ومن هنا قصدت ان تشتمل الواجهة الرسومية للغة - على اتاحة كافة الاحتمالات الاساسية (امكانيات اللغة) لتكون قابلة للاستخدام

اقتباس
مثلاً هل هناك امكانية عمل override لبعض الاساليب التي تنتجها البيئة التي تكون لاتناسب احتياجات التطبيق ؟

ليس فقط عمل override بل ايضا يمكنك عمل امتداد extension - حيث ان البيئة عبارة عن بناء مفتوح open architecture

ولغات البرمجة التفاعلية (بدون كود) - يتم اساسا بنائها من خلال محيط التطوير DoubleS Framework - وبمجرد بنائها يمكنك

استخدامها - او التعديل فيها كما تريد.

مع تحياتى

محمود فايد

#16

مرحبا اخي محمود سمير. لقد قمت بتحميل البرنامج و انا فعلا اقدر حجم العمل الهائل و البحث الذي وضعته في هذا البرنامج. السؤال هو كيف اتتك هذه الفكرة لتطبيقها؟ و هل من الإمكانية ايضا عمل مواقع وب من خلال هذا الفريموورك؟ و كيف يمكننا المشاركة معك لدعم فكرة الموقع و التطوير؟

راكان الحنيطي

Be Open Source

opensource-550x4752.gif

#17

احبائى المبرمجين

السلام عليكم

اقتباس
و هل من الإمكانية ايضا عمل مواقع وب من خلال هذا الفريموورك؟

يمكنك من خلال محيط التطوير - دعم اى لغة ترتكز على الكود - سواء كانت لغة لبرمجة التطبيقات او الويب

اقتباس
و كيف يمكننا المشاركة معك لدعم فكرة الموقع و التطوير؟

للمشاركة - انت بحاجة الى الاستيعاب الكامل للفكرة - وكيفية تطبيقها من خلال محيط التطوير

ثم بعد ذلك عند قيامك بعمل اى مكونات جديدة - لاى لغة برمجة - يمكنك اضافتها للمشروع.

اقتباس
لقد قمت بتحميل البرنامج و انا فعلا اقدر حجم العمل الهائل و البحث الذي وضعته في هذا البرنامج. السؤال هو كيف اتتك هذه الفكرة لتطبيقها؟

المشروع قائم على تجميع مجموعة من الافكار - التى وردت الى ذهنى فى اوقات متفرقة لاسباب مختلفة - ثم تم تجميع هذه الافكار لتكون معا فكرة متجانسة

1 - فكرة استخدام مفاهيم علم الكيمياء الخاصة بتركيب الذرة - والالكترونات - والتفاعلات

وردت الى عندما كنت ادرس مادة الكيمياء - وانا فى الصف الثانى الثانوى - حيث ورد الى ذهنى انه لو كان فى لغة البرمجة - هذه المفاهيم - لسهلت على

كثيرا - ادارة هياكل البيانات Data Structure الخاص بالبرمجيات التى اقوم بعملها وتشتمل على العديد من المصفوفات متعددة الابعاد المرتبطة ببعضها

2 - فكرة استخدام الدوائر الكهربية - وردت الى اثناء دراستى لمادة الفيزياء - باب الفيزياء الكهربية - فى الصف الثالث الثانوى - ووجدت ان وجود مثل هذا التمثيل

يسهل كثيرا تنظيم المهام والتحكم بها داخل التطبيق - ثم تطورت الفكرة مع الوقت حتى وجدت انها ملائمة جدا للنظم التى تعمل فى بيئة مرتبطة بالاحداث Event Driven System

3 - فكرة التفاعل الانسانى - المتعلق بنظام النقض Veto System - وردت الى فى مرحلة مبكرة من دراستى لبرمجة الشبكات - ووجدت ان وجود مثل هذا النظام فى اللغة يفترض ان يكون امر بديهى بمجرد التفكير فى برمجة تطبيقات تعمل على الشبكة Network Application

4 - فكرة عمل نمط برمجة جديد New Programming Paradigm وردت الى فى شهر ديسمبر من عام 2005 بعد الانتهاء من مشروع خاص بنظام ادارة الواجهة الرسومية GUI Management System والذى استمر لخمس سنوات - ولم يكن ليتم هذا المشروع الا بعد استخدام نمط برمجة الكائنات Object Oriented Programming التى ازالت الكثير من التعقيد - ومن هنا علمت اهمية نمط البرمجة - ومدى تاثيره على صناعة البرمجيات

5 - فكرة البرمجة بدون كود - وردت الى من اخى الكبير الذى نقل الى تعليق بعض الحضور فى مؤتمر من مؤتمرات شركة مايكروسوفت - حيث قالوا (ان مايكروسوفت هتخلينا نبرمج من غير كود - والوحد بس يفكر والبرنامج يطلع لوحده) - هذا جعلنى افكر فى الامر - ومن خلال اطلاع على العديد من الابحاث العلمية (احدهما كان عام 2002) وجدت ان الباحثين يرون ان البرمجة بدون كود هى مستقبل صناعة البرمجيات بلا شك.

6 - فكرة مصمم الاهداف Goal Designer وردت الى اثناء حضورى لاحد المحاضرات فى الجامعة - حيث كان الدكتور يقدم لنا فكرة التفكير المنطقى فى حل المشكلات بتقسيم المشكلة الى خطوات وخطوات فرعية - ومن هنا تم الربط - بان تكون تلك احد اسس البرمجة بدون كود - محاكاة التفكير المنطقى

هذه الافكار الاساسية - هناك الكثير والكثير من الافكار الاخرى - التى تم ابتكارها او الاستفادة منها (افكار وردت فى ابحاث علمية)

مع تحياتى

محمود فايد

تم تعديل هذه المشاركة بواسطة محمود سمير في 22 نوفمبر 2007 في 00:35

#18

الله يعطيك العافية اخي و انا شخصيا اشعر ان هذا المشروع يجب ان ندعمه بقوة و لا اتصور انه بإمكاننا عمل مكونات دون الإطلاع على المصدر الا اذا كنت قد جهزت للمبرجين بعض ال API ألخاصة لصناعة المكونات. و من هنا سأبدا, سوف انتظر منك بعض إطلاق الكود البرمجي بما ان المشروع مفتوح المصدر و حاليا اقرأ بال documentation الخاصة بالمشروع و المرفقة مع ملفات التنصيب.

شكرا لجهودك

راكان الحنيطي

Be Open Source

opensource-550x4752.gif

#19

السلام عليكم

اقتباس
و لا اتصور انه بإمكاننا عمل مكونات دون الإطلاع على المصدر الا اذا كنت قد جهزت للمبرجين بعض ال API ألخاصة لصناعة المكونات.

من اهم مميزات المشروع - ان محيط التطوير DoubleS Framework - يمكن تطويره - واضافة المكونات Components المتعلقة بالبرمجة بدون كود اليه بدون الحاجة الى لمس الشفيرة المصدرية لمحيط التطوير - وايضا بدون الحاجة الى اى لغات برمجة على الاطلاق

حيث ان المصممات Designer المتوفرة فى محيط التطوير - وبالتحديد كل من مصمم التفاعل Interaction Designer و مصمم الناقل Transporter Designer تتيح لك عمل مكونات جديدة بمنتهى السهولة - حيث ان فترة زمنية لاتتجاوز خمس دقائق كافية لعمل مكون واحد.

كما انه بعد عمل المكون - يمكن من خلال محيط التطوير - عمل تحميل Install له - لكى تختبره Test او تستخدمه User من خلال مصمم الاهداف Goal Designer

ويشتمل مصمم الناقل Transporter Designer على لغة وصفية Script Language صغيرة الحجم (جميع قواعدها لاتتخطى صفحة واحدة) تستخدم فى التحكم فى عملية توليد الاكواد Code Generation و توليد خطوات الهدف Goal Steps Generation.

ولهذا ان تطوير المشروع - لايشترط لغة برمجة معينة - بل فقط الالمام بادوات التصميم المتاحة فى محيط التطوير DoubleS Framework

اقتباس
سوف انتظر منك بعض إطلاق الكود البرمجي بما ان المشروع مفتوح المصدر

كما سبق الاشارة الكود البرمجى او الشفيرة المصدرية الخاصة بمحيط التطوير ليست ضرورية لتطوير المشروع

اما بخصوص الشفيرة المصدرية لمكتبة الخادم الممتاز DoubleS Library والتى تم كتابتها بلغة xHarbour - فقد تم اطلاقها وهى ليست كبيرة (خمسة الاف سطر) - ولكنها الى حد ما فنية جدا - لانها تشتمل على محرك لنظام ادارة الاحداث Event Driven System وبرمجة الكائنات المدفونة داخل الخادم الممتاز Embedded OOP وكذلك Chemical System و Veto System

وقد قمت باطلاق الشفيرة المصدرية لمكتبة الخادم الممتاز - لان ذلك ضرورى - لسبب - هو ان هذه الشفيرة المصدرية تدخل ضمن اى مشروع او تطبيق يتم اعداده باستخدام نمط البرمجة الخادم الممتاز - ومن هنا فاطلاق الشفيرة المصدرية ضرورى حتى يطمئن المبرمجين على الناحية الفنية والامنية للتطبيق الذى يتم تطويره.

مع تحياتى

محمود فايد

#20
Prog1 {Please write a program that calculate the fractules of n number} Run

Prog2 {Plese make a program which store the employees data on a database and show it in a beautiful
format , oh the  employee Data is "Name,No,Salary,Date Of Birth,Manager Name"  } Run

إذا لم اشاهد شيئ شبيه بهذا الكود فلن أقول لأحفادي أنني شهدت عصر البرمجة بدون كود

تحياتي

#21

السلام عليكم

اقتباس
إذا لم اشاهد شيئ شبيه بهذا الكود فلن أقول لأحفادي أنني شهدت عصر البرمجة بدون كود

ان ماتتمناه شىء جميل - خطر ببال العلماء منذ قديم الزمن - ورغم المزيا العديدة (سهولة الاستخدام للغة البرمجة)

ولكن يرى العلماء الكثير من العيوب فى ذلك (فى حالة النجاح فى تحقيق هذا الهدف)

1 - بطء شديد فى عمل المترجم Compiler الذى يفترض ان يستوعب لغة انسانية كاملة مثل اللغة الانجليزية

وخاصة اذا علمت ان اللغة الانجليزية تشتمل على 26 مليون كلمة - منها 3 مليون شائعة الاستخدام - و 25 الف كلمة متداولة يوميا

ويمكن ان نتغاضى عن تلك النقطة (مع تطور المعالجات وزيادة سرعة عمل التطبيقات)

2 - الجمل ذات المعانى المختلفة - سوف تكون نقطة توقف للحاسب - او انها تعطى نتائج غير متوقعة

يمكن علاج تلك النقطة بعدم قبول هذه الجمل - وطلب تفسيرها

3 - ماتزال عملية البرمجة - تعتمد على الكتابة (مواجهة خطية)

4 - تفقد الجمل التوصيف الكامل الذى تحتاجه البرمجيات ( مثل وصف واجهة المستخدم - قيود وشروط تسجيل المعلومات فى قواعد البيانات)

وكل من النقطة 3 و 4 توحى بان الفائدة من حيث زيادة الانتاجية سوف تزول عند عمل التوصيف الكامل

اما بخصوص مشروع البرمجة بدون كود الذى اعمل فيه - فانه يبحث فى اتجاه اخر

( المواجهة الرسومية بدلا من المواجهة الخطية عند تطوير البرمجيات )

(الحفاظ على التوصيف الكامل الذى تحتاجه البرمجيات - من خلال دعم التفكير المنطقى فى حل المشكلات)

( التطور الذاتى بسهولة - وبسرعة لبيئة التطوير )

( دعم اى لغة برمجة فى الخلفية - حيث يتم توليد كود مناسب لتلك اللغة )

( دعم اى لغة انسانية من خلال كون المواجهة الرسومية تستند على اللغة الانسانية)

ونظريا - يمكن القول ان الفكر الذى اعمل عليه - ارقى من التفكير فى دعم اللغات الانسانية بصفة مطلقة (وخصوصا ان هناك لغات عالية المستوى - راقية جدا ومرنة وسهلة التعلم والاستخدام)

مع تحياتى

محمود فايد

#22

احبائى المبرمجين

السلام عليكم

اقدم لكن الان درسا جديدا عن DoubleS Framework

فى هذا الدرس نتعلم كيف نبدا التطبيق الخاص بنا (الخادم Server ) من خلال تشغيل الخادم Server FireOn بدلا من مناداة المقاومة الرئيسية Main Resistance والتى لها العنوان الثابت Circuits\Main\Main\Main وسبق وان تعرضنا لها فى الدرسين السابقين

حيث ان وحدة الاكواد Code Unit الخاصة بالخادم Server تشتمل على مجموعة من الدوائر Circuits حيث ان كل دائرة قد تشمل مجموعة من الفروع Branches والتى بدورها تشمل مجموعة من المقاومات Resistances

من هنا - تاتى فكرة تشغيل الخادم Server FireON والتى تعنى - ان يتم تنفيذ العمليات فى حلقة لانهائية Infinite Loop بالاسلوب التالى

1 - يتم المرور على جميع الدوائر بالترتيب

2 - فى كل دائرة يتم المرور على جميع الفروع بالترتيب

3 - فى كل فرع يتم تنفيذ المقاومات التى يشملها بالترتيب

4 - بعد الانتهاء من المرور على جميع الدوائر - يتم المرور مرة اخرى - وهكذا باستمرار والى الابد - وطالما ان الخادم فى وضع التشغيل Run

والمقاومة - كما نعلم هى عبارة عن مجموعة من التعليمات البرمجية Block of Code

ويشترط للمرور على الفروع Branches الموجودة ضمنيا - ضمن اى دائرة Circuits - ان يكون مفتاح هذه الدائرة Circuit Switch فى وضع التشغيل ON وكذلك يشترط للمرور على المقاومات Resistances الموجودة فى اى فرع Branch - ان يكون مفتاح الفرع ON

فى المثال التالى - سوف نقوم بعمل دائرة - تشتمل على فرع - والذى بدوره يحتوى على مقاومة - مع مراعاة كون مفتاح الدائرة والفرع فى وضع يسمح بالمرور على المقاومة - اى يكون المفتاح الخاص بالدائرة ON وكذلك المفتاح الخاص بالفرع

فى المقاومة تم كتابة الشفيرة المصدرية (الكود) التالية :-

? " hi From Resistance "
x = inkey(1)
if x = 27
quit
endif

حيث يتم عرض رسالة ترحيب من المقاومة - على الشاشة - ثم يتم الانتظار لمدة ثانية واحدة - او حتى يتم الضغط على احد ازرار لوحة المفاتيح Keyboard

وفى حالة الضغط على احد ازار لوحة المفاتيح - فان الرقم الخاص بهذا المفتاح فى جدول ASCII يتم تخزينه فى متغير ومن ثم يتم فحص هذا المتغير - بحيث اذا كان المفتاح الذى تم الضغط عليه هو Esc - فانه يتم اغلاق البرنامج

وحيث ان هذه التعليمات موضوعة فى مقاومة - والتى بدورها تقع فى فرع لها مفتاح فى وضع التشغيل On - وهذا الفرع فى دائرة لها مفتاح فى وضع التشغيل On - وهذا الدائرة فى وحدة الاكواد - التى تقع فى خادم Server تم عمل تشغيل له FireOn

هذا يعنى ان ذلك الكود سوف يعاد تنفيذ - اكثر من مرة - وبلا توقف - حتى يقوم المستخدم بالضغط على مفتاح Esc

D6621948.gif

dJ121990.gif

Qvl22029.gif

5mU22078.gif

KLv22128.gif

HgT22168.gif

Pm422204.gif

مع تحياتى

محمود فايد

هذا الموضوع مغلق.

مواضيع مشابهة