|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
06.04.2010, 06:47 | #11 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
А в функциональном программировании это не только последовательность, но и часто последовательность одних и тех же шагов (фактически все алгоритмы можно выразить рекурсией).
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
06.04.2010, 17:58 | #12 |
Форумчанин
Регистрация: 20.06.2008
Сообщений: 125
|
1) Техническое задание:
Определяется функционал программы, требования, интерфейсы. Изливается на бумагу. 2) Алгоритмы: Рождается идея, основные алгоритмы. Делается их приблизительная оценка по времени и по памяти. Делается оценка сложноти написания. Поиск альтернатив. 3) Первый этап проектирования: Программа приблизительно структурирутеся, разбивается на подпрограммы, выделяются объекты. Всё это изливается на бумагу. 4) Второй этап проектирования: Четко определяется основное интерфейс. Берётся подпрограмма наивысшей иерархии. Приблизительно определятеся её код, определяются места вызова подпрограмм. Четко определяются требования к каждой подпрограмме. К каждому методу объекта. Константность. И т.д. Задаются вопросы: что может пойти не так. Тоже самое теперь выполняется вглубь для всех подпрограмм. 5) Программирование: Берётся любой из объектов, стоящий в самом низу иерархии. Пишется его public интерфейс в соответствии с установленными требованиями. Проверятся константность. Пишется ptivate интерфейс, объявляются внутренние поля. Пишется метод с минимальной иерархией. Код просматривается и проверятеся на глаз. Происходит оформление и оптимизация. После написания всего объекта, опять же код проверятеся на глаз. Происходит тестирование объекта на тех тестах на которых это возможно. Все флаги компилятора ставятся на максимальный дебаг. И т.д. для остальных подпрограмм. |
07.04.2010, 13:17 | #13 |
Форумчанин
Регистрация: 10.09.2009
Сообщений: 352
|
В том способе, что предлагает Wiki, есть один недостаток - часто бывает сложно сразу определить вершину, основу, с которой начинается разработка. Особенно в сложных рекурсивных алгоритмах. Но это, пожалуй, лучший способ.
|
07.04.2010, 14:47 | #14 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
Полный текст статьи:
http://ru.wikipedia.org/wiki/Структу...ограммирование Помню лет 10 назад читал такой же текст в какой-то книге. Все зависит от поставленной задачи и языка программирования, например, для паскаля все данные действия разработки являются вполне правильными (все-таки "структурный" язык). Для объектно-ориентированного программирования последовательность действий из данной статьи может немного измениться и дополнена. А для некоторых языков программирования описанная последовательность действий может быть даже неправильной. Так что, все зависит от поставленной задачи.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
14.04.2010, 06:25 | #15 |
Форумчанин
Регистрация: 02.04.2010
Сообщений: 104
|
Проще и понятнее писать программу когда известен и отлажен алгоритм.
Поэтому я его предварительно набрасываю в Labview или GenieDAQ, а потом перевожу (если заказчик требует программу на другом языке программирования) на другой язык или делаю дистрибутив исполнительской среды. ...Легче писать громадное техописание (листов 200-300), если перед вами принципиальная схема (листа 2-3) |
18.04.2010, 11:13 | #16 | |
Пользователь
Регистрация: 05.12.2009
Сообщений: 52
|
Цитата:
ИМХО самый лучший метод - тот который описан в этой книге. |
|
26.04.2010, 21:23 | #17 | |
Форумчанин
Регистрация: 18.08.2009
Сообщений: 289
|
Цитата:
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программные разработки | romec1 | Помощь студентам | 12 | 19.04.2010 01:41 |
Способы и методы кроссплатформенной разработки... | SmirnoFF.Oleg | Qt и кроссплатформенное программирование С/С++ | 6 | 16.12.2009 10:44 |
среда разработки на С++ | AIst | Общие вопросы C/C++ | 2 | 20.01.2009 15:44 |
Средства визуальной разработки программ | Катюшoк | Общие вопросы Delphi | 4 | 19.01.2008 20:02 |
Загрузка программ из др. программ в АСМе | Shacal | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 7 | 05.02.2007 08:53 |