|
Модераторы: Се ля ви |
|
Vady85 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 12.12.2014 Репутация: нет Всего: нет |
Здравствуйте, форумчане!
Давно назрел у меня такой вопрос: какой системный язык программирования лучше использовать для разработки кроссплатформенных приложений: Windows, Linux, Android? Основное требование: высокая производительность, минимум потребляемых ресурсов (процессор, память, т.к. используем сервер терминалов, а клиентов довольно много), возможность работы со многими видами СУБД. Для разработки медсофта с возможностью сбора данных с различных медицинских софтов от диагностических оборудований, работающих на самых разных СУБД (DBF, MS Access, MS SQL Server, MySQL и т.д.). Ваши варианты и аргументы? Это сообщение отредактировал(а) Vady85 - 12.12.2014, 23:39 |
|||
|
||||
Stolzen |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1041 Регистрация: 17.10.2005 Репутация: нет Всего: 48 |
Под перечисленные требования (разве что кроме минимума ресурсов) лучше всего подходит джава.
|
|||
|
||||
Vady85 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 12.12.2014 Репутация: нет Всего: нет |
А, скажем, python, не подходит? Под винду и линукс делают программы. Под андроид вроде есть SDK. На Си кто-нибудь кодит? Еще варианты? |
|||
|
||||
kosmonaFFFt |
|
|||
Опытный Профиль Группа: Участник Сообщений: 538 Регистрация: 14.4.2008 Где: Иннополис Репутация: нет Всего: 5 |
Конечно C++, желательно версии C++11...
Если нужен GUI - подойдет Qt, + в нем есть механизм работы с БД и плагины к различным СУБД, не говоря уже о работе с сетью, XML и прочих плюшках. -------------------- |
|||
|
||||
Vady85 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 12.12.2014 Репутация: нет Всего: нет |
Спасибо! Про Qt я в курсе, и обязательно буду его применять. Хотелось бы реальных сравнений с другими кроссплатформенными языками программирования. |
|||
|
||||
kosmonaFFFt |
|
|||
Опытный Профиль Группа: Участник Сообщений: 538 Регистрация: 14.4.2008 Где: Иннополис Репутация: нет Всего: 5 |
Java и .NET хоть и позволяют, с определенными ограничениями писать кроссплатформенный софт, но Java/.NET под декстоп и под андроид немного разные вещи - под андроид все равно какую-то часть кода придется писать отдельно (не получится использовать Android UI API под десктопе, так же как и Swing/JavaFX под андроид; у .NET проблемы с WinForms/WPF под Linux, для андроида, насколько я знаю, нужен Xamarin).
Почему не рассматриваете возможность сделать веб-интерфейс? -------------------- |
|||
|
||||
kemiisto |
|
|||
Дикий Кот. =^.^= Награды: 1 Профиль Группа: Участник Клуба Сообщений: 3292 Регистрация: 29.7.2007 Репутация: 1 Всего: 160 |
Зачем здесь прилагательное "системный"? Навскидку: С++11, Ada, Eiffel, D, Go, OCaml, Modula-3. Добавлено через 3 минуты и 55 секунд А, ну и вот это конечно, фантасктика. Можете даже не мечтать. Мобильный клиент придётся писать отдельно в любом случае. И писать желательно под тамошний родной SDK, т.е. на Java. Хотя, может, и на Qt что-то получится. -------------------- |
|||
|
||||
Vady85 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 12.12.2014 Репутация: нет Всего: нет |
У веб-интерфейса есть свои недостатки, а именно динамичность. JavaScript+HTML+CSS в разных браузерах - сплошной геморрой (очень сильно сказывается на скорости разработки необходимость в предварительном тестировании браузеров всех версий). Плюс некоторые фишки со временем попадают в deprecated. И еще PHP на разных серверах с разными настройками с разными версиями работает по-разному. Проверено лично многолетним опытом. И еще эти все вышеперечисленные языки не являются компилируемыми, что серьезно сказывается на производительности. И еще попробуйте портировать MS Access на линукс-сервере, не говоря уже о других вещах. А тут откомпилировал с нужными библиотеками, и всё. |
|||
|
||||
MyWeb |
|
|||
Новичок Профиль Группа: Участник Сообщений: 34 Регистрация: 3.6.2015 Репутация: нет Всего: нет |
Джава - универсальный.
|
|||
|
||||
Се ля ви |
|
|||
Java/SOAрхитектор Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 6 Всего: 127 |
Динамичность интерфейсных технологий? Это минус? По-моему, как раз - плюс. IMHO, Вы немного отстали от рынка. Сейчас не 90-е и даже не 2000-е, а 2010-е - после выхода IE 9 и тем более после перехода Opera`ы на WebKit эта проблема практически ушла, роли распределились примерно так:
Как и в любом другом языке. И, опять же, можно просто не update`ить используемые библиотеки, когда выйдут версии, не поддерживающие нужный Вам scope браузеров. Но в целом я не встречал существенных проблем с обратной совместимостью - тот же HTML5 эволюционно вывели из HTML`а 4-го, хотя это было, прямо скажем, очень непросто сделать.
Так не пишите на 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! -------------------- |
|||
|
||||
_zorn_ |
|
||||||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 21.8.2007 Репутация: нет Всего: 12 |
Как говорится вычеркните лишнее. Java... минимум потребляемых ресурсов ? Вообще на потребляемость уже давно не смотрят. Железо, о котором только можно было мечтать во времена написания всяких книжек по программированию, уже давно бытность. 32 Гб оперативки это стандарт. Может все же вычеркните этот пункт ? Для него нужно только на си писать и всегда следить за памятью. Но это будет дороже, чем купить еще одну планку памяти А по производительности - виноват не язык, а алгоритмы по которым пишут. Так что выбирайте который по душе. Добавлено через 8 минут и 2 секунды
Наверное потому что PHP проще развернуть ? На каждом ссаном хостере есть PHP. А примитивность у вас в голове же ) Будем бодаться холиваром ? Добавлено через 11 минут и 14 секунд
Поэтому не надо полагаться на стандартные функции, а использовать что то универсальное. Какой нибудь компонент из symfony например. Там все учтено. |
||||||
|
|||||||
Sartorius |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: нет Всего: 37 |
Возможно будет полезным haXe http://haxe.org/ с OpenFL например
|
|||
|
||||
Се ля ви |
|
|||
Java/SOAрхитектор Профиль Группа: Модератор Сообщений: 2016 Регистрация: 5.6.2004 Где: place without tim e and space Репутация: 6 Всего: 127 |
Простота разворачивания - это для проектов какого уровня? Хостинги вообще сейчас уступают место облакам - а там ставь себе всё что хочешь. Можно и пободаться, но предмета не вижу: я писал именно про платформу, а не про язык, это - разные вещи: одно дело - библиотеки, фреймворки и компоненты на все случаи жизни, когда за какую бы задачу ты ни взялся - без труда найдёшь кучу инструментария, и совсем другое - язык, при помощи которого ты всем этим оперируешь. Платформу JVM можно сравнивать по мощности с платформой .NET - это да, но с PHP... Java же именно как язык действительно не идеальна, хотя и всё равно лучше PHP, на мой взгляд - но это уже, действительно, дело вкуса, так что если Вам действительно так уж нравится PHP именно как язык - без проблем, есть несколько реализаций PHP как языка для JVM, т.е. его код так же компилируется в байт-код. Например, есть открытый проект JPHP и коммерческая реализация P8 от IBM`а - пожалуйста, нравится PHP - пишите на нём (кстати, есть реализации и для платформы .NET). Язык - это, ведь, инстурмент, так что либо Вы выбираете оптимальный инструмент для решения своей задачи, либо тот, кому нужно решить задачу, выбирает Вас или не Вас, зная, что Вы предпочитаете определённый язык... -------------------- |
|||
|
||||
DenZurin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 18.9.2011 Репутация: нет Всего: нет |
Java, C#/WinForms, C++/Qt, Lazarus (open source клон Delphi) - вот в принципе все варианты, выбирай любой
Все кроссплатформенны и отлично работают с БД. |
|||
|
||||
Правила раздела "Философия программирования": | |
|
Форум "Философия программирования" предназначен для обсуждения вопросов, так или иначе связанных с философскими аспектами разработки ПО: • вопросы перспективного развития методов написания ПО; • изменяющиеся языки и методологии программирования; Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Се ля ви. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Философия программирования | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |