Как появился данный курс?

История достаточно проста: в какое-то время ситуация, когда множество людей просят меня продать им мои разработки, а я, из-за контрактных обязательств, не могу этого сделать, стала меня сильно «парить»…

Именно поэтому, когда Никита Королёв предложил мне создать обучающий курс по JavaScript’у и издать его в Info-DVD, я с радостью согласился!..

Во-первых, потому что я сам люблю обучаться и делиться своими знаниями (обучать других)

Во-вторых, потому что прекрасно помню себя, — находящегося в состоянии фрустрации чайника, — мечтающего изучить JavaScript и просто НЕ ЗНАЮЩЕГО с чего начать, с какого «края» к нему подступиться…

В-третьих, потому, что ДО СИХ ПОР в Рунете не существовало толкового обучающего ВИДЕОКУРСА по JavaScript.

Быть первым — это почетно, я и не мог упустить такой возможности.

В-четвертых, — не буду кривить душой, — потому что я не понаслышке знаю, что это весьма прибыльно: продавать свои знания, упакованные в формат пошаговых обучающих курсов, через Интернет.

А если это приносит пользу людям, использующим данные курсы, то почему бы самому не заработать на этом?

И, наконец, в-пятых, потому, что мне было трудно отказать своему старому другу, со-основателю издательства Info-DVD, Никите Королёву…

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

Уверен, что у Вас есть столько же (если не больше) причин изучить его как можно скорее!

Давайте же перейдем от слов к делу и посмотрим, какие разделы вошли в мою обучающую программу «JavaScript. Больше, чем просто сайт»

Вот, кстати, как выглядит меню диска (оно появится автоматически после того, как Вы вставите диск в дисковод):

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

На всякий случай мы его, также, записали на диск.

Вступление (34:21)

Вступительный раздел курса разбит на 2 части:

1. Описание курса.

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

Рассмотрим по пунктам, что конкретно Вы узнаете:

  • Как пользоваться меню курса.
  • Где взять файлы упражнений (исходные коды).
  • Где взять программы, которые понадобятся Вам в процессе разработки, и расширения к ним.
  • Куда обратиться за помощью, если у Вас возникнут вопросы.
  • Немного истории JS: как и где появился данный язык и почему он так называется.
  • Что может JS, а чего не может?
  • Почему у Вас обязательно получится освоить данный язык.
2. Инструменты.

В данном подразделе мы рассмотрим инструменты, которые понадобятся Вам для работы.

А конкретно Вы узнаете:

  • Что такое среды разработки (IDE);
  • Преимущества и недостатки каждой из рассмотренных IDE;
  • Какую роль в тестировании JS-сценариев играют браузеры;
  • Также мы рассмотрим несколько полезных плагинов (дополнений к браузерам), которые заметно облегчат Вашу жизнь и сделают процесс разработки и отладки максимально комфортным.

 

Глава 1: Начинаем кодировать (20:06)

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

Вы научитесь:
  • Встраивать сценарии в html-страницы;
  • Узнаете в какие части страницы можно встраивать сценарии и что от этого меняется;
  • Вы создадите Ваш первый сценарий;
  • Узнаете, чем внутренние скрипты отличаются от внешних;
  • Узнаете о комментариях, а именно: что это, зачем это нужно;
  • Узнаете о различных по смысловой нагрузке видах комментариев;
  • Узнаете о конструкциях комментариев, поддерживаемых JavaScript
  • Узнаете, как распознать пользователя с отключенным JS и уведомить его об этом;
  • А так же Вы узнаете о базовых методах взаимодействия с пользователем:

    • Как уведомить пользователя с помощью модального окна;
    • Как получить от пользователя ответ «да/нет» на свой вопрос, не используя html-форм;
    • Как получить от пользователя какие-либо данные, не используя html-форм;
  • Также Вы узнаете что такое JavaScript-консоль и как ей пользоваться.

 

Глава 2. Базовые понятия, структуры данных (24:05)

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

После просмотра данной главы, Вы:
  • Освоите понятие переменной;
  • Узнаете, как объявлять переменные;
  • Узнаете, как лучше называть переменные;
  • Освоите понятие типа, т.е. характеристики переменной с точки зрения того, информация какого вида в ней находится;
  • Узнаете о типах данных, которые поддерживает JavaScript;
  • Узнаете, как определить тип переменной;
  • Узнаете о приведении типов, т.е. переводе переменных одного типа в другой;
  • Узнаете об основных операторах, с помощью которых Вы сможете изменять значение переменных.

Всё это может стать Вашим — прямо сейчас!..

 

Глава 3. Управляющие структуры (34:57)

Невероятно важный раздел, по изучении которого Вы научитесь управлять потоком исполнения вашего сценария.

Здесь будут рассмотрены управляющие структуры, такие как условные операторы и циклы.

Если подробнее, то Вы:
  • Освоите понятие условия, а так же обсудим, что может быть рассмотрено как условие;
  • Изучите приведение всех типов к булевому(логическому) значению;
  • Освоите операции сравнения;
  • Научитесь использовать логические операции, которые помогут комбинировать несколько условий в одно;
  • Освоите конструкцию условного оператора if;
  • Научитесь использовать операторы else и else if, узнаете об их особенностях, а также где рекомендуется их применять;
  • Изучите оператор множественного выбора switch, его основную конструкцию, составные части;
  • Освоите тернарный условный оператор: его общий вид, варианты использования и среду применения;
  • Освоите понятия цикла, счетчика и итерации;
  • Научитесь применять структуру for, изучите характеристики-условия данного оператора;
  • Научитесь применять структуры while и do while, узнаете об их отличиях;
  • Научитесь мгновенно прерывать выполнение цикла, используя оператор break;
  • Научитесь переходить к следующей итерации цикла, не дожидаясь завершения текущей, используя оператор continue.

 

Глава 4. Функции (22:16)

Функции — основные строительные блоки языка.

Каждая функция решает конкретную задачу.

Правильно составленные блоки — залог стабильной и надежной работы сценария.

В данной главе мы подробнейшим образом рассмотрим как строить САМИ блоки, а также наиболее важные моменты работы с ними.

  • Освоите понятие функции (метода);
  • Научитесь описывать (декларировать) функции;
  • Научитесь вызывать функции;
  • Освоите понятие аргумента (параметра) функции;
  • Научитесь передавать в функцию аргументы;
  • Научитесь задавать значения аргументов Ваших функций по умолчанию, при возникновении такой необходимости;
  • Освоите понятие области видимости переменных;
  • Узнаете, что такое глобальные и локальные переменные, чем они отличаются;
  • Освоите понятие возвращаемого значения функции;
  • Научитесь использовать оператор return:

    • Для возвращения результата выполнения метода
    • Для прерывания работы метода

Всё это может стать Вашим — прямо сейчас!..

 

Глава 5. Объект, как структура данных (35:16)

Объект — структура, инкапсулирующая в себя не только данные (свойства), но и функции (методы) для работы с ними.

Это делает ее невероятно удобной для олицетворения какой-либо сущности реального мира.

Именно поэтому в программировании так популярен объектно-ориентированный подход.

Так что изучение данной концепции невероятно важно.

После просмотра данной главы, Вы:
  • Освоите понятие объекта, свойства и метода;
  • Освоите понятие конструктора;
  • Научитесь описывать свойства объектов;
  • Научитесь использовать указатель this для доступа к свойствам и методам объекта;
  • Научитесь декларировать методы объектов, используя свойство prototype;
  • Научитесь создавать объекты, вызывая конструктор и используя ключевое слово new;
  • Научитесь получать значения свойств и вызывать методы объектов;
  • Освоите понятие статических свойств и методов для объекта;
  • Научитесь описывать статические свойства  и декларировать статические методы;
  •  Освоите понятие перегрузки методов;
  •  Узнаете об общих для всех объектов в JS методах toString() и valueOf();
  •  Перегрузите их с учетом ваших потребностей и особенностей вашего объекта;
  •  Создадите несколько методов, реализующих операции сравнения экземпляров объектов, также свойственных большинству объектов в JavaScript.

 

Глава 6. Встроенные объекты (01:28:58)

В этой главе Вы получите хорошее подспорье для решения большинства типовых задач.

Мы рассмотрим встроенные в JavaScript объекты, которые представляют собой основные типы и структуры данных.

Кроме того, нами будут рассмотрены методы этих объектов, знание которых сэкономит вам кучу времени в процессе разработки ваших сценариев.

Итак, в данной главе Вы:
  • Освоите понятие массива;
  • Научитесь создавать массивы несколькими способами;
  • Научитесь узнавать длину массива, используя свойство length;
  • Освоите большинство методов объекта Array(массив):

    • Методы добавления элементов в массив;
    • Методы извлечения элементов из массива;
    • Методы сортировки массива;
    • Метод slice, который поможет вам получить какую-либо часть от исходного массива;
  • Освоите объект Date, который будете использовать для работы с датой и временем;
  • Изучите несколько видов конструктора данного объекта, узнаете чем отличаются объекты, созданные при их использовании;
  • Узнаете об особенностях JS в работе с датой и временем;
  • Научитесь приводить к объекту Date строки временного формата, используя метод parse() данного объекта;
  • Создадите скрипт часов, на примере которого изучите методы:

    • Позволяющие с датой(год, месяц, число), которой проинициализирован текущий объект;
    • Позволяющие работать со временем(часы, минуты, секунды), которым проинициализирован текущий объект;
  • Изучите объект String и методы его инициализации;
  • Научитесь получать длину строки, используя свойство length данного объекта;
  • Освоите некоторое количество методов работы со строками:

    • Метод поиска символа в строке;
    • Метод поиска подстроки;
    • Методы, позволяющие выделить подстроку из более длинной;
    • Методы, которые позволят нам разбивать сроки на кусочки и склеивать полученный массив снова в единую строку;
    • Методы, которые позволят нам управлять регистром строк;
  •  Рассмотрите объект Math, который позволит выполнять нетривиальные математические операции;
  •  Изучите большинство методов данного объекта:

    • Методы для возведения в степень и извлечения корней;
    • Методы для округления чисел с плавающей точкой;
    • Методы, которые помогут определить максимальное и минимальное значение из некоторого набора;
    • Метод генерации случайного числа;
  • Создадите метод генерации случайного числа из заданного промежутка;
  • Научитесь получать значения математических констант, таких, как π и exp;
  • Научитесь приводить строки, в которых содержаться литеральные значения чисел к объекту Math, используя методы parseInt и parseFloat;  
  • Научитесь откладывать выполнение кода, используя глобальную функцию setTimeout, а при необходимости отменять отложенное выполнение с помощью функции clearTimeout ;
  • Научитесь повторно выполнять какой-либо код с заданным интервалом при помощи глобальной функции setInterval, а при желании прерывать циклическое исполнение кода функцией clearInterval.     

Всё это может стать Вашим — прямо сейчас!..

 

Глава 7. События (31:44)

События — основа любой динамики на web-странице.

Кто подскажет нашему с вами сценарию когда выполнять то или иное действие?

Причиной каких либо изменений могут служить 2 сущности: первая — пользователь; вторая — система, т.е. браузер.

Из этой главы Вы почерпнете знания, необходимые для отслеживания событий и их обработки:
  • Освоите понятия события и обработчика;
  • Изучите большинство событий, поддерживаемых браузерами;
  • Узнаете для каких элементов они характерны и в каких ситуациях могут быть использованы;
  • Научитесь привязывать обработчики к событиям тремя разными способами;
  • Создадите небольшое приложение, которое будет отслеживать и соответствующим образом реагировать на наиболее часто встречающиеся события — клики;
  • Создадите еще одно приложение(ролловер), которое будет заниматься отслеживанием движения курсора  и реагировать соответствующим образом, когда он войдет в область определенного элемента страницы.

 

Глава 8. DOM (48:21)

DOM (Объектная Модель Документа) — скелет любого web-приложения, каждый элемент Вашей разметки — DOM-узел.

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

В данной главе Вы:
  • Освоите понятие объектной модели документа(DOM), узнаете:

    • Что это;
    • Зачем нужно;
    • Как пришли именно к такой модели;
  • Освоите понятие узла DOM;
  • Изучите типы узлов и их персональные особенности;
  • Изучите терминологию DOM, узнаете что такое:

    • Элемент-родитель;
    • Элемент-потомок;
    • Дочерний элемент;
    • Сестринский элемент (sibling) ;
  • Создадите небольшое приложение в процессе создания которого научитесь:

    • Создавать новые DOM-элементы;
    • Создавать текстовые узлы, для добавления к элементам;
    • Создавать узлы-атрибуты, для добавления к элементам;
    • Добавлять и удалять DOM-узлы в существующую модель;
    • Вставлять и вырезать DOM-узлы на/с определенной позиции;
    • Заменять необходимые узлы вновь созданными;
    • Перемещать существующие узлы на новую позицию;

Всё это может стать Вашим — прямо сейчас!..

 

Глава 9. Работа с Cookie (23:23)

JavaScript не может работать не с базами данных, не с файлами.

Но необходимость веб-приложения хранить какие-либо временные данные еще никто не отменял.

Именно здесь нам на помощь и придут cookie-наборы, те самые «закрома», где Вы сможете хранить в невидимом для пользователя режиме данные, необходимые Вам для дальнейшей работы.

В результате изучения данной главы, Вы:
  • Освоите понятие cookie-набора и узнаете:

    • Зачем применяются cookie-наборы;
    • Какой объем данных в них можно хранить;
  • Изучите свойства, которыми характеризуется cookie-набор;
  • Изучите свойство document.cookie;
  • Создадите библиотеку функций для:

    • Установки cookie;
    • Удаления cookie;
    • Изменения cookie;
    • Чтения cookie;
  • В дальнейшем Вы сможете использовать эту библиотеку в любом из Ваших проектов!

 

Примеры (1:12:42)

В этой главе мы с вами мы с вами займемся закреплением всего ранее пройденного материала, а так же рассмотрим несколько новых вопросов.

Все это мы провернем в «боевых» условиях: превратим обыкновенный, статичный сайт в динамичное и дружелюбное веб-приложение.

Вот, чему Вы научитесь:
  • Создавать несколько видов динамических меню, основанных на JavaScript;
  • Обрабатывать несколько видов событий, которые не были рассмотрены в соответствующем разделе;
  • Узнаете, как манипулировать CSS-свойствами DOM-элементов с помощью JS;
  • Научитесь отслеживать нажатия клавиш и реагировать на них соответствующим образом;
  • Научитесь работать с формами:

    • Получать и устанавливать значения полей формы;
    • Проверять валидность данных, введенных пользователем;
    • При возникновении конфликтных ситуаций уведомлять пользователя о необходимости исправления введенных данных без помощи метода alert;
  • И многое другое.

 

Дополнительные материалы (32:03)

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

Мы рассмотрим вопросы, касающиеся отладки кода, его документирования и компрессии(для ускорения загрузки).

Итак, в этом разделе вы:
  • Освоите понятие документации;
  • Изучите формат комментариев JSDoc;
  • Изучите большинство тегов JSDoc;
  • Научитесь с помощью исполняемого модуля JSDoc генерировать документацию в формате HTML;
  • Освоите понятия компрессии и обфускации кода;
  • Научитесь использовать несколько различных инструментов для компрессии и обфускации:

    • JS Minifier;
    • JavaScript Compressor;
    • Google Closure Compiler;
  • Вы узнаете об особенностях и возможностях каждого из перечисленных выше инструментов;
  • Освоите понятия отладки, точки останова(break point) и стека вызовов функций;
  • Узнаете, как и для чего применять оператор debugger;
  •  Научитесь пользоваться такими инструментами для отладки, как:

    • Firebug;
    • Инструменты разработки, встроенные в Google Chrome;
  •  Научитесь задавать условия для точек останова;
  •  Научитесь отслеживать значения переменных в интересующий вас момент времени;
  •  Узнаете как отследить состояние интересующей Вас переменной в нужный момент времени;

Всё это может стать Вашим — прямо сейчас!..

 

Впечатляет, не правда ли?

Только представьте себе, сколько времени и сил Вам позволит сэкономить видеокурс «JavaScript. Больше, чем просто сайт»!

JavaScript. Больше чем просто сайт

Не трать время на пустые раздумья!
Заказывай НЕМЕДЛЕННО!

Кому будет полезен данный курс?


Частным предпринимателям, которые не могут себе позволить содержать в штате программиста и хотят научится самостоятельно создавать скрипты для своих коммерческих проектов!

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

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


 

Подумайте еще вот над чем…


Самый популярный сайт в Рунете — социальная сеть «Вконтакте» — считается одним из самых технологичных в русскоязычном сегменте.

В первую очередь — за счет своих скриптов, написанных на JavaScript!

Быстрый просмотр фотографий (пока Вы смотрите одну — вторая подгружается в буфер в фоновом режиме), моментальное обновление страницы «новости», «быстрые сообщения» и десятки других функций — все это реализовано на JavaScript!

То же самое относится к западному аналогу «Вконтакте» — социальной сети Facebook.

Программные продукты Google с каждым годом становятся все популярнее. Все чаще можно услышать фразы «Гугл — это наше все!», «без Гугла теперь никуда» и т.д.

Миллионы рядовых интернетчиков уже не представляют своей жизни без почтовика Gmail, сотни тысяч людей «подсели» на Google.Docs (бесплатный онлайновый аналог майкрософтовского «офиса»), любой уважающий себя веб-мастер уже давно установил на свой сайт счетчик Google.Analytics.

В чем секрет такого феноменального успеха?

В том, что в Google первыми осознали всю мощь, которую таит в себе технология JavaScript!..

В Google был создан крупнейший штат высококлассных JavaScript-программистов.

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

Приложения, «думающие» на несколько шагов вперед и избавляющие нас (пользователей) от томительного ожидания загрузки…

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

Приложения, которые полюбились миллионам пользователей по всему миру!..

По данным Black Duck Software 36 % проектов, релизы которых состоялись с августа 2008 по август 2009, включают JavaScript — наиболее часто используемый язык программирования с быстрорастущей популярностью Источник
Во второй день конференции MIX10, проведенной в Москве 17 марта 2010, Microsoft подчеркнула стремление поддерживать jQuery и OData. Microsoft также сообщила, что будет способствовать разработке новых возможностей и улучшений в JavaScript библиотеке jQueryИсточник


К чему это я?


Да к тому, что JavaScript в ближайшие годы будет только набирать популярность!

А значит, и профессия JavaScript-программиста будет крайне востребована на рынке труда!

Чем скорее Вы начнете осваивать эту технологию, тем больше у Вас шансов не только стать высококлассным специалистом, но найти высокооплачиваемую работу в компании своей мечты.

Конечно, для этого недостаточно пройти один-единственный обучающий курс.

Я был бы последним лжецом, если бы пообещал Вам, что мой курс «JavaScript. Больше, чем просто сайт!» вмиг обучит Вас программировать так, что вербовщики Google будут, стоя на коленях у порога Вашего дома, упрашивать Вас стать начальником передового отдела разработки веб-приложений их компании.

Нет! Чтобы стать хорошим программистом придется много учиться, упорно трудиться и ежедневно практиковаться — Вы это и сами знаете!

Но вспомните, насколько сложен первый шаг…

Как долго Вы не решались изучить HTML и CSS, когда только начинали, мотивируя это тем, что «сложно», «долго» и «непонятно»? И насколько все стало проще, когда Вы нашли-таки толковый самоучитель по этим технологиям и начали делать первые шаги?..

Сейчас — у Вас такая же ситуация с JavaScript’ом!

И мой курс «JavaScript. Больше, чем просто сайт» станет тем первым шагом, который в РАЗЫ облегчит дальнейшее обучение, сделает весь процесс простым и веселым!

Просто выполняя по шагам все те упражнения, которые я подготовил, Вы  сами того не заметив, обучитесь БАЗОВЫМ техниками и приемам программирования на JavaScript!

Без нудной теории, без лишней зубрежки, без необходимости посещать дорогостоящие курсы и семинары, вообще безо всякой необходимости вставать из-за своего стола — Вы начнете писать свои собственные, уникальные скрипты и получать результаты!

Вы будете щелкать новые учебники как орешки, только углубляя и расширяя свои знания и навыки, становясь все более и более профессиональным программистом (неминуемо увеличивая собственные доходы!)

Больше ни один самый мудреный самоучитель, ни одна техническая спецификация и ни один исходный JS-код не покажется Вам сложным и непонятным!

Но это потом — а сейчас Вам просто жизненно необходимо сделать первый шаг!

А именно — приобрести и изучить видеокурс «JavaScript. Больше, чем просто сайт»!

Вы просто обязаны начать-таки освоение столь интересной и перспективной темы, как JavaScript!..

Решайтесь!..


Побеждают — решительные!
Не трать время на пустые сомнения!