5. Intro 5 30-07-2013

Created Saturday 23 November 2013

** Главный принцип программирования - разделять задачу на более простые, пока не получатся достаточно небольшие блоки (декомпозиция). Так можно отдельно редактировать, отдельно разрабатывать, отдельно использовать участки кода.
1) Методологии декомпозиции
2) Многие языки программирования имеют встроенные конструкции, ориентированные на декомпозицию
3) Практически все используемые языки имеют встроенные возможности писать подпрограммы.
1) Subroutines
2) Procedures
3) Functions
4) Methods
4) Важно научиться разрабатывать программу, проектируя подпрограммы ещё до из детализации в коде (например, определив имена всех функций, достаточных для решения всей задачи)
5) TDD: Test Driven Development
+ Например, определяются имена необходимых подпрограмм и желательных порядок их вызова. На этом этапе код производит ошибки. На следующем этапе оформляются функции или процедуры (поименованный блок кода)
6) В идеале рабочий код программы должен состоять исключительно из последовательности вызова функций (или других подпрограмм), при этом важно стараться не вредить выразительности результирующего кода
** К концу курса мы должны знать 3 языка:
1) C# - logic
2) JS - client UI
3) SQL - database logic
** Задание
1) Написать простой калькулятор: вводятся 2 числа, а также знак операции в виде текста '+' '-' '/' '*'. Программа вычисляет запрошенную операцию и выдаёт результат в виде "5 + 2 = 7"
+ В языках на базе С фигурные скобки можно использовать как элементарный инструмент организации кода (блок), способствующий процессу декомпозиции.
+ Объявление переменных
+ Блок ввода
+ Блок вычислений (реализация логики), уточнение объявления переменных и блока ввода по необходимости
+ Блок форматирования и вывода
2) Та же задача, заново
+ Написать подпрограмму ввода чисел и оператора
InputNumberAndOper();
+ Подпрограмма вычисления
Calculate();
+ Подпрограмма форматирования и вывода
FormatAndPrintResult();
+ Оформление подпрограмм (задание функций блоками кода)
** Домашнее задание
1) Завершить вышеописанную задачу о калькуляторе
2) С клавиатуры вводится целое число (например, 10), а также буква (m или d). Если введена m и число попадает в диапазон 1-12, то вывести название месяца. А если введена буква d и число попадает в диапазон 1-7 - вывести день недели
3) Для любителей решать много задач имеет смысл поискать учебники Deitel Internet & World Wide Web hot to program
4) Вводится слово min или слово max. Затем вводится целое число (например, 15). Программа просит ввести с клавиатуры указанное количество чисел и выдаёт максимальное или минимальное в зависимости от введённых слов.
5) Все задачи решить:
1) С использованием локальных переменных (в правильно написанной программе ни одной глобальной переменной быть не должно)
2) Использовать подпрограммы с параметрами
3) Использовать функции с возвращением значения
6) Написать версию калькулятора, в которой каждая арифметическая операция выполняется при помощи отдельной функции.
7) Ознакомиться с тэгами: <button>, <div>, <fieldset>, <form>, <input>, <option>, <select>, <textarea>



Backlinks: