
- •Вопрос 1: Программные продукты и их основные характеристики
- •Вопрос 2: Классификация программных продуктов;
- •Вопрос 3: Жизненный цикл программного обеспечения;
- •Вопрос 4: Стадии разработки программ и программной документации;
- •Вопрос 5: Методы проектирования программных продуктов (нисходящее, восходящее проектирование, метод расширения ядра, достоинства и недостатки);
- •Вопрос 6: Структурное проектирование;
- •Вопрос 7: Проектирование интерфейса пользователя;
- •Вопрос 8: умл
- •Вопрос 9: Стиль программирования
- •Вопрос 10: Языки программирования
- •Вопрос 11: Модульное программирование
- •Вопрос 12: Объектно-ориентированное программирование
- •Вопрос 13: Ошибки программного обеспечения
- •Вопрос 14: Отладка программ
- •Вопрос 15: Тестирование структурной программы
- •Вопрос 16: Объектно-ориентированное тестирование
- •Вопрос 17: Защита от программ
- •Вопрос 18: Применение кейс – средств
- •Вопрос 19: Организация работ при коллективной разработке
Вопрос 9: Стиль программирования
Стиль программирования – набор правил, которым следует программист в процессе своей работы.
Хороший стиль программирования предполагает:
- использование комментариев;
- использование несущих смысловую нагрузку имен переменных, процедур и функции;
- использование отступов;
- использование пустых строк.
Следование правилам хорошего стиля программирования значительно уменьшает вероятность появления ошибок на этапе набора текста, делает программу легко читаемой, что, в свою очередь, облегает процессы отладки и внесения изменений. Хорошая программа должна быть надежной и дружественной по отношению к пользователю. Дружественность предполагает хорошо спроектированные диалоговые окна, наличие справочной системы, разумное и предсказуемое, с точки зрения пользователя, поведение программы.
Вопрос 10: Языки программирования
Язык программирования – формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, задающих внешний вид программы и действия, которые выполнит исполнитель под ее управлением.
Функция: язык программирования предназначен для написания компьютерных программ, которые применяются для передачи компьютеру инструкций по выполнению того или иного вычислительного процесса и организации управления отдельными устройствами.
Способы реализации языков:
Программа на компилируемом языке при помощи специальной программы компилятора преобразуется в набор инструкций для данного типа процессора (машинный код) и далее записывается в исполнимый модуль, который может быть запущен на выполнение как отдельная программа. Компилятор переводит исходный текст программы с языка высокого уровня в двоичные коды инструкций процессора.
Если программа написана на интерпретируемом языке, то интерпретатор непосредственно выполняет исходный текст без предварительного перевода.
Поколения языков программирования: Бейсик, Паскаль, Си, скриптовые языки, яваскрипт, пёрл. объектно-ориентированные языки, и т.д.
Вопрос 11: Модульное программирование
Модульное программирование – метод разработки программ, предполагающий разбиение программы на независимые модули.
Модульное программирование основано на понятии модуля – логически взаимосвязанной совокупности функциональных элементов, оформленных в виде отдельных программных модулей.
Модуль характеризуют:
– один вход и один выход – на входе программный модуль получает определенный набор исходных данных, выполняет содержательную обработку и возвращает один набор результатных данных;
– функциональная завершенность – модуль выполняет перечень регламентированных операций для реализации каждой отдельной функции в полном составе;
– логическая независимость – результат работы программного модуля зависит только от исходных данных, но не зависит от работы других модулей;
– слабые информационные связи с другими программными модулями – обмен информацией между модулями должен быть по возможности минимизирован.
Каждый модуль состоит из спецификации и тела. Спецификации определяют правила использования модуля, а тело – способ реализации процесса обработки.
Однотипные функции реализуются одними и теми же модулями. Функция верхнего уровня обеспечивается главным модулем; он управляет выполнением нижестоящих функций, которым соответствуют подчиненные модули.
Определение набора модулей:
– каждый модуль вызывается на выполнение вышестоящим модулем и, закончив работу, возвращает работу вызвавшему его модулю;
– принятие основных решений в алгоритм выносится на максимально «высокий» по иерархии уровень;
– для использования одной и той же функции в разных местах алгоритма создается один модуль, который вызывается на выполнение по мере необходимости.