Я собираюсь создать базу кода для своей компании - хранить библиотеки, классы и т. Д., Разработанные сотрудниками внутри компании и используемые в разных приложениях во времени. Целью было бы повторное использование кода во времени. Платформа I предназначена только для .NET: winForms, WPF, WEB, Silverlight и другие. Я думал о создании решения, в котором будут храниться 2 проекта для каждой технологии - 1, содержащей код, а другой в качестве тестового сайта для этого кода. Что было бы лучшим решением для обработки всех этих разных технологий и кода, как вы думаете?Код компании Base
ответ
Это может быть намного сложнее, чем вы могли себе представить. В значительной степени это зависит от того, в какой компании вы работаете, в какой работе они занимаются, и о масштабах ваших амбиций.
Во-первых, вы, вероятно, не хотите создавать «рамки». У вас уже есть .NET Framework. Возможно, вы хотите согласовать общий набор пользовательских элементов управления. Есть много на выбор. Я бы сильно отговаривал вас от попыток написать собственный набор настраиваемых элементов управления, которые будут повторно использоваться во многих проектах. Разработка согласованной и согласованной пользовательской библиотеки управления - это огромная работа сама по себе, а полные меры, которые работают для конкретного проекта, терпят неудачу, когда вы пытаетесь переместить их в другие проекты.
Я видел консалтинговую компанию (которая в основном выполняла пользовательские бизнес-приложения .NET для клиентов) пыталась повторно использовать код, и в основном это было некрасиво. Принимать код, который был написан и работает в одном настраиваемом приложении и перемещать его в другое пользовательское приложение, намного сложнее, чем кажется. Слишком часто, что «общий» фрагмент кода делает предположения об общем приложении, или он зависит от некоторого фрагмента кода приложения и устранения этой зависимости, очень сложно.
Теперь, если вы находитесь в среде, где все работают над программами, обрабатывающими одни и те же типы данных, возможно, вы можете использовать общий набор модулей доступа к данным и отчетов, а также некоторые общие алгоритмы. Однако будьте осторожны. Любой общий код должен иметь как можно меньше зависимостей. В противном случае потенциальные клиенты (т. Е. Другие программисты) предпочтут сворачивать свои собственные, а не «включать мир».
Вы говорите, что хотите создать базу кода, в которой хранятся «библиотеки, классы и т. Д., Созданные сотрудниками внутри страны и используемые во многих приложениях во времени». Для меня это говорит о том, что вы хотите поделиться кодом между несопоставимыми проектами или, по крайней мере, взять код, который был написан для одного проекта, и использовать его в другом. Это похвальная цель, но часто трудно. Как я указывал выше, существует большая разница между написанием кода, который работает для одного проекта, и написанием кода, который может использоваться несколькими проектами с минимальными зависимостями. Возможно, но сложно. И много времени.
Если вы используете повторное использование кода, вы должны идентифицировать общность независимо от того, является ли конечный пользовательский интерфейс WinForms, WPF, Silverlight, WebForms или что-то еще.
Например, если у вас был класс, рассчитанный на погашение кредита, вы не хотите иметь версию для каждой технологии. Вам просто нужна DLL, которую вы можете использовать в любом месте и передать запрос и получить результат.
Возможно, вы также захотите убедиться, что ваш доступ к данным более ориентирован на данные, а не UI-ориентированный, например, убедитесь, что только одна «Служба» ведет переговоры с таблицей базы данных, чтобы гарантировать, что ничего выше этой «Службы», зависит от любых изменений в таблице или даже базы данных.
По сути, моя цель состоит в том, чтобы основывать ваш общий код на разных вертикальных срезах функциональности и не основывать его на конечном пользовательском интерфейсе, который отображает информацию. Если вы пишете хороший код, вы можете разместить любой пользовательский интерфейс поверх (или даже нескольких пользовательских интерфейсов сверху).
- 1. Извлечение компании и код компании из строки
- 2. GIT Base код проекта
- 3. Каков код: base()
- 4. атрибут base (base base) security. .net 2010
- 5. компании Apple IOS ASlog, опрос сообщений .. [код]
- 6. Документирующий код при выходе из компании
- 7. Изменение компании/организации компании Apple
- 8. base & current vs base & offset?
- 9. Pep8 - Base 2 до 10 Base конвертера
- 10. Javascript, base 10 to base 8
- 11. Родственник компании
- 12. Как привлечь компании/коммерческих инвесторов в открытый исходный код?
- 13. Как создать код QR-кода с логотипом компании
- 14. Исходный код с кодировкой Base 64 отличается в java/shell
- 15. PHP эквивалент C# `: base`
- 16. App Одобрение компании Apple
- 17. Boxfuse: URL Перенаправление Base
- 18. Каков процесс программирования вашей компании или вашей компании?
- 19. Автоматизация сообщения «компании» на странице Facebook упомянутого «компании»
- 20. Rails показать название компании, а не идентификатор компании
- 21. Поиск по названию компании с использованием компании House XML Gateway
- 22. Компас компании: GPS-based
- 23. C++ function pointer 'base'
- 24. Параметр «base», передаваемый в safe_join (base, * paths), заканчивается на '/'
- 25. В чем смысл Base * p = new (buf) Base;
- 26. Найти сотрудника для компании
- 27. Assembly languaje, base pointer
- 28. Set Base Image Programmatically
- 29. C#: Cast to Base
- 30. Calling Base REST API
+1 Очень хороший ответ !!! –