У меня есть фон Java, Apache Maven и Android, и я немного увлекаюсь iOS. Теперь мне интересно, есть ли какая-то стандартная цепочка инструментов, которая помогает с такими вещами, как
- управление деталями scm (svn, git, mercurial, ветвление, тегирование ..)
- управление выпуском (нумерация версий, управление конфигурацией dev и prod ...)
- работа с зависимостями (например, централизованный для нескольких проектов и разработчиков, удаленный доступ)
- IDE независимая сборка
- CI build
- библиотеки тестирования (модульное тестирование, интеграционное тестирование, тестирование пользовательского интерфейса, макетирование)
- статический анализ
- Отчет о состоянии проекта
- другие IDE
и целый ряд других вещей, которые предоставляет экосистема Maven, таких как хранилища публичных библиотек и так далее. Судя по моим первоначальным исследованиям, здесь не так много, но я могу просто искать не в том месте.
Какие должны быть инструменты и библиотеки для разработки под iOS?
Также у меня сложилось впечатление, что XCode управляет всем этим, и если какой-либо функции там нет, вам не повезет (например, поддержка git или hg) и добавьте другие инструменты. Это хорошо, но вы всегда должны будете использовать Xcode правильно?