JavaRush /مدونة جافا /Random-AR /أفضل 10 كتب برمجة للمبتدئين
Max Stern
مستوى
Нижний Новгород

أفضل 10 كتب برمجة للمبتدئين

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

تحسين الكود والإنتاجية

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

مبرمج براغماتي. "الرجل المسافر إلى المعلم" (أندرو هانت، ديفيد توماس)

العنوان الأصلي: المبرمج البرنامجي من From Journeyman to Master بقلم أندرو هانت وديفيد توماس أفضل 10 كتب في البرمجة للمبتدئين - 2إذا لم تكن قد قرأت هذا الكتاب، فمن المرجح أنك صادفت اقتباسات منه مرارًا وتكرارًا في المنتديات والموارد المتخصصة. إن صورة المبرمج البراغماتي في هذا الكتاب واضحة جدًا ومثالية لدرجة أنه يمكن للمرء أن يطلق عليه اسم رومانسي، بغض النظر عن مدى التناقض الذي قد يبدو عليه الأمر. ومع ذلك فإن النصائح الواردة في الكتاب عملية وذات صلة، على الرغم من تقدمها في السن. لا أعرف بماذا أقارن "المبرمج البراغماتي" في عالم كتب البرمجة. أقرب نظائرها من هذا العالم هي "العهد القديم" أو بعض كتب الطبخ الرائعة. في "البراغماتية" كل شيء محدد للغاية وقابل للتطبيق إلى أقصى حد في الممارسة. في بعض الأحيان يصل الأمر إلى حد التفاهة (على سبيل المثال، يحتوي القسم الخاص بالتواصل الفعال على القواعد الأساسية لآداب الأعمال)، ولكن في بعض الأحيان لا يمكن الاستغناء عن نصيحة الكتاب، خاصة إذا لم يكن لدى المطور المبتدئ معلم صبور ويقظ. هذه نصائح حول إمكانية تكرار التعليمات البرمجية والنماذج الأولية والتقدير. أو تذكير باستحالة إنشاء برنامج مثالي. هناك أيضًا نقاط فنية مفيدة تتعلق، على سبيل المثال، بتصحيح الأخطاء البرمجية أو اختبار الوحدة أو سرعة الخوارزميات... باختصار، ما تحتاجه للتحضير للعمل كمبرمج.

إعادة هيكلة تحسين التعليمات البرمجية الموجودة (مارتن فاولر)

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

الكود النظيف (روبرت مارتن)

العنوان الأصلي Clean Code: A Handbook of Agile Software Craftsmanship بقلم روبرت سي مارتن. أفضل 10 كتب في البرمجة للمبتدئين - 4هذا الكتاب، على الرغم من أنه أحدث من الكتاب السابق، أصبح أيضًا أحد الكتب الكلاسيكية عن البرمجة. "العم بوب"، كما يطلق على روبرت مارتن أحيانًا في مجتمع البرمجة العالمي، هو أحد مؤلفي بيان Agile، بالإضافة إلى بعض مبادئ البرمجة الحديثة "الخالصة"، على سبيل المثال، SOLID. يمكن اعتبار أحد الأفكار المهيمنة في الكتاب... التعاطف أو مجرد الموقف الجيد تجاه كل من سيتعين عليه العمل مع الكود الخاص بك (بما في ذلك أنت في المستقبل). تعتمد معظم قواعد "الكود النظيف" على هذا المبدأ البسيط والحس السليم. تبدو معظم القواعد والنصائح صحيحة للغاية، من النوع الذي يدور في رأسك بشكل حدسي، ولكن ليس من السهل صياغتها بوضوح. ومع ذلك، يمكن للمرء أن يجادل مع بعض أفكار المؤلف: فهو في بعض الأحيان قاطع للغاية. على سبيل المثال، يكتب أن الكود الجيد لا يحتاج إلى تعليق. ومع ذلك، الكتاب يجب أن يقرأ.

العمل بفعالية مع الكود القديم (مايكل فيذرز)

العنوان الأصلي العمل بفعالية مع Legacy Code بقلم مايكل فيذرز أفضل 10 كتب في البرمجة للمبتدئين - 5الحياة لم تعدك لهذا... لا، حقًا: إذا كنت تتعلم فقط، فلا يمكنك أن تتخيل مدى الألم الذي تشعر به عند العمل مع قواعد الأكواد القديمة، والتي ربما كتبها جد بيل جيتس. غالبًا ما تتم كتابة هذا الرمز بشكل مختلف تمامًا عما اعتدت عليه، ويتم توثيقه بشكل سيئ للغاية لدرجة أنك أحيانًا ترغب في العثور على مؤلفه و... للأسف: غالبًا ما ترتبط حياة مبرمج Java في المشاريع الكبيرة بالدعم القديم. يمكن أن يساعدك هذا الكتاب في الجوانب الفنية للعمل مع الكود القديم، ولكنه يمكن أن يساعدك أيضًا على التصالح مع مصيرك. ونعم، أنا جاد. سيكون هذا الكتاب مفيدًا لك إذا كنت تضع أنظارك على شركة الاستعانة بمصادر خارجية أو شركة منتجات ذات مشاريع كبيرة.

الرأس أولاً. أنماط التصميم (إيريك فريمان، بيرت بيتس، كاثي سييرا، إليزابيث روبسون)

العنوان الأصلي أنماط تصميم الرأس الأول: دليل صديق للدماغ بقلم إريك فريمان، بيرت بيتس، كاثي سييرا، إليزابيث روبسون أفضل 10 كتب في البرمجة للمبتدئين - 6أنماط التصميم هي تلك القواعد المنطقية ذات الشكل الجيد التي، إذا لم تدرسها مع مرور الوقت، سوف تتبادر إلى ذهنك ( أم لا...) والتي تتحول حرفيًا إلى قوة خارقة للمبرمج المبتدئ إذا بدأت في النظر إليها في أقرب وقت ممكن. نعم، من المفيد في البداية تجربة مشروع شخصي معقد نسبيًا ومحاولة تقسيمه إلى مهام فرعية بنفسك... وفي النهاية تجد نفس النمط. ومع ذلك، عندما يتعلق الأمر بالعمل، لا يوجد دائمًا ما يكفي من الوقت لإجراء التجارب. عندما حصلت على التدريب، كنت أعرف القليل جدًا عن الأنماط: أثناء دراستي في JavaRush، تخطيت ببساطة كل هذه المصانع، والمفردات، والحقن، والتبعيات، معتقدًا أنني سأكتشفها عند الحاجة. ومع ذلك، كان من الضروري معرفة ذلك بسرعة كبيرة، وكان كتاب "الرأس أولاً". "أنماط التصميم" ساعدتني في هذا. إنه مكتوب بسهولة ومليء بالرسوم التوضيحية والفكاهة... أعتقد أن العرض التقديمي لموضوع "أنماط التصميم" مهم جدًا: يمكن تقديمه بطريقة مملة للغاية، أو يمكن تقديمه كما في Head First. إضافة رائعة إلى "الرمز النظيف" و/أو "إعادة البناء"!

هندسة الكمبيوتر وعلوم الكمبيوتر العامة

ما مدى أهمية فهم مبرمج المستقبل لهندسة الكمبيوتر، ومعرفة كيفية بناء أنظمة التشغيل، وكيفية بناء قواعد البيانات؟ ليست حقيقة أن هذه المعرفة ستكون مفيدة لك في عملك. لكنهم سيساعدونك بالتأكيد على إظهار شغفك بمجال تكنولوجيا المعلومات ومعرفة تكنولوجيا المعلومات. والأهم من ذلك: إذا كنت تعرف كيف يعمل كل شيء، فسوف يساعدك ذلك على حل المشكلات بشكل أفضل. المعلومات 100%. إذن إليك كتابين آخرين لمساعدتك.

كود (تشارلز بيتزولد)

العنوان الأصلي Code: The Hidden Language of Computer Hardware and Software بقلم Charles Petzold أفضل 10 كتب في البرمجة للمبتدئين - 7شهدت الطبعة الأولى من "Code" العالم في أوائل العقد الأول من القرن الحادي والعشرين، ولكن في الواقع كان من الممكن أن تظهر مبكرًا أو لاحقًا - وكانت ستظل ذات صلة. والحقيقة هي أنه في هذا الكتاب يتم شرح تشغيل الكمبيوتر بمستوى منخفض للغاية، بدءًا من كيفية عمل تلك الأصفار والواحدات، والمثال التقني الأول هو دائرة المصباح اليدوي، والتي يمكن اعتبارها أبسط دائرة كمبيوتر بت... لا، لا تعتقد أن كل شيء في الكتاب بدائي جدًا. في الواقع، العكس تمامًا... فهو يصف دوائر أجهزة الكمبيوتر، مع الأوامر وتشغيل الذاكرة وأنظمة التشغيل في جوهرها. ربما بعد قراءته فهمت كيفية عمل أجهزة الكمبيوتر. على الرغم من أن بنية المعالج ومجموعة التعليمات الخاصة به تتغير، ويزداد عرض النطاق الترددي للذاكرة، إلا أن أجهزة الكمبيوتر تعمل بنفس الطريقة تمامًا. هل يحتاج مبرمج جافا إلى هذه المعرفة؟ قلة قليلة من الناس سوف يحتاجون إليها مباشرة في عملهم. لكن بشكل غير مباشر، كثيرًا ما ساعدتني في عملي حقيقة أنني فهمت كيف يعمل كل شيء فعليًا.

مقدمة في علوم الكمبيوتر (جلين بروكشاير، دينيس بريلوف)

العنوان الأصلي Computer Science: An Overview بقلم Glen Brookshear وDennis Brylow أفضل 10 كتب في البرمجة للمبتدئين - 8جاء هذا الكتاب لي عندما كنت في الجامعة، عندما كنت أدرس أساسيات علوم الكمبيوتر. فقط وصلتني ترجمة الطبعة السادسة، وحاليا الطبعة الثالثة عشر هي الحالية. الكتاب عبارة عن دورة أساسية في علوم الكمبيوتر يتم تدريسها في جامعات الولايات المتحدة ودول أخرى لسنوات عديدة. تغطية المواد فيه واسعة جدًا: هندسة الآلة، وأنظمة الأرقام، ومعالجة البيانات، وأنظمة التشغيل، ومبادئ بناء قواعد البيانات، وهياكل البيانات، وهياكل الملفات، وما إلى ذلك. ليست كل أقسام الكتاب مكتوبة بشكل جيد على قدم المساواة. على سبيل المثال، كنت في حيرة من أمري من الأقسام المتعلقة بطرق التصميم وقواعد البيانات، لكن الأقسام المتعلقة بأنظمة الأرقام وحسابات البت وهندسة الكمبيوتر وهياكل البيانات كان لها صدى حقيقي بالنسبة لي. أروع ما في الكتاب هو العدد الهائل من التمارين بالمفاتيح. بالإضافة إلى الطلاب، ربما يكون مثل هذا الكتاب مطلوبًا في المقام الأول من قبل الأشخاص العصاميين دون التعليم الفني من أجل سد الثغرات والحصول على فكرة عن علوم الكمبيوتر بشكل عام.

الخوارزميات وهياكل البيانات. وهجوم آخر!

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

نحن نهز الخوارزميات. دليل مصور للمبرمجين وAditya Bhargava الفضولي

العنوان الأصلي: خوارزميات Grokking: دليل مصور للمبرمجين وغيرهم من الأشخاص الفضوليين بقلم Aditya Y. Bhargava أفضل 10 كتب في البرمجة للمبتدئين - 9كتب المؤلف نفسه في بداية الكتاب أن الخوارزميات لم تأت إليه على الفور، وحاول كتابة "خوارزميات Grokking" لذا أنه سيكون من السهل القراءة. إنه مصمم للمبرمجين المبتدئين، أي أولئك الذين يمكنهم كتابة "hello, World" ومعرفة ما هي int وstring وloop وفرع ومصفوفة. حسنًا، يمكنه عرض المصفوفة على الشاشة. المعرفة المطلوبة بالرياضيات تكون تقريبًا في مستوى 6-7 الصفوف الثانوية دون أي زخرفة. وهذه هي أول إضافة جدية للكتاب. ولا يحاول أن يتخيل القارئ كطالب رياضيات، كما تفعل العديد من المنشورات حول هذا الموضوع. أي إذا كنت خائفًا من الرياضيات والخوارزميات، وحاولت بالفعل تعلم الأخيرة ولم تفهم شيئًا، فهذا الكتاب مثالي لإعادة تأهيلك في نظرك. النقطة الإيجابية الثانية هي أن الكتاب يناقش شيئًا قد يكون مفيدًا في الممارسة العملية (فهم هذا صحيح بالتأكيد). يبدأ بشرح جوهر البحث الثنائي والكفاءة - حرفيًا على الأصابع ومع العديد من الصور. ثالثا، يحتوي الكتاب على الكثير من الأسئلة والتمارين (أمثلة التعليمات البرمجية موجودة في بايثون، لكن هذا ليس مهمًا جدًا). نقطة قد تكون إيجابية للبعض، وسلبية للبعض الآخر: الكتاب لا يدعي أنه كتاب مرجعي شامل. لنفترض أنه من بين الخوارزميات المقبولة عمومًا للدراسة، لا يوجد سوى خوارزميتين فقط هنا - خوارزمية إدراج غير فعالة وخوارزمية فرز سريع فعالة. لا أعرف لماذا لا يفكر المؤلف في خوارزميات أخرى، مثل الفقاعة أو الدمج. في الواقع، تم ذكر خوارزمية الدمج في الكتاب، ولكن باختصار، دون تحليل، وفقط بالمقارنة مع الفرز السريع. مع المواضيع الأخرى، كل شيء هو نفسه تماما. هناك أساسيات تمت تغطيتها بشكل جيد للغاية، ولكن في بعض الأحيان تريد حقًا استمرارًا أكثر تعمقًا، ولكن ببساطة لا يوجد واحد. باختصار، لدينا كتاب أساسي للغاية، وبعد ذلك، على الأرجح، سوف ترغب في العثور على كتاب يتم فيه وصف كل شيء بجدية أكبر. على سبيل المثال، ما يلي.

الخوارزميات في جافا (روبرت سيدجويك، كيفن واين)

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

تعرف على الإطار الخاص بك

وأخيرا، كتاب آخر. ومرة أخرى - مفيد.

الربيع في العمل (جدران كريج)

العنوان الأصلي: Spring in Action بقلم Craig Walls أفضل 10 كتب برمجة للمبتدئين - 11كتاب مشهور جدًا بغلاف مشهور بنفس القدر مع "رجل يرتدي تنورة" لا يرتدي تنورة في الواقع. بصراحة، يعد تعلم الربيع من كتاب واحد فقط مهمة صعبة للغاية، حتى لو حاولت تجربة كل شيء عمليًا مرة واحدة. بالمناسبة، لفهم كيفية القيام بذلك بعد قراءة هذا الفصل أو ذاك، قد يكون من الصعب للغاية. لقد عملت مع هذا الكتاب عندما حصلت على تدريب في إحدى الشركات، وعندما استخدمه بهذه الطريقة، فإنه يساعدني كثيرًا. علاوة على ذلك، حتى اليوم، أعمل بالفعل كمبرمج، وأعود إليه باستمرار. باختصار، يمكنك الحصول على فكرة عامة عن إطار عمل Java الرئيسي بمساعدته.
تعليقات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION