From b4c1eebe5326fe43e01a0e409d2cd6dff86d44d5 Mon Sep 17 00:00:00 2001 From: Evgeny Melnikov Date: Mon, 30 Aug 2021 16:07:25 +0300 Subject: [PATCH] Refined self identification --- FunCpp.md | 5 +++++ SelfIdentification.md | 22 +++++++++++----------- 2 files changed, 16 insertions(+), 11 deletions(-) create mode 100644 FunCpp.md diff --git a/FunCpp.md b/FunCpp.md new file mode 100644 index 0000000..2c83aaf --- /dev/null +++ b/FunCpp.md @@ -0,0 +1,5 @@ +Чтобы приступить к изучению, будет достаточно владеть знаниями школьного курса информатики: +- Булева алгебра; +- Представление чисел в различных системах счисления; +- Составление блок-схем; +- Арифметика. \ No newline at end of file diff --git a/SelfIdentification.md b/SelfIdentification.md index 27a21c7..d73ad64 100644 --- a/SelfIdentification.md +++ b/SelfIdentification.md @@ -1,32 +1,32 @@ # А точно C++? -Первое, о чем действительно стоит подумать, прежде чем погружаться в изучение языка: а для чего он вам нужен? +Первое, о чем действительно стоит подумать: а для чего вам нужен C++? -Не смотрите на C++ в следующей парадигме: "Если вам дали в руки молоток, то всё вокруг становится гвоздями". Данный язык имеет конкретные ниши применения. Потому, прежде чем инвестировать свое время и силы в изучение - попробуйте поискать и погрузиться в сферы применения языка и найти ту, которая заинтересует именно вас. Вот некоторый ряд причин, почему это стоит сделать "на берегу": +Не смотрите на C++ в следующей парадигме: "Если вам дали в руки молоток, то всё вокруг становится гвоздями". Язык имеет конкретные ниши применения. Прежде чем инвестировать свое время и силы в изучение, попробуйте поискать и погрузиться в сферы применения языка. Найдите ту, которая заинтересует именно вас. Вот некоторый ряд причин, почему это стоит сделать "на берегу": -- Многие сферы разработки выглядят несколько иначе, в отличие от их романтизированного образа. Например, популярное направление среди новичков - разработка игр, имеет следующие темные стороны: кранчи (переработки в режиме - живем в офисе следующие полгода), отсутствие внятного менеджмента, работа в "стол"/на выброс и т.д. +- Многие сферы разработки выглядят несколько иначе, в отличие от их романтизированного образа. Например, популярное направление - разработка игр, имеет следующие темные стороны: кранчи (переработки в режиме - живем в офисе следующие полгода), отсутствие внятного менеджмента, работа в "стол"/на выброс и т.д. -- Во многих сферах может быть также популярен иной инструментарий, языки программирования. Например, в машинном обучении наиболее распространен язык Python и специализированные библиотеки к нему. +- Во многих сферах может быть популярен иной инструментарий. Например, в машинном обучении наиболее распространен язык Python и специализированные библиотеки. -Потому, стоит внимательно присмотреться к той сфере, о которой вы имеете только общее представление. Возможно она окажется не столь заманчивой/интересной после детального погружения. Потратьте немного времени в исследовании и поиске той сферы, которая вам действительно понравится. +Стоит внимательно присмотреться к той сфере, о которой вы имеете только общее представление. Возможно она окажется не столь заманчивой и интересной после детального погружения. Потратьте немного времени в исследовании и поиске той ниши, которая вам действительно понравится. -Второе, на что хочется обратить внимание: язык C++ требует больших временных инвестиций, а также сильную мотивацию. Его не получится выучить по универсальной формуле: "24 часа", "7 дней", "1 месяц". Если вы видите книгу с подобным обещанием - выбросите её и забудьте о ней. Вам придется взять какой-либо общепризнанный "кирпич" и прочитать его целиком, выполняя упражнения. А потом ещё несколько "кирпичей" поменьше, чтобы освоить распространённые практики и подходы. По-другому освоить C++ вряд ли получится. На YouTube есть неплохие записи лекций по C++, но информации из них вряд ли хватит, т.к. чтобы освоить язык до промышленного уровня владения. +Второе, на что хочется обратить внимание: язык C++ требует больших временных инвестиций, а также сильную мотивацию. Его не получится выучить по универсальной формуле: "24 часа", "7 дней", "1 месяц". Если вы видите книгу с подобным обещанием - выбросите и забудьте о ней. Вам придется взять какой-либо общепризнанный "кирпич" и прочитать его целиком, попутно выполняя упражнения. А потом ещё несколько "кирпичей" поменьше, чтобы освоить распространённые практики и подходы. По-другому освоить C++ вряд ли получится. На YouTube есть неплохие записи лекций по C++, но информации из них вряд ли хватит, чтобы освоить язык до промышленного уровня владения. -**Вывод №1:** Если вы не уверены в своих силах, или не готовы к олдскульному методу обучения при помощи книг, то вам стоит сделать выбор в пользу более популярных языков программирования. В них вы также сможете найти массу интересных задач для себя в различных сферах. К сожалению, C++ - это не тот язык, который позволяет вольности. +**Вывод №1:** Если вы не уверены в своих силах или не готовы к классическому методу обучения по книгам, то вам стоит сделать выбор в пользу более популярных языков программирования. В них вы также сможете найти массу интересных задач для себя в различных сферах. К сожалению C++ - это не тот язык, который позволяет вольности. # Я уже знаю C/Java/Python/etc., могу ли я сразу начать писать на C++? У многих новичков складывается ощущение, что С++ изучается быстро и непринужденно по ряду следующих причин: -- наличие 1-2 семестра лекций в ВУЗе с выполнением лабораторных работ; +- наличие лекций в ВУЗе с выполнением лабораторных работ; - знание языка Си или парадигмы "Си с классами"; - знание одного из ООП языков: Java, C#, etc. - знание Python, JavaScript и других распространенных языков. -К сожалению, полученный выше опыт крайне тяжело масштабируется на промышленное примениние C++. Недостаточно просто послушать семестр лекций изучить Си/Python/etc. и сразу же отмасштабировать знания на C++. Почему же? +К сожалению полученный выше опыт крайне тяжело масштабируется на промышленное примениние C++. Недостаточно просто послушать семестр лекций, изучить Си/Python/etc. и сразу же отмасштабировать знания на C++. Почему же? - Если говорить про образование в ВУЗах, чаще всего вам дается только базовый синтаксис языка, который позволит писать простенькие программки для выполнения несложных вычислений. Проще говоря - вас учат собрать калькулятор на коленке и не более. Данных знаний и навыков недостаточно, чтобы выжить в промышленном программировании. @@ -36,8 +36,8 @@ -**Вывод №2:** лучший совет, который здесь можно дать - забудьте всё, что вы знаете о других языках, и начните изучение C++ с чистого головой. :) +**Вывод №2:** лучший совет, который можно дать - забудьте всё, что вы знаете о других языках, и начните изучение C++ с чистой головой. :) # Как учиться? -Главное, что нужно усвоить для себя - ВЫ и только ВЫ отвечаете за себя, свое будущее и успех. Только вы заинтересованы стать профессионалом в выбранной вами сфере. Безусловно, вокруг вас полно людей, которые с радостью вам помогут советом, подсказкой или ответом на вопрос, но никто не придумает за вас конкретные задачи или программу обучения. Ваш лучший друг в этом деле - вы и Google. Учитесь учиться и искать ответы на возникающие вопросы. К счастью, ваше будущее в IT, исключительно в ваших руках и упорстве. Эта сфера награждает тех, кто упорно идет к своей цели. Удачи! \ No newline at end of file +Главное, что нужно усвоить для себя - ВЫ и только ВЫ отвечаете за себя, свое будущее. Только вы заинтересованы стать профессионалом в выбранной сфере. Безусловно, вокруг вас полно людей, которые с радостью помогут советом, но никто не придумает за вас конкретные задачи или программу обучения. Ваш лучший друг в этом деле - вы и Google. Учитесь учиться и искать ответы на возникающие вопросы. К счастью, ваше будущее в IT исключительно в ваших руках и упорстве. Эта сфера награждает тех, кто упорно идет к своей цели. Удачи! \ No newline at end of file