|
|
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
Вопрос заключается в следующем. Мне надо написать программу на дельфи допустим, каким образом надо распроектировать работу, чтоб один проект писали несколько человек. Есть для этого какие то инструменты или какято система работы? Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2007, 12:02 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
Легко и просто: декомпозируешь поставленную задачу на подзадачи, определяешь, какие из них могут выполняться параллельно и отностительно независимо друг от друга, раздаешь задачи программистам. Инструмент - MS Project :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2007, 12:22 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
В том то и дело, что вопрос заключается в том, как отделить эти задачи друг от друга. Если все приложение состовляет одну форму, но очень круто насыщенная контролами и функционалом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2007, 12:27 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
Позади формы должен размещаться некий слой бизнес-логики, который наверняка можно поделить на подзадачи (не связанные с ГУИ). Саму форму тоже можно представить в виде совокупности пользовательских контролов, независимых (более-менее) друг от друга и вполне пригодных для параллельной разработки отдельными личностями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2007, 13:14 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
StenВ том то и дело, что вопрос заключается в том, как отделить эти задачи друг от друга. Если все приложение состовляет одну форму, но очень круто насыщенная контролами и функционалом. 1. Можно отделить интервейс от модели (погуглите separation of concerns) 2. В дельфи, насколько я помню, можно куски формы разрабатывать отдельно (кажется фреймы называется) а потом собрать в одны форму ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2007, 13:19 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
Sten Мне надо написать программу на дельфи допустим, каким образом надо распроектировать работу, чтоб один проект писали несколько человек. Есть для этого какие то инструменты или какято система работы? Использовать MVC. Разбить модель на независимые модули. Затем для каждого модуля разработать интерфейс ("контракт", определяющий как модуль взаимодействует с другими, какие услуги/данные/методы предоставляет "клиентам"). Далее, каждый программист независимо реализует свой модуль в соответствии с интерфейсом. Если модуль зависит от работы других, ещё не созданных модулей, реализовать их интерфейсы в виде "заглушек", возвращающих "тестовые" данные. Инстанцирование реализаций модулей можно реализовать с помощью паттерна Abstract Factory, причем каждому программисту можно инстанцировать разные конфигурации модулей, где часть модулей реализована как заглушка, затем постепенно подключать "готовые" модули. Отдельный программист ваяет UI либо каждый программист реализует UI для своего модуля - это уже детали. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2007, 13:46 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
gyraboo Sten Мне надо написать программу на дельфи допустим, каким образом надо распроектировать работу, чтоб один проект писали несколько человек. Есть для этого какие то инструменты или какято система работы? Использовать MVC. Разбить модель на независимые модули. Затем для каждого модуля разработать интерфейс ("контракт", определяющий как модуль взаимодействует с другими, какие услуги/данные/методы предоставляет "клиентам"). Далее, каждый программист независимо реализует свой модуль в соответствии с интерфейсом. Если модуль зависит от работы других, ещё не созданных модулей, реализовать их интерфейсы в виде "заглушек", возвращающих "тестовые" данные. Инстанцирование реализаций модулей можно реализовать с помощью паттерна Abstract Factory, причем каждому программисту можно инстанцировать разные конфигурации модулей, где часть модулей реализована как заглушка, затем постепенно подключать "готовые" модули. Отдельный программист ваяет UI либо каждый программист реализует UI для своего модуля - это уже детали. А с точки зрения обеспечения совместной работы над файлами - однозначно, нужно использовать систему контроля версий - их масса. Собственно, уточни, что имеется ввиду под "системой работы", методология разработки или какие-то программы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2007, 13:52 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
gyraboo gyraboo Sten Мне надо написать программу на дельфи допустим, каким образом надо распроектировать работу, чтоб один проект писали несколько человек. Есть для этого какие то инструменты или какято система работы? Использовать MVC. Разбить модель на независимые модули. Затем для каждого модуля разработать интерфейс ("контракт", определяющий как модуль взаимодействует с другими, какие услуги/данные/методы предоставляет "клиентам"). Далее, каждый программист независимо реализует свой модуль в соответствии с интерфейсом. Если модуль зависит от работы других, ещё не созданных модулей, реализовать их интерфейсы в виде "заглушек", возвращающих "тестовые" данные. Инстанцирование реализаций модулей можно реализовать с помощью паттерна Abstract Factory, причем каждому программисту можно инстанцировать разные конфигурации модулей, где часть модулей реализована как заглушка, затем постепенно подключать "готовые" модули. Отдельный программист ваяет UI либо каждый программист реализует UI для своего модуля - это уже детали. да А с точки зрения обеспечения совместной работы над файлами - однозначно, нужно использовать систему контроля версий - их масса. Собственно, уточни, что имеется ввиду под "системой работы", методология разработки или какие-то программы? Спасибо всем за ответ, но всетаки меня так и никто не понял, у меня есть форма на ней два грида, и множество кнопок и функционала по гридам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2007, 23:33 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
StenВ том то и дело, что вопрос заключается в том, как отделить эти задачи друг от друга. Так. Взять и отделить. Это классическая задача разбиения на модули - взять N функций и разбить их на группы, каждая из которых относительно тесно связана внутри себя и относительно мало связана с другими. Посоветовал бы читать Майерса, хотя.... StenЕсли все приложение состовляет одну форму, Это вряд ли удачное решение, для проекта размеров, оправдывающих групповую разработку, но это вопрос десятый. Скажу так: пока Вы не поймете, что эта фраза не имеет ровно никакого отношения к делу, Вы вряд ли добьетесь чего-то путного, поскольку смешиваете проектирование с малозначительной деталью реализации. StenСпасибо всем за ответ, но всетаки меня так и никто не понял, Вы себя крайне переоцениваете. Первые два данных Вам ответа вполне хороши, да и третий... лучше, чем ничего. Stenу меня есть форма на ней два грида, и множество кнопок и функционала по гридам. Напугали ежа голым задом. Скажу так: для человека, способного хорошо решить эту задачу в одиночку, разделение для групповой разработки принципиальной проблемой не будет. Если же у вас в команде никто такое сделать не способен - лучше не браться; "куча" только ухудшит результат по сравнению с одиночкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2007, 00:11 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
Sten Очень похоже на то, что Вы думаете не о том, о чем следовало бы. Пожалуй, могу порекомендовать следующее упражнение: спроектируйте эту задачу так, как если бы она решалась многими формами. Придумайте эти формы, раздайте задачи. И продумайте либо выясните на форуме дельфы, как собрать много форм в одну. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2007, 00:15 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
Так у босса проекта должно быть понимание, что пользовательское представление одно, а логика и структура проекта нечто иное хотя и связанное поставленной задачей. Разбив проект на куски(процедуры и функции), раздаём задачи. Задачи должны быть предельно конкретны имя подпрограммы,параметры,возвращаемое значение. Только всё следует хорошенько разрулить перед выдачей заданий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2007, 22:24 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
Sten Спасибо всем за ответ, но всетаки меня так и никто не понял, у меня есть форма на ней два грида, и множество кнопок и функционала по гридам. Грид подразумевает работу с БД, так? По крайней мере можно разбить на 2 части: интерфейс на форме и логира работы с БД в датамодуле! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2007, 17:39 |
|
||
|
Гуру, помогите советом.
|
|||
|---|---|---|---|
|
#18+
Как вариант, можно разбить на подзадачи по контролам или даже по эвентам, а при необходимости ветвить еще мельче. Выделить одного человека только на интерфейс (пока не сделает все что надо). И одного - на раздачу заданий (вероятно это будете вы). Прочим выдавать по одной задачке небольшой сложности, проверять их творения, пересобирать проект. Для небольшой команды вполне неплохо. (Если откроете контатк, могу скинуть ссылку на пример). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2007, 14:45 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=34897223&tid=1345715]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
25ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 290ms |

| 0 / 0 |
