Как стать автором
Поиск
Написать публикацию
Обновить

Комментарии 32

Let the holy war begin!
Категорически согласен.
«очень важны такие качества, как доступность и наглядность»*фейспалм*
Мда, в статье имеется ввиду, что на JS легко начать программировать (действительно нужно лишь открыть консоль браузера) и он прост для изучения (по крайней мере до прототипов), а вы тут про какие-то баги и фичи, с которыми даже матерые js программисты встречаются раз в год.
Я про то, что он не подходит для начинающего, как первый язык программирования. Подходит Pascal, Python, C и еще многие другие. Но не JS. Минусуют люди, которые пишут на JS и я наверное оскорбляю их ремесло. Но, когда человек, не знакомый с программирование, первым языком видет JS, он будет и дальше опираться на свои знания JS при изучении других языков.
НЛО прилетело и опубликовало эту надпись здесь
Согласен. Тема очень холиварная. Первый коммент предугадал)))
Программирование — прежде всего ответ на вопрос, как заставить компьютер делать, то что я хочу, и JS черт возьми позволяет сразу начать решать эту проблему, без лишних слов, на нем можно реализовать любой алгоритм, и при этом все что тебе надо — это браузер. При этом JS обладает классическим синтаксисом так, что переход на C/Java будет намного менее болезненным.
BASIC тоже прост для изучения ;-)

* дабы не быть непонятым неправильно — пишу на js уже почти лет 5 и язык мне нравится.
НЛО прилетело и опубликовало эту надпись здесь
по-моему, весьма спорное решение.
да, доступность и наглядность у JS не занимать, НО!
даже по сравнению с бейсиком у JS есть масса проблем в плане типобезопасности:
  1. в basic навичок сразу видит — вот это int, это string, а это array. это учит его правильному пониманию вещей.
    basic: int + array = errors
    js: {} + [] = 0 (wtf?)

    basic: array + array = errors
    js: [] + [] = "" (wtf?)
  2. Canvas — это отлично, но возможность рисовать, хотя и не так просто, есть и в VB
  3. вместе с JS — новичок учит и DOM. а это вообще плохо, ибо абстрактный подход в плане приложений у него не развивается. только мысль $(«div»).css и т.п.
  4. я молчу про модули, которые сущ-ют даже практически в каждом языке, и отсутствуют в JS.
НЛО прилетело и опубликовало эту надпись здесь
4. ну это полностью превратит новичка в zen-программиста ;)
2. Биндинги к Tk включены в стандартную либу. Также там есть turtle -подмножество Logo, может знакомая кому-то с уроков информатики «черепашка».
Пункты 3 и 4 не обязательны: есть Node.js.
если их и опустить, можно добавить еще
5. особый стиль написания приложений — callback на callback'e. для примеров и небольших демок подойдет, но не более.
Здесь нет ни одного препятствия для обучения работы с основными аспектами программирования (циклы, условия, работа с массивами и т.п.), а динамическая типизация позволит не заморачиваться на первых парах с приведением типов и прочими языкоориентированными особенностями.
Люди не ставят задачу изучить js и все его тонкости, люди хотят просто научить учеников писать программы, реализовывать алгоритмы. Единственное все же про ООП они загнули мне кажется…
а разве функции как объекты первого класса — разве не «языкоориентированные особенности»? сюда же можно отнести и стиль писать callback на callback'e.
На начальном этапе, мне кажется, можно использовать обычный процедурный стиль. А затем уже, когда человек поймет как работают условия, циклы, что такое функции, изучит пару алгоритмов, можно начать познавать функциональное программирование.
Функции много где объекты первого класса. И для учебного языка это скорее плюс, чем минус.
Уже год веду начальное программирование в кружке для 9-10 классов на JS.,
Логика выбора была другая — язык с C-подобным синтаксисом, но без заморочек C (есть хорошая статья на тему почему C не подходит для первого языка). В 11 классе даю С для подготовки к ЕГЭ.
Тоже постепенно понял что нужно подключать canvas. Пока абстрактное мышление у ученика не сформировано, наглядно-образное выручает.

Так что хорошие мысли приходят во множество голов одновременно.
А в чём даёте? Среда исполнения, инструменты?
Хромиум + Нотепад++;
Искал лёгкую IDE, но пока не нашёл.

Geany + plugin-webhelper не пробовали?
Geany воспринимал как Линуксовый редактор. И хотя сам сижу под линуксом, детей перевести под линукс не получилось. В следующем году попробую ещё раз.
Windows версия есть, правда сам не пробовал, винды вообще нигде нет.
НЛО прилетело и опубликовало эту надпись здесь
Посмотрел. Классная вещь. Но по моему не русифицирована.
НО все равно спасибо за совет. Попробую и если понравится, то надо заняться переводом хотя бы начального руководства.
Может, тогда Dart использовать? Он обладает всеми преимуществами JavaScript как языка для обучения и лишён некоторых его недостатков
Чтобы нормально программировать нужно изучить кучу дисцеплин, по сравнению с которыми сложность установки питона или любой другой среды программирования ничтожна.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации