مقدمة
تم تصميم Scala بواسطة مارتن أودرسكي، وهو بروفيسور في École Polytechnique Fédérale de Lausanne (EPFL) في سويسرا وعالم كمبيوتر ألماني. بدأ مارتن في العمل على خلق Scala في 2001، وأُطلقت أولا في 2004.
Scala تعني “لغة قابلة للتوسع”. إنها لغة لغوية عامة، تتمتع بصفات الأشياء وتتشارك بعض الخصائص مع لغة برمجة جافا. توفر دعما للبرمجة الوظيفية. العديد من قرارات تصميم Scala كانت موجهة لمعالجة العيوب في لغة برمجة جافا.
بعض الميزات التي يقدمها Scala هي:
-
يمكن ترجمة شفرة مصدر Scala إلى بيتكوين جافا وبالتالي، يمكن تنفيذها على ماكينة الوهم الجافية (JVM).
-
توفر دعما للتوافق اللغوي مع جافا حتى يمكن اشارة إلى المكتبات التي كتبت في أي من اللغتين في قاعدة برمجة Scala أو جافا.
-
مثل جافا، تستخدم Scala أيضا تركيبة الأقواس العميقة.
-
تمتلك العديد من خصائص لغات البرمجة الوظيفية مثل Scheme و Standard Machine Learning و Haskell، بما في ذلك التشكيل، التحقق من النوع، الثبات، التقييم الكسلاني، ومطابقة النمط.
-
دعم للتطبيقات الويب باستخدام جافاسكريبت。
-
على عكس جافا، يدعم سكالا أيضًا تعبئة المشغلات، الараметرات الاختيارية، الараметرات المسموعة، والنصوص الخام。
حقيقة مثيرة بشأن سكالا هو أنها تستخدم بشكل واسع من قبل شركات مثل أبل، تويتر، وولمارت، وغوغل بسبب قابلية التوسع وقدرتها على الاستخدام في العمليات الخلفية。
إعداد سكالا في جامبيتر نوتبوك
جامبيتر نوتبوك هو أحد أكثر الأدوات الاستخدام في علوم الكمبيوتر، خصوصا في مجال العلوم البيانية. يدعم أيضًا تطوير سكالا بمساعدة spylon-kernel
。
ملاحظة: لأولئك الذين هم جدد في جامبيتر نوتبوك، من فضلكم تفحصوا هذا البرنامج التعليمي الشامل。
إعداد البيئة السكالا في جامبيتر نوتبوك ليس علم الصواريخ. لنقم بذلك ببساطة في بضع خطوات.
-
أولاً، ستقوم بتثبيت
spylon-kernel
.pip install spylon-kernel
(بايثون 2)pip3 install spylon-kernel
(بايثون 3) -
ثم، ستقوم بإنشاء مواصفات النواة التي ستسمح لك بإختيار
scala-kernel
في جامبير نوتبوك.python -m spylon_kernel install
(بايثون 2)python3 -m spylon_kernel install
(بايثون 3) -
ثم، كخطوة هامة، ستقوم بتثبيت
pyspark
وfindspark
لأنspylon-kernel
يثبت بعض مكوناتspark
.pip install pyspark findspark
(بايثون 2)pip3 install pyspark findspark
(بايثون 3) -
أخيرًا، قم بتشغيل مذكرتك الجوبيتر واختر قاعدة المجال كما
spylon-kernel
وأنت مستعد للبدء!
- دعونا نقوم بتشغيل جزء صغير من البرمجيات للتأكد من أن قاعدة Scala تم تكوينها بطريقة صحيحة.
val x = 2 val y = 3 x*y
x: Int = 2 y: Int = 3 res1: Int = 6
رائع! إذًا كما ترون من خلال الخاتم السفلي، تم بناء 环境 Scala في مذكرتك الجوبيتر بنجاح.
النموذج البسيط
دعونا نبدأ بطباعة Hello, World!
في Scala.
print("Hello, World!")
Hello, World!
وكما ترون، كان ذلك بسيطًا للغاية، مجرد أمر print
متتاليًا بالمعلومات كما المادة.
الآن، دعونا ننظر إلى بعض تفاصيل متعلقة بالنموذج في Scala:
-
Scala case-sensitive, which means identifier
DataCamp
anddataCamp
would have a different meaning in Scala. -
In Scala, all class names first letter should be in
Upper Case
. If many words are combined to form a name of the class, each separate word’s first letter should be in Upper Case. For example,class MyScalaDataCampTutorial
. -
تعمل أسماء الأساليب في سكالا بشكل مختلف قليلاً مقارنةً بـ
أسماء الفئات
بشكل رئيسي لتمييزأسماء الأساليب
عنأسماء الفئات
. يجب أن تبدأ أسماء الأساليب بحرف صغير (المصدر). إذا تم دمج عدة كلمات لتشكيل اسم الأسلوب، يجب أن يكون الحرف الأول لكل كلمة داخلية بحرف كبير. على سبيل المثال،def firstDatacampScalaTutorial()
-
في Scala، يتوجب أن يتطابق إسم الملف البرنامج تمامًا مع أسم الجسم. عندما تقوم بحفظ الملف، يتوجب أن تحفظه باسم الجسم وتضمن
.scala
إلى أخر أسم الملف. على سبيل المثال، لو قمنا بتسميةScalaTutorial
للجسم. فيمكنك أن تحفظ الملف كماScalaTutorial.scala
.تعلم: إذا لم يتطابق إسم الملف وإسم الجسم، فلن يتم تجاهل برنامجك.
-
وأخيرًا، مثل معظم اللغات البرمجية، يبدأ معالجة برنامج Scala أيضًا من تشغيل ال
main()
الذي يعتبر جزءًا أساسيًا في كل برنامج Scala.
الرسم البياني أدناه يظهر كلمات محفوظة في Scala التي لا يمكن استخدامها كما تعلمون أو كأي مادة تعني أي معاملات أخرى.

أنوا
نوعات البيانات في Scala تشابه تقريبًا بعدة لغات برمجة أخرى مثل C، C++، Java، Python، إلخ. ويتمتع بنفس حجم الذاكرة ودقة النسبية.
أخيرًا، دعونا نلقي نظرة على بعض أنواع البيانات التي توجد في Scala:
-
Int: قيمة موقعة ب32 بت تتراوح من $2^{-31}$ إلى $2^{31} – 1$
-
Byte: قيمة موقعة ب8 بت تتراوح من $2^{-7}$ إلى $2^{7} – 1$
-
Short: قيمة موقعة ب16 بت تتراوح من $2^{-15}$ إلى $2^{15} – 1$
-
Long: قيمة موقعة ب64 بت تتراوح من $2^{-63}$ إلى $2^{63} – 1$
-
Float: الأرقام العشرية بحجم 32-بت (دقة واحدة) و64-بت (دقة مزدوجة)
-
Char: حرف Unicode غير موقع بحجم 16 بت.
بعض أنواع الأشياء الأخرى هي السطر, المؤكد والخطأ, الفارغ.
الخلاصة
تهانينا بأن نكمل هذا الترشيح.
هذه هي نقطة بدء جيدة للمبتدئين المهتمين بتعلم Scala.
للتعلم المزيد، انظر إلى تواريخ التدريب التقني لـ DataCamp عن Scala:
الأساس المتعلق بالمادات والأدوات في Scala
يوجد معلومات كثيرة تخص Scala ولم تكن من المتوفرة مثل إذا/إليس، والدورات المتواصلة، والمحركات المختلفة في Scala وما إلى ذلك، الذي سيتم تغطيته في الدروس المقبلة، لذا ابقوا متواجدين!
المراجعات:
لا تتردد في طرح أي أسئلة متعلقة بهذا الدليل في قسم التعليقات أدناه.
Source:
https://www.datacamp.com/tutorial/beginners-guide-to-scala