LINUX.ORG.RU

Посоветуйте набор хороших книжек для начинающих в HTML/JS

 ,


3

1

Чтобы все было по полочкам разобрано и человек смог довольно быстро освоить html/js. Эдакий экспресс-курс с JS до JQuery. Для тех, кто только начинает программить.

Крайне желательно на русском.

★★★★★

Ну может не надо, а. Ну пожалуйста.

anonymous
()

с JS до JQuery

не надо так >__<

Рекомендую Флэнагана «JavaScript: Definitive Guide».

А для быстрого старта — курсы на codecademy.

Y ★★
()
Последнее исправление: Y (всего исправлений: 1)

Крайне желательно на русском.

Яков Файн — Программирование на PHP для детей, родителей, дедушек и бабушек.

EXL ★★★★★
()
Ответ на: комментарий от Y

Плюсую, codecademy одни из лучших курсов по вебу.

Deleted
()

Что касается HTML - книжки читать не надо, он осваивается по-ходу

По JS.

Быстро освоить его — это утопия.

Будешь осваивать долго, и не факт что освоишь. Если только не понимать под освоением обмазывание либами. Пример такого освоения — здешний клоун по имени Vit, который выдает перлы, вроде «когда были промисы еще не было замыканий», «строки — полноценные объекты», и прочую лютую ахинею, хотя, при этом что-то умудряется еще и писать.

Нет адекватных книжек по JS. Все что обычно советуют в этих случаях — Фленаган, Крокфорд — это вчерашние жаба-мартышки, которые безуспешно пытаются натянуть свое примитивное понимание на JS. Чтение подобных авторов только вредит.

Почитай про Self, Io и Smalltalk. Это очень близкие семантически языки, особенно первые 2. Self — это вообще прототип JS. Этого достаточно чтобы въехать, а дальше достаточно доков и практики.

newquestion
()

Еще можно почитать блог Брендана Айка.

newquestion
()

w3school

за одно и язык освоишь

anonymous
()
Ответ на: комментарий от newquestion

Что касается HTML - книжки читать не надо, он осваивается по-ходу

Действительно, будешь делать что-то на уровне спуфинга.

ritsufag ★★★★★
()
Ответ на: комментарий от newquestion

Что касается HTML - книжки читать не надо, он осваивается по-ходу

Советы индусокодеров ИТТ.

anonymous
()
Ответ на: комментарий от Y

не надо так >__<

А яхз как правильно надо. Мы решили верстальщика/жабаскриптера себе натаскать, вот и думаем что выдать для обучения =)

Siado ★★★★★
() автор топика
Последнее исправление: Siado (всего исправлений: 1)
Ответ на: комментарий от Siado

Многие разработчики используют джейквери не зная JS.

А у вас до этого что-ли никто не делал веб?

Боюсь, за вашего начинающего жабаскриптера, может наворотить дел.

Для быстрого старта очень хорош codeacademy, Флэнаган довольно подробен, можно использовать как референс за какими-то моментами.

В качестве фреймворка для «Rich Internet Applications» можно много чего выбрать, тот же AngularJS сразу в голову приходит, но я рекомендую KnockoutJS+requirejs. Потому что с ним приложения разрабатывать объективно проще, на сайте находится отличный интерактивный туториал (не сравнить с ангуляром), фрейвморк легче, архитектура прозрачней, всё очень хорошо с модульностью (благодаря requirejs, который прекрасно интегрируется в knockoutjs), можно легко компилировать проект с помощью r.js optimizer. Angular же предоставляет собственный инструмент для описания модулей, но не предоставляет никаких инструментов для их динамической подгрузки, поэтому многие всё-равно приходят к использованию requirejs с ангуляром (или других подобных лоадеров), но эта связка весьма костыльна, кривовата. Единственный плюс ангуляра по сравнению с нокаутом — он более оптимизирован, но, если руки прямые, никаких проблем при использовании нокаута не возникнет.

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

Скорее всего, вы захотите ещё использовать jQuery (или Zepto) для xhr и для некоторых сложных DOM-манипуляций (правильное использование Knockout или Angular почти полностью исключает необходимость напрямую работать с DOM-деревом), а может вместо xhr будете общаться по веб сокетам, может быть bluebird (для Promise). И какой-нибудь CSS-фреймворк, например, bootstrap.

Y ★★
()
Ответ на: комментарий от newquestion

Нет адекватных книжек по JS

Ну здрасте. YDKJS тот же. Правда он не для начинающих.

по теме — советовал бы после какого-то периода практики, когда человек уже худо-бедно пишет, читать про шаблоны (Стоянов или Османи), потом про es6 (серии статей in depth), потом уже YDKJS. Для самого-самого начала хороших книг не встречал (разве что тут емнип http://anton.shevchuk.name/jquery-book/ внятно, коротко и по делу и не только про jquery, но если человек стажер или верстальщик он наверное и так все это знает, там совсем для человека с улицы), Фленаган — справочник, по нему нельзя научиться, Крокфорда интересно послушать/почитать, только к практике почти никакого отношения не имеет.

Darwin
()
Ответ на: комментарий от Darwin

Крокфорда интересно послушать/почитать, только к практике почти никакого отношения не имеет.

К теории тоже. Он вообще не понимает JS. Все свое время посвящает тому, чтобы велосипедить жабаподобное с помощью замыканий.

YDKJS не читал. Чем он хорош?

newquestion
()
Ответ на: комментарий от Darwin

Стоянов

Стоянова я как раз листанул вчера. Сначала шаблоны. В шаблонах ни слова про шаблоны, все ограничивается объяснением языковых конструкций. Потом — ОПП. Полкнижки пролистал — ни слова про ООП:) Дальше не стал время терять.

Я же говорю, видимо в JS есть что-то такое, что привлекает клоунов от программирования:)

newquestion
()
Ответ на: комментарий от x3al

Бегло прочитал. Есть серьезные косяки. Например

Some class-oriented languages allow you to specify more than one «parent» class to «inherit» from.

множественное наследование ортогонально «класс-ориентированности языка».

Multiple-inheritance means that each parent class definition is copied into the child class.

Это ложь, то что он написал — всего лишь вариант реализации.

Дальше пишет о проблеме ромба, которая тоже является проблемой дизайна конкретных языков, а не общей проблемой.

Короче, автор делает ложное заключение, что отсутствие множественного наследования является фичей а не багом.

Это я только один раздел прочитал, думаю, в других тоже куча дерьма из головы автора. Поэтому, книжка негодная, в целом.

newquestion
()
Ответ на: комментарий от newquestion

Я же говорю, видимо в JS есть что-то такое, что привлекает клоунов от программирования

совершенно верно!

(ну вы поняли)

Debasher ★★★★★
()
Ответ на: комментарий от x3al

Это собственно, тоже не особо верно. Правильнее говорить, что нет сахара для классов, а еще точней, даже есть, но он — говно. Собственно, понятие класс — это более общее понятие, чем java-like класс.

Если говорить о прототипном программировании в целом, там любой объект становиться классом в тот момент, когда от него кто то начинает наследовать.

newquestion
()
Ответ на: комментарий от newquestion

Я бы сказал, что заранее честно объяснить, что понимает под ООП большинство кодеров, показать, как это криво делается в JS, объяснить, что класс — это паттерн (и его нативной поддержки в JS нет, в отличие от практически всех прочих ООП языков), после объяснить, что такое прототипы, почему это не имеет никакого отношения к классам, как работает, что такое new и почему его название врёт, что такое Object.create, почему в JS нет инстанциации и прочую фигню — гораздо лучше, чем оставить человека с той же кашей, что и в голове у anonimous'а.

x3al ★★★★★
()
Последнее исправление: x3al (всего исправлений: 2)
Ответ на: комментарий от newquestion

Правильнее говорить, что нет сахара для классов

А по такому определению C без плюсов — ООП-язык, как и любой ассемблер и Forth.

x3al ★★★★★
()
Ответ на: комментарий от x3al

в отличии от практически всех прочих ООП языков

В Ъ понимании — класс это множество, или тип, каждый экземпляр принадлежит какому либо множеству, это концептуально, а то что понимается под классом в большинстве быдлоязыков, это механизмы создания данной абстракции конструкторы, сахар, etc — это пример порочного понимания, когда средства реализации путают с абстракцией.

newquestion
()
Ответ на: комментарий от x3al

Само сабой. Только си статичен, поэтому Ъ - ООП из него вряд ли выйдет. Кроме того, чтобы нормально делать ООП нужна какая-никакая синтаксическая абстракция. Очень трудно делать лесенку из фанколов и думать об этом как о сообщениях. Нужно разворачивание function(){comeCode}.call(environment) в environment.function(someCode) на уровне языка или макросов.

newquestion
()
Ответ на: комментарий от x3al

либо на замыканиях можно, в SICP, например, так и сделано, там вся глава про ООП на замыканиях. И кто после этого скажет, что Scheme — не ООП - язык?

newquestion
()
Ответ на: комментарий от x3al

Это опять очередная сборка штампов и из обсасывание. Не понятно, почему Симула считается первым ООП языком, уже первые лиспы были вполне ООП. Потом эти все терминологии. Алан Кей изобрел термин ООП, и он имел в виду именно смоллток-лайк ооп, поэтому языки типа плюсов и жабы неправомерно вообще называть ООП. Их называют ООП потому что они похожи на симулу, но ведь Кей не имел в виду симулу! Бред. Но так уж сложилось.

newquestion
()

Джон Резиг, Беэр Бибо - Секреты JavaScript ниндзя.

no-such-file ★★★★★
()
Ответ на: комментарий от newquestion

Нет, это я перепутал, Стефанов. Защищать его нет ни малейшего желания, но вообще, если настолько критично относиться, то таки да, идеальных книг по JS не существует, но это не повод посылать начинающих читать ECMA-262 или SICP. Лучше читать чем не читать, полезных идей там предостаточно.

Darwin
()
Ответ на: комментарий от newquestion

Нет адекватных книжек по JS. Все что обычно советуют в этих случаях — Фленаган, Крокфорд — это вчерашние жаба-мартышки
дальше достаточно доков и практики

Разве не получится в этом случае такая же мартышка?

Im_not_a_robot ★★★★★
()
Ответ на: комментарий от x3al

Из того что я читал по этой околоООП теме, мне ближе всего вот это

https://www.dreamsongs.com/ObjectsHaveFailedNarrative.html

цитата

Objects, as envisioned by the designers of languages like Smalltalk and Actors—long before C++ and Java came around— were for modeling and building complex, dynamic worlds. Programming environments for languages like Smalltalk were written in those languages and were extensible by developers. Because the philosophy of dynamic change was part of the post-Simula OO worldview, languages and environments of that era were highly dynamic.

But with C++ and Java, the dynamic thinking fostered by object-oriented languages was nearly fatally assaulted by the theology of static thinking inherited from our mathematical heritage and the assumptions built into our views of computing by Charles Babbage whose factory-building worldview was dominated by omniscience and omnipotence.

And as a result we find that object-oriented languages have succumbed to static thinkers who worship perfect planning over runtime adaptability, early decisions over late ones, and the wisdom of compilers over the cleverness of failure detection and repair.

Это, более или менее отражает всю суть истории ООП, и истории, я бы сказал, подмены понятий, когда грязную смесь структурщины и статики с ООП-like сахарком стали массово называть ООП.

newquestion
()
Ответ на: комментарий от no-such-file

а вы из тех, кто в теме про ооп первой и единственной книгой Вирта рекомендует ? =) если человек понятия не имеет, как что устроено - то хороший выбор, имхо.

PunkoIvan ★★★★
()

Крайне желательно на русском.
HTML/JS

Спасибо, посмеялся.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от newquestion

может ты какого то другого стоянова имел в виду...

Того, который в «городке» был. С Олейниковым.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от PunkoIvan

в теме про ооп первой и единственной книгой Вирта рекомендует

Какое отношение Вирт имеет к ООП?

newquestion
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.