Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Левиафам
34 / 29 / 9
Регистрация: 31.05.2012
Сообщений: 552
#1

Какой язык выбрать для разработки под Android? - Программирование Android

23.07.2017, 10:46. Просмотров 625. Ответов 13
Метки нет (Все метки)

Всем привет! Я канешно ни в одном месте не разработчик приложений под андроид, Хочу поинтересоваться какой язык выбрать для разработки?
Все в одно горло орут Java, типа он родной. Друг говорит есть какой то там реак натив который юзает жабу скрипт. Знаю что есть модный котлин со своими свистелками который как java выполняется на jvm. Так же существует NDK если ты крутой пацан и пишешь на с++.

Теперь хочу разобраться зачем весь этот зоопарк.

1) В чем заключается родность языка java? Почему он нативен для андроида? Я вижу это так, есть тупо библиотека SDK который является неким апи c помощью которого на java можно обращаться к ОС андроид для вызова разных функций (создавать всякие компоненты и прочие плюхи).

2) Что за реакт натив? Что это ваще такое? С какой целю он создавался если есть java? Заменить? Или холиварчики разводить?

3) Нахрена этот котлин сдался? Он так же крутится на jvm как и java. Или просто jetbrains выпендриться решили? Зачем нужен он? Или он очередной убийца java для андроида. Или может его нужно использовать в связки с java так как есть интеграция между ними тем самым получить лучшее из миров?

4) Ну с с++ еще пойму (написать кое какие сложные вещи)


Вот и не ясно стало. Что я должен выбрать для разработки приложение под андроид?


Я мал и глуп. Может где-то вообще бред пишу(т.е. везде). Хотелось бы разобраться
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.07.2017, 10:46
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Какой язык выбрать для разработки под Android? (Программирование Android):

Какой язык и среду выбрать для разработки на Android? - Программирование Android
Всем привет. Решил тут попробовать по разрабатывать под Android. В интернете много статей по разработке на андроид, но хотелось бы...

Какой язык лучше подойдет для разработки под Android? - Программирование Android
В общем, меня последнее время мучает проблема монетизации программирования. Я понял что андроид является не такой сложной платформой в...

В какой среде писать программы для Android, где скачать, какой язык? - Программирование Android
Вопрос. В какой среде писать программы для Android, где скачать, какой язык, на что похож, где почитать в общем надо простейшую...

Какой начать учить язык для разработки на Android? - Программирование Android
Какой начать учить язык для разработки на андроид. И какую среду разработки Вы посоветуете, какую вы практикуете?

Macbook для разработки под Android - Программирование Android
Всем привет, плс не разводите холивар. Я андроид дев, решил прикупить себе бук, для удобства. Стоит ли покупать себе mac, вроде как...

Установка по для разработки под Android - Программирование Android
Испытываю трудности по установке по на windows x64.. Ставлю JDK x64 после пытался из exe SDK android но не находит JDK... Поставил из...

13
maxmail
1 / 1 / 0
Регистрация: 23.05.2017
Сообщений: 15
23.07.2017, 11:11 #2
Отвчечу про С++. Плюсы это не всегда сложно, есть готовые фреймворки в которых С++ не отличается от высокоуровневых языков, где про память думать не надо. Ну и если нужно что-то сложное заоптимизировать, то это становится намного проще. Я например на работе использую для мобильной разработки движок Cocos2d-x (имено с х на конце).
Плюс такого движка еще и в том, что он кросплатформенный, тоесть ты пишешь один раз код и потом компилируешь его под разные платформы (ios, android, mac, linux, windows и т.д.)
Минус конкретно кокоса в том что для новичка там не совсем очевидно как правильно настроить проект и скомпилировать, хотя разобравшись в дальнейшем проблем с этим не будет.
Еще хочу обратить внимание на интересный для меня кросплатформенный движок Godot. Язык разработки похож на питон, хотя можно и на плюсах писать критичные расширения при необходимости. Вскорости выйдет 3 версия с существенными улучшениями в том числе в производительности. Он намного проще для новичка в настройке проекта и компиляции. Все можно сделать нажав несколько кнопок.
1
Vladimir93
53 / 53 / 8
Регистрация: 28.06.2015
Сообщений: 221
23.07.2017, 11:20 #3
Цитата Сообщение от Левиафам Посмотреть сообщение
Хотелось бы разобраться
Разбирайтесь. За вас это делать никто не будет. Как и проводить аналитику и решать что вам будет проще, быстрее, эффективнее.
Или вы ждете, что народ сейчас увидит тему, и скажет сам себе - вау вот это ведь действительно проблема, а ну, давай ка, всем миром еще решать. Нет, всем плевать, каждый работает так как ему удобно. Вот, гражданин выше написал что юзает кокос, который по сути вообще
, к аднроиду никакого отношения не имеет.
И почему никому не приходит в голову мысль зайти на сайт для разработчиков андроид, или блог и почитать там.
0
Antikl
с++
263 / 259 / 76
Регистрация: 15.07.2015
Сообщений: 1,401
Завершенные тесты: 6
23.07.2017, 11:37 #4
можно так попробовать хотя я сам это не делал
https://www.codeatcpp.com/2011/10/c-android-1.html
1
maxmail
1 / 1 / 0
Регистрация: 23.05.2017
Сообщений: 15
23.07.2017, 11:53 #5
Цитата Сообщение от Vladimir93 Посмотреть сообщение
кокос, который по сути вообще, к аднроиду никакого отношения не имеет.
ну на нем же можно разрабатывать под андроид, почему же тогда не имеет?
0
264D
31 / 34 / 9
Регистрация: 03.02.2017
Сообщений: 117
23.07.2017, 15:07 #6
Цитата Сообщение от Левиафам Посмотреть сообщение
Вот и не ясно стало. Что я должен выбрать для разработки приложение под андроид?
Зависимо от типа задач.
Достаточно зайти на сайт и почитать описание NDK:
The Native Development Kit (NDK) is a set of tools that allows you to use C and C++ code with Android, and provides platform libraries you can use to manage native activities and access physical device components, such as sensors and touch input.
However, the NDK can be useful for cases in which you need to do one or more of the following:
Squeeze extra performance out of a device to achieve low latency or run computationally intensive applications, such as games or physics simulations.
Reuse your own or other developers' C or C++ libraries.
Тут сразу видно для какого рода приложений необходимо юзать NDK.

Java - для разработки большинства обычных бизнес-апликух.

Kotlin Впрочем, как и скала, развились из человеческой лени. Джава довольно старый язык, и как любой другой язык проходит этапы молодости, становления и старения в попытке поддержать всего накопленного багажа знаний и опыта в ущерб новым тенденциям, желаниям и запросам современности. Поскольку сбросить все накопленное и перейти на новый уровень не просто то, естественно, всегда будут возникать новые языки программирования которые в большей степени будут удовлетворять запросы человечества.
1
Левиафам
34 / 29 / 9
Регистрация: 31.05.2012
Сообщений: 552
24.07.2017, 08:25  [ТС] #7
Цитата Сообщение от 264D Посмотреть сообщение
Достаточно зайти на сайт и почитать описание NDK:
ну это и к гадалке не ходи - и так ясно для чего.

Цитата Сообщение от 264D Посмотреть сообщение
Kotlin Впрочем, как и скала, развились из человеческой лени. Джава довольно старый язык, и как любой другой язык проходит этапы молодости, становления и старения в попытке поддержать всего накопленного багажа знаний и опыта в ущерб новым тенденциям, желаниям и запросам современности. Поскольку сбросить все накопленное и перейти на новый уровень не просто то, естественно, всегда будут возникать новые языки программирования которые в большей степени будут удовлетворять запросы человечества.
ну это как то общими фразами сказано. Я бы хотел в качестве примера рассмотреть что такое новое и современное может предложить котлин, чего нет в java. Я не пытаюсь докапаться или еще что-то. просто охоту реально посмотреть по факту. Потому и спрашивваю на форуме может есть те люди кто в реальности имеют опыт и могут поделиться..................Вот еще интересно для каких именно задач может использоваться реакт натив.

Спасибо большое вам за ответ)
0
LunevN
9 / 9 / 1
Регистрация: 07.08.2015
Сообщений: 55
28.07.2017, 16:43 #8
Цитата Сообщение от 264D Посмотреть сообщение
Kotlin Впрочем, как и скала, развились из человеческой лени. Джава довольно старый язык, и как любой другой язык проходит этапы молодости, становления и старения в попытке поддержать всего накопленного багажа знаний и опыта в ущерб новым тенденциям, желаниям и запросам современности. Поскольку сбросить все накопленное и перейти на новый уровень не просто то, естественно, всегда будут возникать новые языки программирования которые в большей степени будут удовлетворять запросы человечества.
Про лень - это правда. Но я категорически не согласен с тем, что Java помирает и не удовлетворяет запросы человечества. Достаточно посмотреть графики популярности ЯП. Есть конкретные исследования. Так вот там вы не найдете ни Go, ни Kotlin, ни другие хипстерские языки для слабеньких лиц. А кто там на первом месте по популярности и востребованности? Правильно - JAVA.
И Java будет жив еще лет 10 минимум, т.к. с ним работает неимоверная масса устройств. Да, ладно, что там - банковская сфера на нём сидит.
А еще про живучесть - Cobol до сих пор используют и очень успешно, а он, к слову, разработан в допотопные времена.
Поэтому, я считаю, вообще не стоит дёргаться во все эти Котлины и прочее, где опускают ниже плинтуса даже циклы (ЗАЧЕМ?).

Добавлено через 3 минуты
Цитата Сообщение от Левиафам Посмотреть сообщение
Вот еще интересно для каких именно задач может использоваться реакт натив.
Да то же самое веб-программирование адаптированное под ось, которое порождает глюки, тормоза и не способно полностью заменить Java (или, если хотите, SDK, NDK). Вся эта кроссплатформенность - только красивая обёртка. Вариант "подешевле", так сказать. У меня знакомый на реакте делал - чушь несусветная. Можно что-нибудь просто слепить, но кому это нынче надо?
0
LunevN
9 / 9 / 1
Регистрация: 07.08.2015
Сообщений: 55
28.07.2017, 16:48 #9
Чтобы не быть голословным (исследования TIOBE):
0
Миниатюры
Какой язык выбрать для разработки под Android?  
ExFau$t
509 / 464 / 98
Регистрация: 08.05.2012
Сообщений: 2,317
28.07.2017, 16:52 #10
Мы все люди подневольные, какой язык скажут поддерживать мировые гиганты, тот и выйдет в топы. Допустим, apple всеми силами вытесняет objC в пользу Swift, чего бы кто не предпочитал. Нужно уметь работать в любых условиях, в любом случае, если брать котлин, знание java очень важно. На рынке сейчас ценят таких спецов, что на всех языках балакают.
0
LunevN
9 / 9 / 1
Регистрация: 07.08.2015
Сообщений: 55
28.07.2017, 16:54 #11
Цитата Сообщение от ExFau$t Посмотреть сообщение
что на всех языках балакают
Ага, а еще пользуются всеми подряд библиотеками, ORM и прочим))) А зарплата радует только Москвичей, походу.
0
ExFau$t
509 / 464 / 98
Регистрация: 08.05.2012
Сообщений: 2,317
28.07.2017, 16:58 #12
Я имел в виду применительно к android требуется знание и java, и kotlin. Что разумно. Лично мне котлин не приглянулся, я ещё на конференции яндекса, когда его только презентовали эти ребята, посмотрел - не убедили. Говорят кода меньше, но как по мне, так и читать его сложнее. Этак можно и просто язык из одних знаков препинания сделать, ещё короче будет. Ну это так я развожу ни о чём, на самом деле плюсы есть конечно большие, особенно для крупных проектов, ознакомиться для галочки в портфолио лишним не будет.
0
264D
31 / 34 / 9
Регистрация: 03.02.2017
Сообщений: 117
28.07.2017, 20:24 #13
Цитата Сообщение от LunevN Посмотреть сообщение
Про лень - это правда. Но я категорически не согласен с тем, что Java помирает и не удовлетворяет запросы человечества. Достаточно посмотреть графики
Я тоже не согласен с тем, что джава помирает но по другой причине. Партия скажет есть контакт - будем есть контакт!) Начальство заботит стабильность и надежность продукта, а новые технологии, то бишь, риски. Отчитываясь перед акционерами, начальника по головке не погладят за внедрение хипстерских технологий если качество, стабильность продукта ухудшится. А при внедрении нового всегда будут возникать проблемы. (Не так много энтузиастов которые ставят бэти линукса чтобы помочь в фиксе багов.)

Любой новый язык программирования найдет поддержку у заказчика если он продемонстрирует свою экономическую привлекательность: сокращение расходов в связи с увеличением скорости разработки, надежности, упрощением тестирования, поддержки проектов, понимания языка, увеличением производительности, и при условии достаточного количества носителей языка. А на это нужны годы, десятки лет. Сейчас я не вижу смысла писать большой проект на хипстерском языке если для его расширения и поддержки ты тупо не найдешь достаточное количество хороших разработчиков. Ведь задача программиста - ублажать заказчика, а не самоудовлетворяться хайповыми технологиями за его счет. Исходя их этих соображений джаве жить да жить, так, что не волнуйтесь за нее.

Если не секрет, когда вы в последний раз меняли свою ось?
0
LunevN
9 / 9 / 1
Регистрация: 07.08.2015
Сообщений: 55
29.07.2017, 10:42 #14
264D, поддерживаю.
Ой, да ось редко меняю. На серваках как работал с юниксами, так и продолжаю работать. Для разработки тоже не меняю ось уже года полтора. В общем, стабильность.
Да у большинства, я думаю, стабильность в вопросах ОС
0
29.07.2017, 10:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.07.2017, 10:42
Привет! Вот еще темы с ответами:

Выбор языка для разработки ПО под Android - Программирование Android
Добрый. Необходимо заняться разработкой ПО под Android. Столкнулся с проблемой: "Какой язык программирования для разработки выбрать?". Из...

Годится ли C# для разработки игр под android? - Программирование Android
Добрый день! Собственно суть вопроса не ушла далеко от названия темы: "Годится ли c# для разработки игр под android?" или же лучше...

Какой язык выбрать для написания 2D игры? - Программирование Android
Здравствуйте! Хочу сделать игру на Андроид, но не знаю какой выбрать... (Такую 2D игру, похожую на Flappy Bird или Hill Climb...

Куда делся Eclipse для разработки под Android на java, xml - Программирование Android
Куда делся ECLIPSE для разработки под Android на java,xml ??? раньше был у меня на Windows, потом купил себе macbook air в 2014году и на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru