أنواع الأدوات
اعمل مع أنواع الأدوات، مثل Partial وReadonly وغيرهما
أنواع الأدوات درس مجاني في TypeScript Academy على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في TypeScript Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة TypeScript Academy 4 دروس في المجموع.
مقدمة إلى الأنواع المساعدة
الأنواع المساعدة
مرحبًا بكم في الدرس التالي! ستتعلّمون في هذا الدرس عن الأنواع المساعدة، وهي ميزات مضمّنة في TypeScript تُبسّط تحويلات الأنواع وتحسّنها. لنبدأ!

ما الأنواع المساعدة؟
ما الأنواع المساعدة؟
الأنواع المساعدة هي أنواع معرّفة مسبقًا توفّرها TypeScript لإجراء تحويلات شائعة على الأنواع، مثل جعل الخصائص اختيارية أو للقراءة فقط، أو اختيار خصائص محددة من نوع ما.
مثال:
type User = {
name: string;
age: number;
email: string;
};
type PartialUser = Partial<User>;
let user: PartialUser = { name: "Alice" };
// Only 'name' is provided
Partial
Partial
يجعل نوع الأداة المساعدة Partial جميع خصائص نوع ما اختيارية. مثال:
المطلوب: أنشئ نوعًا باستخدام الأداة المساعدة Partial، واستخدمه لتعريف متغيّر.
type User = {
name: string;
age: number;
};
type OptionalUser = Partial<User>;
let user: OptionalUser = { name: "Bob" };
// 'age' is optional
للقراءة فقط
للقراءة فقط
يجعل نوع الأداة المساعدة Readonly جميع خصائص النوع غير قابلة للتغيير. مثال:
المهمة: استخدم نوع الأداة المساعدة Readonly لإنشاء كائن غير قابل للتغيير.
type User = {
name: string;
age: number;
};
type ReadonlyUser = Readonly<User>;
let user: ReadonlyUser = { name: "Alice", age: 25 };
// user.age = 30;
// Error: Cannot assign to 'age' because it is a read-only property
اختيار
اختيار
يحدد نوع الأداة المساعدة Pick خصائص معينة من النوع. مثال:
المهمة: استخدم نوع الأداة المساعدة Pick لإنشاء نوع يحتوي على الخصائص المحددة فقط.
type User = {
name: string;
age: number;
email: string;
};
type UserNameAndEmail = Pick<User, "name" | "email">;
let user: UserNameAndEmail = { name: "Alice", email: "alice@example.com" };
استثناء
استثناء
يستبعد نوع الأداة المساعدة Omit خصائص معينة من النوع. مثال:
المهمة: استخدم نوع الأداة المساعدة Omit لاستبعاد خاصية من النوع.
type User = {
name: string;
age: number;
email: string;
};
type UserWithoutEmail = Omit<User, "email">;
let user: UserWithoutEmail = { name: "Bob", age: 30 };
سجل
سجل
ينشئ نوع الأداة المساعدة Record نوعًا يحتوي على مجموعة من المفاتيح ونوعًا محددًا للقيم. مثال:
المهمة: استخدم نوع الأداة المساعدة Record لإنشاء ربط بين المفاتيح والقيم.
type Role = "admin" | "user" | "guest";
type Permissions = Record<Role, string[]>;
let rolePermissions: Permissions = {
admin: ["read", "write", "delete"],
user: ["read", "write"],
guest: ["read"],
};
مطلوب
مطلوب
يجعل نوع الأداة المساعدة Required جميع خصائص النوع إلزامية. مثال:
المهمة: استخدم نوع الأداة المساعدة Required لجعل جميع الخصائص إلزامية.
type User = {
name?: string;
age?: number;
};
type FullUser = Required<User>;
let user: FullUser = { name: "Alice", age: 30 };
// Both 'name' and 'age' are required
أحسنتم!
أحسنتم!
تهانينا! لقد تعلمتم أنواع الأدوات المساعدة المضمنة في TypeScript، ومنها Partial وReadonly وPick وOmit وغيرها. تجعل هذه الأدوات العمل مع الأنواع أسرع وأسهل. في الدرس التالي، سنتعمق في الأنواع المُعيَّنة المتقدمة. واصلوا كتابة التعليمات البرمجية!

الأسئلة الشائعة
هل درس «أنواع الأدوات» مجاني؟
نعم — نص درس «أنواع الأدوات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة TypeScript Academy، انتقل إلى CoddyKit PRO. تتضمن دورة TypeScript Academy 4 دروس في المجموع.
ماذا ستتعلم في «أنواع الأدوات»؟
اعمل مع أنواع الأدوات، مثل Partial وReadonly وغيرهما تتمرن على TypeScript Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ TypeScript Academy؟
لا تُشترط خبرة سابقة. TypeScript Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «أنواع الأدوات»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس TypeScript Academy هذا؟
نعم. كل درس في TypeScript Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.