From 8ec6da98117105fc1a219545a386358bc06baaa6 Mon Sep 17 00:00:00 2001 From: Dmitriy Dmitriev Date: Fri, 22 Oct 2021 02:53:12 +0300 Subject: [PATCH] Update HowToStudy.md --- English/HowToStudy.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/English/HowToStudy.md b/English/HowToStudy.md index 904e257..6e6d31e 100644 --- a/English/HowToStudy.md +++ b/English/HowToStudy.md @@ -1,26 +1,26 @@ # Как учиться? -Главное, что стоит усвоить для себя - только вы отвечаете за свое развитие. В ваших интересах стать профессионалом. Конечно вы найдете вокруг полно энтузиастов, которые с радостью помогут вам советом, но никто не придумает за вас конкретные задачи или программу обучения. Лучший друг в этом деле - вы, Google и учебники. - -Учитесь учиться и искать ответы на возникающие вопросы. Ваше будущее в IT исключительно в ваших руках и упорстве. Эта сфера награждает тех, кто направленно идет к своей цели. Удачи! - +Главное, что можно посоветовать — это усвоить, что только вы отвечаете за своё развитие. Конечно, вы найдете вокруг немало энтузиастов, которые с радостью помогут вам советом, но никто не придумает за вас конкретные задачи или программу обучения. Лучший друг в этом деле - вы, Google и учебники. ## Как учить новые стандарты C++ 11/14/17/20? -Вполне закономерный вопрос. Новичкам можно посоветовать сильно не акцентироваться на стандартах в начале своего пути. Берите книги из списка [для начинающих](PreJunior.md) и изучайте фундаментальные основы. Современные книги для новичков содержат в себе немного информации о возможностях стандартов C++11/ и новее. +Новичкам можно посоветовать сильно не акцентироваться на стандартах в начале своего пути. Берите книги из списка [для начинающих](PreJunior.md) и изучайте фундаментальные основы. Современные книги для новичков содержат в себе немного информации о возможностях стандартов C++11/ и новее. На первых порах не стоит акцентировать свое внимание на новых стандартах языка. + +Возникает закономерный вопрос: ""Почему так!?" Дело в том, что современные стандарты сконцентрированы на трёх основных вещах: -На первых порах не стоит акцентировать свое внимание на новых стандартах языка. Отчего же?! Закономерный вопрос! Последние стандарты обычно содержат три вида новинок: -- новый функционал -- синтаксический сахар - исправление проблем +- синтаксический сахар +- новый функционал - С последним пунктом всё вполне очевидно. Синтаксический сахар делает жизнь чуточку проще. Новая функциональность же может строиться на идеях и основах, которые не менялись со времен C++98/03. В стандартную библиотеку также добавляются новые возможности, но на первых порах они представляют малый интерес. Придерживайтесь рекомендуемого списка литературы и постепенно вы освоите, и основы, и новые возможности. +Если с исправлением проблем и с синтаксическим сахаром всё более-менее очевидно (в первом случае вводятся новые конструкции, которые исправляют проблемы старых, а во втором появляются новые абстракции, которые упрощают написание наиболее повторяющегося кода), то с новым функционалом всё немного сложнее. + +C++ развивается ровно так же, как и все остальные языки: берётся какая-то популярная идея из информатики (computer science) или удачная фича из других языков и внедряется в язык. Изучать такие конструкции и использовать при необходимости важно, но на первых парах необходимо изучить основы, которые были заложены более старыми стандартами (С++11/С++14). Они и описаны в большинстве современных книг для начинающих. ## Рекомендации по обучению -- Учитесь в своем ритме, а также в любом возрасте! Не ведитесь на истории: "я программирую с пеленок", "паяльником владею с яслей", "вывожу из запоя/снимаю порчу при помощи ассемблера". Большинство подобных историй - это [систематическая ошибка выжившего](https://ru.wikipedia.org/wiki/Систематическая_ошибка_выжившего) или попытка потешить свое самолюбие за ваш счет. У вас достаточно способностей, чтобы научиться программированию, в том числе с нуля, в том числе и на C++! -- Большинство проблем, с которыми вы столкнетесь, скорее всего уже решены до вас. Если вы не можете найти ответ в интернете, попробуйте переформулировать запрос иным образом. Рано или поздно вы придете к правильному ответу. Если после этого ответа так и нет, то попробуйте решить задачу более простым путем. +- Учитесь в своем ритме, а также в любом возрасте! Не ведитесь на истории: "Я программирую с пеленок", "паяльником владею с яслей", "вывожу из запоя/снимаю порчу при помощи ассемблера". Большинство подобных историй — это [систематическая ошибка выжившего](https://ru.wikipedia.org/wiki/Систематическая_ошибка_выжившего) или попытка потешить свое самолюбие за ваш счет. У вас достаточно способностей, чтобы научиться программированию, в том числе с нуля, в том числе и на C++! +- Большинство проблем, с которыми вы столкнетесь, скорее всего уже решены до вас. Если вы не можете найти ответ в интернете, попробуйте переформулировать запрос иным образом. Рано или поздно вы придете к правильному ответу. Если после этого ответа так и нет, то попробуйте решить задачу более простым путем. - Помните, вы должны изучать язык, а не бороться с рабочим окружением на первых порах. Борьба с окружением может вас привести к полному разочарованию и потере мотивации. - Помните, что многие опытные разработчики тоже встречают проблемы и застревают в "очевидных" местах. Просто возьмите паузу, позанимайтесь чем-то другим, а через какое-то время возвращайтесь к задаче. - Найдите единомышленников, которые также начинают свой путь. Так вам будет интереснее погружаться в изучение языка, а также делиться знаниями и опытом друг с другом. Это также поможет выработать в себе навык командной работы. Времена "вольных художников" подошли к концу. Практически везде вам придется работать в команде. -- Попробуйте также найти себе опытного ментора. Под его руководством вы сможете избежать различные ловушки и потерю времени на них. \ No newline at end of file +- Попробуйте также найти себе опытного ментора. Под его руководством вы сможете избежать различные ловушки и потерю времени на них.