[Top bar]
[Bottom bar]
[an error occurred while processing this directive]
[Photo of the Author]
المؤلف كاتيا سوشر

نبذة عن الكاتب:

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


المحتويات:

 

استعراض كتاب: برمجة لينكس للمبتدئين - الطبعة الثانية

[tuxreading]

نبذة مختصرة:

تجد في هذا المقال استعراضا لكتاب:
برمجة لينكس للمبتدئين - الطبعة الثانية
تأليف ريتشارد ستونس ونيل ماثيو
وتنشره شركة روكس برس



 

الكتاب

هذا الكتاب يعرف مبرمجي لغة سي ببيئة البرمجة في لينكس وهو يغطي المبادىء والأفكار التي تقدمها بيئة لينكس للمبرمجين. وهو أيضا يقدم المبرمجين الى العديد من أدوات البرمجة الموجودة مثل Perl و TK و GTK+.

[Book cover]

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

يرشد المؤلفان الى كيفية الاستفادة القصوى من أدوات البرمجة والمواضع التي يمكن ان تكون فيها الأداة مفيدة قدر الإمكان.

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

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

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

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

 

نظرة سريعة

يبدأ الكتاب بشرح فلسفة البرمجة واستخدام لغة سي الأساسية في لينكس. ثم تبدأ البرمجة العملية بشرح مفصل لبرمجة النظام عن طريق مايسمى بالشل (shell programming).

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

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

الفصل الخامس يتكلم عن الوحدة الطرفية (Terminal) وعن العمليات التي يمكن بها التحكم فيها. بعد ذلك يتم استعراض مكتبة كرسس (curses) التي تسهل عملية بناء برامج ذات واجهة رسومية على الوحدة الطرفية.

الفصل السابع يتكلم عن التحكم في الذاكرة ومشاركة الملفات وايضا يتكلم عن ادارة البيانات عن طريق مكتبة دي بي ام (dbm)

الفصل الثامن يستعرض الأدوات التي تساعد المبرمج في عمله. يبدأ أولا شرح برنامج make الذي يدير عملية بناء البرامج التي قد تحتوي على أكثر من ملف مصدري وكذلك يدير عمليات أخرى مثل تثبيت البرامج. ثم يتم استعراض عملية تنظيم ملفات البرامج عن طريق برنامجي RCS و CVS. وأخيرا يتم شرح برامج tar و gzip و patch التي تستخدم لنشر وترقية البرامج.

الفصل التاسع يتحدث عن اكتشاف واصلاح الأخطاء في البرامج.بعد عرض الطرق العامة لاصلاح الأخطاء يتم تقديم برنامج gdb. وأيضا يتم شرح أداتي التحليل cflow و lclient. وأخيرا تتم تغطية برنامجي Electric fence و Checker الذين يستخدمان لمنع التسرب في الذاكرة.

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

الفصل الحادي عشر يتناول عملية تقسيم البرنامج الواحد الى عدة وحدات تعمل كلها في نفس الوقت. في البداية يتم تحديد الفرق بين هذه الوحدات والوحدات البرمجية العادية ثم يتم شرح بعض النظريات التي تستخدم لمثل هذا الغرض.

الفصل التالي يتكلم عن اتصال البرامج بعضها ببعض لتبادل المعلومات فيما بينها. يتم هنا شرح مايسمى بالأنابيب العادية المسماة والأنابيب الغير مسماة (Normal unnmaed pipes and named pipes (FIFOs)).

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

والقسم الأخير من الفصل يتحدث عن البرمجة للشبكات.

في الفصل الخامس العشر تجد تغطية للغة البرمجة تكل Tcl التي تستخدم على نطاق واسع في لينكس.

هذه اللغة تجعل بناء برامج ذات واجهة رسومية أمرا سهلا للغاية. بعد شرح مبسط لعمل نظام اكس ويندو تتعلم عن أداة تيكي (Tk) اللتي توفر عدة عناصر لبناء الواجهات الرسومية. وتجد مع الشرح الكثير من الأمثلة العملية المفيدة.

القسم التالي يغطي أساسيات برمجة واجهة جنوم. يتم أثناء الشرح بناء برنامج توضيحي: ساعة جنوم التقليدية.

الفصل السادس عشر يتناول باختصار لغة البرمجة برل.

تجد في الفصلين التاسع عشر والعشرين تعليما لأساسيات البرمجة للانترنت. الفصل التاسع عشر يتكلم عن بناء صفحات الوب العادية بالهتمل بينما يخصص الفصل العشرون لشرح بناء برامج السي جس اي (CGI) باستخدام لغتي سي وبرل.

الفصل الأخير يشرح عملية بناء محركات الأجهزة (device drivers) مثل الماوس وغيرها, وأيضا يبين كيفية اكتشاف واصلاح الأخطاء في هذه البرامج.

اذا كنت مشرفا أو مبرمجا ومحبا حقيقيا لنظام لينكس فبالتأكيد سوف تحب هذا الكتاب.

 

تعقيبك على هذا المقال

كل مقال له ساحة نقاش خاصة. يمكنك هنا اضافة تعليقك على المقال أو قراءة التعليقات الأخرى.
 talkback page 

الصفحات تحت رعاية الفريق الفني للينكس فوكاس
© كاتيا سوشر, FDL
LinuxFocus.org

اضغط هنا للتنبيه عن خطأ أو ارسال ملاحظاتك الى لينكس فوكاس

2001-04-19, generated by lfparser version 2.11