Мне подарили ранний рождественский подарок:
.
Разрешение выйти из цикла разработки для реорганизовать и документ нашего приложения.
У меня есть полная свобода реструктуризации, рефакторинга и настройки любого объема инфраструктуры, который я считаю нужным.
Если бы у вас был карт-бланш, какая у вас «идеальная» среда разработки .NET?
О приложении:
Клиент-серверное приложение VB.NET. (Интерфейс Windows Forms, серверная часть веб-служб ASPX)
В настоящее время используются Visual Studio и SQL Server 2003 и ... Visual SourceSafe.
Я хотел бы иметь комбинацию из:
* Лучшее управление версиями. (склоняется к Subversion)
* Wiki или другая система для отслеживания ошибок и документации. (склоняясь к Trac с Subversion)
* Упрощенный процесс сборки и ежедневные сборки (Визуальная сборка? CruiseControl.NET?)
* Контроль версий для базы данных SQL Server
* Обновить до Visual Studio 2005 (или 2008)?
... для небольшой команды из 5 или около того разработчиков
Может он имеет в виду VS2003 и SQL Server 2000
ха-ха. Ага ... Я имел в виду VS2003 и SQL2000. Мой мозг иногда немного расплывчатый ...





Я думаю, вы все склоняетесь в правильном направлении.
Используйте Visual Studio 2008. Он очень стабилен с SP1, и вы можете использовать как версию 2, так и версию 3 платформы .NET.
Мы используем хранилище SourceGear для контроля версий, и это хорошо работает для нас, как для небольшой команды.
Для отслеживания проектов / ошибок / поддержки мы используем OnTime 2008 от AxoSoft.
Мы также используем ScrewTurn Wiki для документирования процедур и примеров кода / лучших практик.
Что касается нашего процесса сборки, мы не полностью автоматизировали повседневный процесс, потому что обычно мы так не работаем. Однако для бета-версий и выпусков я просто использую NAnt для создания полной сборки после того, как обновляю номера версий вручную (я делаю это, чтобы номера версий лучше выглядели для нашей группы поддержки).
И обязательно используйте Visual Studio 2008. В версии 2005 действительно было много проблем с большими проектами VB (по крайней мере, для нас).
Моя рекомендация для IDE и контроля версий:
Я бы проголосовал за Team Foundation Server. Затем у вас есть контроль версий, автоматические сборки и (своего рода) отслеживание ошибок - все в одном пакете, который очень хорошо интегрируется с VS 2008. Однако он имеет довольно высокую цену.
Мои мысли точно. Говоря о .NET, нет лучшей IDE, чем Visual Studio. И VS2008 - лучший из них. А для Visual Studio нет лучшего контроля версий, чем TFS. Кроме того, это намного больше, чем просто контроль версий. Единственный недостаток - абсурдная цена.
+1, но цена - это то, над чем Microsoft должна работать
«но цена - это то, над чем Microsoft должна работать» - да .. Я обязательно отправлю «Отчет об ошибке в маркетинге» их команде ...
Я согласен с VS2008 с SP1, SVN (с Ankh и Tortoise)
Загляните в замок из песка / docproject для создания документации.
CruiseControl работает хорошо.
Что касается управления исходным кодом для баз данных, вы можете использовать тип проекта базы данных в VS2008 и использовать SVN (или другое решение для управления исходным кодом по вашему выбору), чтобы сохранить его под контролем источника.
Уточнение: вам нужно изучить Cruise Control .NET, который является дополнением Windows / IIS к исходному проекту Cruise Control.
Я рекомендую следующие инструменты (в основном потому, что мы их используем):
Каждый из нас работает на своих локальных машинах, и у нас есть отдельный сервер сборки, который отслеживает репозиторий Subversion (с помощью CruiseControl.NET) и собирает последнюю версию на этом сервере.
Мы используем «Задачи сообщества MSBuild», чтобы встроить номер версии Subversion в сборку, чтобы мы могли отображать его пользователю.
На данный момент самые большие «дыры» в нашей настройке находятся в базе данных и в нашем автоматическом тестировании.
В настоящее время мы все используем центральный сервер базы данных. В идеале вы должны работать над созданием сценария, который воссоздает вашу базу данных под контролем версий. Насколько я понимаю, каждый раз, когда сервер сборки перестраивает сайт, он также должен перестраивать базу данных. У вас также должен быть скрипт, который будет генерировать любые тестовые данные, которые вы хотите в базе данных.
С подобными сборками базы данных вы все также можете работать с локальной копией базы данных.
Возможно, вы захотите взглянуть на SQL Toolbelt (или его части) из программного обеспечения Красные ворота - мы используем инструменты SQL Compare для развертывания схем на действующих серверах, и они действительно впечатлили меня.
Удачи!
Редгейт работают намного лучше, чем встроенные в VS2008 Database Ed. Хороший звонок.
Независимо от того, сколько времени и мыслей вы вложили в это, вы, вероятно, никогда не получите «идеальную» среду. У каждого инструмента есть свои кварки и проблемы. Тем не менее, есть пища для размышлений:
Перейдите на последнюю и лучшую версию Visual Studio, Visual Studio 2008 SP1.
Если вы являетесь подписчиком MSDN и приобрели версию Visual Studio для командной системы, вы можете установить Сервер Team Foundation (TFS). TFS - отличный продукт, интегрированный в Visual Studio. Он использует службы Windows Sharepoint Services (WSS), которые дадут вам возможность иметь вики, репозитории документов и т. д. (В основном урезанная версия Microsoft Office Sharepoint Server). TFS также предоставит вам новейшую версию Visual SourceSafe, с которой у меня не было проблем, и Microsoft говорит о ее возможности масштабирования до сотен тысяч пользователей. Редакция TFS Workgroup позволит вам использовать до 5 разработчиков без необходимости приобретения лицензии. Более 5 пользователей, и вам придется покупать лицензии. Я также почти уверен, что для запуска TFS вам придется использовать SQL Server 2005, но я могу ошибаться. У нас есть TFS, установленная на одном устройстве (наш модуль разработчика), и у нас не было никаких проблем.
SO TFS даст вам:
Для ваших ежедневных и непрерывных сборок я бы предпочел CruiseControl.NET (CC.NET). Мы пытались использовать систему сборки, встроенную в TFS, но столкнулись со многими, многими проблемами (я думаю, в основном из-за того, как структурированы наши проекты). CruiseControl.NET легко установить и настроить, и он работает как чемпион. Вы можете настроить его для непрерывного строительства (каждая регистрация запускает сборку) и ежедневных сборок. Возможно, вам придется найти несколько хитроумных способов заставить CruiseControl.NET выполнять некоторые из наиболее сложных задач (например, остановка службы и т. д.), Но он не смог сделать то, что мне нужно. Он также довольно расширяемый, поэтому вы можете написать код, чтобы заставить его делать то, что вы хотите, что является хорошей функцией.
Не уверен в управлении версиями базы данных, но предполагаю, что для этого можно использовать TFS Source Safe.
Удачи!
«TFS также предоставит вам новейшую версию Visual с исходным кодом». Какие?
Мы используем Subversion с Jira для отслеживания ошибок, управления проектами, FishEye и Crucible для просмотра исходного кода и проверки кода, и это работает очень хорошо.
Мы - команда из 12 разработчиков. Мы давние пользователи FinalBuilder, который мы используем для выполнения всех сборок и автоматического развертывания - смеси проектов VB.NET и Visual Studio 2008, и это работает для нас исключительно хорошо. Мы нацелены на базы данных SQL Server 2005/2008 и храним объекты базы данных в репозитории системы управления версиями. Большую часть времени мы используем Visual Studio 2008 Database Edition в сочетании с инструментами Redgate, и это хорошо работает для нас - особенно управление сценариями изменений и другими вещами. Для нас TFS просто не сработала - хотя ваш опыт может отличаться. Мы обнаружили, что это слишком громоздко, сложно настраивать рабочий процесс и, вместо того, чтобы помогать с рабочим процессом, имело плохую тенденцию мешать.
Я недавно перешел на SourceGear Fortress. Это недорого, быстро и надежно.
Мне нравится TFS для больших команд (> 20 разработчиков). Я только начинаю знакомиться с Subversion, так что мне пока не чем поделиться, кроме того, что это было довольно легко настроить.
Однако Trac было очень трудно запустить. Однако это вопрос документации, а не самого продукта.
Я предпочитаю установку Visual Studio 2008 / Subversion / Trac / Anck and Tortoise / CruiseControl.NET (TeamCity / Укушенный).
Я не говорю, что TFS - не лучший продукт, но я думаю, что он «громоздкий». Недавно я перешел с решения Trac / Subversion на TFS и предпочитаю первую настройку. Детали есть, но с ними приятно работать.
Пример:
Маленькие детали делают его гораздо более приятным инструментом для меня.
Я также говорю, что команда была небольшая (тоже 5 разработчиков) и вам нужно время на настройку. Я согласен с тем, что, когда вы работаете с большими командами, возможно, предпочтительнее использовать TFS.
Мой выбор был бы следующим:
Better versioning.
Я бы выбрал ИсточникGear Vault - надежный, работает как шарм, ваш источник хранится в базах данных SQL Server -> можно легко создать резервную копию и он не будет нестабильным, как Visual SourceSafe.
Wiki or other system for bug tracking and documentation.
Из моего личного опыта: Туман - ваш лучший выбор - простой, легкий, быстрый для понимания, хорошо выполняет свою работу, просто работает, и все просто «понимают» без длительной и дорогостоящей адаптации / настройки и без особого обучения - просто работает: - )
Simplified build process and daily builds (Visual Build? CruiseControl.NET?)
CruiseControl.NET - отличный бесплатный вариант - если вы не против потратить немного $$$, я бы также посмотрел на FinalBuilder - либо как настольное, либо как серверное приложение.
Version control for the SQL Server database
-> используйте Vault! Работает так же. Используйте отличный инструмент, такой как Apex SQL Scripter или что-то подобное, для создания и поддержки вашего SQL для создания и обновления схемы базы данных и помещения этих SQL-скриптов в Vault.
Upgrade to Visual Studio 2005 (or 2008)?
Используйте Visual Studio 2008 с пакетом обновления 1 (SP1) на платформе .NET 3.5 с пакетом обновления 1 (SP1) - надежный и полный новых функций повышения производительности.
Только мои 0,02 доллара
В любой идеальной среде разработки .NET должна быть установлена копия ReSharper. Я новообращенный, и я люблю это.
На коробке разработки
На сервере
Очень да на VS 2008 с SP1. Я также очень рекомендую:
Я слышал много хорошего о TFS; Однако есть еще фактор стоимости. Перечисленные вами инструменты очень хорошо работают друг с другом и бесплатны.
Одно дополнение, которое я хотел бы сделать, - это TortoiseSVN для клиента Subversion. Пуристам это не нравится, но тот факт, что он интегрируется с контекстными меню оболочки Windows (щелчок правой кнопкой мыши), делает его очень простым в использовании.
Для версий SVN используйте версию 1.6, которая вышла недавно. В этой версии улучшено ветвление и слияние.
Trac - отличный инструмент. Обязательно ознакомьтесь с правилами форматирования TracWiki и TracLinks для сообщений фиксации SVN. Trac анализирует эти сообщения, поэтому, если вы фиксируете исправление для Ticket 123, добавление «# 123» к сообщению SVN позволяет Trac связать этот коммит (и все файлы, связанные с ним) с соответствующими билетами Trac. Это становится особенно полезным, если и когда вы решите перейти на дельта-релизы.
SQL Server 2003: вы уверены? Последний раз проверял, такого зверька нет.