Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

А как вы разрабатываете программы?   Найти похожие ветки 

 
Учащийся   (2010-05-16 08:46) [0]

Здравствуйте!
Я только учусь программировать.
И разработка программ выглядит примерно так:
сначала ставлю цель, что программа должна делать и как она будет выглядеть.
потом достаю листочек и пишу все необходимые модули программы, причём абсолютно не последовательно, что в голову приходит, то сразу и пишу.После этого упрорядочиваю все модули,  чего не хватает, добавляю.
Потом перехожу к каждому модулю отдельно и для него повторяю тоже самое с функциями, упорядочиваю функции и т.д.
Дальше идёт кодинг.
Ошибки.
Распечатка части программы.
Исправление.
Кодинг
Ошибки
...
А как у вас происходит этот процесс?


 
Anatoly Podgoretsky ©   (2010-05-16 09:40) [1]

> Учащийся  (16.05.2010 08:46:00)  [0]

У всех по разному, но ты поступаешь правильно.


 
@!!ex ©   (2010-05-16 09:49) [2]

> [0] Учащийся   (16.05.10 08:46)
> Распечатка части программы.

O_O
???


 
Учащийся   (2010-05-16 10:48) [3]


> @!!ex ©   (16.05.10 09:49) [2]
>
> > [0] Учащийся   (16.05.10 08:46)
> > Распечатка части программы.
>
> O_O
> ???

Ну нет у меня пока ещё культуры общения с монитором))Когда вывожу на принтер, код как-то проще воспринимается, и править его легче.


 
_Юрий ©   (2010-05-16 11:13) [4]


> потом достаю листочек и пишу


Лучше использовать программные средства


 
Anatoly Podgoretsky ©   (2010-05-16 11:20) [5]

> _Юрий  (16.05.2010 11:13:04)  [4]

Некоторые лучше понимают, когда делают на бумаге.


 
oldman ©   (2010-05-16 15:46) [6]


> сначала ставлю цель


сам себе? неверный подход...
деньги тоже сам себе платишь?


 
@!!ex ©   (2010-05-16 15:58) [7]

> [6] oldman ©   (16.05.10 15:46)
> неверный подход...

Верный подход батрачиться на дядю?
Мнеа. Не наш метод.


 
test ©   (2010-05-16 16:27) [8]

oldman ©   (16.05.10 15:46) [6]
Ну сам себе проект пишет, что в этом страшного?


 
Юрий Зотов ©   (2010-05-16 16:30) [9]

1. Мучаю заказчика вопросами до тех пор, пока он не начинает сразу соглашаться с любым моим предложением.
2. Пишу программу.
3. Заказчик сразу ее принимает, потому что понимает, что иначе опять начнется п.1.

И все довольны.


 
boa_kaa ©   (2010-05-16 16:39) [10]


> Юрий Зотов ©   (16.05.10 16:30) [9]

возьму на заметку :)


 
Anatoly Podgoretsky ©   (2010-05-16 17:07) [11]

> Юрий Зотов  (16.05.2010 16:30:09)  [9]

Ты садист махохист, садомазхист.
Но это работает!


 
KilkennyCat ©   (2010-05-16 17:23) [12]


> boa_kaa ©

ты где? я те даж на телефон денег кинул.
извините за оффтоп


 
Anatoly Podgoretsky ©   (2010-05-16 17:38) [13]

> KilkennyCat  (16.05.2010 17:23:12)  [12]

На разработку программы.
А что тоже метод - деньги вперед.


 
KilkennyCat ©   (2010-05-16 19:05) [14]


> Anatoly Podgoretsky ©

да не, там денег-то... максимум на пустую форму...


 
Anatoly Podgoretsky ©   (2010-05-16 19:25) [15]

> KilkennyCat  (16.05.2010 19:05:14)  [14]

Все справедливо, по деньгам и работа. Хочет на полную форму, пусть пополнит.


 
Суслик_ ©   (2010-05-16 22:27) [16]

что-то я думаю, что автор немного лукавит.

очень, я думаю, сложно полностью разобрать будущую программу на бумаге в детализацией на уровне функции еще до кодинга.

т.е. методика очень хорошая, но сдается мне, маловыполнимая.

обычно, я меня, разработка происходит по сценарию автора, но только в несколько итераций.


 
Германн ©   (2010-05-17 00:32) [17]


> Суслик_ ©   (16.05.10 22:27) [16]
>
> что-то я думаю, что автор немного лукавит.
>

Скорее всего нет. Он же написал
> Я только учусь программировать.

Для начала вполне нормальный подход. Программы ещё маленькие и простые.


 
boa_kaa ©   (2010-05-17 00:39) [18]

<offtop>

> KilkennyCat ©   (16.05.10 17:23) [12]
> ты где?

выйди хоть в аську штоле
</offtop>

пардон за переписку :)


 
Медвежонок Пятачок ©   (2010-05-17 11:00) [19]

Для начала вполне нормальный подход. Программы ещё маленькие и простые.

В нем не хватает только "юзерского взгляда" на создаваемую программу.
В результате на свет может появиться в общем правильная программа, но которой может пользоваться только программист-разработчик.


 
StriderMan ©   (2010-05-17 15:20) [20]


> А как вы разрабатываете программы?

Получаю ТЗ от аналитика
начинаю кодить
сталкиваюсь с неразрешимыми логическими противоречиями
Переписываю ТЗ
Отправляю аналитику для ознакомления
Кодю

:)


 
ocean   (2010-05-17 16:19) [21]

помнишь наизусть структуру FAT, заклюют сразу. Причем у некоторых Мастеров уровень, действительно, высочайший. Но на деле я не встречался еще с софтовой компанией у нас в стране (за искл представительств иномонстров), где грамотно разрабатывают программы. Не говорить же об 1с. Раскажу, как действуют как минимум 3 фирмы с годовым оборотом ок. 100 млн долл. (т.е. как не надо делать). Допустим, что программа уже поставлена в план. Сначала к заказчику засылают болтологов, которые убалтывают заказчика до потери сознания. Затем с жуткими боями подписывается ТЗ, оспаривается каждое слово, дальше идут другие этапы проектирования, в результате задача уходит от первоначально запланированной на расстояние неск. световых лет. Наконец все стороны договариваются. Далее фирма нанимает студентов-кодеров, которые долго и как-то ублюдочно реализут нечто, находящееся вообще в иной плоскости. Конечно, заказчик не хочет принимать ЭТО. А дальше в дело вступают руководители с обеих сторон, происходит распил средств, торжественное принятие программы. О самой программе в лучшем случае забывают, в худшем ее приходится сопровождать, пока она не умрет в жутких мучениях. Так вот, в этой схеме прилично получают все, кроме программистов. Вывод: в известных мне фирмах этот процесс происходит через одно место.


 
StriderMan ©   (2010-05-17 16:34) [22]


> ocean   (17.05.10 16:19) [21]

Это если заказчик - госструктура. В B2B такие схемы не работают к сожалению.
Опять же при производстве коробочного софта тоже процесс несколько иной, потому как заказчик в этом случае - это нечто абстрактное. Сам в такой конторе работаю.

В любом случае программист получает мало или очень мало. Никакой связи с бюджетом проекта з/п программиста не имеет. имеет только квалификация и то не всегда.


 
Rouse_ ©   (2010-05-17 16:39) [23]


> @!!ex ©   (16.05.10 09:49) [2]
>
> > [0] Учащийся   (16.05.10 08:46)
> > Распечатка части программы.
>
> O_O
> ???

А чего такого? Я тоже частенько сложные моменты распечатываю чтобы по дороге домой еще раз поглядеть, хотя обычно и без этого получается, т.к. код все равно в голове сидит :)


 
StriderMan ©   (2010-05-17 16:55) [24]

А что печатать в грамотно структурированной программе? Там все процедуры должны быть короткие простые и понятные.

разве что какие-то низкоуровневые фундаментальные алгоритмы, но они все давно придуманы за нас Кнутом :)


 
AlexDan ©   (2010-05-17 17:04) [25]

>Rouse_ ©   (17.05.10 16:39) [23]
>@!!ex ©   (16.05.10 09:49) [2]
Я тоже некоторые кусочки иногда распечатываю /вот уж где не хватает электронной бумаги, всё равно всё потом в мусорку летит/там где нужно над логикой голову поломать..)


 
han_malign   (2010-05-17 17:30) [26]

Неделю думаю как бы сделать поэлегантнее(в чем бы прохалявить), потом за день делаю как положено(в лоб)... Хотя иногда получается и поэлегантнее...

Сроки различаются, но порядок сохраняется... Э-эх, кабы мне давали готовый ТЗ...


 
Leonid Troyanovsky ©   (2010-05-17 19:37) [27]


> han_malign   (17.05.10 17:30) [26]

> Сроки различаются, но порядок сохраняется... Э-эх, кабы
> мне давали готовый ТЗ...

Говорят, что  труд убивает время; но сие последнее,  нисколько
от этого не уменьшаяся, продолжает служить человечеству  и всей
вселенной постоянно в одинаковой полноте и непрерывности. [КП]

--
Regards, LVT.


 
Учащийся   (2010-05-21 09:23) [28]


> готовый ТЗ

извините, пожалуйста за непросвящённость.Но что такое ТЗ?

> В любом случае программист получает мало или очень мало.
>  Никакой связи с бюджетом проекта з/п программиста не имеет.
>  имеет только квалификация и то не всегда.

т.е. программист одна из самых низкооплачиваемых специальностей или я неправильно вас понял?:)


 
Учащийся   (2010-05-21 09:36) [29]

извините, ерунду написал.Я хотел спросить,если создаётся какое-то ПО, то программист получает меньше всех что ли?


 
RWolf ©   (2010-05-21 09:39) [30]


> StriderMan ©   (17.05.10 16:55) [24]
> А что печатать в грамотно структурированной программе? Там
> все процедуры должны быть короткие простые и понятные.

раскидистое дерево коротких процедур, очевидно :)


 
han_malign   (2010-05-21 09:46) [31]


> то программист получает меньше всех что ли?

- во всяком случае гораздо меньше рядового менеджера по продажам того же ПО...


 
Учащийся   (2010-05-21 09:48) [32]


> StriderMan ©   (17.05.10 16:55) [24]
>
> А что печатать в грамотно структурированной программе? Там
> все процедуры должны быть короткие простые и понятные.
>
> разве что какие-то низкоуровневые фундаментальные алгоритмы,
>  но они все давно придуманы за нас Кнутом :)

ещё раз извините, может не по теме... Но ваш пост, навёл меня на следующие мысли.Чтобы стать хорошим программистом, получается вовсе не обязательно понимать, как устроены алгоритмы и достаточно просто иметь под рукой какой-то справочник по ним?


 
RWolf ©   (2010-05-21 09:50) [33]

а вообще, в практике ограничения длины процедур мне видится противоречие — чем короче процедуры, тем больше их количество.
В итоге увеличивается синтаксическая сложность программы.
То есть, разбираясь в коде процедуры на 300 строк, я вчитываюсь непосредственно в алгоритм; а если тот же код разбит на 10 процедур по 30 строк, я вынужден рисовать на бумажке дерево вызовов этих процедур и держать в памяти их названия. Как-то мне не кажется, что это проще.


 
boriskb ©   (2010-05-21 09:52) [34]


> Чтобы стать хорошим программистом, получается вовсе не обязательно
> понимать, как устроены алгоритмы и достаточно просто иметь
> под рукой какой-то справочник по ним?


Перефразируем немного:
"Чтобы стать хорошим математиком, получается вовсе не обязательно
понимать, как доказываются теоремы и достаточно просто иметь
под рукой какой-то справочник по ним?"

Согласишься?


 
Учащийся   (2010-05-21 09:54) [35]

я немного разъясню свой последний пост.Я имел ввиду, что в том же Кнуте имеется куча упражнений и даже схема чтения книги.Получается, что это пустая трата времени и достаточно просто держать его как справочник?


 
boriskb ©   (2010-05-21 09:56) [36]


> Как-то мне не кажется, что это проще

Дело вкуса конечно, но всё же:

Устройство автомобиля как проще изучать и держать в голове - либо все гайки, винты и прочую мелочь в куче либо по агрегатам держать устройство в голове, а при необходимости уже вникать в устройство конкретного агрегата?


 
RWolf ©   (2010-05-21 09:56) [37]


> Чтобы стать хорошим программистом, получается вовсе не обязательно
> понимать, как устроены алгоритмы и достаточно просто иметь
> под рукой какой-то справочник по ним?

Чтобы стать хорошим программистом, желательно получить профильное образование, где объясняют, как устроены общеупотребительные алгоритмы, откуда они взялись, и где искать другие, не столь распространённые. Велосипеды в любом случае изобретать не нужно.


 
RWolf ©   (2010-05-21 10:00) [38]


> boriskb ©   (21.05.10 09:56) [36]

Если продолжать аналогию, есть автомобиль, в котором много узлов, которые состоят из небольшого числа деталей, а есть компьютер, в котором полдюжины блоков неизмеримо большей сложности.


 
RWolf ©   (2010-05-21 10:02) [39]

так вот, компьютер ремонтировать проще.


 
boriskb ©   (2010-05-21 10:03) [40]


> Учащийся   (21.05.10 09:54) [35]


Глубина знаний и уровень понимания выбираются только тобой.



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.55 MB
Время: 0.068 c
2-1268305355
fford
2010-03-11 14:02
2010.08.27
копировать текст из RichEdit в поток


8-1204756138
Rave4Life
2008-03-06 01:28
2010.08.27
Деформация изображения BMP


3-1238243754
Ivan8511
2009-03-28 15:35
2010.08.27
Индексация даты в обратном порядке


2-1275731880
REX
2010-06-05 13:58
2010.08.27
Дата/Время


2-1269343965
F$
2010-03-23 14:32
2010.08.27
установка/сброс бита





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский