Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Дипломчик_Юркин.docx
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
3 Мб
Скачать
☆
  1. Экспериментальная часть

    1. Базовые понятия для написания скрипта

Этапы решения задачи на ЭВМ. Работа по решению любой задачи с использованием компьютера делится на следующие этапы:

1. Постановка задачи.

2. Формализация задачи.

3. Построение алгоритма.

4. Составление программы на языке программирования.

5. Отладка и тестирование программы.

6. Проведение расчетов и анализ полученных результатов.

Часто эту последовательность называют технологической цепочкой решения задачи на ЭВМ. Непосредственно к программированию в этом списке относятся пункты 3, 4, 5.

На этапе постановки задачи должно быть четко сформулировано, что дано и что требуется найти. Здесь очень важно определить полный набор исходных данных, необходимых для получения решения.

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

Третий этап — построение алгоритма. Опытные программисты часто сразу пишут программы на языках, не прибегая к каким-либо специальным способам описания алгоритмов (блок-схемам, псевдокодам). Однако в учебных целях полезно использовать эти средства, а затем переводить полученный алгоритм на язык программирования.

Первые три этапа предусматривают работу без компьютера. Дальше следует собственно программирование на определенном языке, в определенной системе программирования. Последний (шестой) этап — это использование уже разработанной программы в практических целях.

Таким образом, программист должен обладать следующими знаниями и навыками:

• уметь строить алгоритмы;

• знать языки программирования;

• уметь работать в соответствующей системе программирования.

Основой программистской грамотности является развитое алгоритмическое мышление.

Алгоритм — это последовательность команд управления каким-либо исполнителем.

Данные и величины

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

Для успешного освоения программирования необходимо усвоить следующее правило: всякая величина занимает свое определенное место в памяти ЭВМ (иногда говорят — ячейку памяти).

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

Независимо от того, на каком языке программирования будет написана программа, алгоритм решения любой задачи на ЭВМ может быть составлен из команд:

  • присваивания;

  • ввода;

  • вывода;

  • обращения к вспомогательному алгоритму;

  • цикла;

  • ветвления.

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

Следование — это линейная последовательность действий:

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

Ветвление — алгоритмическая альтернатива. Управление передается одному из двух блоков в зависимости от истинности или ложности условия. Затем происходит выход на общее продолжение:

Неполная форма ветвления имеет место, когда на ветви «нет» пусто:

Цикл — повторение некоторой группы действий по условию. Различаются два типа цикла. Первый — цикл с предусловием (цикл-пока):

Пока условие истинно, выполняется серия, образующая тело цикла.

Второй тип циклической структуры — цикл с постусловием (цикл-до):

Здесь тело цикла предшествует условию цикла. Тело цикла повторяет свое выполнение, если условие ложно. Повторение кончается, когда условие станет истинным.

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

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

Такие блок-схемы легко читаются. Их структура хорошо воспринимается зрительно. Структуре каждого алгоритма можно дать название. У приведенных на рис. 47 блок-схем следующие названия:

1. Вложенные ветвления. Глубина вложенности равна единице.

2. Цикл с вложенным ветвлением.

3. Вложенные циклы-пока. Глубина вложенности — единица.

4. Ветвление с вложенной последовательностью ветвлений на положительной ветви и с вложенным циклом-пока на отрицательной ветви.

5. Следование ветвления и цикла-до.

6. Вложенные циклы. Внешний — цикл-пока, внутренний — цикл-до.

    1. Объектная модель InDesign

Все современные приложения (и InDesign в том числе) используют объектно-ориентированную модель для доступа к воздействуемым объектам.

Объектно-ориентированное программирование — парадигма программирования, в которой основными концепциями являются понятия объектов и классов. Класс является описываемой на языке терминологии исходного кода моделью ещё не существующей сущности (объекта). Фактически он описывает устройство объекта, являясь своего рода чертежом. Говорят, что объект — это экземпляр класса. При этом в некоторых исполняющих системах класс также может представляться некоторым объектом при выполнении программы посредством динамической идентификации типа данных. Обычно классы разрабатывают таким образом, чтобы их объекты соответствовали объектам предметной области. Объект — это сущность, которой можно посылать сообщения, и которая может на них реагировать, используя свои данные. Объект — это экземпляр класса. Данные объекта скрыты от остальной программы.

Объектно-ориентированное программирование строится на 4 основных принципах:

  • Абстракция — это способ выделить набор значимых характеристик объекта, исключая из рассмотрения незначимые;

  • Инкапсуляция — это свойство системы, позволяющее объединить данные и методы, работающие с ними в классе, и скрыть детали реализации от пользователя;

  • Наследование — это свойство системы, позволяющее описать новый класс на основе уже существующего с частично или полностью заимствующейся функциональностью. Класс, от которого производится наследование, называется базовым, родительским или суперклассом. Новый класс — потомком, наследником или производным классом;

  • Полиморфизм — это свойство системы использовать объекты с одинаковым интерфейсом без информации о типе и внутренней структуре объекта.

Любая коллекция объектов InDesign является по своему внутреннему строению массивом JavaScript. К каждому элементу массива можно обращаться несколькими способами. Самый распространенный — по порядковому номеру (или индексу), задавая его в квадратных скобках. Счет ведется с 0: array [0] —самый первый элемент, array[array.length-1] — последний.

Кроме использования порядковой нумерации, предусмотрена относительная, при которой можно полностью отказаться от указания конкретного индекса объекта. Естественно, при этом предполагается, что базовый объект должен быть в любом случае определен. Используется, как правило, только в тех случаях, когда получение индекса по каким-либо причинам затруднено. Наиболее яркий пример — работа на уровне абзацев (они — понятие абстрактное, вычисляются исключительно по признаку конца строки)

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

Таблица 0.1

Термин из диаграммы

Application

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

Application defaults

настройки приложения по умолчанию такие, как цвета, стили абзацев, стили объекта

Application events

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

Application menus

Меню, подменю и контекстные меню отображающееся в пользовательском интерфейсе InDesign.

Application methods

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

Application preferences

Например, настройки текста, настройки экспорта PDF, а также настройки документа. Многие настройки объектов также существует на уровне документа.

Application properties

Свойства приложения, например, полный путь к программе и имя пользователя

Books

Коллекция открытых книг.

Document

документ InDesign

Document defaults

Настройки документ по умолчанию, такие как цвет, стили абзаца форматирование текста.

Document elements

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

Document events

События, которые происходят на уровне документов, таких как импорт текста.

Document methods

Действия документа, например, закрытие документа, печати документа и экспорт документов.

Document preferences

Предпочтениях документов, таких как руководства предпочтений, вид предпочтений, а также документ предпочтений.

Document properties

Например, в имени документа, количество страниц, и нулевая точка расположения.

Documents

Коллекция открытых документов.

Libraries

Коллекция открытых библиотек.

Page

Одна страница

Page items

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

Pages or spreads

Страница или разворот в InDesign документе.

Stories

Текста в InDesign документе.

Text objects

Символы, слова, строки, абзацы и колонки текста являются примерами текстовых объектов в InDesign.

Работа скрипта