يختلف عالم C ++ الحديث تمامًا عما اعتدنا عليه خلال C ++ 98. شخص ما معجب بذلك ، شخص ما يضايقه ، لكن الحقيقة باقية. فيما يلي بعض الموضوعات التي تثير عقول المطورين اليوم:
- الميزات الحديثة والجديدة للغة C ++
- البرمجة الوظيفية
- metaprogramming
- تعدد مؤشرات الترابط ، التزامن ، عدم التزامن ، الكل
- كيف تعيش مع الأدوات الموجودة
في أقل من شهر ، سيكون هناك مؤتمر يحاول الإجابة على هذه الأسئلة: C ++ Russia 2019. لنلقِ نظرة سريعة على كيفية عمله.

الميزات الحديثة والجديدة للغة C ++
هنا كنا محظوظين للغاية في عدة اتجاهات في وقت واحد. أولاً ، تتحسن C ++ بنشاط ، وتستمر مجموعة الأدوات المهمة والمفيدة في النمو. ليست كل اللغات محظوظة جدًا - على سبيل المثال ، في Java 12 التي تم إصدارها مؤخرًا ، لم تكن هناك ميزة جاهزة للإنتاج واحدة للغة أو تغيير كبير في المكتبات.
من ناحية أخرى ، هل لدى كل شخص صورة واضحة عن الصورة العامة لجميع التحسينات في C ++؟ هل أنت متأكد من أنك تستخدم الأدوات الخاصة بك بشكل صحيح ، وهذا لن يدور في المستقبل؟
وبعد ذلك اتضح أنه في مؤتمرنا ، فإن كلا الأساسين (التقارير الافتتاحية والختامية) من أشخاص شاركوا في اللجنة لسنوات. لديهم مثل هذه الوظيفة - أن تضع في اعتبارك صورة لكل شيء. بالإضافة إلى التقارير الممتازة ، يمكنك أيضًا التحدث إليهم في منطقة المناقشة.
الأول هو أنطون Polukhin مع قصة حول المناطق التي يعتبر C ++ لا غنى عنها ، والأشياء الإضافية التي سيكون من الجميل أن يكون في C ++. معه نشرنا مؤخرًا مقابلة مع حبري . بشكل عام ، تم بالفعل مناقشة موضوع مشاركة الروس في اللجنة على نطاق واسع حول هابري وفي كل مكان (انظر ، حتى كتب ياندكس موضوعًا عن ذلك في VK). يمكنك الذهاب إلى stdcpp.ru ومشاهدة قائمة الممثلين ، والآن هي: أنتون Polukhin ، أنتون Bikineev وألكسندر فوكين.
العضو الثاني هو نيكولاي خوسوتيس. وهو مؤلف الكتب ذاتها C ++ Standard Library و C ++ Templates وعضو لجنة التقييس منذ ما يقرب من عشرين عامًا. من المحتمل أن يكون تقريره أحد أكثر المواضيع موضوعًا حول موضوع "المستقبل والحديث": "C ++ 17 - أكبر الفخاخ" يهدف إلى التحدث عن المشكلات الكامنة وراء العمارة ، على من يقع اللوم وماذا تفعل.
البرمجة الوظيفية
الموضوع التالي الذي يحرق منه جزء من المجتمع هو FP. على حبري ، يتم تمثيل هذا الموضوع على نطاق واسع.
لا يعتقد الجميع في المجتمع أن اللعبة تستحق كل هذا العناء. لم يتم حرق النيران بعد حول أداء تصحيح النطاقات والمقالة التي كتبها آراس برانكيفيتشوس . ما زال الكثيرون يتساءلون عن ماهية الأحاديات ولماذا يحتاجون إليها ويتطلبون مقالات تحتوي على صور حية . شخص ما بالفعل شحذ خنجر وتذمر "حولت بلدي C ++ رائعة إلى نوع من هاسكل."
واحدة من أهم المشاكل مع AF هو أنه لا يوجد الكثير من المتخصصين في ذلك. الجميع يحب أن يدرسها ، ولكن لتطبيقها حقًا ، هناك مشاكل في ذلك. هناك عدم ملاءمة كاملة عندما يعتقد شخص بإخلاص أنه يفهم اللغة الإنجليزية ، ولكن لا يمكنه كتابة Hello World معها. هناك كل أنواع التطرف عندما يعتبر شخص على دراية بوجود لامبدا نفسه على الفور ملك البرمجة الوظيفية. أو بالعكس - قبل كتابة Halloworld ، تمت إزالته إلى الكهف من خلال حفظ "الفئات لعالم الرياضيات العامل" وجميع كتب وأدلة أوكاساكي من بداية الوقت.
من فضلك لا تتبع الروابط لقراءة هذه الكتب. تحتاج أولاً إلى قراءة هذا المنشور والذهاب إلى المؤتمر.
لذا ، تحتاج الصناعة إلى شخص ما على دراية بلغة C ++ في PHP ، ولدينا هذا. في البداية ، يمكنك التعرف على مقابلة جيدة مع إيفان تشوكيتش وألكساندر جرانين. ونعم ، سيكون كلاهما في روسيا C ++.
سيتحدث ألكساندر عن المحللون الأحاديون . سوف يتحدث إيفان عن "تصميم Move + C ++ فقط" وسيعقد واحدًا من ثلاثة تدريبات كبيرة - "البرمجة الوظيفية التطبيقية في C ++" .
وهناك "وظائف عالية المستوى و function_ref" من فيتوريو روميو من بلومبرج و "هياكل البيانات غير القابلة للتغيير بعد العصر الحديث" من جوان بيدرو بوليفار بوينتي. ما هو ما بعد الحداثة؟ لكن تعال واكتشف.
Metaprogramming و FP يسيران جنبًا إلى جنب ، ولكن الوضع معاكس تمامًا. إذا كنا في FP ندرس كيفية تطبيق هذا في الممارسة العملية ، ثم في البرمجة الوصفية تم إنشاء قدر كبير من المعلومات العملية التي تحتاج إلى أن تكون منهجية ، وتحقيقها وصقل مهاراتنا فيما يتعلق بمهامنا الخاصة.
C ++ روسيا لديه كتلة كبيرة كاملة مخصصة لهذا الموضوع:
كل تقرير مثير للاهتمام بطريقة أو بأخرى ، وإذا بدأت في الكشف عنه ، فلن يكون هناك محور تركيز كافٍ. على سبيل المثال ، التقرير الأخير عبارة عن محركات الألعاب: gamedev له متطلباته الخاصة بكمية تطوير كاملة ، من الأدوات إلى أداء STL ، وهنا تصادف مطورًا مباشرًا لمحرك Encore للعبة World of Tanks ، والذي سيخبرك عن Boost.Python ، انعكاس المعلمات مواد لنماذج ثلاثية الأبعاد وأشياء محددة أخرى. بشكل عام ، يجب عليك قراءة الأوصاف بعناية وفهم المكان الذي تريد الذهاب إليه.
تعدد مؤشرات الترابط ، التزامن ، عدم التزامن ، الكل
على الرغم من عدم وجود كتلة مخصصة لعشرة تقارير ، تتم تغطية هذه المواضيع بطريقة أو بأخرى في جميع التقارير الأخرى. على سبيل المثال ، عند الحديث عن FP ، من المثير للاهتمام دائمًا - كم يساعد FP أو يعقد عملية الكتابة المتعددة.
على الرغم من أن نموذج التنفيذ يحدد إحداثية منفصلة لعمق جميع التقارير الأخرى ، سيكون هناك بعض الأشياء المتخصصة: "التزامن والتوازي في C ++ 17 و C ++ 20/23" من المحتمل أن يكون Grimm Reiner الشهير ، و "Asynchronous C ++ Development" .
لماذا بالضبط عدم التزامن؟ لقد حقق العالم مؤخرًا تقدمًا كبيرًا في هذا الاتجاه ، حيث تظهر الأدوات المدمجة للعمل مع عدم التزامن بجميع اللغات من أعلى TIOBE ، ولم يكن C ++ استثناءً ، على سبيل المثال TS C ++ Extensions for Concurrency . كيف يمكن فصل الحبوب عن القشر عندما يحاول بعض التبشيريين غير المتزامنين أن يبيعوا لنا تزامنا كقيمة ذاتية؟ في المؤتمرات على JavaScript و Java ، تشغل التقارير "غير المتزامنة" في بعض الأحيان ثلث البرنامج . من الجيد أن يكون لديك تقرير جيد واحد على الأقل حول هذا الموضوع ، وهو ما ستفعله شركة Pavel Novikov من Align Technologies .
كيف تعيش مع الأدوات الموجودة
لا يتم تضمين التقارير المتبقية في البرنامج في الفئات المذكورة أعلاه ، ولكن في حد ذاتها اللؤلؤ الصغيرة. على سبيل المثال ، أصبح موضوع DevOps الآن أقل سخونة من عدم التزامن الموضح أعلاه. كما يجب أن تعرف ، فإن "devops" ليسوا شخصًا أو مهنة ، بل ثقافة. وهذه الثقافة مبنية على أدوات ، لا يزال بعضها يعاني من ألم حقيقي. على الرغم من أن C ++ بحد ذاته سريع وسريع ، إلا أن تجميعه بطيء كسلحفاة ، والأدوات الكلاسيكية التي يجب أن تعتمد عليها ثقافة DevOps معقدة وغير موثوقة في الغالب. يتضمن ذلك أشياء مثل أدوات التجميع الموزعة وطرق الربط والوحدات المؤسفة. سيقدم Viktor Kirilov عرضًا تقديميًا بعنوان "دليل المتجول إلى بنيات أسرع" وربما يساعد قليلاً في التعامل مع هذا الألم.
تحولت نوعا من مثل هذا الاستعراض. ماذا نسيت؟ مؤشرات ذكية؟ نعم ، ولديناهم ، ما يصل إلى تقريرين ( واحد ، اثنان ). ما ليس في C ++ روسيا.
دورات تدريبية
إذا لم تكن العروض التقديمية العادية كافية ، فلدينا دورات تدريبية شاملة. سيستمر كل واحد منهم لعدة ساعات ، ويتناول موضوعًا واحدًا ، وبالتالي لا يمكن الاحتفاظ به في وقت واحد مع التقارير. سيتم عقدها قبل يوم واحد من البرنامج الرئيسي ، وهو 18 أبريل.
الأوصاف هي على الروابط. إذا كنت قادماً من الصفحة الرئيسية للتدريبات - انقر فوق أزرار "التفاصيل" - هذا هو المكان الذي تم فيه تحديد التذكرة ، وهو يوضح ما يلزم تثبيته على الكمبيوتر المحمول.
الخطوات التالية
شبكة التقرير ليست نهائية بعد. ومع ذلك ، بقي شهر آخر (سيعقد المؤتمر كما هو متوقع ، 19-20 أبريل). إذا كنت مشاركًا ، أي طلبًا - تحقق من البريد ، فقد أرسلنا لك استطلاعًا. هناك تجدر الإشارة إلى التقارير التي أريد أن أذهب إليها. هذا الاستطلاع تفاعلي تمامًا ، ستؤثر الإجابات على توزيع التقارير في القاعات.
أذكرك أنه على الموقع الرسمي ، يمكنك التعرف على البرنامج الكامل للمؤتمر لمعرفة ما الذي ترغب في الذهاب إليه وبأي ترتيب.
يمكنك شراء التذاكر هناك . يرجى ملاحظة أن هناك عدة أنواع من التذاكر ، ومن خلال اختيار النوع الذي يناسبك ، يمكنك التوفير بجدية. إذا لم تتمكن من حضور المؤتمر مباشرة ، فهذه هي فرصة المشاركة عبر الإنترنت - هناك فئة منفصلة من التذاكر لهذا الغرض.