
- •1.Общие сведения о программировании. Критерии качества программы.
- •1. Основные этапы решения задач на эвм
- •2.Жизненный цикл программы.
- •4. Постановка задачи и спецификация программы
- •4.Способы записи алгоритма.
- •5.Классификация языков программирования. Языки программирования высокого уровня.
- •6.Лексические основы языка c#. Общая структура программы.
- •7.Стандартные типы данных языка c#.
- •8.Лексические основы языка c#. Знаки операций.
- •9.Лексические основы языка c#. Идентификаторы, константы и переменные. Идентификатор
- •Константы
- •10.Консольный ввод-вывод в языке c#.
- •11.Разветвляющиеся алгоритмы. Условный оператор в языке c#. Ветвление и условный оператор
- •12.Разветвляющиеся алгоритмы. Оператор-переключатель.
- •13.Алгоритмы и программы циклических структур. Общая схема цикла.
- •14. Алгоритмы и программы циклических структур. Циклы со счетчиком.
- •15. Алгоритмы и программы циклических структур. Циклы с предусловием. Цикл с предусловием
- •16. Алгоритмы и программы циклических структур. Циклы с постусловием. Цикл с постусловием
1.Общие сведения о программировании. Критерии качества программы.
1. Основные этапы решения задач на эвм
Решение задач на ЭВМ – сложный процесс, состоящий из следующих этапов.
1. Постановка задачи. Уяснение проблемы, определение целей решения и области применения результатов. На этом этапе при разработке больших программных систем составляется техническое задание.
2. Математическое описание. Выбор математических методов и моделей, запись формул, обеспечивающих решение задачи. Составление плана решения.
3. Программирование задачи. Оно состоит из трех частей:
1) графическое изображение метода решения (составление схемы алгоритма);
2) написание программы на языке программирования (кодирование);
3) ввод текста программы в ЭВМ.
4. Отладка программы. Выявление ошибок (кодирования и методов решения), проверка правильности результатов.
5. Обработка реальных данных и получение результатов. Выполнение готовой программы на ЭВМ, выдача результатов.
Из этих этапов первые три не требуют ЭВМ, наиболее сложные - первые два, а наиболее трудоемкий – четвертый. Все они сопровождаются соответствующей документацией, состав которой определяется стандартами.
2.Жизненный цикл программы.
Проекты по созданию программных продуктов можно разделить по объему работы и сложности можно разделить на большие и малые.
Характеристики малых проектов:
программа создается одним или несколькими программистами;
за несколько дней или недель;
один человек в состоянии охватить все детали проекта;
детали проекта обсуждаются с пользователем и частично записываются на бумаге.
Характеристики больших проектов:
программа создается большой группой программистов и пользователей;
за несколько недель, месяцев или лет;
нет и не может быть человека, который знает все детали проекта.
Работа над большими программными продуктами несравнимо сложнее. Например, рассмотрим ситуацию: Вы написали программу, которая содержит 1000 строк, Вы смогли выполнить эту работу за неделю, сколько времени у Вас займет написание программы на ту же тему в объеме 2000 строк? На первый взгляд кажется, что достаточно 2 недель, но на самом деле, вероятно, Вам потребуется около 4 недель. Между объемом работы и временем существует квадратичная зависимость.
Рисунок 2.2.1.
Чтобы реализовать большой проект необходимо придерживаться четкой последовательности действий, иметь "стратегический" план. Таким "стратегическим" планом является жизненный цикл программного продукта.
Структура жизненного цикла программного продукта
Жизненный цикл программного продукта может изменяться от проекта к проекту. Как правило, он состоит из следующих этапов:
Сбор и анализ требований заказчика
Уточнение функциональных характеристик
Техническое проектирование
Кодирование
Тестирование и отладка
Сопровождение программного продукта
По статистическим данным кодирование составляет только 1/6 от остальных пяти этапов.
Преимущества применения жизненного цикла разработки программного продукта
Разногласия и отсyтствие связи междy членами команды разработчиков и междy разработчиками и конечными пользователями быстpо обнаpyживаются и yстpаняются
Hовые люди "безболезненно" подключаются к пpоектy на любой стадии pазpаботки.
Конечное пpиложение базиpyется на фyндаментальном анализе задачи, что позволяет свести к минимyмy затpаты на дальнейшyю доpаботкy, модификацию и сопpовождение пpодyкта.
В пpоцессе pазpаботки создается мощный пакет докyментации, позволяющий в дальнейшем yпpостить неизбежное сопpовождение и дополнения пpогpаммного пpодyкта.
Один pаз хоpошо отpаботанный цикл pазpаботки пpиложения позволяет сэкономить много вpемени пpи pеализации последyющих пpоектов.
Разберем каждый этап
Сбор и анализ требований заказчика
С чего начинается работа над проектом? Обычно к Вам обращается пользователь с предложением написать программу. Ваша задача - получить у пользователя всю необходимую информацию и оговорить условия создания программного продукта. Для Вас имеет большое значение, кто будет работать с Вашей программой, каков его профессиональный уровень и уровень компьютерной грамотности, его предпочтения в смысле программных продуктов. Вы должны знать, что является более пpиоpитетным для конечного пользователя. Одни системы тpебyют максимального внимания к внешнемy офоpмлению и особенностям эксплyатации, дpyгие - максимальной скоpости и yдобства ввода данных пpи максимально yпpощенном внешнем виде системы.
На этапе уточнения функциональных характеристик желательно составить функциональную спецификацию. Фyнкциональная спецификация содержит перечисление того, что будет делать Ваш программный продукт. Фyнкциональная спецификация не должна содержать информацию о том, как будут выполнены эти действия. Это pазличие важно.
На этапе техническое проектирование составляется техническая спецификация или техническое задание. Техническое проектирование - это мост между функциональной спецификацией и кодированием на языке программирования. Функциональная спецификация определяет, что должен делать программный продукт, а техническая спецификация (или техническое задание) определяет, как это будет делаться.
На этапе кодирование производится перевод алгоритма на какой-либо язык программирования.
Целью тестирования является выяснение обстоятельств, при которых поведение программы не соответствует спецификации.
Отладка – это процесс исправления обнаруженных ошибок. Если программа работает не так, как должна, необходимо выяснить местоположение ошибки, проверить правильность работы каждой части программы. Для этой цели удобно использовать встроенный отладчик, который имеется в большинстве языков программирования.
После проведения этапа тестирования и выполнения приемочного теста составляются акты, которые фиксируют готовность нормативно-справочной документации и проверку программного продукта на конкретных примерах. При необходимости составляет протокол об отступлениях от проекта. После сдачи программного комплекса в эксплуатацию начинается этап сопровождения программного продукта. По времени это самый продолжительный этап. Зачастую он оказывается и достаточно трудоемким.
В период сопровождения программного продукта возможны 3 вида работы:
исправление ошибок
помощь в эксплуатации
модификация программы