Сейчас самое время изучить JavaScript. После выхода последней спецификации JavaScript - ECMAScript 6.0 (ES6) - научиться создавать высококачественные приложения на этом языке стало проще, чем когда-либо ранее. Эта книга знакомит программистов (любителей и профессионалов) со спецификацией ES6 наряду с некоторыми связанными с ней инструментальными средствами и методиками на сугубо практической основе.
Этан Браун, автор книги Web Development with Node and Express, излагает не только простые и понятные темы (переменные, ветвление потока, массивы), но и более сложные концепции, такие как функциональное и асинхронное программирование. Вы узнаете, как создавать мощные и эффективные веб-приложения для работы на клиенте или сервере Node.js.
Используйте ES6 для транскомпиляции в переносимый код ESS
Преобразуйте данные в формат, который может использовать JavaScript
Усвойте основы и механику применения функций JavaScript
Изучите объекты и объектно-ориентированное программирование
Ознакомьтесь с новыми концепциями, такими как итераторы, генераторы и прокси-объекты
Преодолейте сложности асинхронного программирования
Используйте объектную модель документа для приложений, выполняемых в браузере
Изучите основы применения платформы Node.js для разработки серверных приложений
Об авторе
Этан Браун - директор интерактивного маркетингового агентства Engineering at Pop Art, в котором он отвечает за архитектуру и реализацию веб-сайтов и веб-служб для любых клиентов, от малых предприятий до транснациональных компаний.
Этан обладает более чем 20-летним стажем программирования.
"Всем разработчикам действительно пришло время изучить JS. Под изучением я не имею в виду примитивное "Я получил некий работоспособный код". Эта книга - куда глубже и обеспечивает именно то изучение, в котором все мы нуждаемся!"
- Кайл Симпсон (Kyle Simpson)
Автор серии You Don't Know JS
"Хорошо написанное сжатое введение в JavaScript, включая ECMAScript 6".
- Аксель Роушмайер (Axel Rauschmayer)
Автор Speaking JavaScript
Эта книга предназначена, прежде всего, для читателей, уже обладающих некоторым опытом программирования (освоивших хотя бы вводный курс программирования). Новичкам в программировании эта книга тоже будет полезна, однако будет не лишним дополнить ее вводным курсом.
Те, кто уже обладают некоторым опытом программирования в JavaScript (особенно если это только ES5), найдут практически полное описание важнейших концепций этого языка. Программистам, переходящим на JavaScript с другого языка, содержимое этой книги также должно понравиться.
В этой книге предпринята попытка всесторонне рассмотреть возможности языка, связанные с ним инструментальные средства, методики и парадигмы, которые управляют современной разработкой на JavaScript. Поэтому в данную книгу включены как простой и понятный материал (переменные, ветвление потока, функции), так и довольно сложный (асинхронное программирование, регулярные выражения). В зависимости от своего уровня подготовки, вы можете найти одни главы более сложными, чем другие: начинающий программист, без сомнения, должен будет повторно пройти часть материала.
Эта книга - не полный справочник по JavaScript или связанным с ним библиотекам. Сеть Mozilla Developer Network (MDN) представляет собой превосходный, полный, актуальный и бесплатный сетевой справочник по JavaScript, на который я ссылаюсь повсюду в этой книге.
Вы изучаете JavaScript в самый подходящий момент. Веб вышел из младенческого возраста (с технической точки зрения), а веб-разработка, без сомнения, - больше не Дикий Запад, которым она была лет 5-10 назад. Такие стандарты, как HTML5 и ES6, облегчают изучение веб-разработки и упрощают разработку высококачественных приложений. Платформа Node.js делает JavaScript доступным и вне браузера; теперь это вполне подходящий выбор для системных сценариев, разработки приложений рабочего стола, приложений для веб-серверов и даже встраиваемых приложений.
Спецификация ES6 представляет существенное усовершенствование языка JavaScript, и некоторые из главных недостатков спецификации ES5 были устранены в ES6. Я полагаю, что вы найдете язык ES6 намного более приятным и мощным в применении (а ES5 был бы весьма хорошим началом). Кроме того (благодаря транскомпиляторам), ныне вы можете написать код ES6 и транскомпилировать его в код, "совместимый с вебом" ES5.
И наконец после публикации ES6 ее поддержка браузерами будет устойчиво расти, и в некий момент транскомпиляция больше не будет необходима для доступа широкой аудитории. Выбор спецификации ES6 был сделан редакцией обдуманно. Усовершенствования ES6 достаточно существенны, чтобы затруднить четкое и ясное изложение материала. Короче говоря, книга, которая попыталась бы рассмотреть и ES5, и ES6, навредила бы обеим темам.
3-е издание.
Переводчик: Коваленко В. А.
Редактор: Коваленко В. А.
Sejchas samoe vremja izuchit JavaScript. Posle vykhoda poslednej spetsifikatsii JavaScript - ECMAScript 6.0 (ES6) - nauchitsja sozdavat vysokokachestvennye prilozhenija na etom jazyke stalo prosche, chem kogda-libo ranee. Eta kniga znakomit programmistov (ljubitelej i professionalov) so spetsifikatsiej ES6 narjadu s nekotorymi svjazannymi s nej instrumentalnymi sredstvami i metodikami na sugubo prakticheskoj osnove.
Etan Braun, avtor knigi Web Development with Node and Express, izlagaet ne tolko prostye i ponjatnye temy (peremennye, vetvlenie potoka, massivy), no i bolee slozhnye kontseptsii, takie kak funktsionalnoe i asinkhronnoe programmirovanie. Vy uznaete, kak sozdavat moschnye i effektivnye veb-prilozhenija dlja raboty na kliente ili servere Node.js.
Ispolzujte ES6 dlja transkompiljatsii v perenosimyj kod ESS
Preobrazujte dannye v format, kotoryj mozhet ispolzovat JavaScript
Usvojte osnovy i mekhaniku primenenija funktsij JavaScript
Izuchite obekty i obektno-orientirovannoe programmirovanie
Oznakomtes s novymi kontseptsijami, takimi kak iteratory, generatory i proksi-obekty
Preodolejte slozhnosti asinkhronnogo programmirovanija
Ispolzujte obektnuju model dokumenta dlja prilozhenij, vypolnjaemykh v brauzere
Izuchite osnovy primenenija platformy Node.js dlja razrabotki servernykh prilozhenij
Ob avtore
Etan Braun - direktor interaktivnogo marketingovogo agentstva Engineering at Pop Art, v kotorom on otvechaet za arkhitekturu i realizatsiju veb-sajtov i veb-sluzhb dlja ljubykh klientov, ot malykh predprijatij do transnatsionalnykh kompanij.
Etan obladaet bolee chem 20-letnim stazhem programmirovanija.
"Vsem razrabotchikam dejstvitelno prishlo vremja izuchit JS. Pod izucheniem ja ne imeju v vidu primitivnoe "Ja poluchil nekij rabotosposobnyj kod". Eta kniga - kuda glubzhe i obespechivaet imenno to izuchenie, v kotorom vse my nuzhdaemsja!"
- Kajl Simpson (Kyle Simpson)
Avtor serii You Don't Know JS
"Khorosho napisannoe szhatoe vvedenie v JavaScript, vkljuchaja ECMAScript 6".
- Aksel Roushmajer (Axel Rauschmayer)
Avtor Speaking JavaScript
Eta kniga prednaznachena, prezhde vsego, dlja chitatelej, uzhe obladajuschikh nekotorym opytom programmirovanija (osvoivshikh khotja by vvodnyj kurs programmirovanija). Novichkam v programmirovanii eta kniga tozhe budet polezna, odnako budet ne lishnim dopolnit ee vvodnym kursom.
Te, kto uzhe obladajut nekotorym opytom programmirovanija v JavaScript (osobenno esli eto tolko ES5), najdut prakticheski polnoe opisanie vazhnejshikh kontseptsij etogo jazyka. Programmistam, perekhodjaschim na JavaScript s drugogo jazyka, soderzhimoe etoj knigi takzhe dolzhno ponravitsja.
V etoj knige predprinjata popytka vsestoronne rassmotret vozmozhnosti jazyka, svjazannye s nim instrumentalnye sredstva, metodiki i paradigmy, kotorye upravljajut sovremennoj razrabotkoj na JavaScript. Poetomu v dannuju knigu vkljucheny kak prostoj i ponjatnyj material (peremennye, vetvlenie potoka, funktsii), tak i dovolno slozhnyj (asinkhronnoe programmirovanie, reguljarnye vyrazhenija). V zavisimosti ot svoego urovnja podgotovki, vy mozhete najti odni glavy bolee slozhnymi, chem drugie: nachinajuschij programmist, bez somnenija, dolzhen budet povtorno projti chast materiala.
Eta kniga - ne polnyj spravochnik po JavaScript ili svjazannym s nim bibliotekam. Set Mozilla Developer Network (MDN) predstavljaet soboj prevoskhodnyj, polnyj, aktualnyj i besplatnyj setevoj spravochnik po JavaScript, na kotoryj ja ssylajus povsjudu v etoj knige.
Vy izuchaete JavaScript v samyj podkhodjaschij moment. Veb vyshel iz mladencheskogo vozrasta (s tekhnicheskoj tochki zrenija), a veb-razrabotka, bez somnenija, - bolshe ne Dikij Zapad, kotorym ona byla let 5-10 nazad. Takie standarty, kak HTML5 i ES6, oblegchajut izuchenie veb-razrabotki i uproschajut razrabotku vysokokachestvennykh prilozhenij. Platforma Node.js delaet JavaScript dostupnym i vne brauzera; teper eto vpolne podkhodjaschij vybor dlja sistemnykh stsenariev, razrabotki prilozhenij rabochego stola, prilozhenij dlja veb-serverov i dazhe vstraivaemykh prilozhenij.
Spetsifikatsija ES6 predstavljaet suschestvennoe usovershenstvovanie jazyka JavaScript, i nekotorye iz glavnykh nedostatkov spetsifikatsii ES5 byli ustraneny v ES6. Ja polagaju, chto vy najdete jazyk ES6 namnogo bolee prijatnym i moschnym v primenenii (a ES5 byl by vesma khoroshim nachalom). Krome togo (blagodarja transkompiljatoram), nyne vy mozhete napisat kod ES6 i transkompilirovat ego v kod, "sovmestimyj s vebom" ES5.
I nakonets posle publikatsii ES6 ee podderzhka brauzerami budet ustojchivo rasti, i v nekij moment transkompiljatsija bolshe ne budet neobkhodima dlja dostupa shirokoj auditorii. Vybor spetsifikatsii ES6 byl sdelan redaktsiej obdumanno. Usovershenstvovanija ES6 dostatochno suschestvenny, chtoby zatrudnit chetkoe i jasnoe izlozhenie materiala. Koroche govorja, kniga, kotoraja popytalas by rassmotret i ES5, i ES6, navredila by obeim temam.
3-e izdanie.
Perevodchik: Kovalenko V. A.
Redaktor: Kovalenko V. A.