Ну, на мой взгляд, это зависит от того, для чего вы действительно хотите использовать язык в отношении вашего проекта. Обмен фотографиями: планируете ли вы использовать веб-инструменты для клиента, т.е. JavaScript, HTML5, CSS3, JQuery Mobile (<a href="http://jquerymobile.com/" rel="nofollow">http://jquerymobile.com/</a>), sencha Touch (<a href="http://www.sencha.com/products/touch" rel="nofollow">http://www.sencha.com/products/touch</a>), Phone Gap (<a href="http://phonegap.com/" rel="nofollow">http://phonegap.com/</a>),<a href="http://www.appcelerator.com/" rel="nofollow">Titanium Appcelerator</a>
ИЛИ вы хотите использовать нативные вещи, такие как Java, J2ME
, e.t.c. Тогда, если он основан на сети (что, на мой взгляд, будет проще), язык, на который вы ссылаетесь в этом случае, будет на стороне сервера.
Так что, на мой взгляд, если вам просто нужен язык для веб-подачи фотографий и прочего, то не имеет значения, какой вы используете: действительно зависит от ваших предпочтений. Я уверен, что Erlang, Scala, Java и другие имеют возможность разрабатывать отличные веб-сервисы. Тем не менее, условия, которые вы ставите, как показано ниже:
1) Ability to design a GUI for android to view the pictures to be shared <br>2) Support for socket communications to transfer the pictures?
Предположим, что вы имели в виду использование технологии Front-End. Вы
не можете использовать
Erlang
для создания графического интерфейса на Android, если я прав, вы также не сможете использовать
Haskell and OcamL
, потому что эти технологии не могут работать на устройстве. Для графических интерфейсов на Android вы можете использовать только Java, ИЛИ вы можете использовать технологии виджетов, такие как Opera Widgets, ИЛИ вы используете веб-контент, как я упоминал выше.
Однако вы должны знать, что при использовании библиотек JavaScript, HTML5, CSS3, e.t.c. это самый быстрый и более управляемый способ разработки приложений на любом устройстве. Мне даже интересно, почему вы говорите о Socket Communications! Я правильно тебя понял? Вы хотите разработать приложение для обмена фотографиями, которое передает фотографии через raw Socket Communications? Ну, я НЕ уверен, сколько приложений для Android делают сырые вещи Socket, но я почти уверен, что многие (
http://androidapplications.com/) используют протокол HTTP, как в веб-сервисах.
Рассмотрим изучая веб-сервисы, а не сырые сокеты. Я почти уверен, что даже приложения, разработанные с использованием нативной Java, используют HTTP (веб-сервисы, такие как SOAP) для связи с удаленным сервером, будь то погодные приложения, материалы на основе местоположения и т. д. В противном случае, я думаю, вам следует сконцентрируйтесь на Java, пока.