Главная страница
    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]


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


 
nobody   (2010-05-21 10:07) [41]

Автору на заметку:
http://www.intuit.ru/department/se/devis/2/

а вообще, сдается мне что нас тут кто-то троллит)))


 
han_malign   (2010-05-21 10:07) [42]


> Получается, что это пустая трата времени и
> достаточно просто держать его как справочник?

- если ты за три секунды находишь нужную страницу, то достаточно... Но это уже говорит о том, что ты его как минимум один раз прочитал целиком...

База нужна всегда, но заучивать наизусть QuickSort, если его можно тупо скопировать - лишнее... (каюсь, по прошествии 15-и лет, так до конца и не понимаю как он работает, и - в отличие от пузырька - с нуля не напишу) Опять таки - на хрена мне умение посреди ночи написать сортировку Шелла, если есть QuickSort...


 
@!!ex ©   (2010-05-21 10:08) [43]

> [31] han_malign   (21.05.10 09:46)
> - во всяком случае гораздо меньше рядового менеджера по
> продажам того же ПО...

Спорно.
Во всяком случае лиды получают адекватно вполне.


 
12 ©   (2010-05-21 10:11) [44]

http://demotivators.ru/posters/992511/kak-pishutsya-programmyi.htm


 
Anatoly Podgoretsky ©   (2010-05-21 10:21) [45]

> Учащийся  (21.05.2010 09:23:28)  [28]

Профессия относится к низкоквалифицированым, на уровне таксистов, так зачем
платить много?


 
Anatoly Podgoretsky ©   (2010-05-21 10:22) [46]

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

Много ли ты из Кнута поймешь?


 
han_malign   (2010-05-21 10:27) [47]

OFFTOP

> а вообще, сдается мне что нас тут кто-то троллит)))

- если на тролля натравить Копира, то он быстро почувствует себя неумытым гоблином...


 
Дмитрий С ©   (2010-05-21 10:34) [48]


> @!!ex ©   (16.05.10 15:58) [7]
>
> > [6] oldman ©   (16.05.10 15:46)
> > неверный подход...
>
> Верный подход батрачиться на дядю?
> Мнеа. Не наш метод.

А мне нравится батрачиться на дядю. Он хороший менеджер -> мне никакого геморроя, только работа.


 
Юрий Зотов ©   (2010-05-21 12:40) [49]

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

> достаточно просто держать его как справочник?

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

Но! Если нет хотя бы базовых знаний, то и справочник не поможет. Потому что, чтобы им пользоваться, надо знать ЧТО в нем искать и ГДЕ в нем это искать.

Кроме того, часто стандартная задача (хоть та же сортировка) имеет множество методов решения.  Все они есть в справочнике - но надо уметь выбрать тот из них, который лучше всего подходит в данной конкретной ситуации. А для этого все-таки нужны знания.


 
РП   (2010-05-21 13:33) [50]

Я сходу пишу. Линейно. Не записываю ничего и комменты не ставлю. =)


 
12 ©   (2010-05-21 14:02) [51]


> РП   (21.05.10 13:33) [50]

а после 500 кб текста берешь веревку и мыло?


 
nobody   (2010-05-21 16:56) [52]


> Профессия относится к низкоквалифицированым, на уровне таксистов,
>  так зачем
> платить много?

http://www.e-xecutive.ru/community/life/1302502/

Штат подразделения будут комплектовать только из образованных зэков, которые знают грамоту и умеют считать


 
РП   (2010-05-21 19:32) [53]

> РП   (21.05.10 13:33) [50]а после 500 кб текста берешь веревку и мыло?

как-то все помню. если грамотно писать. максимально так писал по 14000 строк кода консоль.


 
Имяозер   (2010-05-21 21:07) [54]

Мегамозг просто.


 
MsGuns ©   (2010-05-22 02:38) [55]

Прежде всего надо выяснить пару моментов:
1) Нужна ли программа "заказчику"
и
2) Согласен ли он за нее платить

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


 
Anatoly Podgoretsky ©   (2010-05-22 09:04) [56]

2) Согласен ли он за нее платить правильную сумму


 
Учащийся   (2010-05-22 09:45) [57]


> boriskb ©   (21.05.10 09:52) [34]
>
>
> > Чтобы стать хорошим программистом, получается вовсе не
> обязательно
> > понимать, как устроены алгоритмы и достаточно просто иметь
> > под рукой какой-то справочник по ним?
>
>
> Перефразируем немного:
> "Чтобы стать хорошим математиком, получается вовсе не обязательно
> понимать, как доказываются теоремы и достаточно просто иметь
> под рукой какой-то справочник по ним?"
>
> Согласишься?
>

ну....если человек, собирается вести научную деятельность и создавать свои теоремы, то конечно должен.А если собирается работать в какой-то компании и производить там расчёты, то думаю наврядли будет это использовать. Но с другой стороны, если сразу выбрать где ты будешь работать, и заниматься только тем ,что пригодится...ну, на мой взгляд, как минимум скучно:) Вообщем, спасибо!Я сделал выводы.Буду пока занимать и читать то, что интересно, а потом думаю приложится...
> nobody   (21.05.10 10:07) [41]
>
> Автору на заметку:
> http://www.intuit.ru/department/se/devis/2/
>
> а вообще, сдается мне что нас тут кто-то троллит)))

???Я троллю?:)
> Anatoly Podgoretsky ©   (21.05.10 10:22) [46]
>
> > Учащийся  (21.05.2010 09:54:35)  [35]
>
> Много ли ты из Кнута поймешь?

эээ...ну там, где русские буковки, местами понятно)
> РП   (21.05.10 19:32) [53]
>
> > РП   (21.05.10 13:33) [50]а после 500 кб текста берешь
> веревку и мыло?
>
> как-то все помню. если грамотно писать. максимально так
> писал по 14000 строк кода консоль.
>

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


 
@!!ex ©   (2010-05-22 10:42) [58]

> [57] Учащийся   (22.05.10 09:45)
> имхо. зарываешь свой талант в землю, если работаешь рядовым
> программистом.

Что такое рядовой программист?


> [48] Дмитрий С ©   (21.05.10 10:34)
> А мне нравится батрачиться на дядю. Он хороший менеджер
> -> мне никакого геморроя, только работа.

Сложный выбор... иногда, в моменты депрессии я думаю, может послать все, устроится в какой нить офис и жить себе тихо спокойно...


 
Я всегда говорил!   (2010-05-22 10:53) [59]

Разрабатываю так:
1. Техническое задание
2. Технический проект
3. Руководство по эксплуатации
4. Внедрение, отчет о внедрении
5. Опытная эксплуатация, выявление глюков
6. Устранение глюков
7. Промышленная эксплуатация
8. Акт о приемке/сдаче
9. Гарантийное обслуживание


 
turbouser ©   (2010-05-22 11:01) [60]


> Я всегда говорил!   (22.05.10 10:53) [59]

Мда. все по ГОСТу..
Даже не знаю, хорошо это или плохо.


 
Учащийся   (2010-05-22 12:36) [61]


>
> Что такое рядовой программист?
>

ну например те, о которых в статье написано

> nobody   (21.05.10 16:56) [52]
>
>
> > Профессия относится к низкоквалифицированым, на уровне
> таксистов,
> >  так зачем
> > платить много?
>
> http://www.e-xecutive.ru/community/life/1302502/
>
> Штат подразделения будут комплектовать только из образованных
> зэков, которые знают грамоту и умеют считать


 
Учащийся   (2010-05-22 12:37) [62]

всмысле не зеки, а люди, занимающиеся такой работой:)


 
Учащийся   (2010-05-22 12:38) [63]

зэки


 
turbouser ©   (2010-05-22 13:04) [64]


> Учащийся   (22.05.10 12:36) [61]


> ну например те

Это жесть. индусы-зэки-программисты.. индусов-программистов и так очень мало. (да да. за минусом ламеров, неумех и прочих кнопкокидателей так и есть, как ни странно) ...
Так что не пример ни разу.
я вот инженер-программист. я рядовой?


 
AKE   (2010-05-23 20:46) [65]

Безсистемный подход может привести к успехам только в частных случаях.


 
GrayFace ©   (2010-05-27 13:28) [66]

Учащийся   (21.05.10 9:54) [35]
Кнута не читал, но чтение алгоритмов может быть полезно, если какие-то интересные приемы используются.

RWolf ©   (21.05.10 9:56) [37]
Чтобы стать хорошим программистом, желательно получить профильное образование, где объясняют, как устроены общеупотребительные алгоритмы, откуда они взялись, и где искать другие, не столь распространённые.

Главное - голова + собственные опыт.

Учащийся   (22.05.10 9:45) [57]
А если собирается работать в какой-то компании и производить там расчёты, то думаю наврядли будет это использовать.

Он не будет называться математиком.


 
Думкин ©   (2010-05-27 13:38) [67]


> GrayFace ©   (27.05.10 13:28) [66]

А почему "голова"  с минусом?


 
Плохиш ©   (2010-05-27 13:43) [68]


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

Мы их не разрабатываем, мы их тырим.



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

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

Наверх




Память: 0.64 MB
Время: 0.058 c
3-1233731200
Mike Kouzmine
2009-02-04 10:06
2010.08.27
Не выполняется селект в хранимой процедуре


15-1273571571
AK-47
2010-05-11 13:52
2010.08.27
Сопоставление текста и отсканированного текста


2-1271934182
Константин
2010-04-22 15:03
2010.08.27
Как удалть объёкты из TObjectList и не уменьшишь при этом ....


2-1271921806
Эренка
2010-04-22 11:36
2010.08.27
Ошибка деления на ноль, комплексные функции


15-1267705960
Kolan
2010-03-04 15:32
2010.08.27
Где взять справку по TMaskEdit?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский