Как зайти в Даркнет?!
25th January, 01:11
5
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
893
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
912
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
905
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4381
0
Помогите пожалуйста решить задачи
24th November, 23:53
6086
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4350
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4396
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Папки или проекты в решении Visual Studio?
При разбиении решения на логические слои, когда лучше всего использовать отдельный проект над просто группировкой по папке?
По умолчанию всегда просто создавайте новую папку в рамках одного проекта
- Вы получите один assembly (без дополнительных ILMerge гимнастических)
- Проще запутать (потому что у вас будет меньше открытых типов и методов, в идеале вообще никаких)
Разделение исходного кода на несколько проектов имеет смысл только в том случае, если вы...
- Есть некоторые части исходного кода, которые являются частью проекта, но не могут быть развернуты по умолчанию или вообще (модульные тесты, дополнительные плагины и т. д.)
- Больше разработчиков вовлечено и вы хотите относиться к их работе как к расходному черному ящику. (не очень рекомендуется)
- Если вы можете четко разделить свой проект на изолированные слои / модули и хотите убедиться, что они не могут пересекать внутренние элементы. (также не рекомендуется, потому что вам нужно будет решить, какой аспект является наиболее важным)
Если вы считаете, что некоторые части вашего исходного кода могут быть повторно использованы, все равно не создавайте его как новый проект. Просто подождите, пока вы действительно не захотите повторно использовать его в другом решении и изолировать его из исходного проекта по мере необходимости. Программирование-это не лего, повторное использование обычно очень сложно и часто происходит не так, как планировалось.
Разделение объектов на проекты часто является оптимизацией архитектуры YAGNI. Как часто вы действительно использовали эти отдельные проекты повторно? Если это происходит нечасто, вы усложняете свою разработку, сборку, deployment и техническое обслуживание для теоретического повторного использования.
Я предпочитаю разделение на папки (используя соответствующие пространства имен) и рефакторинг для разделения проектов, когда у вас есть реальный случай повторного использования.
Дэнни написал::
Я лично считаю, что если многоразовый код разбит на проекты, то проще использовать другие места, чем если бы он был просто в папках.
Я действительно согласен с этим - если вы можете повторно использовать его, он должен быть в отдельном проекте. С учетом сказанного, это также очень трудно использовать эффективно :)
Здесь, в SO, мы попытались быть очень простыми с тремя проектами:
- Веб-проект MVC (который делает хорошую работу по разделению ваших слоев на папки по умолчанию)
- Проект базы данных для управления версиями нашего DB
- Модульные тесты для MVC моделей / контроллеров
Я не могу говорить за всех, но я доволен тем, как просто мы его сохранили - действительно ускоряет сборку!
Обычно я делаю проект для GUI проект для бизнес-логики проект для доступа к данным и проект для модульных тестов.
Но иногда разумно иметь разделение на основе сервисов (если вы используете сервис-ориентированную архитектуру), таких как аутентификация, продажи и т. д.
Я полагаю, что эмпирическое правило, которое я использую, состоит в том, что если вы можете рассматривать его как компонент, который имеет четкое разделение проблем, то другой проект может быть разумным. Но я думаю, что папки по сравнению с проектами могут быть просто предпочтением или философией.
Я лично считаю, что если многоразовый код разбит на проекты, то проще использовать другие места, чем если бы он был просто в папках.
Разделение исходного кода на
несколько проектов имеет смысл только в том случае, если
ты...
... Больше вовлеченных разработчиков
и вы хотите относиться к своей работе так же, как
расходный черный ящик. (не очень
рекомендуемый) ...
Разделение исходного кода на несколько проектов имеет смысл только в том случае, если ты... ... Больше вовлеченных разработчиков и вы хотите относиться к своей работе так же, как расходный черный ящик. (не очень рекомендуемый) ...
Почему это не рекомендуется? Я нашел это очень полезным способом управления приложением с несколькими разработчиками, работающими над разными частями. Делает проверки намного проще, в основном за счет практически полного исключения слияний. Очень редко двум разработчикам приходится работать над одним и тем же проектом одновременно.
Если вы решите создать несколько проектов, убедитесь, что все, кто добавляет код в решение, полностью осознают их намерения и делают все возможное, чтобы заставить их понять зависимости между проектами. Если вы когда-нибудь пытались разобраться в этом беспорядке, когда кто-то пошел и добавил ссылки, которые не должны были быть там и сошли с рук в течение нескольких недель, вы поймете этот момент
Я действительно думаю, что лучше разделить проект, но все зависит от размера проекта и количества людей, работающих над ним.
Для более крупных проектов у меня есть проекты для
- доступ к данным (модели)
- сервисы
- ПЕРЕДНИЙ КОНЕЦ
- тесты
Я получил модель от Роба Коннери и его приложения для витрины магазина... кажется, это действительно хорошо работает.
mvc-витрина магазина