Solidity

متوسط
Solidity هي لغة برمجة صُممت خصيصًا لكتابة العقود الذكية وتنفيذها على سلسلة بلوكشين Ethereum. وقد اقترحها غافين وود في عام 2014 وطورها كريستيان ريتويزنر وآخرون من مطوري سلسلة البلوكشين.

يتمثل الغرض الرئيسي من تصميم لغة Solidity في مساعدة المطورين في كتابة البرامج والتطبيقات على شبكة Ethereum بسرعة وكفاءة أكبر. تسمح Solidity للمطورين بتحديد القواعد التي تقوم بتشغيل التطبيقات اللامركزية.

Solidity عبارة عن مشروع مجتمعي مفتوح المصدر يديره فريق أساسي برعاية مؤسسة Ethereum.

إذا كنت جديدًا في عالم سلاسل البلوكشين والعملات الرقمية، فقد تتساءل "ما المقصود بالعقد الذكي؟" العقد الذكي هو كود برمجي مُخزَن على شبكة لامركزية تُعرف باسم سلسلة البلوكشين. أي أن العقد الذكي، ببساطة، يُنفذ المهام والمعاملات تلقائيًا بمجرد استيفاء الشروط المحددة مسبقًا.

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

Solidity، كلغة برمجة عقود ذكية بارزة، لا تختلف كثيرًا عن لغات مثل JavaScript وC++. إذا كانت لديك خبرة سابقة في البرمجة النصية أو البرمجة، لا سيما في لغة JavaScript، فستجد أن Solidity مألوفة إلى حد ما.

تتمثل إحدى الخصائص المميزة للغة Solidity في قدرتها على تحديد الاتفاقيات التعاقدية المعقدة مع مختلف الأطراف المعنية. تُستخدَم هذه اللغة متعددة الاستخدامات ليس فقط في تطوير الرموز المميزة (الاستخدام الواضح لها)، ولكن أيضًا في إنشاء حملات للتمويل الجماعي ومزادات السعر المغلق، والمحافظ متعددة التوقيعات، وحتى أنظمة التصويت.

ومع ذلك، من الجدير بالذكر أن Solidity هي لغة ثابتة. ووفقًا للموقع الرسمي للغة Solidity، فإنها "لغة برمجة ثابتة تستخدم الأقواس المتعرجة مُصممة لتطوير العقود الذكية التي تعمل على شبكة Ethereum".

يعني هذا أنه يجب عليك تحديد أنواع المتغيرات (سواء كانت أعدادًا صحيحة أو بيانات منطقية أو سلاسل نصية أو أنواعًا حددها المستخدم) لأنها تتحقق من النوع في وقت التحويل إلى كود. بعبارة أخرى، اللغات الثابتة هي تلك التي تُعرف فيها المتغيرات في وقت التحويل إلى كود (مثل Java أو C أو C++). وتشير الأقواس المتعرجة إلى الأقواس التي تشير إلى كتل من الأكواد البرمجية (التي يمكن فيها تعريف المتغيرات).

إذا كنت مهتمًا بتطوير سلاسل البلوكشين أو تفكر في التعرف على عالم التمويل اللامركزي، فإن تعلُّم لغة Solidity قد يكون بداية رائعة. لكن، على غرار جميع لغات البرمجة، تأتي Solidity أيضًا ومعها مجموعة فريدة من التحديات الخاصة بها. ويحتاج المطورون إلى توخي الحذر الشديد أثناء صياغة العقود الذكية باستخدام Solidity لتجنب الأخطاء البرمجية أو نقاط الضعف، حيث إنها قد تؤدي إلى خسائر مالية فادحة. غير أن النمو المستمر لتكنولوجيا سلاسل البلوكشين والعقود الذكية يجعل من Solidity مهارة ذات قيمة كبيرة ومطلوبة في عالم التكنولوجيا.