- •1.Архитектура Клиент-Сервер. Взаимодействие клиента и сервера в сети интернет. Основные понятия языков разметки: sgml, html, xhtml, dhtml, xml.
- •2.Програмное обеспечение клиента и сервера. Взаимодействие веб-клиента и серверного программного обеспечения. Протоколы обмена данными.
- •5. Язык js. Его возможности и ограничения. Лексемы. Идентификаторы. Ключевые слова и зарезервированные слова. Типы данных. Произведение типов. Константы. Переменные.
- •6. Локальные и глобальные переменные. Массивы. Обработка элементов массива и способы вывода результата. Организация ассоциативных массивов в js.
- •7. Массив как объект. Встроенные методы для работы с массивами. Добавление и удаление элементов массива.
- •8. Каскадные таблицы стилей css: основные понятия и определения. Селекторы, свойства, аргументы. Селекторы тэгов. Классы стилей. Способы подключения таблицы стилей. Возможности css3.
- •9. Интерактивное управление динамическим состоянием объектов. Псевдоклассы и псевдоэлементы.
- •10. Условные операторы if, if…else. Оператор switch. Способы обработки исключительных ситуаций. Оператор instanceof в js.
- •11. Операторы цикла for, for..In, while, do..While, break, continue.
- •12. Понятие функций в js. Создание функций. Использование параметров. Передача объекта по ссылке в функциях.
- •13. Встроенные функции в объекты js (window, document, array и др.). Встроенные функции для взаимодействия с пользователем в js.
- •14. Рекурсивные функции и анонимные функции в js. Функции как объекты. Их назначение и примеры использования. Функции обработанного вызова (callback). Их назначение и параметры использования.
- •15. Объекты js. Понятие объекта. Виды объектов. Создание пользовательских объектов js, и работа с ним.
- •1. Создание прямого экземпляра объекта
- •2. Создание конструктора объекта
- •16. Наследование в js на основе концепций прототипноориентированного языка. Свойство prototype. Добавление свойств и методов к конструкторам объектов.
- •17. Создание и наследование классов в js на основе стандартов Ecma 6.
- •18. Свойства объектов, методы, события. Добавление, удаление, доступ к свойствам. Создание конструкторов и их роль для новых свойств объектов.
- •19. Встроенные методы для работы со строковыми объектами. Работа с регулярными выр-ми. Возможности обработки строковых данных в js.
- •20. Браузеры и их функциональные возможности. Особенности реализации web-приложений в разных браузерах. Иерархия объектов браузера.
- •21. Понятие и структура bom. Объекты верхнего уровня.
- •22. Работа с окнами. Объект Window. Свойства окна. Создание, открытие и закрытие окон. Основные методы и свойства окон.
- •23. Понятие иерархической модели dom. Варианты поиска элементов.
- •24. Определение событий формы. Создание элементов формы. Методы для работы с формами.
- •25. Использование набора многократно используемых объектов и функций библиотек js (jQuery, Prototype, Mootools, Dojo) при разработке веб-приложений.
- •26. Работа с событиями экрана, клавиатуры, мыши в js. Добавление метода в html dom addEventListener().
- •27. Хранение данных на стороне клиента. Виды хранения. Преимущества и недостатки сохранения данных на стороне клиента.
- •Cookie - это специальные файлы, создаваемые веб - сервером и хранящиеся на компьютере клиента. Данные передаются серверу и обратно. Плюс – простота.
- •Технология Web Storage
- •28. Особенности использования Cookie в js. Сохранение и уничтожение данных с помощью Cookie.
- •29. Использование html5 Application Cache для хранения данных на стороне клиента. Возможности и ограничения html5 Application Cache.
- •30. Использование html5 Web Storage для сохранения данных на клиентской стороне. Локальное и сессионное хранилище, их создание, использование и особенности.
- •31. Технология Ajax для передачи данных в фоновом режиме. Объект xmlHttpRequest. Обработка ответов от сервера.
- •32. Особенности хранения данных с помощью WebSql. Метод executeSql(). Организация табличного хранения данных. Внесение и удаление данных из таблиц.
- •34. Особенности применения паттернов проектирования (mvc,mvvm,mvp) в js.
- •35.Использование паттерна mvp на основе библиотек Backbone и AngularJs.
- •37. Технология динамического обращения к серверу без перегрузки всей страницы. Передача данных на страницу данных в формате html, .Txt, xml и json.
- •38. Особенности функционального программирования в js. Метод bind(), немедленно вызываемые функции, самоопределяющиеся функции.
- •39. Функции замыкания и обратного вызова (callback) в js. Роль функций обратного вызова в организации асинхронного обмена данными (на примере Node.Js).
- •40. Управление зависимостями: принципы модульного программирования в js. Концепции amd.
- •41. Использование модульного подхода к программированию в js на примере работы с библиотекой Require.Js.
- •42. Менеджер задач (на примере Grunt). Варианты заданий.
- •43. Назначение и функции пакетных менеджеров Bower и npm.
- •44. Платформа Node.Js и ее возможности. Программирование на стороне сервера.
- •45. Использование документно-ориентированных баз данных в js. Организация хранения данных на примере MongoDb.
- •46. Ключевые моменты оценки качества веб-проектов. Практические методы client-side оптимизации.
- •1.Архитектура Клиент-Сервер. Взаимодействие клиента и сервера в сети интернет. Основные понятия языков разметки: sgml, html, xhtml, dhtml, xml.
7. Массив как объект. Встроенные методы для работы с массивами. Добавление и удаление элементов массива.
В JS объекты и массивы обрабатываются практически одинаково, поскольку массивы - это просто особый тип объекта.
Метод объекта в JS - это просто функция, которая добавлена в ассоциативный массив.
Встроенные методы:
• pop() удаляет последний элемент и возвращает удаленный элемент.
• push() добавляет в конец массива произвольное количество элементов, которые он принимает в качестве параметров, возвращает длину нового увеличенного массива.
• shift() удаляет нулевой элемент массива и возвращает удаленный элемент.
• unshift() добавляет в начало массива произвольное количество элементов, которые он принимает в качестве параметров, возвращает длину нового увеличенного массива.
• split(s), который позволяет превратить строку в массив, разбив ее по разделителю s. У метода split есть необязательный второй аргумент - ограничение на количество элементов в массиве. Если их больше, чем указано - остаток массива будет отброшен.
• join(str) делает в точности противоположное split. Он берет массив и склеивает его в строку, используя str как разделитель.
Метод splice() умеет все: удалять, вставлять, заменять элементы - по очереди и одновременно. Его синтаксис:
arr.splice (index [deleteCount, elem1, ..., elemN])
Удалить deleteCount элементов, начиная с номера index, а затем вставить elem1, ..., elemN на их место. Возвращает массив из удалённых элементов.
Метод slice(begin, end) копирует участок массива от begin до end, не включая end.
• Метод sort() сортирует массив на месте. Для указания своего порядка сортировки в метод sort(fn) нужно передать функцию fn от двух элементов, которая умеет сравнивать их.
• Метод reverse() меняет порядок элементов в массиве на обратный.
• Метод concat (value1, value2, … valueN) создаёт новый массив, в который копируются элементы из arr, а также value1, value2, ... valueN. Пример:
var arr = [1, 2];
var newArr = arr.concat(3, 4);
alert(newArr); // 1,2,3,4
• Метод indexOf (searchElement[, fromIndex]) возвращает номер элемента searchElement в массиве arr или -1, если его нет. Поиск начинается с номера fromIndex, если он указан. Если нет — с начала массива.
• Метод lastIndexOf (searchElement[, fromIndex]) ищет справа-налево: с конца массива или с номера fromIndex, если он указан.
• every() возвращает true, если все элементы массива удовлетворяют некоторому условию и false в противном случае.
8. Каскадные таблицы стилей css: основные понятия и определения. Селекторы, свойства, аргументы. Селекторы тэгов. Классы стилей. Способы подключения таблицы стилей. Возможности css3.
Стилем или CSS называется набор параметров форматирования, который применяется к элементам документа, чтобы изменить их внешний вид.
Способы добавления:
1. связанные стили <link rel="stylesheet" href="1.css">
2. глобальные стили просто <style> внутри html
3. внутренние стили в самих тегах.
4. @import url("1.css");
Селектор – это некоторое имя стиля, для которого добавлены параметры форматирования.
/*..*/-комментарии.
Цвета: #ffee00, red. Rgb(255,0,0).
Селекторы тегов:
Тег {свойство: значение; свойство: значение;}
Классы стилей:
Классы применяют, когда необходимо определить стиль для индивидуального элемента веб-страницы.
.Имя класса {св-во1: зн-е; св-во2: зн-е;}
Идентификатор определяет уникальное имя элемента, который используется для обращения к нему через скрипты.#имя id
Возможности CSS3:
1. background: linear-gradient(to top, #fefcea, #f1da36);
2. Закругленные уголки у блоков border-radius:12px;
3. box-shadow: 0px 0px 4px #000000;inset внутрь элемента
4. rgba (альфа-прозрачность для цветов) background: rgba (200, 54, 54, 0.5);
5. псевдоэлементы: after\before
6. прозрачность оpacity.
7. кнопки submit
8. ротация картинок
