Стратегии мультиплатформенного (а не просто кроссплатформенного) развития одной и той же линейки продуктов? - PullRequest
2 голосов
/ 19 января 2012

Я здесь, чтобы попросить некоторые высокоуровневые стратегии для поддержки развития многоплатформенной линейки продуктов в среде запуска. Подумайте о том, что делает такая компания, как DropBox, чтобы иметь версию для iOS, Android, Mac, версию для Windows и Linux. Я заинтересован во всех аспектах: контроль исходного кода, организация команды, тестирование, работы. Общая стратегия передового опыта для использования кода-убийцы на всех целевых платформах.

У меня нет опыта поддержки зрелых проектов на нескольких платформах, поэтому мне интересно, что вы посоветуете для меня. В моем конкретном случае этот вопрос относится к разработке под Android и iOS, но квест в действительности гораздо более общий. Я задал этот вопрос со своими первоначальными впечатлениями здесь: http://news.ycombinator.com/item?id=3484074, хотя, думаю, я включил слишком много своих собственных идей, чтобы быть полезным. Так что забудьте о моих впечатлениях: каков ваш опыт? Что работает лучше всего?

Спасибо за все ваши отзывы!

1 Ответ

0 голосов
/ 28 января 2012

Действительно вы хотите начать с непрерывной интеграции.Получите настройку сборки, при которой вы просто отправляете в свой репозиторий, и он собирается, тестируется и упаковывается повсюду.

Лично я настроил сервер VMWare, который содержит множество master / slab-сборщиков buildbot, которые компилируют мой git-репозиторий за ночь.Утром я могу убедиться, что все собрано, а если нет, то тут и потом вносить исправления в код.

Конечно, выбирайте кроссплатформенный инструментарий, а не переписывайте код.Qt является нашей базой, и это поможет нам обеспечить 95% общего кода для наших сборок.

Хитрость заключается в том, чтобы действительно автоматизировать / создавать сценарии настолько, насколько вы можете.Когда вы растете, вы не тратите время на сборку и упаковку 5 разных платформ.

...