Как я JavaScript учить начал

Просто начал и все. Без всяких размышлений о великом будущем своем, как погромиста, без особых фантазий на тему, что теперь точно смогу написать BolgenOS. Я даже не совсем понимаю, зачем я учу JavaScript.

Последний раз я был быдлокодером в школе, где нас учили писать на... BASIC. В 2001 году, Карл! В то время, как почти везде уже учили Pascal. Потом я пытался писать на Delphi, но кроме генератора заданного количества случайных чисел в заданном интервале ничего написать не смог (нужно было для дипломной работы).

Потом было по чуть-чуть MAXScript и MEL (исключительно в объеме «мне тут нужна своя кнопка для создания шарика»). В общем, ничего, кроме «Hello, World!» на подавляющем большинстве языков программирования я ничего никогда не писал и не напишу (и то лишь потому, что «Hello, World!» учат писать на первых страницах любого учебника).

А JavaScript мне не нужен особо. Ни в прикладных моментах (для себя мне на нем писать нечего), ни в глобальных. Но уже недели полторы я читаю про него все, что можно, в том числе и MDN. Выходит около часа в день на это дело. Немного пока, но тут, как пойдет.

Вчера я начал разбираться с массивами и в конце своего часа накидал вот такой скрипт:

Как я JavaScript учить начал Программирование, Javascript, Ученики, Учеба, Языки программирования

Без повторения примеров и уроков. Просто было интересно, получится ли. Все заработало и закрутилось, как было нужно.

Да, я знаю, что в ES6 все будет выглядеть иначе и много, где я вижу рекомендации начинать уже учиться сразу на этом стандарте, но прежний мне понятнее. Пока я даже не быдлокодер. И делюсь, собственно, даже не самим скриптом, а тем, что у меня что-то получилось написать после, де-факто, 17 лет отсутствия всяких опытов с программированием.

2
Автор поста оценил этот комментарий

Пост в стиле: смотрите, какой я охуенный, сам накидал говноскрипт, видите? Давайте хвалите теперь меня!

раскрыть ветку (1)
7
DELETED
Автор поста оценил этот комментарий

Комментарий в стиле: "Посмотрите, какой я охуенный специалист, могу засрать что угодно". Есть проблема: у меня есть желание учиться и научиться писать хороший код, а вы так и будете засирать всех в комментариях. Ну, и так далее. Удачи.

показать ответы
22
DELETED
Автор поста оценил этот комментарий

Ученье свет! Учиться, учиться и еще раз учиться! Молодец! Уважаю. Сам просидел до тридцати, а потом пошел и получил второе высшее. Честно, даже не понял зачем. Но потом во время учебы я понял, что учиться это благо, без напряжения мозга тупеешь и деградируешь.

раскрыть ветку (1)
9
DELETED
Автор поста оценил этот комментарий

Согласен. Может, потом и другой какой-нибудь язык программирования пойму.

показать ответы
5
DELETED
Автор поста оценил этот комментарий

Вроде вот тут норм написано - https://tproger.ru/translations/stanford-cpp-style-guide/

Суть в том что бы выравнивать конструкции языка переводом строки и пробелами.


array.forEach(function(item, i) {

    itter.innerHTML += 'что то'

});


indexNum.oninput = function() {

    if(indexNum.value < array.length) {

        resFld.innerHTML = 'что то'

    } else {

        resFld.innerHTML = 'нет элемента'

    }

}

раскрыть ветку (1)
2
DELETED
Автор поста оценил этот комментарий

Отлично. Спасибо, обязательно почитаю.

показать ответы
2
DELETED
Автор поста оценил этот комментарий

@issablis, почитай про стандарты оформления кода, особенно у тебя отступы страдают. Самому проще будет.

раскрыть ветку (1)
2
DELETED
Автор поста оценил этот комментарий

Дайте ссылку, куда почитать, буду благодарен.

показать ответы
2
Автор поста оценил этот комментарий

Ужасный код. Смотреть противно.

раскрыть ветку (1)
3
DELETED
Автор поста оценил этот комментарий

Вы в первом классе сразу писать научились, или еще прописи марали?
Люблю такие комментарии: "я - специалист, мне противно смотреть на вас". Уважаемый, вы, может быть, пишете красивый код. Я что-то другое делаю лучше вас на несколько порядков, но мне не придет в голову обсирать вас, если вы возьметесь делать то, что делаю я.

показать ответы
Автор поста оценил этот комментарий
Привет) как у тебя успехи с js?)
раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

Все, что мне нужно было для работы, я освоил.
В лаборатории все задачи могу решить.
А куда-то устраиваться не буду.

Автор поста оценил этот комментарий
О как! А в java можете?
раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

Нет, в Java не могу. Почитываю по-тихоньку Питон и R, но это чисто для работы и пока вообще в стадии "hello world". Да, и тут, в проекте, пока расставляю на нужные места ссылки, правлю ошибки.

Автор поста оценил этот комментарий
Автор, как дела сейчас обстоят? Учишь? Или забросил?
раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

Приятель из Германии подписал меня на свой проект. Помогаю, чем умею.

показать ответы
Автор поста оценил этот комментарий

Послушай дядей. Перейди на ES6 сразу от греха

раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

Я слушаю дядей, конечно. Но тут бы "гос. минимум" освоить для начала.

Автор поста оценил этот комментарий

Это здорово!

Если дело будет продвигаться и дальше, то могу посоветовать не развлекаться лишь с "голым" джаваскриптом, так как без сопутствующих технологий в настоящем, взрослом веб-программировании он едва ли встречается.

Помимо очевидных библиотек и фреймворков (jquery/react/angular/backbone....) стоит заглянуть, например, как, собственно, собираются и деплоятся проекты, как работает веб-сервер, что такое babel/webpack/grunt, может посмотреть в сторону ноды.

Можно найти уже готовый сид-проект, например, на express.js, который будет включать уже всё из коробки, полностью стартовать веб-сервер по одному клику, иметь настроенные скрипты и документацию, ну и сидеть и изучать, как это работает.

Ещё стоит параллельно сразу осваивать инструменты разработчика - ide (idea/webstorm), chrome developer tools.

Успехов!

раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

До фреймворков мне еще ползти и ползти. Я только начал смотреть курс на Udemy
Но все равно, спасибо за советы. Все сохранил.

Автор поста оценил этот комментарий

Берут вообще всех по-моему.

А вообще, возможно, для вас было бы более перспективно осваивать шарп. Он сейчас на коне. К моменту его освоения до достаточного скилла на сцену, уверен, как раз выйдет webassembly. Уже сейчас есть blazor, на котором можно фронт писать.

В общем, тут вы сами определяйтесь, чего хотите.

раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

Я за это дело взялся, вообще, потому, что мой знакомый, живущий в Германии и работающий разрабом, посоветовал начать с JS. Он же сам пишет на нем и еще на Elixir, который там, почему-то, сейчас набирает популярность (по крайней мере, он оказался востребованным).

показать ответы
3
Автор поста оценил этот комментарий

Это все и правда здорово, и рвение похвально, но если это для вас именно хобби, и вы пока не планируете вкатываться даже джуном в коммерческую разработку, то попробуйте найти для себя интересную идею. И не надо никаких BolgenOS. Пробегитесь по форумам или, например, по реддиту на r/javascript - там часто выкладывают всякие мелкие, но интересные проекты. Возможно, что-то из этого вас вдохновит на написание чего-то подобного. Нужно всегда стараться преодолевать себя. Может вам станет интересно написать, не знаю... или какой-то интересный интерактивный элемент, или некую структуру данных, или маленький 3д движок на вебгл, или мини нейронную сеть, или еще что-то, ограниченное вашей фантазией. В процессе сложного проекта перед вам будет всплывать масса более мелких, что научит и чистоте кода, дабы поддержать его читабильным, и алгоритмам, и ньюансам языка и тд. Важно, чтобы задача была вам интересна. Это так же позволит вам найти наиболее успешное направление своего развития. Удачи.

Пс. ES6+ не принебрегайте вот прямо совсем. И бога ради, не используйте суммирование строк через "+" сверх меры: строки иммутабильны и хранятся в памяти каждая отдельно., т.е, грубо говоря, str1+str2 будет занимать памяти sizeof(str1)+sizeof(str2)+sizeof(str1+str2). Дабы не зависить от милости оптимизатора, используйте строковые литералы и Array.prototype.concat/join. В вашем случае, например, лучше:

iterr.innerHTML=array1.map((item,i)=>`${i+1}.${item}</br>`).join("");

Это также избавляет вас от замыкания.

Ну и далее сами попробуйте порефакторить.

раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

Я не рассчитываю, что меня даже при достаточном скилле возьмут в разработку.

показать ответы
Автор поста оценил этот комментарий

Майд мапы и какие-то схемы - на бумаге, а практика - на компьютере.

Нет занятия более бестолкового, чем написание (псевдо)кода на бумаге.

В современной системе образования это встречается по двум причинам:

1) так проще "расшарить" работы множества студентов с преподавателем

2) принтеры - пока еще роскошь


А язык в принципе да — роли не играет

Лишь бы был императивным.

раскрыть ветку (1)
DELETED
Автор поста оценил этот комментарий

Ну, мне повезло, у меня есть "ментор", знакомый, живущий за границей, давно пишущий и готовый учить. Собственно, это его идея была - чтобы я начал учить JS.

показать ответы
1
Автор поста оценил этот комментарий

да не за что. обращайся. здоровая критика ещё никому не мешала.

раскрыть ветку (1)
1
DELETED
Автор поста оценил этот комментарий

О, так вы считаете свою критику здоровой? Я запишу, спасибо.

показать ответы
1
Автор поста оценил этот комментарий

было бы желание, ты бы просто самообучался и всё. и спустя полгода бы уже попытался осилить коммерческую разработку, либо бы прибился к группе разрабов джуном.


а тут я вижу какие-то лишь юношеские амбиции. вот так наверное и рождаются code monkey

раскрыть ветку (1)
1
DELETED
Автор поста оценил этот комментарий

Спасибо, ваша мысль мне понятна.

показать ответы