Как я могу сделать свой рабочий процесс разработки большим количеством “enterprisey”?

Вы могли бы сделать что-то подобное

var orderedItems = Enumerable.Range(1,15)
                   .Select(x=> new Order{Date = DateTime.Now.AddDays(x%3)});
    var indexItems = orderedItems.GroupBy(x=>x.Date)
                   .SelectMany(x=>x.ToList()
                            .Select((c,index)=>new Order{Date= x.Key, Index=index+1}));

, где Порядок определяется как

public class Order
{
    public int Index{get;set;}
    public DateTime Date{get;set;}
}

.

9
задан dancavallaro 5 January 2009 в 16:59
поделиться

12 ответов

Это кажется мне как Вы, на самом деле имеют довольно хорошую идею того, что необходимо сделать.

Используя Подверсию (или другой VCS) необходимость. Хотя могло бы быть мудро установить отдельный репозиторий SVN для Вашего связанного с работой кода вместо того, чтобы использовать персональный.

Можно интегрировать Подверсию с Eclipse с помощью плагина как Subclipse, который я нашел работами вполне прилично.

Я определенно использовал бы Муравья или Знатока - мое предпочтение является Муравьем, потому что это более гибко, и я думаю, что это подошло бы, Ваша разработка разрабатывают больше, чем Знаток также. Но Вы могли бы также хотеть изучить Плющ Apache, который обрабатывает управление зависимости.

В основном Вы настраиваете задачу Ant, которая выполняет Вашу компиляцию, сборку и шаги развертывания - так, чтобы при создании заключительного пакета JAR, можно было быть уверены, что это была единица, протестированная, поскольку это - часть скрипта Ant. Лучший способ начать с муравьем состоит в том, чтобы посмотреть на некоторые примеры и прочитать руководство.

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

Это может также стоить Вашего при установке чего-то как Trac - важно смочь отслеживать ошибки, и Wiki удивительно полезна для документации.

Другими словами, все это кажется, что Вы находитесь на правильных строках, просто необходимо начать использовать некоторые из этих инструментов!

8
ответ дан 4 December 2019 в 13:05
поделиться

Если бы Вы действительно установлены на распределенном управлении исходным кодом, я рекомендовал бы посмотреть на Базар. Его подобное МЕРЗАВЦУ распределенное управление исходным кодом это разработано на основе выполнения очень высококачественных слияний. Из поля это работает над всеми платформами включая Windows, и у них есть клиент TortoiseBZR.

Действительно, хотя, любое управление исходным кодом не лучше, чем ни один. Если Вы - единственный разработчик затем нет никакой потребности ни в чем более сложном, чем SVN. Крупные компании и проекты используют SVN все время с небольшой проблемой.

Насколько поблочное тестирование идет, необходимо сделать себя знакомыми с JUnit. То, что Вы знаете о поблочном тестировании и знаете Вас, должно делать, это - все еще несколько шагов перед самыми специальными разработчиками.

2
ответ дан 4 December 2019 в 13:05
поделиться

Используйте управление версиями. Период. SVN имеет большой intergration с Eclipse и Windows. Получите клиент TourtisSVN для окон и используйте subclipse плагин с Eclipse.

Я рекомендовал бы получить внешний HD или использовал бы один из серверов Ваших компаний для того, чтобы поставить Ваш репозиторий и часто делал бы резервные копии. Подверсия работает отлично с развертыванием и обновляющий также. Просто изучите, как сделать это, и Вы никогда не будете оглядываться назад :)

До Поблочного тестирования некоторые люди сказали бы, что это - способ пойти, но я не нашел, что достаточно доказательства запускает практику сам. Если кто-то по этому вопросу может убедить меня иначе затем, сделайте!

Кроме того, не обращайтесь к "предприятию", Ваш рабочий процесс - надеется делать его лучше. Методы, которые работают хорошо с огромными командами и corperations, не могут работать хорошо на Вас. Я - в значительной степени единственный разработчик сам и знаю ситуацию, в которой Вы находитесь. Просто попробуйте все и только сохраните что чувства естественными через некоторое время.

Но удостоверьтесь, что просто попробовали SVN! Если Ваша компания имеет сервер LINUX с апачем, видят, можно ли настроить сервер там с помощью DAV-SVN.

:)

2
ответ дан 4 December 2019 в 13:05
поделиться

Я думаю, что Вы ответили на большинство своих собственных вопросов.

  • Управление исходным кодом: выберите SVN - легкая установка, большая интеграция с Eclipse (subclipse).
  • Используйте Муравья, чтобы разработать Ваш проект и развернуть его (задача SCP/SFTP)
  • Сохраните все свои настройки (настройки проекта Eclipse, создайте xmls, и т.д.) в SVN.
  • Используйте Bugzilla для отслеживания ошибки/проблемы/запросы/идеи.
2
ответ дан 4 December 2019 в 13:05
поделиться

Было бы ОЧЕНЬ выгодно начать работать с управлением версиями. Запустите теперь, не задерживайтесь! Мерзавец перемещается ДЕЙСТВИТЕЛЬНО быстро, и уже существует разрабатываемый TortoiseGit. SVN является все еще большим стандартом для работы с. И я не работал с Подвижным, но это - другой VCS, который это стоит изучить.

Кроме этого, я не вижу, почему Ваш рабочий процесс должен быть enterprisey. Это просто должно быть эффективно и удобно. Тем не менее я думаю, что необходимо попытаться работать с простым текстовым редактором и компилировать из командной строки. Большинство лучших в мире программистов все еще использует это вместо IDE, и он поможет Вам понять процессы под своим любимым IDE.

1
ответ дан 4 December 2019 в 13:05
поделиться

Проверьте Прагматический Стартовый набор Прагматически настроенных Программистов.

Это школы Вы на важных основах разработки программного обеспечения это университеты/и т.д. кажется, отказываюсь, как управление версиями, поблочное тестирование и автоматизация проекта (в том порядке), и делает это очень доступным способом.

Это даст Вам прочную базу, чтобы продолжать идти оттуда.

1
ответ дан 4 December 2019 в 13:05
поделиться

Смотрите Appfuse Matt Raible.

Это включает Знатока и Поблочное тестирование.

http://raibledesigns.com/rd/tags/appfuse

0
ответ дан 4 December 2019 в 13:05
поделиться

Хотя Вы помещаете его как последнюю вещь, я думаю, что необходимо начать использовать jUnit незамедлительно.

Причина, это является, вероятно, самым легким из стремлений, которые Вы определили, и инструменты почти наверняка уже встроены в Вашу сборку Eclipse.

Сделайте новую папку в своем проекте названной 'jUnit'.

Скажем, у Вас есть класс Сотрудника с setAnnualSalary () и getMonthlySalary () методы.

Щелкните правой кнопкой по jUunit папке, новой-> "jUnit тестовый сценарий". Это сделает новый класс. Назовите это TestEmployee. Eclipse генерирует шаблонный материал для Вас, как обычно.

Добавьте пустой метод с именем, начинающимся с 'теста':

public void testSalaryCalc() {
    Employee emp = new Employee("John Doe");
    emp.setAnnualSalary(12000);
    assertEquals(1000,emp.getMonthlySalary());
}

Щелкните правой кнопкой, "работайте как"-> "jUnit тест". (в первый раз Eclipse может предложить Вам делать некоторую установку для проекта. Просто сделайте то, что это говорит.)

Если Сотрудник будет работать правильно, то Вы будете видеть зеленую панель. Саботируйте класс Сотрудника, запустите тест снова, и Вы будете видеть красную панель, а также производить сообщение Вам, каков отказ был.

Поздравляю: Вы - поблочное тестирование!

Щелчок правой кнопкой по родительскому каталогу и выбор "Run as jUnit test" выполнят каждый класс Тестового сценария в каталоге. Позже Вы можете включить jUnit в свой процесс сборки, но не волнуетесь об этом на данный момент.

Автоматическое заполнение покажет Вам все вариации на assert() можно использовать. Можно читать на нем и нацелиться к методам, где Вы пишете тестовые сценарии перед реализацией, которая передает их. Но просто выполнение простого материала выше получает Вас большие преимущества.

0
ответ дан 4 December 2019 в 13:05
поделиться

После того как у Вас есть набор управление версиями и несколько модульных тестов, я рассмотрел бы непрерывный сервер интеграции (Вы хотели быть enterprisey, правильно?).

Даже если Вы и остаетесь единственный разработчик, это могло бы помочь Вам раскрыть несколько ошибок. Вещи Вы забыли регистрироваться или подобные. Сервер CI регулярно проверяет все Ваши источники, делает чистую сборку выполнения все Ваши тесты. Это также связывается с Вами в случае ошибок.

Это дает Вам гарантию, что Вы (или любой другой человек) можете проверить свой код и создать/выполнить Ваши проекты.

Я рекомендовал бы смотреть на Гудзон

0
ответ дан 4 December 2019 в 13:05
поделиться

Как другие сказали, Вы уже ясно знаете то, что необходимо сделать. VCS - необходимость, CI или отслеживание ошибок могут быть излишеством (для единственного разработчика, которого электронная таблица могла бы удовлетворить для отслеживания ошибок).

Одна вещь, которая могла бы принести пользу Вам значительно, сохраняет организованное отставание продукта. В сольной разработке я нахожу, что быть сосредоточенное на первоочередных функциях и предотвращение излишнего усложнения одна из моих самых сложных задач. Хранение отставания помогает очень. Это не должно быть намного больше, чем расположенный по приоритетам список функций с некоторыми примечаниями об объеме каждого. На моем рабочем месте мы сохраняем эту информацию в Trac, но здесь снова, электронная таблица может быть всем, в чем Вы нуждаетесь.

И я хочу вставить разъем для поблочного тестирования, особенно Разработки через тестирование (TDD). Книга Kent Beck является хорошим местом для запуска. Я нахожу, что TDD помогает сохранить меня честным и сфокусированным на том, что я действительно должен сделать, особенно на проекте единственного разработчика без QA. Иногда кажется, что код пишет себя.

0
ответ дан 4 December 2019 в 13:05
поделиться

Вы получили некоторые действительно основательные ответы так короткое сообщение, добавляющее ссылку к статье о Разработке через тестирование, которая является гибкой практикой, которая будет выглядеть хорошей на Вашем CV. TDD

0
ответ дан 4 December 2019 в 13:05
поделиться

При выполнении Windows Server, где Вы хотите поместить свой сервер SVN, используйте Визуальный SVN в качестве сервера. Супер легко установить и использовать, это поддерживает и стандартную аутентификацию и аутентификацию Windows. Это также свободно использовать.

Eclipse имеет довольно много модулей для интеграции с сервером SVN, так используйте одного из тех или уже предложенную Черепаху SVN.

0
ответ дан 4 December 2019 в 13:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: