Сценарии JavaScript в активных страницах Web



   Ремонт стиральной машины москва - выезд 0 рублей по всей в москве. | новости        Коллекция порно видео в HD

Парадигмы программирования

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

Многоликое программирование
Определение языков программирования
Ассемблер
Машинно ориентированное программирование
Языки макрообработки текстов
Языки управления процессами
Функциональное программирование
Стандартное (системное) программирование
Декларативное программирование
Объектно-ориентированное программирование
Языки параллельного программирования
Функции высших порядков
Оптимизация программ
Разработка программ
Распределенные информационные системы

Описание процессора i8086 для программиста

Процессор 8086 стал первым 16-разрядным микропроцессором, разработанным фирмой Intel. Он был выпущен в 1978 году и содержал 29 тыс. транзисторов (для сравнения: в первых Pentium’ах число транзисторов превышало 3 млн.). Почти одновременно был выпущен микропроцессор 8088. С точки зрения программиста, эти микропроцессоры абсолютно идентичны, однако микропроцессор 8086 имел 16-разрядную шину данных, а 8088 – 8-разрядную. Благодаря этому обстоятельству микропроцессор 8088 мог легко использоваться совместно с большим количеством разнообразных периферийных микросхем, разработанных к тому времени и ориентированных на работу с 8-разрядными микропроцессорами, в том числе с микропроцессором 8080 фирмы Intel (советский аналог – К580ВМ80). Однако его производительность оказывалась ощутимо меньше, чем у микропроцессора 8086, поскольку в процессе работы ему требовалось практически в два раза больше обращений к памяти.

Продолжение

Языки и исчисления

Центральная идея математической логики восходит еще к Лейбницу и состоит в том, чтобы записывать математические утверждения в виде последовательностей символов и оперировать с ними по формальным правилам. При этом правильность рассуждений можно проверять механически, не вникая в их смысл.
Усилиями большого числа математиков и логиков второй половины XIX и первой половины XX века (Буль, Кантор, Фреге, Пеано, Рассел, Уайтхед, Цермело, Френкель, Гильберт, фон Нейман, Гедель и другие) эта программа была в основном выполнена. Принято считать, что всякое точно сформулированное математическое утверждение можно записать формулой теории множеств (одной из наиболее общих формальных теорий), а всякое строгое математическое доказательство преобразовать в формальный вывод в этой теории (последовательность формул теории множеств, подчиняющуюся некоторым простым правилам). В каком-то смысле это даже стало определением: математически строгим считается такое рассуждение, которое можно перевести на язык теории множеств.
Так что же, теперь математики могут дружно уйти на пенсию, поскольку можно открывать математические теоремы с помощью компьютеров, запрограммированных в соответствии с формальными правилами теории множеств? Конечно, нет, причем сразу по нескольким причинам.

Введение
Высказывания и операции
Схемы из функциональных элементов
Исчисление высказываний
Поиск контрпримера и исчисление секвенций
Языки первого порядка
Выразимость в арифметике
Арифметика Пресбургера
Игра Эренфойхта
Общезначимые формулы
Примеры выводимых формул
Предваренная нормальная форма
Аксиомы равенства
Неполные и неразрешимые теории
Ультрафильтры и компактность

Основы программирования на JavaScript

В JavaScript строка является любым фрагментом текста. Как и многие другие объекты в JavaScript, строки можно определять несколькими различными способами:
var myString = 'Hello, World!'; var myString = new String('Hello, World!');
Первый метод используется наиболее часто. Второй метод применяется редко и только для гарантии, что получаемый объект является строкой. Например:
var n = 5; var s = new String(n*20);
В этом примере s будет строкой " 100". Если просто задать s как n*20, то s будет содержать число 100. Однако поскольку JavaScript является слабо типизированным языком, то эти различия не будут существенно влиять на то, что вы делаете.
Строковые объекты (var n = new String('Hello World')) технически являются в Internet Explorer более медленными при некоторых операциях, чем строковые литералы (var n = 'Hello World'). Однако это поведение совершенно противоположно в других браузерах. В любом браузере различие редко бывает настолько заметно, чтобы об этом беспокоиться.

Строки
Тот факт, что функции indexOf и lastIndexOf возвращают -1, если строка не существует, является очень полезным и позволяет использовать эти функции для достаточно распространенной задачи - проверки того, что одна строка существует внутри другой.

Строки
Строки - 2
Строки - 3
Числа
Числа - 2
Массивы
Массивы - 2
Строки
Строки - 2
Числа

Изображение: Блок-схема документа
Изображение может помочь лучше понять отношения предок-потомок в этом коде. Необходимо также отметить атрибуты в некоторых из этих тегов. Например, тег TABLE (table border="0" cellspacing="2" cellpadding="5") имеет 3 заданых атрибута: border, cellspacing и cellpadding. При изменении DOM часто бывает необходимо изменить эти атрибуты. Можно, например, изменить атрибут SRC тега IMG, чтобы изменить выводимое изображение.

Создание эффекта изменения изображения
Добавление и удаление элементов
Добавление и удаление элементов - 2
Добавление и удаление элементов - 3
Элементы потомки
Элементы потомки - 2
Работа с текстом
Работа с текстом - 2
XML
Изображение: Блок-схема документа

Объект Window
Положение окна на экране пользователя редко бывает необходимо, но два других свойства, location и opener, будут очень полезны. Свойство window.location выполняет две функции. Если изменить его с помощью JavaScript, например, window.location='htmlgoodies.com', то браузер будет перенаправлен на эту страницу. Чтение window.location выдает адрес текущего документа. Зачем это нужно знать?

Объект Window
Объект Window - 2
Объект Window - 3
SetTimeout и setInterval
Window.opener
Объект Document (window.document)
Document.body и document.documentElement
Title, referer
Сookie
Сookie - 2

Основы JavaScript
Почти каждый современный язык программирования имеет некоторый метод записи объектно-ориентированного (ОО) кода. Если вы знакомы с такими языками, как C, Java, VB, php или подобными, то должны быть знакомы и со структурой Class этих языков. Классы в этих языках позволяют быстро создавать объекты с одинаковыми свойствами и методами, не требуя при этом заново определять все эти свойства и методы. В терминах структур мы имеем классы, а внутри этих классов - функции и переменные, а внутри каждой из этих функций - дополнительные переменные.

New Object и объектные литералы
New Object и объектные литералы - 2
Прототипирование
Прототипирование - 2
Прототипирование - 3
Переменные Private, Public и Static
Переменные Private, Public и Static - 2
Основы JavaScript
New Object и объектные литералы
New Object и объектные литералы - 2

Наследование
По сути наследование позволяет определить объекты "предки" и "потомки". Потомок наследует все свойства своего предка. Можно было создать, например, функцию "Animal", "Pet" или "Mammal". Обе функции Cat и Dog обладали бы многими свойствами функции предка Animal, и нам пришлось бы писать этот код один раз.

Наследование
Наследование - 2
Замыкание
Замыкание - 2
Замыкание - 3
Наследование
Наследование - 2
Замыкание
Замыкание - 2
Замыкание - 3

Создание объекта XMLHttp
При создании запроса AJAX прежде всего необходимо создать объект XMLHTTP. Netscape/Firefox, Opera и другие браузеры имеют этот объект встроенным. Internet Explorer использует ActiveXObject. Поэтому мы создадим одну функцию для работы со всеми этими браузерами

Создание объекта XMLHttp
Создание объекта XMLHttp - 2
XML, JSON или текст
XML, JSON или текст - 2
XML, JSON или текст - 3
XML, JSON или текст - 4
Пример со списком контактов
Пример со списком контактов - 2
Пример со списком контактов - 3
Создание объекта XMLHttp

Синтаксические ошибки
JavaScript имеет два основных уровня обработки ошибок: синтаксические ошибки и ошибки времени выполнения. Синтаксические ошибки возникают до выполнения кода JavaScript, означая в основном, что код невозможно компилировать.

Синтаксические ошибки
Синтаксические ошибки - 2
Ошибки времени выполнения
Ошибки времени выполнения - 2
Window.onerror
Try/Catch/Finally и Throw
Try/Catch/Finally и Throw - 2
Обработка ошибок в AJAX
Обработка ошибок в AJAX - 2
Синтаксические ошибки

Стек
При вызове функции копия множества переменных, которые нужны ей для работы, сохраняется в памяти. Если функция вызывается рекурсивно, то другая копия всех этих переменных сохраняется в памяти, затем еще одна и т.д. Эти копии переменных сохраняются в так называемом стеке. Первая копия находится внизу, следующая поверх нее, и т.д. К сожалению, существует ограничение на размер стека. В большинстве браузеров этот предел определен где-то в районе 1000. Это означает, что для функции заливки сетка могла бы содержать до 1000 квадратов.

Стек
Создание собственного стека
Применение рекурсии
Стек
Создание собственного стека
Применение рекурсии

AJAX = Асинхронный JavaScript и XML
AJAX является сокращением от "Asynchronous JavaScript And XML" (Асинхронный JavaScript и XML). AJAX является не новым языком программирования, а просто новым способом создания Web-приложений, которые будут лучше, быстрее, и более интерактивными. AJAX использует JavaScript для отправки и получения данных при взаимодействии Web-браузера и Web-сервера.

AJAX является технологией браузера
AJAX основан на открытых стандартах
Технология AJAX улучшает приложения Интернет
AJAX можно использовать прямо сейчас
AJAX использует XML и запросы HTTP
Пример использования AJAX
Пример AJAX
Описание примера
Форма HTML
Функция showHint()

Введение в XHTML
XHTML является сокращением от английского EXtensible HyperText Markup Language, что означает "Расширяемый язык разметки гипертекста". XHTML предназначен для замены HTML. XHTML почти совпадает с HTML 4.01. XHTML является более строгой и четкой версией языка HTML.

XHTML рекомендован консорциумом W3C
Все новые браузеры поддерживают XHTML
Преобразование Web-сайта на XHTML
Что содержится в данном руководстве
Зачем нужен XHTML?
Зачем нужен XHTML?
Различия между XHTML и HTML
Как переходить к использованию XHTML
Наиболее важные различия
Элементы XHTML - вложение

Сценарии JavaScript в активных страницах Web

Многие современные серверы Web являются активными или содержат активные страницы, которые взаимодействуют с пользователем. Описанные в только что упомянутом 29 томе программы CGI и приложения ISAPI позволяют создавать активные серверы Web, способные получать данные от удаленного пользователя, обрабатывать их и посылать результат обработки обратно в виде документа HTML. В качестве примера активных приложений, работающих на сервере Web, можно назвать чрезвычайно популярные счетчики посещений, гостевые книги, базы данных, доступные через Internet и так далее.
Что же касается активных страниц Web, то с их помощью также можно создавать диалоговые приложения, однако обработка введенных данных выполняется не на сервере, а на рабочей станции пользователя, то есть локально. Активными мы будем называть документы HTML, которые содержат в себе аплеты Java, а также программы, составленные на таких языках, как JavaScript и VBScript.

Семь вариаций на тему “Hello, world!”
Что касается аплетов и полноценных приложений Java, то им посвящены тома 30 и 32 “Библиотеки системного программиста”, которые называются “Создание приложений Java. Часть 1” и “Создание приложений Java. Часть 2”, соответственно. Размещая на страницах сервера Web аплеты Java, вы можете выполнять на рабочей станции достаточно сложную локальную обработку данных. Реализация такой обработки с помощью программ CGI или приложений ISAPI была бы затруднительной или вовсе невозможной.

Вариация 1: самый простая
Вариация 1: самый простая - 2
Вариация 2: с секретным исходным текстом
Вариация 2: с секретным исходным текстом - 2
Вариация 3: с переменной и функциями
Вариация 3: с переменной и функциями - 2
Вариация 4: создание страницы “на лету”
Вариация 5: с диалоговой панелью
Вариация 6: обработка события
Вариация 7: с определением типа браузера

Переключатель radio
Назначение параметров NAME, VALUE и CHECKED переключателя radio такое же как и назначение аналогичных параметров переключателя checkbox. Отличие заключается в том, что все переключатели radio, принадлежащие к одной группе, должны иметь одинаковые имена, определенные параметром NAME. Что же касается переключателей checkbox, то если их несколько, то все они должны называться по-разному

Свойства объекта radio
Методы объекта radio
Пример формы с переключателями
Пример формы с переключателями - 2
Пример формы с переключателями - 3
Пример формы с переключателями - 4
Пример формы с переключателями - 5
Пример формы с переключателями - 6
Список select
Свойства объекта select