Программирование как этап решения задачи на компьютере

advertisement
НАЧАЛА ПРОГРАММИРОВАНИЯ
Тема урока:
Программирование как этап
решения задачи на компьютере
© It-teacher.me
Программирование — важный, но не единственный этап
решения задачи на компьютере. Чтобы решать задачи на
компьютере, необходимо владеть языком программирования,
обладать
знаниями в области
моделирования и алгоритмизации.
© It-teacher.me
информационного
© It-teacher.me
ЭТАП
РЕЗУЛЬТАТ
I
Постановка
задачи
Описательная информационная
модель задачи
II
Формализация
Математическая
модель
III
Алгоритмизация
Алгоритм
УРОВЕНЬ
Содержательный
Математический
Алгоритмический
IV
Програм-мирование
Программа
V
Отладка и
тестирование
Получение и анализ
результатов
Компьютерный
VI
Компьютерный
эксперимент
Уточнение модели, решение
© It-teacher.me
Задача. Какую задачу должна решать программа? Если вы не
сможете ясно сформулировать, что должна делать программа,
написать ее вам не удастся.
Пользователи. Кто будет использовать программу?
Целевой компьютер. Какой компьютер понадобится для
выполнения программы? Компьютер, работающий под
управлением Windows или Mac OS, компьютер Amiga,
мэйнфрейм, карманный компьютер, работающий под
управлением Linux или Unix, или настоящий
суперкомпьютер?
Автор программы. Вы планируете писать программу
самостоятельно или совместно с другими программистами?
Если это будет коллективный труд, то как будет распределена
работа над программой? В любом из этих случаев, каков
уровень вашей квалификации?
© It-teacher.me
Цикл разработки
1. Формулировка общей идеи программы.
2. Принятие решения о потенциальных пользователях программы.
3. Принятие решения о типе компьютера, на котором программа будет выполняться.
4. Выбор языка программирования.
5. Проектирование структуры программы с помощью псевдокода или другого
инструмента.
6. Написание программы.
7. Тестирование программы без участия пользователей.
Этот этап называют альфа-тестированием.
8. Исправление ошибок, обнаруженных во время альфа-тестирования.
Этапы 7 и 8 повторяются многократно.
9. Передача копий программы пользователям для ее тестирования “в полевых
условиях”.
Этот этап называют бета-тестированием.
10. Исправление ошибок, обнаруженных во время бета-тестирования.
Этапы 9 и 10 повторяются многократно.
11. Выпуск окончательной версии программы. Лишь с этого момента разработчики
гарантируют безупречную работу программы (естественно, гарантия не 100%-ная).
ЦИКЛ
СОПРОВОЖДЕНИЯ
ЦИКЛ ОБНОВЛЕНИЯ
© It-teacher.me
Какой язык самый лучший
Нет хороших и плохих языков программирования. Задача у всех одна объяснить машине, что от неё хотят получить в итоге. Как ей объяснять, на
каком языке - дело вкуса, а о вкусах не спорят
Типичные ошибки и как их избежать
Самая первая и главная ошибка почти всех начинающих программистов сделать так, чтобы каждый участок работал максимально быстро. С ускорением
можно просидеть неделями и месяцами, в результате теряется время.
А нужно было сделать так, чтобы просто работало, в 70% случаев
производительности уже будет хватать. В оставшихся 30% достаточно ускорить
только критические участки. Сразу появится куча свободного времени для более
интересных вещей.
Как работать с исходниками
На практике чаще всего приходится переделывать то, что сделали другие
или собственный уже разросшийся проект который сложно переписать с
помощью другого языка.
© It-teacher.me
Что почитать и с чего начать изучение
Для начала не плохо бы просто без теории и особых знаний скачать пошаговый
самоучитель с подробным описанием куда нажать и что получиться в итоге. После
того, как будет сделано 2-7 программ по данной инструкции будет видно нравится
ли этот язык и\или программирование в целом или лучше заняться более чем-то
более понятным и интересным. Если все устраивает, то нужны обязательные
теоретические знания, иначе трудно понять, почему это цифру нельзя просто так
дописать к слову, на бумаге проблем не возникает. После желательно взять сразу
две книги, одна из которых руководство по языку, а вторая - любая книга с
уроками в виде примеров.
© It-teacher.me
Тип приложения
Рекомендуемые языки


Казуальная двумерная игра




Аркадная двумерная игра


Динамичная трехмерная игра
Информационное приложение (отображающее,
например, прогноз погоды, курсы акций, новости
или обновления социальных сетей)
Учебное приложение (отображающее
изображения и текст, с простой двумерной
анимацией и звуком)







C# и XAML
JavaScript и HTML5
C# и MonoGame
C++ и Direct2D
Другая система разработки игр
C# и MonoGame
C++ и Direct2D
Другая система разработки игр
C++ и DirectX
Unity3D
C# и XAML
JavaScript и WinJS
C# и XAML
JavaScript и HTML5
C++ и Direct2D
Бизнес-приложение (для отображения,
сохранения и редактирования данных с

C#, XAML и Azure
поддержкой синхронизации)
Преобразование веб-сайтов (например,

JavaScript и WinJS
локальная версия корпоративного веб-сайта)
Приложение, которое будет портировано на

C# и XAML
платформу Windows Phone
Приложение, которое будет портировано на

C# и Xamarin или аналогичная
© It-teacher.me
платформы Windows Phone, iOS и Android
кроссплатформенная среда
Задача №1. Определить периметр крышки стола. Нас интересуют
лишь размеры крышки стола, поэтому заменим реальный объект «стол»
плоской геометрической фигурой, размеры и конфигурация которой
соответствуют поверхности крышки.
Радиусы закруглений равны, следовательно,
Исходные данные: r, a, b
Результат: Р
Вычислить значение Р: Р=2(a+b)+2πr
© It-teacher.me
Домашнее задание:
§ 4.3 – (Учеб. 9кл. Ч.1. Босова Л.Л)
Задания 10-12
10.
Может ли пригодиться в жизни представление об этапах решения задачи с
использованием компьютера? Обоснуйте свою точку зрения.
12.
В аэробусе, вмещающем 160 пассажиров, три четверти мест находятся в
салонах экономического класса и одна четверть мест — в салоне бизнес-класса.
Стоимость билета в салоне бизнес класса составляет х рублей, что в два раза выше
стоимости билета в салонах экономического класса.
Разработайте программу, которая вычислит сумму денег, полученную
авиакомпанией от продажи билетов на этот рейс, если известно, что остались
нераспроданными а билетов бизнес-класса и Ь билетов экономического класса.
Выделите все этапы решения этой задачи и опишите свои действия на каждом из
них.
© It-teacher.me
Download