الطريقة المثلى للمبتدئين لـ C ++ / Qt

كثيرا ما يسأل المبرمجون المبتدئون سؤالا - ما المواد التي يجب قراءتها لتحسين مستواهم المهني؟ في هذا الشكل الأكثر عمومية ، من المستحيل الإجابة على هذا السؤال. يعتمد ذلك على معرفة ومهارات الشخص الحالية ، وعلى تخصصه ، على المهام التي ستنشأ أمامه في المستقبل. ومع ذلك ، سأحاول الإجابة عن هذا السؤال من أجل اتجاه البرمجة الذي أكون على دراية به - إنشاء تطبيقات سطح مكتب معقدة عبر الأنظمة الأساسية. تطبيقات المستوى والفئة فوتوشوب ، VisualStudio ، MS Word. مثل هذه التطبيقات ، التي ، من وجهة نظر المبرمج ، هناك مهام أكثر تنوعًا:

  • تقديم واجهة المستخدم الرسومية "المكتبية" الكلاسيكية مثل الأزرار وأشرطة التقدم والأدوات والحركات.
  • تقديم أي رسومات غير قياسية مثل نقل الرسومات باستمرار من ملايين النقاط.
  • العمل مع قواعد البيانات
  • التواصل
  • العمل مع سجل نظام التشغيل
  • العمل مع الطابعة
  • تنفيذ سريع (متوازي) لمهام الحوسبة المعقدة.
  • والعديد من الآخرين.

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

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

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

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

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

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

لذا ، فلنبدأ قائمة الكتب. إجمالي حجمها 5150 صفحة. إن أمكن ، سأعلق على سبب أوصي بهذا الكتاب بالذات وليس كتابًا آخر ، أو أقترح بدائل.

  1. ++ 600 . , « , C++: ». 800 . « : ++». , , . , – ! ! , . 2 – , . ( ), . , , , double . , , ! , . , 800 . . – ? , , , ++ (++11, ++14, ++17, ++20), – . , , , .

    , ? C++ . , . (, ), « » , , «». ! , – .
  2. « . C++. 55 ». 300 . , : « C++. 50 », « C++. 35 », « ++. 35 ». – , «55 ». , . , , , . . , – .
  3. «Qt 5.10. ++. . ». 1072 . – «Qt 4. GUI C++. , ». , , : , – , ( ). , GUI-, 5 000-30 000 . - — .

    2 3 , , – , .
  4. « : ++. ». 263 . ++, , . .
  5. « . . ». 350 . – , , , . , . – . , , - . , , .
  6. . 3 , -. , , . , . , , « » .

    , ! « , ». 406 . 6. , ( pdf), . , « »: «, , : - . ». . « », ; ; SmallTalk, « »; pdf, , , ( – , !)

    , «, , : ». , – Java ++.
  7. «. . , .». 720 . , – GUI, – . – «: , ». , 2005, 2018.
  8. « , . Git ». 493 . , , Git, , . , , Git, . , , Git. . , . Git, . , , . , , , Git , .
  9. ! . – . , . , , . , . .

    , « , : ++». 323 . , – . , , . , , . C++17, C++14, C++11. , , . , , ! , .

    – « : ++ . ». . (, ) . , , - .
  10. « , . . , ». 432 . , ( ) , , , . - . – « . . ., ». , , , «» .

هذا كل شئ! مبتدئين ، اذهبوا إليها!

أخيرًا ، يمكنك النظر إلى الماضي والسؤال - لماذا لا يوجد مؤلفون مشهورون مثل McConnell و Larman و Butch و Fowler وغيرهم في قائمة الكتب؟ فقط لأنني لم أعتبر دراسة كتب هؤلاء المؤلفين أفضل طريقة لتطوير مبتدئ في عالم C ++ / Qt. وهكذا تم إصدار 10 كتب بحجم إجمالي يبلغ 5150 صفحة ، ولإضافة كتب غير ناجحة ، بدا لي مبالغة.

All Articles