X

أساسيات الحاسوب

١. فهم أساسيات الحاسوب والإنترنت والأدوات

نظري

أ. ما هي المكونات الأساسية للحاسوب؟

تُعد أجهزة الكمبيوتر آلات قوية للغاية، إذ تؤدي مجموعة متنوعة من المهام مثل كتابة المستندات، وممارسة الألعاب، وتصفح الإنترنت.

بصفتك مطوراً، من المهم فهم الآليات الداخلية الأساسية للحاسوب.

تُعد "اللوحة الأم" (The motherboard) المكون الرئيسي الأول للحاسوب؛ فهي تضم كافة "وحدات الذاكرة" (The memory) و"الموصلات" (Connectors) اللازمة لتشغيل الجهاز، وتعمل بمثابة "لوحة الدوائر الرئيسية" (The main circuit board) فيه.

داخل "صندوق الحاسوب" (The computer case) ، ومُثبَّتاً على "اللوحة الأم" (The motherboard) ، ستجد "وحدة المعالجة المركزية" (CPU) . تُعد هذه الوحدة معالجاً مسؤولاً عن تنفيذ التعليمات وإجراء العمليات الحسابية، وغالباً ما يُشار إليها باعتبارها "عقل الحاسوب" (The brain of the computer) .

"وحدة المعالجة المركزية" (CPU) عبارة عن شريحة مربعة صغيرة تُركَّب في "مقبس المعالج" (CPU socket) الموجود على "اللوحة الأم" (The motherboard) . وتُقاس سرعة المعالج بوحدتي "الجيڨاهرتز" (GHz) و"الميڨاهرتز" (MHz) ؛ حيث تعادل "الجيڨاهرتز" (GHz) مليار دورة في الثانية، بينما يعادل "الميڨاهرتز" (MHz) مليون دورة في الثانية.

"المكون الحيوي" (The critical component) التالي في الحاسوب هو "ذاكرة النظام قصيرة المدى" (The system's short-term memory) ، وتُعرف باسم (RAM) أو "ذاكرة الوصول العشوائي" (Random Access Memory) . وتُعد هذه الذاكرة بمثابة مساحة تخزين مؤقتة لـ"وحدة المعالجة المركزية" (CPU) في الحاسوب؛ إذ يستخدمها الحاسوب كلما دعت الحاجة إلى الوصول إلى "البيانات" (Data) بسرعة.

يتيح توفر قدر كافٍ من "ذاكرة الوصول العشوائي" (RAM) لجهاز الكمبيوتر تشغيل المزيد من البرامج في آن واحد دون انخفاض في السرعة. أما إذا كانت الذاكرة المتاحة غير كافية، فسيتباطأ أداء الجهاز وستلاحظ هذا الفرق بوضوح؛ ومع ذلك، فإن إضافة ذاكرة تفوق احتياجات برامجك لن تؤدي إلى زيادة سرعة الكمبيوتر.

من المهم ملاحظة أن "ذاكرة الوصول العشوائي" (RAM) هي "ذاكرة متطايرة" (Volatile memory) ; وهذا يعني أنها تُفقد عند إيقاف تشغيل الكمبيوتر، ولهذا السبب من المهم حفظ عملك على جهاز الكمبيوتر.

عند حفظ ملفاتك، يتم تخزينها على "القرص الصلب" (Hard Drive). يُعد القرص الصلب — أو ما يُعرف بـ HDD — وسيلة تخزين دائمة تُستخدم لحفظ البيانات حتى عند إيقاف تشغيل الحاسوب؛ وهو المكان الذي تُخزَّن فيه جميع ملفاتك وبرامجك.

يتكون "القرص الصلب" (The hard drive) من "قرص دوّار وذراع" (a spinning platter and an arm) ؛ حيث تُخزَّن البيانات على "القرص الدوّار" (The platter) ، بينما تُستخدم "الذراع" (The arm) لقراءة البيانات منه وكتابتها عليه. وعند استخدام "قرص صلب أسرع" (a faster hard drive) ، سيعمل جهاز الكمبيوتر الخاص بك على "الإقلاع" (Boot up) بسرعة أكبر، كما ستعمل البرامج بشكل أسرع.

نوع آخر من "وسائط تخزين البيانات" (Data storage) هو "محرك الأقراص ذو الحالة الصلبة" (Solid State Drive)، أو ما يُعرف اختصاراً بـ SSD. تُعد أقراص SSD نوعاً من ذاكرة الفلاش غير المتطايرة، ويمكن استخدامها بدلاً من محركات "الأقراص الصلبة التقليدية" (Hard Drives) . وتتميز أقراص SSD بأنها أسرع وأصغر حجماً من محركات الأقراص الصلبة، إلا أن الأخيرة أقل تكلفة وتوفر سعة تخزينية أكبر.

يُعدّ "مزود الطاقة" (PSU) مكوناً رئيسياً آخر من مكونات الحاسوب؛ إذ يتولى مسؤولية تحويل الكهرباء القادمة من مقبس الحائط إلى صيغة يمكن للحاسوب استخدامها، كما يقوم بتوصيل الطاقة من المقبس إلى "اللوحة الأم" (The motherboard) و"المعالج" (CPU) والمكونات الأخرى للحاسوب.

تُعد "بطاقة التوسعة" (The Expansion Card) مكوناً رئيسياً آخر؛ إذ يتم تركيب هذه "البطاقات" (Cards) في "اللوحة الأم" (The motherboard) لإضافة وظائف إضافية إلى الحاسوب. ومن الأمثلة على "بطاقات التوسعة" (Expansion Cards) : "بطاقة الفيديو" (Video Card) ، و"بطاقة الصوت" (Sound Card) ، و"بطاقة الشبكة" (Network Card) .

تتولى "بطاقة الفيديو" (Video Card) - المعروفة أيضاً باسم "وحدة معالجة الرسومات" (Graphics Processing Unit) - (GPU) - مسؤولية عرض الصور والمرئيات على شاشة الحاسوب.

تتولى "بطاقة الصوت" (Sound Card) مسؤولية تشغيل الصوت عبر مكبرات الصوت في الحاسوب.

تُعد "بطاقة الشبكة" (Network Card) مسؤولةً عن توصيل الحاسوب بالإنترنت.

على الرغم من أن جهاز الكمبيوتر يتكون من أجزاء أخرى كثيرة، إلا أن هذه بعض الأجزاء الأساسية التي ينبغي عليك التعرف عليها الآن.

أسئلة :

ما هي RAM ؟

١. الذاكرة طويلة المدى (Long-term memory) . ❌

٢. الذاكرة قصيرة المدى (Short-term memory) .

٣. لوحة الدوائر الرئيسية (Motherboard) . ❌

٤. بطاقة الفيديو (Video card) . ❌


ماذا تعني عبارة CPU ؟

١. وحدة البروتوكول المركزي (Centered Protocol Unit) . ❌

٢. وحدة معالجة المدينة (City Processing Unit) . ❌

٣. وحدة المعالجة المركزية (Central Processing Unit) .

٤. وحدة البكسل المركزية (Central Pixel Unit) . ❌


ما هي وظيفة "بطاقة الشبكة" Network Card ؟

١. عرض الصور على شاشة الحاسوب . ❌

٢. تشغيل الصوت عبر مكبرات صوت الحاسوب . ❌

٣. توصيل الحاسوب بالإنترنت .

٤. تخزين البيانات في الذاكرة قصيرة المدى . ❌

ب. كيف يمكنك استخدام لوحة المفاتيح والفأرة وأجهزة التأشير الأخرى بفعالية؟

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

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

في هذا الدرس، سنتناول طرقاً لاستخدام لوحة المفاتيح والفأرة في جهاز الكمبيوتر بـ"أساليب صحية" (healthy ways) .

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

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

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

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

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

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

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

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

أسئلة :

ما هي إحدى مخاطر الإمساك بالفأرة بقوة مفرطة؟

١. يمكن أن يحسّن دِقّتك في الألعاب. ❌

٢. يساعدك على إنجاز المهام بشكل أسرع. ❌

٣. قد يسبب مشاكل في اليد والمعصم.

٤. يحسّن أداءك العام. ❌


ما هي فوائد استخدام لوحة مفاتيح وفأرة مريحة؟

١. تساعدك على الكتابة بسرعة أكبر. ❌

٢. صُممت خصيصاً لأداء الألعاب. ❌

٣. تُقلل من إجهاد المعصم من خلال الحفاظ على وضعية أكثر طبيعية لليدين.

٤. تزيد من دقة الشاشة. ❌


ما هي التوصية المتعلقة بارتفاع الفأرة بالنسبة للوحة المفاتيح؟

١. لا يهم ارتفاع الفأرة. ❌

٢. يجب أن تكون الفأرة على نفس مستوى ارتفاع لوحة المفاتيح.

٣. يجب أن تكون الفأرة في مستوى أدنى من لوحة المفاتيح. ❌

٤. يجب أن تكون الفأرة في مستوى أعلى من لوحة المفاتيح. ❌

ت. ما هي الأنواع المختلفة لمزودي خدمات الإنترنت؟

بدايةً، ما هو "مزود خدمة الإنترنت" (Internet Service Provider) - (ISP) ؟ إنه في جوهره شركة تبيع إمكانية الوصول إلى شبكة الإنترنت العالمية. وتتوزع هذه الشركات على ثلاث فئات مختلفة.

تتمثل الفئة الأولى في "الشركات التكتلية العملاقة" (The giant conglomerate companies) التي تمتلك البنية التحتية اللازمة للتعامل مع معظم حركة مرور "الشبكة" (Network) الخاصة بها (إن لم يكن كلها) بشكل مستقل.

تتمثل الفئة الثانية في "مقدمي الخدمات على مستوى البلاد" (The country-wide providers) ، الذين يستأجرون أحياناً حق الوصول إلى شبكات "الفئة الأولى" (Tier 1) ، لكنهم قادرون على العمل بشكل مستقل إلى حد كبير.

تتمثل الفئة الثالثة في "الشركات الصغيرة" (The small companies) التي تركز بشكل أساسي على توفير خدمات الإنترنت للأسواق المحلية، وتعتمد على "مزودي خدمات إنترنت أكبر حجماً" (larger ISPs) لتوفير "بنيتها التحتية" (infrastructure) .

ستوفر هذه "الجهات المزودة" (Providers) أنواعاً مختلفة من "الاتصالات" (Connections) أيضاً.

تعتمد "توصيلات الألياف الضوئية" (Fiber optic connections) على ألياف من "الزجاج أو البلاستيك" (glass or plastic) لنقل البيانات عبر "الضوء" (light) ، مما يتيح "سرعات اتصال عالية جداً" (very high connection speeds) و"معدلات مرتفعة لتبادل البيانات" (high data exchange) .

تستخدم "توصيلات الكابل" (Cable connections) البنية التحتية نفسها التي يعتمد عليها "مزودو خدمة التلفزيون عبر الكابل" (Cable television provider) ، مما يجعلها غالباً متاحة بسهولة في العديد من المناطق.

تستخدم اتصالات DSL البنية التحتية نفسها التي تعتمد عليها "خدمات الهاتف الأرضي" (landline phone services) . ونظراً لانتشار هذه البنية التحتية، تتوفر خدمة DSL في مناطق قد لا تتوفر فيها خدمات الكابل، إلا أنها غالباً ما تكون خياراً أبطأ.

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

تستخدم "اتصالات الأقمار الصناعية" (Satellite connections) مجموعة من الأقمار الصناعية التي تدور حول الأرض لربط أجهزة متنوعة في جميع أنحاء العالم. وأخيراً، وعلى غرار ذلك، يستخدم مزود خدمة الإنترنت المنزلي عبر شبكة الجيل الخامس (5G) البنية التحتية لأبراج الاتصالات الخلوية لإبقائك متصلاً بالإنترنت.

وهذا من شأنه أن يمنحك لمحة عامة وأساسية عن "أنواع مزودي خدمات الإنترنت واتصالات الإنترنت" (types of internet service providers and internet connections) المتاحة!

أسئلة :

أي مما يلي لا يُعد مستوىً من مستويات مزودي خدمة الإنترنت (ISP) ؟

١. شركات تكتلية عملاقة ذات بنية تحتية مستقلة Giant conglomerate companies with independent infrastructure . ❌

٢. مزوّدون يغطون أنحاء البلاد وقد يستأجرون حق الوصول إلى شبكات أكبر Country-wide providers that may rent access to larger networks . ❌

٣. شركات صغيرة تركز على الأسواق المحلية Small companies focusing on local markets . ❌

٤. منظمات دولية تشرف على الوصول إلى الإنترنت على مستوى العالم International organizations overseeing global internet access .


أي نوع من أنواع الاتصال بالإنترنت يستخدم أليافاً زجاجية أو بلاستيكية لنقل البيانات عبر الضوء؟

١. اتصال الكابل Cable connection . ❌

٢. اتصال (DSL) - DSL connection . ❌

٣. اتصال الألياف الضوئية Fiber optic connection .

٤. اتصال الأقمار الصناعية Satellite connection . ❌


ما هي إحدى خصائص اتصالات الإنترنت عبر الهاتف (Dial-up) ؟

١. تستخدم البنية التحتية نفسها التي يستخدمها "تلفزيون الكابل" (Cable television) . ❌

٢. تتطلب استخداماً حصرياً لخط الهاتف عند الاتصال.

٣. تستخدم مجموعة من "الأقمار الصناعية" (Satellites) التي تدور حول الأرض. ❌

٤. تُعد أسرع أنواع الاتصال بالإنترنت المتاحة. ❌

ث. ما هي الطرق الآمنة لتسجيل الدخول إلى جهاز الكمبيوتر الخاص بك؟

يستخدم الكثير منكم أجهزة الكمبيوتر منذ فترة، ولكن ربما لم تفكروا في أكثر الطرق أماناً أو حمايةً لتسجيل الدخول إلى أجهزتكم.

سواء كنت تستخدم جهاز Mac أو PC، فهناك طرق عديدة لتسجيل الدخول إلى جهاز الكمبيوتر الخاص بك بأمان.

أول شيء يجب عليك فعله هو التأكد من أن جهاز الكمبيوتر الخاص بك "محمي بكلمة مرور" (password-protected) .

بالنسبة لمستخدمي نظام Windows، ابدأ بفتح قائمة "ابدأ" (Start) واختيار "الإعدادات" (Settings). ومن هناك، انتقل إلى "الحسابات" (Accounts) ثم "خيارات تسجيل الدخول" (Sign-in options). وبعد ذلك، يمكنك تعيين كلمة مرور لجهاز الكمبيوتر الخاص بك.

ملاحظة: إذا واجهت أي صعوبات أو كنت تستخدم "إصداراً" (Version) مختلفاً من نظام التشغيل Windows، فيُرجى الرجوع إلى وثائق Microsoft الرسمية أو موارد الدعم للحصول على تعليمات مفصلة ومخصصة لإصدارك المحدد.

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

إن اختيار كلمة مرور سهلة، مثل 12345 أو كلمة password ، ليس فكرةً جيدة؛ فهذه الكلمات يسهل تخمينها واختراقها.

كذلك، تجنَّب استخدام كلمات مرور تعتمد على معلومات شخصية، مثل اسمك أو تاريخ ميلادك أو عنوانك؛ فهذه المعلومات يسهل على المخترقين تخمينها.

عند إنشاء كلمة المرور الخاصة بك، يُنصح أيضاً بإعداد "المصادقة الثنائية" (Two-Factor Authentication) - (2FA) ؛ إذ تعمل هذه الميزة كطبقة أمان إضافية وتتطلب وسيلة تحقق ثانية لضمان أن الشخص الذي يحاول الوصول إلى الحساب هو بالفعل المستخدم المصرّح له بذلك.

إذا كنت من مستخدمي أجهزة Mac، يمكنك النقر على قائمة Apple ثم الانتقال إلى "إعدادات النظام" (System Settings). ومن هناك، يمكنك الانتقال إلى "المستخدمون والمجموعات" (Users & Groups) وتعيين كلمة مرور لجهاز الكمبيوتر الخاص بك.

تأتي بعض أجهزة كمبيوتر Mac مزودة بميزة Touch ID، التي تُعتبر غالباً أكثر أماناً من كلمات المرور العادية؛ إذ تتيح لك هذه الميزة تسجيل الدخول إلى جهازك باستخدام "بصمة إصبعك" (fingerprint) .

بالنسبة لمستخدمي نظام Windows، توفر ميزة Windows Hello وسيلة أكثر أماناً لتسجيل الدخول؛ إذ تعتمد على تقنيات القياسات الحيوية "البيومترية" (Biometric) - مثل "التعرف على الوجه" (facial recognition) أو "بصمات الأصابع" (fingerprints) - للتحقق من الهوية، مما يمثل بديلاً لكلمات المرور التقليدية.

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

أسئلة :

أي مما يلي يُعتبر "كلمة مرور غير آمنة" (unsafe password) ؟

١. @dlkj(2***1

٢. 12345

٣. #sj1--

٤. 7!9@2


لماذا يُعد "المصادقة الثنائية" (Two-Factor Authentication) - (2FA) أمراً مهماً؟

١. يخزن كلمات المرور الخاصة بك بشكل آمن. ❌

٢. يُصلح كلمات المرور المعطلة تلقائياً. ❌

٣. يضمن عدم إمكانية اختراق حساباتك. ❌

٤. يتحقق من أن الشخص الذي يحاول الوصول إلى الحساب هو المستخدم المصرح له.


ما هي استخدامات ميزات مثل Touch ID وWindows Hello ؟

١. لإنشاء كلمات مرور لك تلقائياً. ❌

٢. لتخزين كلمات مرورك بشكل آمن. ❌

٣. لتسجيل الدخول إلى جهاز الكمبيوتر الخاص بك باستخدام "بصمة الإصبع" (fingerprint) أو "التعرف على الوجه" (facial recognition) .

٤. لضمان عدم تعرض حساباتك للاختراق. ❌

ج. ما هي الأنواع المختلفة للأدوات التي يستخدمها المطورون المحترفون؟

يعتمد "المطورون المحترفون" (Professional developers) على مجموعة متنوعة من "الأدوات" (tools) لزيادة الإنتاجية وتحسين "جودة الكود البرمجي" (code quality) . دعونا نتعرف على هذه الأدوات، بما في ذلك تلك التي تبدو "بديهية للغاية" (very obvious) .

الأداة الأولى هي الحاسوب نفسه؛ إذ يُعد الحاسوب "بيئة التطوير الأساسية" (The primary development environment) ، سواء كان "جهازاً مكتبياً ثقيلاً" (heavy Desktop) أو "حاسوباً محمولاً" (portable Laptop) ، ويعمل بأحد أنظمة التشغيل: Windows أو macOS أو Linux.

غالباً ما يختار المطورون المحترفون أجهزة كمبيوتر تتمتع بـ"قدرة معالجة عالية" (fast processing power) و"ذاكرة وصول عشوائي" (RAM) كبيرة للتعامل مع المهام التي تتطلب موارد مكثفة.

يُستخدم "البرنامج" (Program) لكتابة الكود وتعديله مباشرةً على جهاز الكمبيوتر؛ ويُعرف هذا البرنامج باسم "محرر الكود" (Code Editor) أو "بيئة التطوير المتكاملة" (Integrated Development Environment) - (IDE) .

توفر بيئات التطوير المتكاملة (IDEs) - مثل Visual Studio وIntelliJ IDEA وPyCharm - ميزات قوية، مثل الإكمال التلقائي للكود، وتصحيح الأخطاء، ودعم "الطرفية" (Terminal) المدمجة.

يُعد Visual Studio Code (VS Code) في جوهره محرر أكواد برمجية، ولكنه يوفر أيضاً هذه الوظائف بفضل "مكتبة الإضافات الغنية" (rich extension library) التي يمتلكها.

من محررات الأكواد الأخرى Sublime Text و Notepad++ .

عند كتابة الكود البرمجي باستخدام "محررات الأكواد" (code editors) و"بيئات التطوير المتكاملة" (IDEs)، تحتاج إلى تتبع التغييرات التي تجريها على ذلك الكود؛ والأداة التي تتيح لك تتبع هذه التغييرات هي "نظام التحكم في الإصدارات" (Version Control System) .

يُعد Git "نظام التحكم في الإصدارات" (version control system) الأكثر استخداماً في مجتمع التطوير.

توفر منصات مثل GitHub و GitLab و Bitbucket "خدمات استضافة سحابية" (cloud-based hosting services) لمستودعات Git الخاصة بك؛ إذ تتيح هذه المنصات التعاون مع مطورين آخرين، والعمل على فروع متعددة، وتسهيل دمج التغييرات في الكود البرمجي.

تُعد "مديرات الحزم" (Package managers) أداةً حيويةً أخرى؛ فهي تساعد المطورين على تبسيط عمليات إضافة "المكتبات" (libraries) و"تبعيات المشروع" (project dependencies) وتحديثها وإزالتها.

من الأمثلة على "مديري الحزم الشائعين" (popular package managers) :

  • npm و Yarn و pnpm لِـ لغة JavaScript

  • pip لِـ لغة Python

  • Composer لِـ لغة PHP

  • Maven لِـ لغة Java

بعد كتابة الكود باستخدام أدوات مختلفة، "يختبر" (test) المطورون ذلك الكود للتأكد من أنه يعمل كما هو متوقع.

ولهذا الغرض، يستخدم المطورون "أطر عمل للاختبار" (testing frameworks) مثل Cypress و Playwright و Selenium وغيرها. كما توجد أطر عمل للاختبار خاصة بلغات برمجة محددة، ومن الأمثلة عليها:

  • Jest لِـ لغة JavaScript

  • pytest لِـ لغة Python

  • JUnit لِـ لغة Java

  • PHPUnit لِـ لغة PHP

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

توفر المتصفحات الحديثة - مثل Chrome و Firefox و Edge و Safari - أدوات للمطورين تتيح فحص أكواد HTML و CSS و JavaScript، كما تتوفر أيضاً أدوات لـ"تصحيح الأخطاء" (debugging) و"تحليل الأداء" (performance profiling) .

تساعد هذه الأدوات المطورين على اختبار تطبيقات الويب وتحسين أدائها عبر مختلف المتصفحات لصالح المستخدمين النهائيين.

أسئلة :

لماذا يختار المطورون أجهزة كمبيوتر ذات "قدرة معالجة عالية السرعة" (fast processing power) ؟

١. لمشاهدة الحاسوب يتولى إنجاز كافة المهام نيابةً عنهم. ❌

٢. للتعامل مع المهام التي تتطلب موارد كبيرة.

٣. لتشغيل الألعاب المتطورة (عالية الأداء). ❌

٤. لمشاهدة الأفلام دون أي تقطيع أو خلل. ❌


ما الذي يوفر للمطورين ميزات الإكمال التلقائي للكود، و"تصحيح الأخطاء" (debugging) ، و"الطرفية المدمجة" (integrated terminal) ؟

١. محررات الأكواد (Code editors) وبيئات التطوير المتكاملة (IDEs) .

٢. أطر عمل الاختبار Testing frameworks . ❌

٣. مديرو الحزم Package managers . ❌

٤. Git . ❌


ما هي الأدوات التي تساعد المطورين على "اختبار" (test) الكود البرمجي الخاص بهم لضمان عمله كما هو مقصود؟

١. محررات الأكواد (Code editors) وبيئات التطوير المتكاملة (IDEs) . ❌

٢. أنظمة التشغيل Operating systems . ❌

٣. أنظمة التحكم في الإصدارات Version control systems . ❌

٤. أطر عمل الاختبار Testing frameworks .