الاستخدام الأول: تشغيل المثال الأول
📚 دليل السلسلة: المقال السابق 06 خطة البرمجة: خطط الاشتراك والفوترة ساعدك على فهم الأمور المالية. هذا المقال هو للتطبيق العملي - من فتح الطرفية إلى تشغيل مهمتك الأولى، ليمنحك أول "نجاح".
يا رفاق، المقالات السابقة كانت كلها تمهيدية - لقد قمنا بالتثبيت، وتسجيل الدخول، واختيار الخطة.
الأداة جاهزة، لكنك قد لا تزال تشعر بالتردد: كيف أستخدم هذا الشيء حقًا؟ أفتح الطرفية، ثم ماذا؟
بصراحة، الكثير من الناس عند تشغيل Claude Code للمرة الأولى، يحدقون في ذلك المؤشر لمدة دقيقة تقريبًا، غير متأكدين مما يجب كتابته. خائفون من أن عبارة واحدة خاطئة قد تفسد الكود.
لا تقلق. اليوم سنمر بأبسط عملية: إنشاء مشروع صغير ببضعة أسطر من الكود، وجعل Claude يقرأه ويفهمه أولاً، ثم نطلب منه مساعدتك في تعديل سطر واحد. تستغرق العملية بأكملها أقل من خمس دقائق، وستحصل على أول تجربة نجاح لك في حياتك حيث "يساعدني Claude في تعديل الكود ويقوم بذلك بشكل صحيح". هذا يكفي - بمجرد تشغيله بنجاح مرة واحدة، سيصبح كل شيء آخر سهلاً.
بعد قراءة هذا المقال، ستحصل على:
- سير عمل كامل من فتح الطرفية إلى تشغيل المهمة الأولى، ما عليك سوى اتباع الخطوات والكتابة
- فهم لكل جزء من "شاشة الترحيب" بعد تشغيل Claude Code
- تدريب عملي بمستوى hello world يمكن تشغيله ويعطي المخرجات المتوقعة
- بعض التذكيرات الرئيسية لـ "تجنب الأخطاء في المرة الأولى" (كيفية الموافقة على الأذونات، وكيفية التراجع إذا قمت بخطأ ما)
01 أولاً، قم بإنشاء "مشروع لعبة"
الخلاصة أولاً: للاستخدام الأول، لا تتدرب على مشروعك الرسمي، بل قم بإنشاء مشروع لعبة.
لماذا؟ لأن المشروع الرسمي يحتوي على العديد من الملفات والتبعيات المعقدة، وسيستغرق Claude وقتًا طويلاً في القراءة، ولن تتمكن من رؤية ما فعله بوضوح. مشروع اللعبة يحتوي على ملفين أو ثلاثة فقط، وما قام بتعديله يمكنك رؤيته في لمح البصر - هذا هو ما يجب استخدامه للتعلم.
مثال: تعلم القيادة في منطقة خالية أولاً. لا أحد يصعد إلى الطريق السريع بمجرد حصوله على رخصة القيادة. ابحث أولاً عن منطقة خالية، وتعرف على دواسة الوقود والفرامل، واعرف مقدار دوران عجلة القيادة اللازم للانعطاف. مشروع اللعبة هو منطقتك الخالية - لا يهم إذا أفسدت الأمر، فقط أعد إنشاء واحد جديد.
بالنسبة للأشخاص الذين لم يلمسوا سطر الأوامر من قبل، كل من يتدرب على مشروع الشركة في المرة الأولى، يشعر بالذعر دون استثناء - مجرد التمرير السريع للشاشة أثناء قراءة Claude للملفات لبضع ثوان، يكفي لجعل راحة اليد تتعرق. جرب طريقة أخرى، قم أولاً بإنشاء ملف صغير بثلاثة أسطر من الكود، وقم بتشغيله بالكامل في خمس دقائق، وستزداد ثقتك بنفسك على الفور.
افتح الطرفية الخاصة بك (في نظام Mac هو "Terminal"، وفي نظام Windows يوصى باستخدام Git Bash أو PowerShell)، واكتب هذه الأسطر:
mkdir hello-claude
cd hello-claudeمعنى هذين السطرين هو: إنشاء مجلد جديد يسمى hello-claude، ثم الدخول إليه. mkdir = make directory (إنشاء مجلد)، cd = change directory (تغيير المجلد).
بعد ذلك، قم بإنشاء أبسط ملف Python. في Mac / Linux استخدم:
echo 'def add(a, b):
return a + b' > main.pyفي Windows PowerShell، قد تكون كتابة أسطر متعددة باستخدام echo مزعجة بعض الشيء، يمكنك استخدام المفكرة مباشرة لإنشاء ملف main.py جديد، ولصق السطرين التاليين وحفظهما:
def add(a, b):
return a + b💡 ملخص في جملة واحدة: في المرة الأولى التي تستخدم فيها Claude Code، قم أولاً بإنشاء مشروع لعبة من سطرين أو ثلاثة كـ "ساحة تدريب"، إذا أفسدت التعديل يمكنك إعادة إنشائه، دون الشعور بالذعر أو التوتر.
02 تشغيل Claude، وفهم شاشة الترحيب
المشروع جاهز الآن، ابدأ بتشغيل Claude Code في نفس المجلد. تأكد من أن الطرفية الخاصة بك موجودة حاليًا في دليل hello-claude (إذا استخدمت cd للتو فأنت لا تزال هناك)، واكتب:
claudeملاحظة: تأكد من تشغيل claude في دليل المشروع، ولا تقم بتشغيله في سطح المكتب أو الدليل الرئيسي. لأن Claude Code يعتبر الدليل الذي تتواجد فيه حاليًا كمساحة عمل - أينما تقوم بتشغيله، سيقرأ الملفات الموجودة هناك. هذا هو الفخ الأول الذي يقع فيه المبتدئون غالبًا: التشغيل في الدليل الرئيسي، ثم السؤال "ماذا يفعل هذا المشروع؟"، وسيكون Claude في حيرة من أمره، لأن الدليل الرئيسي ليس مشروعًا على الإطلاق.
مثال: إذا طلبت من عامل الديكور المجيء إلى منزلك، يجب أن تأخذه أولاً إلى المنزل المراد تزيينه. لا يمكنك أن تقف عند بوابة المجمع السكني وتومئ له لفترة طويلة، يجب أن يقف داخل المنزل ليعرف أي جدار يجب هدمه، وأين يجب تمديد الأسلاك. الدخول عبر cd إلى دليل المشروع ثم تشغيل claude هو مثل "إدخال العامل إلى المنزل".
بعد التشغيل، سترى شاشة ترحيب، وفقًا للوثائق الرسمية، فإنها تحتوي على معلومات الجلسة، والمحادثات الأخيرة، ومطالبات التحديثات الأخيرة. بالنسبة للمبتدئين، تحتاج فقط إلى معرفة ثلاثة أشياء:
| ما تراه | ما هو | ما يجب عليك فعله |
|---|---|---|
| مربع الإدخال / المؤشر في الأسفل | المكان الذي تتحدث فيه مع Claude | اكتب مباشرة، واضغط على Enter للإرسال |
/help في المطالبات | لعرض جميع الأوامر المتاحة | اكتبه عندما لا تتذكر الأوامر |
/resume في المطالبات | لمواصلة محادثة سابقة | تجاهله في الاستخدام الأول |
مربع الإدخال هو ساحة المعركة الرئيسية. لا تحتاج إلى تعلم أي بناء جملة خاص، فقط اعتبره مربع دردشة يمكنه قراءة الكود الخاص بك - استخدم لغة بسيطة لطلب احتياجاتك.
للتأكد من أنك في المكان الصحيح، يمكنك أولاً كتابة أبسط سؤال:
ماذا يفعل هذا المشروع؟سيقوم Claude بقراءة الملفات في الدليل الحالي بنفسه (هنا هو main.py)، ثم يخبرك بما يفعله هذا المشروع. العملية برمتها لا تتطلب منك "تغذية" الملفات يدويًا - تنص الوثائق الرسمية بوضوح على: سيقوم Claude Code بقراءة ملفات المشروع بنفسه عند الحاجة، ولن تضطر إلى إضافة السياق يدويًا.
💡 ملخص في جملة واحدة: اكتب
claudeفي دليل المشروع للتشغيل، وتعرف فقط على "مربع الإدخال +/help" للبدء؛ سيقرأ الملفات بنفسه، ما عليك سوى ذكر احتياجاتك بلغة بسيطة.
03 دع Claude يقرأ الكود ويفهمه أولاً
المهمة الحقيقية الأولى، ليست جعله يعدل الكود، بل جعله يشرح الكود.
لماذا نشرحه أولاً؟ لسببين: الأول هو التأكد من أن Claude قد قرأ ملفك بالفعل (وليس يختلق الأمور)؛ والثاني هو أن مهام الشرح خالية من المخاطر - فهو يقرأ ويتحدث فقط، ولن يلمس كلمة واحدة، وهي الأنسب للتجربة الأولى.
مثال: في اليوم الأول لزميل جديد في العمل، لن تقوم بتسليمه الوحدات الأساسية لإعادة هيكلتها، بل ستطلب منه أولاً "قراءة الكود، وإخباري بما تفعله هذه الوحدة". بعد الاستماع إليه، ستعرف ما إذا كان قد فهم الأمر وما إذا كان موثوقًا. جعل Claude يشرح الكود، هو تمامًا خطوة "اليوم الأول في العمل".
في مربع الإدخال، اكتب:
اشرح ما يفعله ملف main.py هذا، بطريقة يمكن للمبتدئين فهمهااضغط على Enter. سيقرأ Claude ملف main.py، ثم يعطيك شرحًا بسيطًا، مفاده: تم تعريف دالة add هنا، والتي تستقبل معاملين a و b، وتعيد نتيجة جمعهما.
تشغيل هذه الخطوة بنجاح، يعني أن هناك أمرين قد تحققا: تم تثبيت Claude Code بشكل صحيح، وحالة تسجيل الدخول طبيعية، وهو بالفعل يقرأ ملفك الحقيقي. بمجرد أن يصبح الأساس ثابتًا، يمكنك السماح له بالبدء في التعديل.
قسّم أوامر Claude Code إلى ثلاث فئات وتذكرها، وستكون لديك فكرة واضحة عند استخدامها في المستقبل:
| نوع الأمر | ماذا يفعل | مثال | المخاطر |
|---|---|---|---|
| شرح | يجعله يقرأ ويفهم ويشرح لك | "اشرح هذا الكود" | خالية من المخاطر، لا يمس الملفات |
| تعديل | يجعله يعدل الكود الحالي | "أعد هيكلة هذه الدالة" | سيعدل الملفات، يتطلب الموافقة |
| إنشاء | يجعله يكتب شيئًا جديدًا | "أضف حالة اختبار" | سيقوم بإنشاء/تعديل الملفات، يتطلب الموافقة |
💡 ملخص في جملة واحدة: استخدم النوع "شرح" كأول مهمة للتجربة - تأكد من أنه قرأ ملفك وأن الأساس ثابت، قبل أن تدعه يبدأ العمل.
04 دع Claude يعدل سطرًا من الكود (الأهم: سيسألك أولاً)
الآن نصل إلى الذروة: جعل Claude يعدل الكود حقًا.
استمرارًا للمحادثة أعلاه، اكتب مباشرة:
أضف توضيح الأنواع لهذه الدالة، وأضف معالجة الأخطاء الأساسيةفي هذه اللحظة يأتي المشهد الأهم - Claude لن يقوم بتعديل ملفك مباشرة. بل سيقوم بـ:
- العثور على الملف الذي يجب تعديله (هنا هو
main.py) - يعرض لك ما ينوي تغييره، في شكل diff (مقارنة الاختلافات)
- يتوقف، وينتظر موافقتك
- بمجرد أن تنقر على "موافق" (Yes)، سيتم تطبيق التغييرات على القرص
هذه قاعدة صارمة تؤكد عليها الوثائق الرسمية مرارًا وتكرارًا:
يطلب Claude Code دائمًا الإذن قبل تعديل الملفات. يمكنك الموافقة على التغييرات الفردية، أو تمكين وضع "قبول الكل" لهذه الجلسة.
مثال: المتدرب يسألك قبل اتخاذ أي إجراء. المتدرب الموثوق، لن يقوم بتعديل كود الإنتاج دون موافقتك - سيأتي إليك بالمسودة المعدلة: "رئيسي، أريد تعديلها بهذا الشكل، ما رأيك؟" لن يتحرك إلا إذا أومأت برأسك. Claude Code في الوضع الافتراضي هو مثل هذا المتدرب الذي "يسأل أولاً ثم يتصرف".
سترى مطالبة تتيح لك الاختيار، وعادة ما تعني هذه الخيارات:
| اختيارك | التأثير | متى تستخدمه |
|---|---|---|
| موافق / Yes | يطبق هذا التغيير المحدد | فهمت الـ diff، وتعتقد أنه لا توجد مشكلة |
| موافق، ولا تسأل مرة أخرى في هذه الجلسة | يتم تطبيق التغييرات اللاحقة تلقائيًا | أنت تثق به بالفعل، وتريد تسريع العملية |
| رفض / No، وإخباره بالسبب | لا تعدل، يمكنك إضافة متطلبات | يوجد شيء في الـ diff لا تريده |
في المرة الأولى، يُنصح بشدة أن تختار "موافق" فقط، ولا تتسرع في تفعيل "قبول الكل". بصراحة، عند البدء، يكون من السهل محاولة توفير الجهد، وإعطاء الصلاحيات الأكثر تساهلاً منذ البداية (وهذا ما سيتم شرحه في الفصول اللاحقة --dangerously-skip-permissions، وكما يوحي الاسم "تخطي الأذونات بشكل خطير")، والنتيجة أنه يقوم بتعديل خمسة أو ستة ملفات متتالية دون أن تنظر إليها بعناية، وعندما تدرك الأمر، لا يمكنك التمييز بين التغيير الذي أردته والتغيير الذي أضافه بمفرده. الدرس هو: كلما كنت أقل دراية به، كلما كان يجب عليك أن تجعله يتوقف عند كل خطوة.
حيلة صغيرة لفهم الـ diff: الأسطر الحمراء / التي تبدأ بـ - هي الأسطر القديمة المحذوفة، والأسطر الخضراء / التي تبدأ بـ + هي الأسطر الجديدة المضافة. من المحتمل أن يتحول ملف main.py الخاص بك من:
def add(a, b):
return a + bإلى شيء مشابه لهذا (قد تختلف كتابة Claude المحددة قليلاً، المهم أن يكون المعنى نفسه):
def add(a: float, b: float) -> float:
if not isinstance(a, (int, float)) or not isinstance(b, (int, float)):
raise TypeError("a و b يجب أن يكونا أرقامًا")
return a + bتمت إضافة توضيح الأنواع (a: float)، وتمت إضافة معالجة الأخطاء الأساسية (إذا لم يكن المدخل رقمًا فسيظهر خطأ). في هذه اللحظة، تكون قد أكملت أول "تعديل للكود بالتعاون بين الإنسان والآلة".
💡 ملخص في جملة واحدة: Claude يسألك دائمًا أولاً قبل تعديل الملفات - في المرة الأولى كن صبورًا واختر "موافق"، وافهم الـ diff قبل الموافقة، لا تكن في عجلة من أمرك لتشغيل الوضع التلقائي بالكامل.
05 ماذا تفعل إذا أخطأت: آليتان لـ "التراجع"
أكبر مخاوف المبتدئين هي: ماذا لو قام بتعديل خاطئ، أو أفسد الأمر، ولم أتمكن من ملاحظة ذلك، كيف أصلح الوضع؟
لا تقلق، هناك آليتان للتراجع، وهما سهلتان الاستخدام.
الأولى: قل مباشرة في المحادثة "تراجع عن التعديل". يتذكر Claude ما فعله في هذه الجلسة، وإذا لم تكن راضيًا، أخبره بلغة بسيطة مباشرة:
لست راضيًا عن التغيير الأخير، يرجى التراجع عنه والعودة إلى ما كان عليهسيتراجع عن التغيير. مثال: إخبار زميل "إصدارك الأخير لا يعمل، دعنا نعود إلى الإصدار الأصلي" - لست بحاجة إلى التراجع عنه يدويًا سطرًا بسطر.
الثانية: استخدام نقاط التفتيش (Checkpoint) للعودة. هذه هي آلية "حفظ اللعبة" في Claude Code - فهو يسجل حالة الملف تلقائيًا قبل كل تعديل، ويمكنك القفز مرة أخرى بنقرة واحدة.
مثال: حفظ وتحميل الألعاب. لقد حفظت اللعبة قبل معركة الزعيم، وإذا خسرت فلن تضطر إلى البدء من الصفر، فقط قم بتحميل اللعبة للعودة إلى نقطة الحفظ. نقطة التفتيش هي ملف الحفظ الذي يحفظه Claude لك بهدوء قبل اتخاذ أي إجراء.
كيفية تفعيلها؟ وفقًا للوثائق الرسمية:
/rewindأو عندما يكون مربع الإدخال فارغًا، اضغط على مفتاح Esc مرتين متتاليتين، وسينبثق قائمة التراجع.
⚠️ ملاحظة (مذكورة بوضوح في الوثائق الرسمية): إذا كان هناك نص في مربع الإدخال، فإن الضغط المزدوج على Esc سيقوم بمسح النص، وليس فتح قائمة التراجع. لذلك للتراجع، تأكد أولاً من أن مربع الإدخال فارغ.
هناك نقطة أخرى يجب توضيحها - يمكن لنقاط التفتيش فقط التراجع عن تعديلات الملفات التي قام بها Claude من خلال أدوات التحرير الخاصة به، وهي لا تعادل Git. نصيحة الوثائق الرسمية دقيقة للغاية:
اعتبر نقاط التفتيش بمثابة "تراجع محلي"، واعتبر Git بمثابة "سجل دائم".
وهذا يعني أن نقاط التفتيش مناسبة لـ "أوه، هذه الخطوة تم تعديلها بشكل سيئ، لنتراجع"، وهو ندم فوري؛ أما التقدم المهم حقًا، فلا يزال يعتمد على تسجيلات Git لحفظها (كيفية استخدام Git سيتم شرحه في مقال مخصص لاحقًا).
| آلية التراجع | كيفية الاستخدام | السيناريو المناسب | القيود |
|---|---|---|---|
| قول "تراجع عن التعديل" في المحادثة | اكتب مباشرة لتخبر Claude | تم التعديل للتو، هناك مكان أو مكانان لست راضيًا عنهم | يعتمد على فهمه لما تقصده |
نقطة التفتيش /rewind | اكتب /rewind أو اضغط Esc مرتين في مربع إدخال فارغ | تريد القفز مرة أخرى إلى حالة محددة بدقة | يدير فقط الملفات التي عدلها Claude، وليس Git |
💡 ملخص في جملة واحدة: لا تصب بالذعر إذا قمت بتعديل خاطئ، استخدم جملة "تراجع عن التعديل" + نقطة التفتيش
/rewindكشبكة أمان؛ لكن التقدم الحقيقي، يجب تسليمه إلى Git للحفظ.
06 التطبيق العملي: قم بتشغيل مهمتك الأولى في خمس دقائق
القراءة فقط بدون ممارسة لا تكفي. أدناه سنقوم بدمج الأقسام السابقة في عملية كاملة يمكن اتباعها مع مخرجات متوقعة. افتح الطرفية الخاصة بك، واتبع الخطوات.
الخطوة الأولى: إنشاء مشروع اللعبة (Mac / Linux)
mkdir hello-claude
cd hello-claude
echo 'def add(a, b):
return a + b' > main.pyمستخدمي Windows: اكتب mkdir hello-claude و cd hello-claude كما هو، واستخدم المفكرة لإنشاء main.py جديد ولصق سطري Python هذين.
التوقع: هناك ملف main.py في مجلد hello-claude، والمحتوى هو هذين السطرين من دالة add. يمكنك كتابة ls (في Windows استخدم dir) للتأكد من وجود الملف.
الخطوة الثانية: تشغيل Claude Code
claudeالتوقع: تظهر شاشة الترحيب، مع مربع إدخال ومؤشر في الأسفل. إذا طُلب منك تسجيل الدخول، فهذا يعني أن خطوات تسجيل الدخول السابقة لم تكتمل، ارجع وقم بإجراء تسجيل الدخول في المقال 02.
الخطوة الثالثة: دعه يشرح الكود
في مربع الإدخال، اكتب:
اشرح ما يفعله ملف main.py هذا، بطريقة يمكن للمبتدئين فهمهاالتوقع: يقرأ Claude ملف main.py، ويخبرك بلغة بسيطة أن هذه دالة "تجمع رقمين". رؤيته يشرح الغرض من دالة add بدقة = نجاح.
الخطوة الرابعة: دعه يعدل الكود، ووافق على ذلك
أضف توضيح الأنواع لهذه الدالة، وأضف معالجة الأخطاء الأساسيةالتوقع: يقدم Claude جزءًا من الـ diff (خط أحمر - للسطور القديمة، خط أخضر + للسطور الجديدة)، ثم يتوقف وينتظرك لتختار. بعد فهمه اختر "موافق / Yes".
الخطوة الخامسة: تأكيد تطبيق التغييرات
اخرج من Claude (اكتب exit أو اضغط Ctrl+D)، وعد إلى الطرفية لترى الملف:
cat main.py(في Windows PowerShell استخدم type main.py)
التوقع: تظهر توضيحات الأنواع في main.py (مثل a: float) ومعالجة الأخطاء (raise TypeError(...)). يتطابق مع الـ diff الذي وافقت عليه للتو = تمت العملية بنجاح، تهانينا!
⚠️ إذا واجهت خطأ في الصلاحيات (في نظام Mac / Linux ترى مثل
Error: EACCES: permission denied)، فإن طريقة الإصلاح المحددة تختلف حسب السيناريو، وسيتم شرحها بالتفصيل في قسم "الأسئلة الشائعة" لاحقًا، فقط اعلم أن هذه المشكلة قد تحدث.
💡 ملخص في جملة واحدة: اتبع الخطوات الخمس مرة واحدة، التشغيل بنجاح أهم من الفهم الكامل - احصل على أول تجربة نجاح لك حيث "ساعدني Claude في التعديل بشكل صحيح"، وسيصبح ما يلي سهلاً.
07 الخلاصة
في هذا المقال، قمت بشيء واحد: تشغيل المهمة الأولى لـ Claude Code بالكامل - من إنشاء المشروع، والتشغيل، وشرح الكود، إلى تعديل الكود والموافقة عليه.
دعنا نراجع الإجراءات الأساسية ونربطها معًا:
| الخطوة | الإجراء | النقطة الرئيسية |
|---|---|---|
| إنشاء مشروع | mkdir + cd + إنشاء ملف | تدرب على مشروع لعبة أولاً |
| التشغيل | اكتب claude في دليل المشروع | أينما تقوم بتشغيله، سيقرأ |
| الشرح | "اشرح ملف كذا" | خالية من المخاطر، تأكد أولاً من أنه قرأ الملف |
| التعديل | استخدم لغة بسيطة لطلب احتياجاتك | هو يعطي diff أولاً، وينتظر موافقتك قبل اتخاذ أي إجراء |
| التراجع | "تراجع عن التعديل" / /rewind | نقطة التفتيش هي تراجع محلي، Git هو التاريخ الدائم |
يجب أن تكون الآن قادرًا على: فتح الطرفية، وتشغيل Claude في الدليل الصحيح، واستخدام اللغة الطبيعية لجعله يقرأ ويفهم ويعدل جزءًا من الكود، وفهم الـ diff الذي يقدمه، ومعرفة كيف تتراجع إذا قام بخطأ. مجموعة الإجراءات هذه، هي الحد الأدنى الأساسي لكل استخداماتك لـ Claude Code في المستقبل - أي ميزات رائعة لاحقًا، هي في الأساس إضافات لهذه الدورة المتمثلة في "طلب الحاجة ← رؤية الـ diff ← الموافقة / التراجع".
المقال التالي 08 "تكامل VS Code" - تم تشغيله على سطر الأوامر، لكنك قد تكون معتادًا أكثر على كتابة الكود ورؤية الـ diff بشكل أكثر وضوحًا في المحرر. المقال التالي سيعلمك كيفية تثبيت Claude Code داخل VS Code، ليجعله يعمل جنبًا إلى جنب مع الكود الخاص بك.

تربط هذه الصورة الخطوات الخمس في هذا المقال في تدفق عمودي: إنشاء مشروع لعبة ← تشغيل claude في دليل المشروع ← جعله يشرح الكود (أخضر·للقراءة فقط خالية من المخاطر) ← جعله يعدل الكود (تظليل كهرماني·يعطي الـ diff أولاً وينتظر موافقتك، أي "يسأل أولاً ثم يتصرف") ← استخدام /rewind للتراجع إذا أخطأ (تظليل أحمر وردي·شبكة أمان لـ "التراجع")، والتمييزان هما حاجز الأمان الذي يجب على المبتدئين تذكره.