لغة دارت (Dart) هي لغة برمجة متعددة الأغراض، طورتها شركة جوجل لتطوير تطبيقات الويب، تطبيقات سطح المكتب، وتطبيقات الهواتف الذكية. تتميز بسهولة تعلمها ومرونتها، وهي الخيار الأساسي لتطوير تطبيقات Flutter. دعونا نستعرض المبادئ الأساسية التي تحتاجها لبدء البرمجة بهذه اللغة.
1. ما هي دارت؟
دارت هي لغة كائنية التوجه (Object-Oriented) تعتمد على الكائنات والفئات (Objects and Classes). يمكن استخدامها لتطوير تطبيقات تدعم واجهات المستخدم التفاعلية بشكل فعال وسريع. تُعرف أيضًا بقدرتها على التحويل إلى لغة JavaScript، مما يسهل استخدامها في تطبيقات الويب.
2. السمات الرئيسية لدارت
- السهولة والبساطة: توفر دارت بنية لغة مرنة وواضحة تسهل على المطورين تعلمها.
- دعم قوي للكائنات: تعتمد بشكل أساسي على مفهوم البرمجة الكائنية.
- نظام ثابت ومتغير للبيانات: يمكنك اختيار استخدام الأنواع الثابتة أو الاعتماد على تحديد النوع التلقائي.
- الأداء السريع: يُمكن تجميع الكود إلى تعليمات مشفرة مباشرة لتحسين الأداء.
3. المفاهيم الأساسية في دارت
1. المتغيرات (Variables)
- تعريف المتغيرات بسيط وسهل، حيث يمكنك استخدام الكلمة المفتاحية
var
لتحديد متغير بدون تحديد النوع.
var name = "John"; // Dart يحدد النوع تلقائيًا (String)
int age = 25; // متغير من نوع عدد صحيح
2. الأنواع (Data Types)
- دارت تدعم عدة أنواع من البيانات مثل:
- int: للأعداد الصحيحة
- double: للأعداد العشرية
- String: للنصوص
- bool: للقيم المنطقية (true/false)
- List: لقوائم البيانات
- Map: لقيم المفاتيح والبيانات
3. الثوابت (Constants)
- تستخدم الكلمتين المفتاحيتين
final
وconst
لتحديد القيم الثابتة.
final city = "Riyadh"; // لا يمكن تغييرها بعد التعيين
const pi = 3.14; // ثابتة أثناء وقت التنفيذ
4. الدوال (Functions)
- يمكنك تعريف الدوال بسهولة باستخدام كلمة
void
أو تحديد نوع القيمة المرجعة.
void greet() {
print("Hello, World!");
}
int add(int a, int b) {
return a + b;
}
5. جمل التحكم (Control Statements)
- if-else، for، while، وswitch، كلها مدعومة للتحكم في سير البرنامج.
if (age > 18) {
print("Adult");
} else {
print("Minor");
}
4. البرمجة الكائنية في دارت
1. الفئات والكائنات (Classes and Objects)
- دارت تدعم البرمجة الكائنية بشكل كامل.
class Car {
String color;
Car(this.color);
void drive() {
print("The $color car is driving.");
}
}
void main() {
Car myCar = Car("red");
myCar.drive();
}
2. الوراثة (Inheritance)
- يمكنك إنشاء فئات ترث خصائص ووظائف من فئات أخرى.
class Animal {
void eat() {
print("Animal is eating");
}
}
class Dog extends Animal {
void bark() {
print("Dog is barking");
}
}
void main() {
Dog myDog = Dog();
myDog.eat();
myDog.bark();
}
3. التعددية (Polymorphism)
- يمكنك استخدام طرق الفئات بشكل مختلف في الفئات الفرعية.
5. المكتبات والحزم (Libraries and Packages)
- مكتبة دارت الأساسية: تحتوي على العديد من الوظائف الأساسية لإدارة الإدخال/الإخراج، التعامل مع النصوص، وإدارة القوائم.
- يمكنك استيراد مكتبات خارجية أو إنشاء مكتباتك الخاصة لتوسيع وظائف البرنامج.
import 'dart:math';
void main() {
print(sqrt(16)); // استخدام مكتبة الرياضيات
}
6. إدارة الأخطاء (Error Handling)
- دارت تدعم معالجة الأخطاء باستخدام
try-catch
لضمان سلاسة عمل البرنامج.
void main() {
try {
int result = 10 ~/ 0;
} catch (e) {
print("Cannot divide by zero: $e");
}
}
الخلاصة
مبادئ لغة دارت سهلة الفهم وتوفر بيئة مثالية لتطوير التطبيقات الحديثة، خاصة عند دمجها مع فلاتر لبناء تطبيقات جوال متعددة الأنظمة. إذا كنت ترغب في تعلم البرمجة بلغة دارت، فإن فهم هذه المفاهيم الأساسية هو الخطوة الأولى نحو بناء تطبيقات قوية وسريعة.