Изучение программирования часто осложняется тем, что начинающие сталкиваются с концепциями, которые кажутся им неочевидными, хотя опытным программистам они представляются элементарными. Например, непонимание типов данных Int16, Int32 и т. д., когда в начале обучения автор просто их упоминает, не давая объяснения, может отбить желание учиться дальше. Также, «одинаковые имена свойств» в конструкторах объектов (this.name = name) кажутся магией, если не объяснена разница между параметрами функции и свойствами объекта.
Другие распространенные «непонятки» включают в себя базовые понятия, такие как переменные, возвращаемые значения функций и рекурсия, которые иногда даже взрослые люди не могут сразу понять. Регистры процессора, массивы в JavaScript с «дырками» и делегаты в Swift также могут смутить новичков.
Осознание физического смысла хранения данных в компьютере, как, например, при работе с ассемблером, помогает понять, как именно работает возврат значения и другие базовые концепции. Понимание, что регистр — это именованная ячейка памяти, и как именно хранятся числа в компьютере, упрощает изучение программирования. Явное указание ссылки на объект через self, как это делается в Python, делает понимание этих механизмов более доступным для начинающих.
Изображение носит исключительно иллюстративный характер
Другие распространенные «непонятки» включают в себя базовые понятия, такие как переменные, возвращаемые значения функций и рекурсия, которые иногда даже взрослые люди не могут сразу понять. Регистры процессора, массивы в JavaScript с «дырками» и делегаты в Swift также могут смутить новичков.
Осознание физического смысла хранения данных в компьютере, как, например, при работе с ассемблером, помогает понять, как именно работает возврат значения и другие базовые концепции. Понимание, что регистр — это именованная ячейка памяти, и как именно хранятся числа в компьютере, упрощает изучение программирования. Явное указание ссылки на объект через self, как это делается в Python, делает понимание этих механизмов более доступным для начинающих.