freeCodeCamp/guide/arabic/ruby/rubocop/index.md

4.3 KiB

title localeTitle
Rubocop Rubocop

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

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

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

باستخدام Rubocop

التركيب

يتم تسليم Rubocop كما جوهرة ، لذلك في مشروع نموذجي يستخدم Bundler لك Gemfile إلى قسم التطوير في Gemfile الخاص بك:

group :development do gem rubocop end

وهذا يعني أن أي شخص يستخدم مشروعك سيكون له نفس الإصدار من Rubocop ، و سيتفق الجميع على أفضل الممارسات الحالية.

استعمال

قبل كل التزام ، أرغب في التحقق من أن الشفرة المعدلة حديثًا تتوافق معها معيار commmunity ، ببساطة عن طريق تشغيل:

rubocop

سيؤدي ذلك إلى إخراج قائمة بالتحذيرات حول شفرتك.

يمكن أن يكون من المفيد طلب Rubocop للحصول على مزيد من المساعدة:

rubocop --extra-details --display-cop-names

(يمكنك إضافة هذه الملفات إلى ملف .rubocop لجعلها افتراضية.)

سيسمح لك العديد من المحررين بدمج Rubocop ، والتي يمكن أن تعطي فورية ردود الفعل عند كتابة التعليمات البرمجية.

إصلاح المشكلات

لنفترض أنني كتبت رمزًا جديدًا ؛ قبل أن ألتزم بها ، قد أقرر ذلك تأكد من أنها تلتزم بالمبادئ التوجيهية:

rubocop <my new file>

يمكنني تحرير التغييرات المقترحة يدويًا ، أو يمكنني أن أطلب من Rubocop إصلاحها مشاكل طفيفة تلقائيا:

rubocop --auto-correct

تشغيل بعض رجال الشرطة فقط

يتم تنفيذ كل المبادئ التوجيهية للمجتمع في "شرطي" Rubocop. عند العمل على قاعدة البيانات القديمة قد تغرق مع التحذيرات عند تقديم Rubocop. في هذه الحالة ، يمكن أن يكون من المفيد تشغيل شرطي واحد فقط عبر مصدر البرنامج ، وتحقق من هذه التغييرات قبل الانتقال إلى المبدأ التوجيهي التالي ، من أجل مثال:

rubocop --auto-correct --only 'Layout/EmptyLineAfterMagicComment'

تكامل محرر النصوص

يمكن دمج Rubocop مع Vim و Visual Studio Code و Atom وغيرها من برامج تحرير النصوص. يمكن العثور على قائمة كاملة هنا .