Вы находитесь на странице: 1из 5

Оглавление

Языки программирования и типы данных..............................................................................................................1


Языки программирования и операторы..................................................................................................................1
Язык PDL, структурное программирование.............................................................................................................1
Оформление программы (читабельность)..............................................................................................................2
Формальная и не формальная постановки задачи.................................................................................................2
Подпрограммы и процесс разработки сложных или больших по объему программ..........................................2
Механизм внутреннего представления подпрограмм...........................................................................................2
Спецификация данных, спецификация функций программы. Проектирование программы..............................2
Основы технологии программирования и ее этапы...............................................................................................2
Свойства алгоритма и его запись.............................................................................................................................3
Список формальных параметров. Механизм передачи параметров....................................................................3
Тестирование. Метод эквивалентных разбиений...................................................................................................3
Тестирование. Исчерпывающее и убеждающее тестирование.............................................................................4
Правильные и неправильные классы эквивалентности. Пример..........................................................................4
Анализ граничных условий. Предположение об ошибке.......................................................................................4
Граничные условия....................................................................................................................................................4
Области объявления и действия имен.....................................................................................................................5

Языки программирования и типы данных.


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

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

Языки программирования и операторы.


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

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

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

Язык PDL, структурное программирование.


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

Структурное программирование – это хорошо структурированные программы, удобные для чтения и


понимания, а также исправления. Структурное программирование предлагает строить любую
программу из логических структур, таких как следование, ветвление, повторение, и других.
Оформление программы (читабельность)
Это как набор правил:
1) Не использовать похожие имена переменных,
2) Писать программы просто и ясно,
3) Оставлять в программе место между основными частями
4) Соблюдать абзацные отступы в условиях и циклах,
5) Писать комментарии

Формальная и не формальная постановки задачи.


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

Формальная постановка задачи – это когда мы уже пишем описание программы и её алгоритм на
языке математики и логики. Этот этап может быть необязателен, если на первом этапе всё и так ясно
(как решать поставленную задачу)

Подпрограммы и процесс разработки сложных или больших по объему программ.


Подпрограмма – это часть программы, которая написана один раз, а используется в программе
много, ну, т.е. хотя бы больше одного раза.

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

Ещё можно, вместо ещё не написанного куска второстепенного кода, вставить заглушку, и отложить
его разработку на потом.

Механизм внутреннего представления подпрограмм.


Если применяется подстановка текста подпрограммы, то такую подпрограмму называют
макроопределением, а сам процесс подстановки - макроподстановка, результат подстановки -
макрорасширение. Аппарат макроподстановок хорош тем, что программист имеет возможность
создать большие по размеру программы, используя небольшие тексты определений макро и
исходной программы.
Подстановка в текст программы макрорасширения, может увеличить текст в 2 - 4 раза, но зато
скорость выполнения программы может быть наивысшей.

Спецификация данных, спецификация функций программы. Проектирование программы.

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

Проект программы – это не сама программа, а лишь её набросок, в котором чётко оговорены все
функции нужной программы, например, как некоторые её подзадачи.
Язык проектирования может быть естественным, или промежуточным языком.

Основы технологии программирования и ее этапы.


Технология программирования - это последовательность процессов, исполняемых программистами в
целях разработки алгоритма решения задачи, ее кодирования на языке программирования,
последующего тестирования программ, начинающаяся с постановки задачи и заканчивается сдачей
программного продукта в эксплуатацию. Технология программирования состоит из нескольких
этапов.
1. Неформальная постановка задачи; //На этом этапе происходит анализ постановки задачи,
ее предметной области
2. Формальная постановка задачи; //описание (формализация) задачи на языке математики и
формальной логики.
3. Разработка или поиск алгоритма решения задачи; //данный этап необходим для перехода
от формальной постановки задачи к написанию программы
4. Спецификация исходных данных программы; //Здесь оговариваются условия, как
размещать данные на внешних носителях
5. Спецификация функций программы; //Здесь указываются все случаи, которые могут
возникнуть при решении задач на ЭВМ. Каждый такой особый случай оформляется как
некоторая функция.
6. Проектирование программы;
7. Программирование ( в узком смысле);
8. Отладка программы;
9. Тестирование программы;
10. Опытная эксплуатация.

Свойства алгоритма и его запись.


Алгоритм – набор четко определенных правил для решения задачи за конечное число шагов.
Свойства алгоритма: 1) Дискретность – процесс решения задачи, определяемый алгоритмом, разбит
на отдельные элементарные действия. 2) Определенность – строгая определенность каждого
действия алгоритма. 3) Результативность – свойство алгоритма обеспечить получение нужного
результата за конечное число шагов. 4) Понятность – соответствие команд алгоритма системе
команд исполнителя. 5) Массовость – алгоритм решения задачи должен разрабатываться так, чтобы
его можно было применить для решения других задач такого же типа при всех допустимых
значениях исходных данных. Способы записи: 1) На естественном языке. 2) С помощью рисунка.
3) С помощью псевдокода. Псевдокод занимает промежуточное значение между естественным и
формальным языками.

Список формальных параметров. Механизм передачи параметров.


Список формальных параметров - это последовательность из одного или нескольких подсписков.
(Подсписок имен содержит одно или несколько имен одного типа <список имен>: <имя типа>,
(параметр-процедура).) Передача значений от фактического к формальному параметру может быть
двух видов: “по значению” или “по ссылке”; По окончанию работы подпрограммы значения
формальных параметров, даже если они изменялись, назад не передаются соответствующим
фактическим параметрам. Такой способ передачи значений от фактических параметров к
формальным называется передачей по значению . Передача значения между фактическим и
формальным параметром-переменной двухсторонняя, т. е. фактические переменные при передаче
“по ссылке” непосредственно используются в подпрограмме.

Тестирование. Метод эквивалентных разбиений

Тестирование – это подготовка тестов, и поиск при помощи этих тестов, ошибки в программе. Если
ошибка не найдена, то тест считается неудачным.

Все методы тестирования делятся на «чёрный ящик» и «белый ящик». Где роль ящика выполняет
программа.

Два теста эквивалентны, если оба обнаруживают одну и туже ошибку.

Тестирование. Исчерпывающее и убеждающее тестирование.


Тестирование – это подготовка тестов, и поиск при помощи этих тестов, ошибки в программе. Если
ошибка не найдена, то тест считается неудачным.

Все методы тестирования делятся на «чёрный ящик» и «белый ящик». Где роль ящика выполняет
программа.

Разработка тестов осуществляется без знания принципа работы программы, что бы не


подстраиваться под неё.

Тестирование программы с применением всего множества возможных наборов исходных данных


называют исчерпывающим.
Исчерпывающее тестирование экономически не выгодно, поэтому оно никогда не применяется в
серьезных программах.

Убеждающие тестирование убедительно демонстрирует отсутствие ошибок или абсолютно


доказывает наличие ошибок.

Правильные и неправильные классы эквивалентности. Пример.


Всё множество данных, подаваемых на вход программы, делится на два подмножества: X - область
решения задачи и Y - прочие данные. Мн-во X, как множество исходных данных, называют
правильными данными. Множество Y - множество неправильных данных.

Начинающие программисты часто не обращают внимания на тот факт, что почти любая программа
может начать выполнение для не корректных данных, т. е. для данных которые не являются ее
исходными данными.

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

Анализ граничных условий. Предположение об ошибке.


Граничные условия - это ситуация, возникающая непосредственно на выше или ниже границ
входных классов эквивалентности.

Есть несколько общих правил этого метода: 1). Построить тесты для границ области и тесты с
неправильными входными данными для ситуаций незначительного выхода за границы области, если
входное условие описывает область значений. 2). Построить тесты для минимального и
максимального значений и тесты, большие и меньше этих значений, если входное условие
удовлетворяет дискретному ряду значений. 3).Использовать правило один для каждого выходного
условия. 4). Использовать правило два для каждого выходного данного. 5) Если вход и выход
программы есть упорядоченной множество, то сосредоточьте внимание на первом и последнем
элементах этого множества. 6) Попробуйте свои силы в поиске других граничных условий.

Предположение об ошибке. Основная идея метода заключается в том, чтобы перечислить в


некотором списке возможные ошибки или ситуации, в которых они могут появиться. Потом на
основе этого списка составить тесты.

Области объявления и действия имен.

Блок - это часть подпрограммы, не содержащая заголовок подпрограммы


Область объявления имени - это часть блока, где имя объявлено, начиная с точки объявления.

Область действия имени (не только переменных, но и типов, констант, процедур и т.д.) - это часть
блока, где разрешено использовать имя по первому его назначению. В языках программирования для
характеристики имени (переменной) по месту расположения его в программе используют термины
локальное или внутреннее, глобальное или внешнее имя. 1). Если имя объявлено в подпрограмме, то
оно локально ( или внутренние) в этой подпрограмме. 2). Если имя локально в подпрограмме, но
используется и во внутренней по отношению к подпрограмме в другой подпрограмме, то оно
внешнее по отношению к этой другой подпрограмме.