Модераторы: Се ля ви
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Какой кроссплатф-ый язык программирования лучше? Какой кроссплатф-ый язык программировани 
:(
    Опции темы
Vady85
Дата 12.12.2014, 23:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 12.12.2014

Репутация: нет
Всего: нет



Здравствуйте, форумчане!
Давно назрел у меня такой вопрос: какой системный язык программирования лучше использовать для разработки кроссплатформенных приложений: Windows, Linux, Android?
Основное требование: высокая производительность, минимум потребляемых ресурсов (процессор, память, т.к. используем сервер терминалов, а клиентов довольно много), возможность работы со многими видами СУБД. Для разработки медсофта с возможностью сбора данных с различных медицинских софтов от диагностических оборудований, работающих на самых разных СУБД (DBF, MS Access, MS SQL Server, MySQL и т.д.).
Ваши варианты и аргументы?

Это сообщение отредактировал(а) Vady85 - 12.12.2014, 23:39
PM MAIL   Вверх
Stolzen
Дата 13.12.2014, 00:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1041
Регистрация: 17.10.2005

Репутация: нет
Всего: 48



Под перечисленные требования (разве что кроме минимума ресурсов) лучше всего подходит джава. 


--------------------
datatalks.ru - анализ данных, статистика, машинное обучение
PM MAIL WWW   Вверх
Vady85
Дата 13.12.2014, 00:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 12.12.2014

Репутация: нет
Всего: нет



Цитата(Stolzen @ 13.12.2014,  00:32)
Под перечисленные требования (разве что кроме минимума ресурсов) лучше всего подходит джава.

А, скажем, python, не подходит? Под винду и линукс делают программы. Под андроид вроде есть SDK.
На Си кто-нибудь кодит? Еще варианты?
PM MAIL   Вверх
kosmonaFFFt
Дата 13.12.2014, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 538
Регистрация: 14.4.2008
Где: Иннополис

Репутация: нет
Всего: 5



Конечно C++, желательно версии C++11...
Если нужен GUI - подойдет Qt, + в нем есть механизм работы с БД и плагины к различным СУБД, не говоря уже о работе с сетью, XML и прочих плюшках.


--------------------
user posted image
PM MAIL ICQ   Вверх
Vady85
Дата 13.12.2014, 22:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 12.12.2014

Репутация: нет
Всего: нет



Цитата(kosmonaFFFt @ 13.12.2014,  21:40)
Конечно C++, желательно версии C++11...
Если нужен GUI - подойдет Qt, + в нем есть механизм работы с БД и плагины к различным СУБД, не говоря уже о работе с сетью, XML и прочих плюшках.

Спасибо! Про Qt я в курсе, и обязательно буду его применять.
Хотелось бы реальных сравнений с другими кроссплатформенными языками программирования.
PM MAIL   Вверх
kosmonaFFFt
Дата 13.12.2014, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 538
Регистрация: 14.4.2008
Где: Иннополис

Репутация: нет
Всего: 5



Java и .NET хоть и позволяют, с определенными ограничениями писать кроссплатформенный софт, но Java/.NET под декстоп и под андроид немного разные вещи - под андроид все равно какую-то часть кода придется писать отдельно (не получится использовать Android UI API под десктопе, так же как и Swing/JavaFX под андроид; у .NET проблемы с WinForms/WPF под Linux, для андроида, насколько я знаю, нужен Xamarin).

Почему не рассматриваете возможность сделать веб-интерфейс?


--------------------
user posted image
PM MAIL ICQ   Вверх
kemiisto
Дата 14.12.2014, 11:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 1
Всего: 160



Цитата(Vady85 @  12.12.2014,  22:38 Найти цитируемый пост)
Давно назрел у меня такой вопрос: какой системный язык программирования лучше использовать для разработки кроссплатформенных приложений: Windows, Linux, Android?

Зачем здесь прилагательное "системный"?

Цитата(Vady85 @  12.12.2014,  22:38 Найти цитируемый пост)
Основное требование: высокая производительность, минимум потребляемых ресурсов (процессор, память, т.к. используем сервер терминалов, а клиентов довольно много), возможность работы со многими видами СУБД.

Навскидку: С++11, Ada, Eiffel, D, Go, OCaml, Modula-3.

Добавлено через 3 минуты и 55 секунд
А, ну и вот это
Цитата(Vady85 @  12.12.2014,  22:38 Найти цитируемый пост)
кроссплатформенных приложений: Windows, Linux, Android

конечно, фантасктика. Можете даже не мечтать. Мобильный клиент придётся писать отдельно в любом случае. И писать желательно под тамошний родной SDK, т.е. на Java. Хотя, может, и на Qt что-то получится.


--------------------
PM MAIL WWW GTalk Jabber   Вверх
Vady85
Дата 15.12.2014, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 12.12.2014

Репутация: нет
Всего: нет



Цитата(kosmonaFFFt @ 13.12.2014,  22:19)
Почему не рассматриваете возможность сделать веб-интерфейс?

У веб-интерфейса есть свои недостатки, а именно динамичность. JavaScript+HTML+CSS в разных браузерах - сплошной геморрой (очень сильно сказывается на скорости разработки необходимость в предварительном тестировании браузеров всех версий). Плюс некоторые фишки со временем попадают в deprecated. И еще PHP на разных серверах с разными настройками с разными версиями работает по-разному. Проверено лично многолетним опытом. И еще эти все вышеперечисленные языки не являются компилируемыми, что серьезно сказывается на производительности. И еще попробуйте портировать MS Access на линукс-сервере, не говоря уже о других вещах.
А тут откомпилировал с нужными библиотеками, и всё.
PM MAIL   Вверх
MyWeb
Дата 3.6.2015, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 34
Регистрация: 3.6.2015

Репутация: нет
Всего: нет



Джава - универсальный.
PM MAIL   Вверх
Се ля ви
Дата 1.7.2015, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java/SOAрхитектор
****


Профиль
Группа: Модератор
Сообщений: 2014
Регистрация: 5.6.2004
Где: place without tim e and space

Репутация: 6
Всего: 127



Цитата(Vady85 @  15.12.2014,  14:27 Найти цитируемый пост)
У веб-интерфейса есть свои недостатки, а именно динамичность.

Динамичность интерфейсных технологий? Это минус? По-моему, как раз - плюс.

Цитата(Vady85 @  15.12.2014,  14:27 Найти цитируемый пост)
JavaScript+HTML+CSS в разных браузерах - сплошной геморрой (очень сильно сказывается на скорости разработки необходимость в предварительном тестировании браузеров всех версий)

IMHO, Вы немного отстали от рынка. Сейчас не 90-е и даже не 2000-е, а 2010-е - после выхода IE 9 и тем более после перехода Opera`ы на WebKit эта проблема практически ушла, роли распределились примерно так:
  • WebKit - Наиболее универсальный браузерysq движок. Его реализации (по сути fork`и) практически не отличаются - вполне можно, протестировав в нём, успокоиться за подавляющее большинство пользователей. На этом же движке крутятся все мобильные браузеры.
  • Gecko - Инновационный, "бегущий впереди паравоза", наиболее интересный для лабораторных проектов движок. Тестировать в нём можно при желании охватить гиков, которых не так уж много (в основном - пользователи Linux).
  • IE - в целом тут всё намного лучше, чем было раньше (до выхода IE9), но даже те немногие минусы, что есть - с лихвой компенсируется тем, что MS практически потеряла рынок, почти все пересели на Chrome и другие WebKit-браузеры, так что в целом можно на них и забить, да и в любом случае они сейчас попку рвут, что бы реализовать все HTML5/CSS3/ECMAScript5,6,7 версии стандартов.
Кроме того, подавляющее большинство не только классических (JQuery, Knockaut, Backbone), но и революционных библиотек (Angular, React) включают work-around`ный функционал, поддерживая IE8+ и тестируются подо всё, включая мобильные браузеры.

Цитата(Vady85 @  15.12.2014,  14:27 Найти цитируемый пост)
Плюс некоторые фишки со временем попадают в deprecated.

Как и в любом другом языке. И, опять же, можно просто не update`ить используемые библиотеки, когда выйдут версии, не поддерживающие нужный Вам scope браузеров. Но в целом я не встречал существенных проблем с обратной совместимостью - тот же HTML5 эволюционно вывели из HTML`а 4-го, хотя это было, прямо скажем, очень непросто сделать.

Цитата(Vady85 @  15.12.2014,  14:27 Найти цитируемый пост)
И еще PHP на разных серверах с разными настройками с разными версиями работает по-разному.

Так не пишите на PHP. PHP как язык - примитивный и не зрелый, явно дрейфующий в сторону Java. Зачем его использовать, если можно просто взять и использовать Java? Ну а как платформа он довольно слаб и подходит лишь для небольших проектов (Facebook - не контрпример, поскольку они его под себя очень сильно перепилили).

На сервере прекрасно работает, действительно, JVM как платформа, наиболее зрелая из существующих сегодня, ну а язык можно брать любой, которым владеете и который подходит, благо их там целый ворох сейчас - Groovy, Scala, Clojure, Kotlin, Ceylon, Ruby, Python, даже реализация Prolog`а есть!.. Сама Java, как язык - старовата, в ней много устаревшего наследственного неадеквата, от которого тяжело избавиться и всяких громоздких синтаксических неудобств. Я последнее время стараюсь ориентироваться на Clojure - это по сути современный Lisp для JVM, на нём, например, можно реализовать концепцию единого языка на Back-end`е и Front-end`е - есть ClojureScript, компилирующийся в JavaScript. Просто идеально ложится на React!


--------------------
  )
 (
[_])
проф. блог

Кролики думали, что занимаются любовью, а на самом деле их просто разводили...
PM MAIL WWW Skype GTalk   Вверх
_zorn_
Дата 4.7.2015, 06:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1008
Регистрация: 21.8.2007

Репутация: нет
Всего: 12



Цитата
кроссплатформенных ... высокая производительность ... минимум потребляемых ресурсов

Как говорится вычеркните лишнее. Java... минимум потребляемых ресурсов ?
Вообще на потребляемость уже давно не смотрят. Железо, о котором только можно было мечтать во времена написания всяких книжек по программированию, уже давно бытность. 32 Гб оперативки это стандарт. Может все же вычеркните этот пункт ? smile
Для него нужно только на си писать и всегда следить за памятью. Но это будет дороже, чем купить еще одну планку памяти smile
А по производительности - виноват не язык, а алгоритмы по которым пишут.

Так что выбирайте который по душе.

Добавлено через 8 минут и 2 секунды
Цитата(Се ля ви @  1.7.2015,  23:12 Найти цитируемый пост)
 PHP как язык - примитивный и не зрелый, явно дрейфующий в сторону Java. Зачем его использовать, если можно просто взять и использовать Java?

Наверное потому что PHP проще развернуть ? На каждом ссаном хостере есть PHP. 

А примитивность у вас в голове же ) Будем бодаться холиваром ?

Добавлено через 11 минут и 14 секунд
Цитата(Vady85 @  15.12.2014,  21:27 Найти цитируемый пост)
И еще PHP на разных серверах с разными настройками с разными версиями работает по-разному.

Поэтому не надо полагаться на стандартные функции, а использовать что то универсальное. Какой нибудь компонент из symfony например. Там все учтено.
PM MAIL   Вверх
Sartorius
Дата 6.7.2015, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

Репутация: нет
Всего: 37



Возможно будет полезным haXe http://haxe.org/ с OpenFL например
PM MAIL ICQ   Вверх
Се ля ви
Дата 20.8.2015, 20:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java/SOAрхитектор
****


Профиль
Группа: Модератор
Сообщений: 2014
Регистрация: 5.6.2004
Где: place without tim e and space

Репутация: 6
Всего: 127



Цитата(_zorn_ @  4.7.2015,  06:44 Найти цитируемый пост)
Наверное потому что PHP проще развернуть ? На каждом ссаном хостере есть PHP. 
А примитивность у вас в голове же ) Будем бодаться холиваром ?

Простота разворачивания - это для проектов какого уровня? Хостинги вообще сейчас уступают место облакам - а там ставь себе всё что хочешь.
Можно и пободаться, но предмета не вижу: я писал именно про платформу, а не про язык, это - разные вещи: одно дело - библиотеки, фреймворки и компоненты на все случаи жизни, когда за какую бы задачу ты ни взялся - без труда найдёшь кучу инструментария, и совсем другое - язык, при помощи которого ты всем этим оперируешь. Платформу JVM можно сравнивать по мощности с платформой .NET - это да, но с PHP...
Java же именно как язык действительно не идеальна, хотя и всё равно лучше PHP, на мой взгляд - но это уже, действительно, дело вкуса, так что если Вам действительно так уж нравится PHP именно как язык - без проблем, есть несколько реализаций PHP как языка для JVM, т.е. его код так же компилируется в байт-код. Например, есть открытый проект JPHP и коммерческая реализация P8 от IBM`а - пожалуйста, нравится PHP - пишите на нём (кстати, есть реализации и для платформы .NET). Язык - это, ведь, инстурмент, так что либо Вы выбираете оптимальный инструмент для решения своей задачи, либо тот, кому нужно решить задачу, выбирает Вас или не Вас, зная, что Вы предпочитаете определённый язык...


--------------------
  )
 (
[_])
проф. блог

Кролики думали, что занимаются любовью, а на самом деле их просто разводили...
PM MAIL WWW Skype GTalk   Вверх
DenZurin
Дата 21.2.2016, 01:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 18.9.2011

Репутация: нет
Всего: нет



Java, C#/WinForms, C++/Qt, Lazarus (open source клон Delphi) - вот в принципе все варианты, выбирай любой
Все кроссплатформенны и отлично работают с БД.
PM MAIL   Вверх
Google
  Дата 12.12.2019, 08:19 (ссылка)  





  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила раздела "Философия программирования":
Се ля ви

Форум "Философия программирования" предназначен для обсуждения вопросов, так или иначе связанных с философскими аспектами разработки ПО:

• вопросы перспективного развития методов написания ПО;

• изменяющиеся языки и методологии программирования;


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Се ля ви.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Философия программирования | Следующая тема »


 




[ Время генерации скрипта: 0.1247 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.