---
title: أفضل الممارسات
image: /images/user-guide/tips/light-bulb.png
---

<Frame>
  <img src="/images/user-guide/tips/light-bulb.png" alt="Header" />
</Frame>

This document outlines the best practices you should follow when working on the backend.

## اتباع نهج معياري

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

## عرض الخدمات لاستخدامها في الوحدات

قم دائمًا بإنشاء خدمات ذات مسؤولية واضحة ووحيدة، مما يعزز من قابلية قراءة وصيانة الكود. Name the services descriptively and consistently.

يجب أيضًا عرض الخدمات التي تريد استخدامها في وحدات أخرى. إظهار الخدمات للوحدات الأخرى ممكن من خلال نظام الحقن التلقائي في NestJS، ويعزز من الفصل بين المكونات.

## تجنب استخدام نوع `أي`

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

لهذا السبب يجب أن يكون لكل شيء نوع. لذا إن قمت بإنشاء كائن جديد يحتوي على الاسم الأول واسم العائلة، يجب عليك إنشاء واجهة أو نوع يحتوي على الاسم الأول واسم العائلة الذي يحدد شكل الكائن الذي تتعامل معه.
