Javascript data structures and algorithms 2019

Saved searches

Use saved searches to filter your results more quickly

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

Source code for ‘JavaScript Data Structures and Algorithms’ by Sammie Bae

License

Apress/js-data-structures-and-algorithms

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Sign In Required

Please sign in to use Codespaces.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Читайте также:  Html url link style

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

This repository accompanies JavaScript Data Structures and Algorithms by Sammie Bae (Apress, 2019).

Cover image

Download the files as a zip using the green button, or clone the repository to your machine using Git.

Release v1.0 corresponds to the code in the published book, without corrections or updates.

See the file Contributing.md for more information on how you can contribute to this repository.

About

Source code for ‘JavaScript Data Structures and Algorithms’ by Sammie Bae

Источник

10 книг для изучения JavaScript, вышедших в 2019 году

Подпишись на наш канал с тестами по HTML/CSS/JS в Telegram!

Привет, друзья! В этой статье мы решили составить подборку книг для JavaScript-разработчиков. Все эти книги вышли в 2019 году. Естественно, если книга переводная, то оригинал был издан раньше. Также есть вторые, третьи и т. д. издания книг, написанных в предыдущие годы. Но, как правило, даже в этих случаях авторы и переводчики учитывают произошедшие со временем изменения и вносят правки.

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

Вы не знаете JS

Автор: Кайл Симпсон. Язык: русский.

Кайл Симпсон — известный специалист по JavaScript. В его серию «Вы не знаете JS» входят шесть книг. Три из них (или четыре — тут как посмотреть…), вышедшие на русском языке в 2019 году, мы включили в нашу подборку.

Книги серии «Вы не знаете JS» не предназначены для обучения языку с нуля. В них вы найдете пояснения отдельных аспектов и внутреннего устройства JavaScript.

Замыкания и объекты

В русскоязычном издании были объединены две книги серии «Вы не знаете JS»: «this & Object Prototypes» и «Scope & Closures». Соответственно, книга, которую мы вам представляем, состоит из двух частей.

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

Во второй части автор знакомит читателей с объектами, классами и прототипами, а кроме того рассматривает (со всех сторон) ключевое слово this.

Типы и грамматические конструкции

Из этой книги вы узнаете, есть ли в JavaScript типы (спойлер: есть!). Разумеется, автор расскажет вам о них очень подробно, затрагивая связанные с ними проблемы и тему преобразования типов. Книга небольшая, но очень насыщенная информацией.

Асинхронная обработка и оптимизация

Рассказывая о собственном опыте проведения собеседований с JS-разработчиками, Кайл Симпсон отмечает, что всегда в первую очередь проверяет, разбирается ли кандидат в асинхронных средствах JavaScript. Вполне вероятно, что так поступает не только Кайл, поэтому в данной теме определенно стоит разобраться.

Эта книга познакомит вас с темой асинхронности (блочное строение программы, цикл событий, параллельные потоки), обратными вызовами, обещаниями и возможностью их использования в связке с генераторами.

Автор также рассмотрел библиотеку asynquence и расширенные асинхронные паттерны (итерируемые последовательности, реакция на события, генераторные сопрограммы).

JavaScript Programming

Автор: Ethem Mining. Язык: английский.

Учебник для начинающих. В нем рассматриваются все самые основные темы, которые вы ожидаете найти в базовом руководстве по любому языку программирования (переменные, операторы, циклы, функции, объекты и т. п.).

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

JavaScript Data Structures and Algorithms

Автор: Sammie Bae. Якык: английский.

Автору книги показался странным недостаток ресурсов по структурам данных и алгоритмам, написанным на JavaScript, поэтому он решил издать собственную книгу.

Поскольку JS придерживается прототипного наследования, в отличие от Java и C++, написание структур данных в нем тоже отличается. Sammie Bae рассматривает эту тему как раз с позиции JavaScript.

Эта книга начинается со знакомства с концепцией большого «O». Далее рассматривается реализация алгоритмов для основных структур данных JS (связанные списки, стеки, деревья, кучи и графы).

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

В конце каждой главы вы найдете упражнения на закрепление материала.

Учимся кодить на JavaScript

Автор: Джереми Мориц. Язык: русский.

Учебник по JavaScript, структурированный в расчете на детей. Благодаря умелому чередованию теории и практики читать книгу совсем не скучно и даже очень интересно. Автор посвятил книгу своим шестерым детям, которых, по его словам, учит самостоятельно, на дому. В общем, у него точно есть обширный практический опыт обучения детей.

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

Выразительный JavaScript

Автор: Марейн Хавербеке. Язык: русский.

Книга делится на три части, из которых только одна посвящена основам самого языка JavaScript. Далее разбирается тема браузеров в контексте применения JS, а также Node.js.

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

Как устроен JavaScript

Автор: Дуглас Крокфорд. Язык: русский.

Как и серия «Вы не знаете JS», эта книга не учит языку (и тем более программированию) с нуля. Она предназначена для программистов, желающих освоить еще один язык, а также для людей, уже знакомых с JS, но желающих узнать о нем побольше и разобраться, как он работает.

Также, как отмечает Крокфорд, его книга — не исчерпывающее руководство. В ней подробно рассмотрены одни темы и полностью проигнорированы другие.

Название каждой главы книги начинается со слов «Как работает…». Вы узнаете, как работают массивы, объекты, строки, функции, this, тестирование, оптимизация и прочие вещи.

Стоит также отметить, что книга красиво и необычно оформлена.

JavaScript Frameworks for Modern Web Development

Авторы: Sufyan bin Uzayr, Nicholas Cloud, Tim Ambler. Язык: английский.

Эта книга предназначена для веб-разработчиков среднего уровня, уже имеющих опыт работы с JavaScript. Это своего рода гид по отдельным библиотекам и фреймворкам языка, которые в настоящее время с успехом используются в крупных компаниях. Авторы рассматривают и фронтенд, и бэкенд-разработку.

Рефакторинг кода на JavaScript

Автор: Мартин Фаулер (при участии Кента Бека). Язык: русский.

Во введении к этой книге Мартин Фаулер рассказывает случай из собственной жизни, когда он в роли консультанта советовал внести изменения в сложную систему. Его советом не воспользовались, и в итоге проект рухнул. Для реанимации проекта пригласили другого консультанта — Кента Бека, который многое переделал. Благодаря проведенному рефакторингу проект был возрожден. Эта история подвигла Фаулера написать книгу про рефакторинг. Спустя 18 лет автор решил выпустить второе, переработанное издание.

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

Для примеров кода в этом издании автор выбрал JavaScript (в первом издании это был Java). Но методы, описываемые Фаулером, применимы к проектам на самых разных языках программирования. Как пишет автор, тема его книги — рефакторинг, а не рефакторинг в JavaScript. И хотя в принципе существуют рефакторинги, специфичные для JavaScript, в этой книге о них речь не идет.

Книга ориентирована на профессиональных, опытных программистов.

Источник

JavaScript Data Structures and Algorithms

JavaScript Data Structures and Algorithms Front Cover

Explore data structures and algorithm concepts and their relation to everyday JavaScript development. A basic understanding of these ideas is essential to any JavaScript developer wishing to analyze and build great software solutions.

You’ll discover how to implement data structures such as hash tables, linked lists, stacks, queues, trees, and graphs. You’ll also learn how a URL shortener, such as bit.ly, is developed and what is happening to the data as a PDF is uploaded to a webpage. This book covers the practical applications of data structures and algorithms to encryption, searching, sorting, and pattern matching.

It is crucial for JavaScript developers to understand how data structures work and how to design algorithms. This book and the accompanying code provide that essential foundation for doing so. With JavaScript Data Structures and Algorithms you can start developing your knowledge and applying it to your JavaScript projects today.

  • Review core data structure fundamentals: arrays, linked-lists, trees, heaps, graphs, and hash-table
  • Review core algorithm fundamentals: search, sort, recursion, breadth/depth first search, dynamic programming, bitwise operators
  • Examine how the core data structure and algorithms knowledge fits into context of JavaScript explained using prototypical inheritance and native JavaScript objects/data types
  • Take a high-level look at commonly used design patterns in JavaScript

Existing web developers and software engineers seeking to develop or revisit their fundamental data structures knowledge; beginners and students studying JavaScript independently or via a course or coding bootcamp.

Источник

Оцените статью