Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Java. Lecture 12. Development Tools

783 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Java. Lecture 12. Development Tools

  1. 1. Development Tools
  2. 2. Revision Control Systems (RCS) <ul><li>Совместная работа над проектом </li></ul><ul><li>Хранение истории всех изменений кода </li></ul><ul><li>Восстановление нужной (рабочей) версии кода </li></ul><ul><li>Безопасная для всей системы в целом разработка новой функциональности </li></ul>
  3. 3. Distributed vs. Centralized <ul><li>Возможно работать в оффлайне </li></ul><ul><li>Проще обмениваться изменениями с коллегами </li></ul><ul><li>Проще создавать экспериментальные ветви </li></ul><ul><li>Более сложные операции слияния </li></ul><ul><li>Необходим доступ к главному репозиторию </li></ul><ul><li>Простые слияния </li></ul><ul><li>Значительно шире распространены </li></ul>
  4. 4. Distributed vs. Centralized <ul><li>Bazaar (Canonical: Ubuntu, ..) </li></ul><ul><li>Git (Linux Kernel, X.Org) </li></ul><ul><li>Mercurial (Google Code, Mozilla, NetBeans..) </li></ul><ul><li>Monotone </li></ul><ul><li>Darcs </li></ul><ul><li>Subversion </li></ul><ul><li>CVS </li></ul><ul><li>IBM Rational ClearCase </li></ul><ul><li>MS Team Foundation Server </li></ul>
  5. 5. Терминология <ul><li>Baseline </li></ul><ul><li>Branch </li></ul><ul><li>Change (diff, delta) </li></ul><ul><li>Change set </li></ul><ul><li>Checkout </li></ul><ul><li>Commit </li></ul><ul><li>Head </li></ul><ul><li>Merge </li></ul><ul><li>Repository </li></ul><ul><li>Tag </li></ul><ul><li>Trunk </li></ul>
  6. 6. Subversion (SVN) <ul><li>Checkout: </li></ul><ul><li>$ svn co http://svn.ncedu.ru/project/trunk project </li></ul><ul><li>Add: </li></ul><ul><li>$ svn add * </li></ul><ul><li>Commit: </li></ul><ul><li>$ svn ci </li></ul>
  7. 7. Subversion Tools <ul><li>Плагин для Eclipse: Eclipse Marketplace, http://subclipse.tigris.org/ </li></ul><ul><li>Модуль для NetBeans: Update Center </li></ul><ul><li>IntelliJ Idea: поддерживает «искаропки» </li></ul><ul><li>Tortoise SVN (Windows Explorer): http://tortoisesvn.tigris.org/ </li></ul>
  8. 8. Инструмент для сборки : Ant <ul><li>Де-факто стандартное средство сборки java- приложений </li></ul><ul><li>Простой (конфигурация в удобном xml- файле) </li></ul><ul><li>Мощный (множество готовых решений) </li></ul><ul><li>Расширяемый (возможность создания собственных расширений) </li></ul><ul><li>Гибкий (позволяет автоматизировать большинство процессов) </li></ul>
  9. 9. Менеджеры зависимостей <ul><li>Основное назначение – сократить затраты на поддержку текущей конфигурации </li></ul>
  10. 10. Apache Ivy <ul><li>Интегрируется с Ant, Eclipse, … </li></ul><ul><li>Простое и мощное средство </li></ul><ul><li>К сожалению, не столь популярное, как Maven </li></ul>

×