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

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

Именно поэтому, когда Никита Королёв предложил мне создать обучающий курс по 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!..

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


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