Кроссплатформенная разработка, или Как готовить кактус

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

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