Сегодня утро на работе началось с холивара на тему вчерашней статьи: “Вот у iOS уже физический движок есть, а в Android даже камера нормально не работает… Придет заказчик, даст проект портировать с iOS на Android — оценишь его в 120 часов, а заказчик скажет, как так, вот под iOS за 8 часов написали...”. Короче получилось много эмоций на пустом месте.
Поэтому я решил поставить некоторые точки над «и» (такая поговорка в русском языке есть, или только в украинском? :)). Так вот, задача:
— написать прототип Flappy Bird с использованием любого физического движка или фреймворка как можно быстрее.
Хотел сначала по исходникам пройтись, но они получились настолько примитивными, что думаю нету смысла. Для разработки взял фреймворк LibGDX и попытался написать более-менее красивый код (это вечная тема, и каждый ведет идеальный код по своему).
После полутора часов работы и полулитра кефира получился прототип. Эта цифра ничего не говорит, я уверен, что на хабре есть десятки программистов, которые реализуют данную задачу в 2-3 раза быстрее. Так само если iOS-разработчики скажут, что такое могут написать за 20 минут — я поверю.
Выводы:
— под Android можно писать так же быстро, как и под iOS, все зависит от опыта программиста;
— мы получили не только прототип игры за 90 минут, но и кросс платформу, оно будет работать и под iOS, и под Android, и под Windows/Linux/BSD/MacOS… везде, где есть Java. Если в будущем планируется порт на другие платформы, то думаю не нужно говорить, что легче с нуля написать игру, чем повторить физику в уже написанной. Поэтому если нужна кросс платформа — лучше сразу выбирать что-то независимое.
— да, в Android много косяков, нету смысла спорить что лучше, Android или iOS — в обеих есть плюсы и минусы. Лучше это время потратить на семью/работу, к тому же я не хочу спровоцировать срач в комментариях.
Исходники на Bitbucket (MIT лицензия).
P.S. Если автор этой статьи напишет в комментариях либо в личку, сколько у него времени ушло на разработку — буду очень благодарен.
Поэтому я решил поставить некоторые точки над «и» (такая поговорка в русском языке есть, или только в украинском? :)). Так вот, задача:
— написать прототип Flappy Bird с использованием любого физического движка или фреймворка как можно быстрее.
Хотел сначала по исходникам пройтись, но они получились настолько примитивными, что думаю нету смысла. Для разработки взял фреймворк LibGDX и попытался написать более-менее красивый код (это вечная тема, и каждый ведет идеальный код по своему).
После полутора часов работы и полулитра кефира получился прототип. Эта цифра ничего не говорит, я уверен, что на хабре есть десятки программистов, которые реализуют данную задачу в 2-3 раза быстрее. Так само если iOS-разработчики скажут, что такое могут написать за 20 минут — я поверю.
Выводы:
— под Android можно писать так же быстро, как и под iOS, все зависит от опыта программиста;
— мы получили не только прототип игры за 90 минут, но и кросс платформу, оно будет работать и под iOS, и под Android, и под Windows/Linux/BSD/MacOS… везде, где есть Java. Если в будущем планируется порт на другие платформы, то думаю не нужно говорить, что легче с нуля написать игру, чем повторить физику в уже написанной. Поэтому если нужна кросс платформа — лучше сразу выбирать что-то независимое.
— да, в Android много косяков, нету смысла спорить что лучше, Android или iOS — в обеих есть плюсы и минусы. Лучше это время потратить на семью/работу, к тому же я не хочу спровоцировать срач в комментариях.
Исходники на Bitbucket (MIT лицензия).
P.S. Если автор этой статьи напишет в комментариях либо в личку, сколько у него времени ушло на разработку — буду очень благодарен.