mirror of
https://github.com/salmer/CppDeveloperRoadmap.git
synced 2025-12-17 04:24:39 +03:00
Refactored FunCpp
This commit is contained in:
13
FunCpp.md
13
FunCpp.md
@@ -1,16 +1,19 @@
|
||||
# C++ — это просто!
|
||||
|
||||
На самом деле современный C++ — это гораздо проще, чем принято считать, потому что за годы трансформаций язык успел сильно преобразиться и обрасти фичами, которые позволяют писать, с одной стороны, безопасный, а с другой, эффективный код. Если использовать примитивы из последних стандартов, то больше не нужно беспокоиться о возможных утечках памяти, а компилятор стал гораздо умнее и отвечает за большую часть требующихся оптимизаций. Если это требуется, всегда можно сделать код ещё оптимальнее (и менее безопасным с точки зрения использования памяти), но пригодится вам это только если вы действительно решите углубиться в изучение и использование языка.
|
||||
Современный C++ гораздо проще, чем принято считать. За годы трансформаций язык успел сильно преобразиться и обрасти возможностями, которые позволяют писать безопасный и эффективный код. Если использовать примитивы из последних стандартов, то больше не нужно беспокоиться о возможных утечках памяти. Также компилятор стал гораздо умнее. Он способен выполнять огромное число оптимизаций над вашим кодам, выдавая максимальную производительность. Если потребуется, то все по-прежнему возможно сделать код оптимальнее при помощи самостоятельных манипуляций и ухищрений.
|
||||
|
||||
У языка всё же есть и свои недостатки, самым главным из которых является отсутствие стандартного пакетного менеджера. Есть куча разных продуктов, которые пытаются занять эту нишу, но пока так ни один и не смог этого сделать. С++ стал жертвой одной из его парадигм: "разработчик не платит за то, что ему не требуется", но практика показывает, что в коммерческих проектах люди не слишком аккуратно обходятся с зависимостями, а потому получилась обратная ситуация: "разработчик платит каждый раз, когда ему нужно втащить новую зависимость". Но вопрос решается. Уже есть несколько мощных инструментов на рынке, просто пока что ни один не смог захватить его полностью.
|
||||
У языка всё же есть и недостатки. Главным из них является отсутствие стандартного пакетного менеджера. Есть куча разных продуктов, которые пытаются занять эту нишу, но пока ни один из них так и не смог этого сделать.
|
||||
|
||||
Чтобы приступить к изучению языка требуется ровно тот же набор базовых школьных знаний, что и при изучении любого другого языка:
|
||||
С++ также стал жертвой собственной парадигмы: "разработчик не платит за то, что ему не требуется". Практика же показывает, что в коммерческих проектах разработчики не слишком аккуратно обходятся с зависимостями, потому породилась обратная ситуация: разработчик платит каждый раз, когда ему нужно втащить новую зависимость. Это провоцирует всякие "интересные" побочные эффекты во время сборки проекта. Но и этото вопрос постепенно решается.
|
||||
|
||||
Чтобы приступить к изучению языка потребуется набор базовых школьных знаний:
|
||||
- Арифметика;
|
||||
- Булева алгебра;
|
||||
- Составление блок-схем;
|
||||
- Представление чисел в различных системах счисления.
|
||||
|
||||
А прогресс в изучении будет завесить от количества практики (как и везде).
|
||||
Не смотря на весь бэкграунд и информационный шлейф, который тянется за C++, мы считаем, что его современная версия стала в разы проще, чем это было в прошлом.
|
||||
|
||||
В общем, несмотря на весь бэкграунд и тот исторический и информационный шлейф, который тянется за C++, мы считаем, что он стал в разы проще, чем он был до этого, а потому не бойтесь изучать его.
|
||||
Потому не бойтесь изучать его!
|
||||
|
||||
Удачи!
|
||||
Reference in New Issue
Block a user