Program Structure

نستكمل حديثنا عن لغة البرمجة رينج ونختم جزء الاساسيات من البرمجة وهو موضوعنا اليوم – عن كيفية تحميل أكثر من ملف  في مشروع واحد. 

Program Structure

يتكون البرنامج من العديد من الدوال وال Classes والمتغيرات والجمل ومن الممكن وضع تلك الانواع في ملفات كمكتبات واستدعاءها عند الحاجة الي استخدامها العديد من المرات في العديد من المشاريع.

تحتوي الملفات على أي من تلك النقاط التالية:

  • Load File
  • Statements and Global Variables
  • Functions
  • Packages and Classes

ملحوظة: قد يحتوي التطبيق على أكثر من ملف في المشروع الواحد.

يمكننا استدعاء الكثير من الملفات  في المشروع عن طريق أمر”Load”

"Load "filename. Ring

دوال التحويل بين الأرقام والحروف

Convert between Numbers and Bytes

للتحويل بين الأنواع المختلفة من البيانات، لتبادل البيانات بين لغة الكمبيوتر bits (0,1)s وكذلك لغة البشر (الأرقام والحروف).

Bytes: عبارة عن سلسلة من bits للتعبير عن الحرف.

  • ()Int2Bytes

للتحويل من عدد صحيح ب Decimal الي حرف (character) سواء على هيئة حروف أو أرقام.

  • ()Bytes2Int

للتحويل من حرف (character) الي عدد صحيح ب Decimal.

  • ()Float2Bytes() & Double2Bytes

للتحويل من عدد عشري ب Decimal الي حرف (character).

  • () Bytes2Float & () Bytes2Double

للتحويل من حرف (character) الي عدد عشري ب Decimal.

ملحوظة:

  • يتم استخدام Float للأعداد العشرية التي حجمها bytes 4
  • يتم استخدام Double للأعداد العشرية التي حجمها bytes 8

مثال:

(X1= Int2Bytes (55
See "Int2Bytes= "+ x1+nl
See "Bytes2Int= "+Bytes2Int(x1) + nl
(X2 = Float2Bytes (5.12
See "Float2Bytes= "+x2+nl
See "Bytes2Float= "+Bytes2Float(x2) + nl
(X3= Double2Bytes (9999977.12345
See "Double2Bytes= "+x3+ nl
See "Bytes2double= "+Bytes2double(x3)+nl

 

مثال توضيحي علي استدعاء الملفات:

  • رقم(1)  عبارة عن ملف باسم Conversionfile.ring. 
  • رقم(2) تم تحميل الملف الاول Conversionfile.ring في بداية الملف التاني، وبالتالي يعرض جميع ما بداخل الملف ويقوم بتنفيذه داخل الملف التاني.

                                                                     (1)

See"Conversions Functions"+nl+"========="+nl
see"
(Asci to character ==> Char(Ascii
(character to Ascii ==> Ascii(Char
(Hex to Decimal ==> Dec(Hexadecimal
(Decimal to Hex ==> Hex(decimal
() String to Hex==> Str2hex
()Hex to String ==> Hex2Str
   "

                                                                         الكود               

 (2)

"Load"Conversionfile.ring
(while(1
See nl+"Choose the number of conversions "+nl+"the number is: "+nl
Give Choice
see "Enter your data"+nl
Give Data
switch Choice
on 1
Data=0+Data
(x1= Char(Data
See "The Number In character = "+x1
on 2
(x2=Ascii(Data
See "The Number In ASCII= "+x2
on 3
(x3=Dec(Data
See "The Number In Decimal= "+x3
on 4
(x4=Hex(0+Data
See "The Number In Hexadecimal= "+x4
on 5
(x5=Str2hex(Data
See "The Number In Hexadecimal= "+x5
on 6
(x6=Hex2Str(Data
See "String is= "+x6
off
end

الكود

مثال أخر ولكن عن طريق ال Classes :

في هذا المثال يوجد ملف باسم registration.ring وهو ملف المشروع الرئيسي يحتوي علي ملف اخر باسم message.ring – ملف ال message.ring يحتوي علي Class,method وعند تحميله داخل ملف المشروع registration.ring يكون متاح لنا في المشروع وبالتالي نأخذ object يحتوي علي ال method من ال Class الموجود في ملف message.ring بداخل ملف  registration.ring ثم نقوم بعمل run للملف registration.ring

1.jpg

الكود الخاص بهذا الملف

2.jpg

 

الكود الخاص بهذا الملف وهو المشروع الرئيسي

للاطلاع علي المقالات الاخري من هنا

تستطيع الاطلاع علي المشاريع مفتوحة المصدر من الموقع  GitHub
الموقع الرسمي للغة  http://ring-lang.net

وشكرا لكم والي اللقاء

 

Advertisements

فكرة واحدة على ”Program Structure

  1. تعقيب: Stdlib Functions and Classes | لغة البرمجة رينج Ring programming language

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

شعار وردبرس.كوم

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   /  تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   /  تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   /  تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   /  تغيير )

Connecting to %s