Я думаю, что вы выучили язык, когда вы его не видите. Вы видите не циклы и обращения к данным, а рабочий процесс алгоритма.
Вы не разыгрываете трюки с передачей параметров и обработкой массива, магическими макросами. Вы не думаете о своем коде как о самом маркетинговом материале, который вы хотите показать своим друзьям и учителям, а о том, как выразить свое понимание проблемы и свою волю компьютеру наиболее читабельным способом.
У вас есть привычки, которые помогут вам избежать множества ошибок, просто следуя им, например: используйте {} блоки кода и () в выражениях, даже если вы абсолютно уверены, что «это будет только одна строка» или «я не дурак и знаю порядок приоритета оператора ".
Вы перестаете считать, сколько классов, шаблонов и API интерфейсов вы знаете. Это то, что intellisense, ссылки и учебники, и Google для. Но когда вы смотрите на проблему, вы сразу же знаете, на какие части ее можно разделить, и какими инструментами и алгоритмами вы их решите.
То, что вы делаете, работает , элегантно и мало . Вы наслаждаетесь кодированием и легко находите свои ошибки. Да, мастера также делают ошибки, потому что они люди - но они находят их быстро, потому что их структура кода приводит их в нужное место.
И, наконец, осознайте: вы научились думать, анализировать и решать проблемы; по сравнению с ними реальный язык является второстепенным, просто текущая коробка правил и инструментов.