Здравствуйте, vsb, Вы писали:
vsb>В копипасте ничего страшного нет. Концепцию чистого кода, рефакторинга и подобного объяснять нужно гораздо поздней. Сначала надо научиться программировать хоть как-то. Хотя, конечно, какие-то базовые основы хорошего тона, то же правильное форматирование кода — прививать желательно с начала.
Да, возможно. Но научиться программировать хотя бы как нужно на каких то полезных практических задачах. Даже не понимая как это работает — очень круто, когда ты сходу можешь сделать что то полезное. Пример полезного — написать хреновину, которая слущает микрофон, распознает голос, отсылая звук на сервис распознавания и включает лампочку или еще что. Написать какую программу, которая слушает микрофон, и, допустим, на запрос "посчитай какое самое частое слово в произведении Война и Мир" зайдет на какой сайт библиотеки (бесплатной, вроде lib.ru), скачает книгу, распознает и что то там посчитает. Тупо используя различные сервисы уже готовые из кубиков друг за другом соберет что полезное, выводя результат в LibreOffice. Используя уже готовые учебные библиотеки, которые будут скрывать геморрой с авторизацией и тому подобное. Приучая сразу, что сложные вещи именно в коде должны выглядеть просто, вся сложность должна быть зашита глубоко в библиотеках.
И вот когда научишься что то полезное делать из кубиков, рано или поздно появятся задачи, которые потребуют уже всяких оптимизаций, и возможно потребуется потом спуститься уже до уровня массива. Но скорее всего до уровня массива спускаться не придется, списка и словаря хватит для всего.
vsb>Не согласен. От железа далёк жаваскрипт. Паскаль компилируется в ассемблер достаточно просто и понятно. И хотя понимать это не надо, но там магии нет. Если тебе нужна хеш-таблица, ты пойдёшь и реализуешь хеш-таблицу, с кучей кода и структур данных. А не напишешь x = {}, не понимая, что под этими двумя скобками скрывается огромная машинерия.
Тупо под заходом на любой сайт скрывается огромнейшая машинерия. На порядок круче всех хешмапов. Однако зайти на сайт и что то там скачать или стукануться к сервису по url — это сверхбазовая операция.
vsb>Это не базовые структуры данных. Базовые структуры данных это структура, массив, указатель. Хешмапа и список делаются на их основе.
А можно наоборот пойти. Сделать одну структуру данных — тупо хешмапа, и из нее выводить списки, массивы и т.д. Пифиг на скорость, пофиг на эффективность, пусть там вместо константного времени поиска будет кубическая — главное чтоб работало. И научить выполнять простейшие полезные в быту задачи. Спускаться на уровень массивов в современном программировании мало кому требуется. Все современные абстракции сильно выше массивов сразу, и можно проработать 20 лет и ни разу не столкнуться с необъодимостью работы именно с чистым массивом.