«Идеальная» среда разработки .NET?

Мне подарили ранний рождественский подарок:
. Разрешение выйти из цикла разработки для реорганизовать и документ нашего приложения.
У меня есть полная свобода реструктуризации, рефакторинга и настройки любого объема инфраструктуры, который я считаю нужным.

Если бы у вас был карт-бланш, какая у вас «идеальная» среда разработки .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 или около того разработчиков

SQL Server 2003: вы уверены? Последний раз проверял, такого зверька нет.

Joel Coehoorn 02.12.2008 17:06

Может он имеет в виду VS2003 и SQL Server 2000

Richard Ev 02.12.2008 17:12

ха-ха. Ага ... Я имел в виду VS2003 и SQL2000. Мой мозг иногда немного расплывчатый ...

El Mark 02.12.2008 18:01
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
11
3
3 968
15
Перейти к ответу Данный вопрос помечен как решенный

Ответы 15

Я думаю, вы все склоняетесь в правильном направлении.

Используйте Visual Studio 2008. Он очень стабилен с SP1, и вы можете использовать как версию 2, так и версию 3 платформы .NET.

Мы используем хранилище SourceGear для контроля версий, и это хорошо работает для нас, как для небольшой команды.

Для отслеживания проектов / ошибок / поддержки мы используем OnTime 2008 от AxoSoft.

Мы также используем ScrewTurn Wiki для документирования процедур и примеров кода / лучших практик.

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

И обязательно используйте Visual Studio 2008. В версии 2005 действительно было много проблем с большими проектами VB (по крайней мере, для нас).

Моя рекомендация для IDE и контроля версий:

  • VS2008 с SP1
  • Подверсия с TortoiseSVN (для проводника Windows) и АнхСВН (для VS2008)

Я бы проголосовал за Team Foundation Server. Затем у вас есть контроль версий, автоматические сборки и (своего рода) отслеживание ошибок - все в одном пакете, который очень хорошо интегрируется с VS 2008. Однако он имеет довольно высокую цену.

Мои мысли точно. Говоря о .NET, нет лучшей IDE, чем Visual Studio. И VS2008 - лучший из них. А для Visual Studio нет лучшего контроля версий, чем TFS. Кроме того, это намного больше, чем просто контроль версий. Единственный недостаток - абсурдная цена.

Vilx- 02.12.2008 17:27

+1, но цена - это то, над чем Microsoft должна работать

terjetyl 02.12.2008 17:34

«но цена - это то, над чем Microsoft должна работать» - да .. Я обязательно отправлю «Отчет об ошибке в маркетинге» их команде ...

El Mark 02.12.2008 18:11

Я согласен с VS2008 с SP1, SVN (с Ankh и Tortoise)

Загляните в замок из песка / docproject для создания документации.

CruiseControl работает хорошо.

Что касается управления исходным кодом для баз данных, вы можете использовать тип проекта базы данных в VS2008 и использовать SVN (или другое решение для управления исходным кодом по вашему выбору), чтобы сохранить его под контролем источника.

Уточнение: вам нужно изучить Cruise Control .NET, который является дополнением Windows / IIS к исходному проекту Cruise Control.

Babak Naffas 07.07.2009 22:37
Ответ принят как подходящий

Я рекомендую следующие инструменты (в основном потому, что мы их используем):

Каждый из нас работает на своих локальных машинах, и у нас есть отдельный сервер сборки, который отслеживает репозиторий Subversion (с помощью CruiseControl.NET) и собирает последнюю версию на этом сервере.

Мы используем «Задачи сообщества MSBuild», чтобы встроить номер версии Subversion в сборку, чтобы мы могли отображать его пользователю.

На данный момент самые большие «дыры» в нашей настройке находятся в базе данных и в нашем автоматическом тестировании.

В настоящее время мы все используем центральный сервер базы данных. В идеале вы должны работать над созданием сценария, который воссоздает вашу базу данных под контролем версий. Насколько я понимаю, каждый раз, когда сервер сборки перестраивает сайт, он также должен перестраивать базу данных. У вас также должен быть скрипт, который будет генерировать любые тестовые данные, которые вы хотите в базе данных.

С подобными сборками базы данных вы все также можете работать с локальной копией базы данных.

Возможно, вы захотите взглянуть на SQL Toolbelt (или его части) из программного обеспечения Красные ворота - мы используем инструменты SQL Compare для развертывания схем на действующих серверах, и они действительно впечатлили меня.

Удачи!

Редгейт работают намного лучше, чем встроенные в VS2008 Database Ed. Хороший звонок.

NikolaiDante 03.12.2008 13:21

Независимо от того, сколько времени и мыслей вы вложили в это, вы, вероятно, никогда не получите «идеальную» среду. У каждого инструмента есть свои кварки и проблемы. Тем не менее, есть пища для размышлений:

Перейдите на последнюю и лучшую версию 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 даст вам:

  • Сотрудничество
  • Контроль версий
  • Отчетность о статусе проекта
  • Отслеживание проблем
  • Интеграция в Visual Studio
  • Много других вкусностей

Для ваших ежедневных и непрерывных сборок я бы предпочел CruiseControl.NET (CC.NET). Мы пытались использовать систему сборки, встроенную в TFS, но столкнулись со многими, многими проблемами (я думаю, в основном из-за того, как структурированы наши проекты). CruiseControl.NET легко установить и настроить, и он работает как чемпион. Вы можете настроить его для непрерывного строительства (каждая регистрация запускает сборку) и ежедневных сборок. Возможно, вам придется найти несколько хитроумных способов заставить CruiseControl.NET выполнять некоторые из наиболее сложных задач (например, остановка службы и т. д.), Но он не смог сделать то, что мне нужно. Он также довольно расширяемый, поэтому вы можете написать код, чтобы заставить его делать то, что вы хотите, что является хорошей функцией.

Не уверен в управлении версиями базы данных, но предполагаю, что для этого можно использовать TFS Source Safe.

Удачи!

«TFS также предоставит вам новейшую версию Visual с исходным кодом». Какие?

Robert S. 02.12.2008 18:29

Мы используем 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 и предпочитаю первую настройку. Детали есть, но с ними приятно работать.

Пример:

  • TFS отправляет письма для проверок и сборок, в Trac есть простой канал Лента новостей. (Для TFS есть обходные пути.)
  • при появлении новой регистрации щелкните ссылку (из ленты), и вы окажетесь в среде Trac. Вы видите красивый разница с предыдущим chancgeset. (где в TFS?)
  • Интегрированная вики - очень удобная среда для внутренней документации.
  • IntelliSense в клиенте Tortoise за ваши комментарии
  • приятный веб-интерфейс для просмотра исходного кода, обновления документации (было легко, когда я был дома)
  • ...

Маленькие детали делают его гораздо более приятным инструментом для меня.

Я также говорю, что команда была небольшая (тоже 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. Это становится особенно полезным, если и когда вы решите перейти на дельта-релизы.

Другие вопросы по теме