IT в России и мире в реалиях мирового кризиса
1,301,227 7,825
 

  slavae ( Слушатель )
09 мар 2019 12:51:53

Хочется поделиться

новая дискуссия Дискуссия  400

Программы под Линукс. (Интересно, какому проценту прочитавших будет понятно, о чём эта заметка)))
Под последние версии Delphi есть такой пакет – CrossVcl. Написан нашим.
Если держать в голове, что пишешь не только под Винду, можно написать программу на Дельфи под Винду, а потом переключить платформу и сбилдить под Линукс. Под Линукс можно сделать программу с нормальными таблицами (EhLib) и со всеми прочими старыми классными наработками.
Когда все пересели на браузерные приложения с js, это прям как глоток свежего воздуха - нативный код и всё такое. Правда, приходится таскать кросс-библиотеку, но сегодня это не имеет значения.
  • +0.14 / 11
  • АУ
ОТВЕТЫ (29)
 
 
  grizzly ( Слушатель )
10 мар 2019 04:22:18

Ну прямо все Подмигивающий
Мы вот пишем инженерный софт для нефтянки.
Поди сделай например расчет промывки скважины смесью жидкости и геля на жабаскрипте.
И чтобы еще работало.
Как-то C++ Builder и Delphi обходимся Подмигивающий
  • +0.15 / 9
  • АУ
 
 
  slavae ( Слушатель )
10 мар 2019 07:46:47

На Хабре когда публикуют востребованность разработчиков в разрезе языков, Delphi в далёком конце очереди.
Вот если б кто-то придумал такой "браузер", в котором можно было бы безопасно запускать дельфёвые приложения с сайтов.. Но это надо было делать в начале интернета.
Ну а вообще, если есть алгоритм, то без разницы, на чём его реализовывать.
  • +0.04 / 2
  • АУ
 
 
 
  grizzly ( Слушатель )
10 мар 2019 08:24:35

Ну если верить всяким хабрам, то уже давно никто ничего кроме веб-сайтов не разрабатывает.
И с дельфами всё не так просто. В 2008 я думал, что окончательно перешел на C# (кстати, только недавно узнал, что в музыке это значит до-диез), а в 2013 предложили намного лучше оплачиваемую работу на дельфы. И тут бабло победило зло Веселый

Ага, особенно когда нужна производительность. Жабаскрипт тут самое то.
  • +0.04 / 4
  • АУ
 
 
 
  Head790 ( Слушатель )
10 мар 2019 15:11:56

Delphi вообще кроме как в школах нигде не популярен(да и то, лишь из-за самих учителей, которые толком ничего не умеют). Любой разраб, знающий Паскаль и C# например, в первом не станет кодить. Чистые "дельфисты" уже мало востребованы. Глянул HH - такое впечатление, что их только для поддержания старого ПО в рабочем состоянии берут.

ЦитатаВот если б кто-то придумал такой "браузер", в котором можно было бы безопасно запускать дельфёвые приложения с сайтов.

есть такое. Браузерные виртуалки на JS:) C соответствующей производительностью(или её отсутствием)

Цитатаесли есть алгоритм, то без разницы, на чём его реализовывать.

ну конечно. Как минимум, разница в затраченном на реализацию времени. Ещё и производительность разная. Первое, обычно, в приоритете, и тут на сцену выходит C#, с куевой тучей готовых компонентов и библиотек. Если проект громоздкий, его целесообразнее на разных языках написать, например драйвер, если нужен, на Ассемблере/С/С++, основной функционал - на С/С++, а гуй - на дот нете.
  • -0.03 / 7
  • АУ
 
 
 
 
  Поверонов ( Слушатель )
10 мар 2019 16:41:36

Не знаю всех подробностей по библиотекам, но С++ компилируется  в WebAssebler, исполняемый в браузерах, при этом js там используется для склеивания.
  • +0.00 / 0
  • АУ
 
 
 
 
  Прокруст ( Слушатель )
10 мар 2019 17:20:10

И С# и дельфи создан одним человеком, на сколько я помню. Разница меж этими языками не большая - конечно, не считая добавленного синтаксического сахара и библиотек.
И к слову - оба языка в общем слишком привязаны к виндам (да я в курсе что как бы можно и под линукс) и с моей точки зрения - не перспективны оба. В отличие от си, к примеру.
  • -0.06 / 5
  • АУ
 
 
 
 
 
  Head790 ( Слушатель )
10 мар 2019 17:57:44

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

Ну C# от многих перенял удобства. А вот по популярности можно оценить, на сколько разница между языками "не большая".

Ну, в Wine многие программы можно запустить. Некоторые изначально пилят совместимость с ним, и весь фукционал работает.  C C# сложнее, особо не интересовался, но тоже есть подвижки.
Про неперспективность C# - смешно же:) Он непрерывно развивается. Не зря же на него MS деньги тратят.
Многие вещи на С/C++ просто нецелесообразно писать(ещё свободного толкового разраба-сишника поди найди), где-то без него не обойтись.
  • +0.00 / 0
  • АУ
 
 
 
 
 
 
  TAU ( Слушатель )
11 мар 2019 01:45:23

Хорошо смеется тот, кто смеется последним...
У упомянутой конторы уже не столь прекрасное сегодняшнее состояние, как в былые времена, и безоблачное будущее.
Согласен, что ориентироваться на одну платформу Windows сейчас нельзя. Еще один важнейший недостаток C# - закрытость. 
Лучше уж Java.
  • +0.00 / 0
  • АУ
 
 
 
 
 
 
 
  slavae ( Слушатель )
11 мар 2019 20:14:31

Клоны: Dotnet Mono - старый, Dotnet Core - новый.
  • +0.00 / 0
  • АУ
 
 
 
 
 
 
  adolfus ( Слушатель )
11 мар 2019 02:49:52

Миллионы мух не могут ошибаться... 
C# и прочий нет развиваются, чтобы лохи постоянно в нем что-то новое искали и не создавали конкуренции серьезным игрокам.
На языки, для которого нет стандартов ISO/IEC, даже нет смысла обращать внимание при выполнении серьезных и долговременных работ. Ну разве что обдурить лоха-заказчика и десятилетиями рубить на нем бабки, дорабатывая свой говнософт каждые три годжа с одного сервиспака на другой, с висты на экспи и прочий кал.
  • +0.06 / 5
  • АУ
 
 
 
 
 
 
 
  Head790 ( Слушатель )
11 мар 2019 12:37:22

Про стандарты - https://en.wikipedia…g_language) Первый абзац.

Цитатадорабатывая свой говнософт

какое это имеет отношение к языку программирования? Вон Касперский во всю использует, и не жужжит. Или он дурак а вы умный?


Такое же безоблачное будущее, как и раньше.

Да, на MacOS можно ориентироваться, как это делают многие современные конторы.

ЦитатаЛучше уж Java.

пользователей-то пожалейте. Насмотрелся я на эти "кроссплатформенные" поделия от монстров телекоммуникационной отрасли, которые не то, чтоб в разных системах не запускались, а даже в разных версиях винды не работали одинаково. Покажите хоть одну качественную программу на Java.
  • +0.01 / 1
  • АУ
 
 
 
 
 
 
 
 
  Sewer Endemic ( Слушатель )
11 мар 2019 13:35:26

PHP Storm, PyCharm, Elasticsearch - это то, чем лично пользоваться приходилось. Всё и под виндой, и под линём нормально работает, поводов жаловаться не было. Правда, эластик, в результате, всё равно на линь целиком уехал, потому как нафига серверу гуй, который ещё и память отъедает... Жаба всего лишь инструмент, а вот кто и как им пользуется - совсем другой вопрос. Улыбающийся
  • +0.02 / 1
  • АУ
 
 
 
 
 
 
 
 
 
  Head790 ( Слушатель )
11 мар 2019 15:01:54

Ну проще, быстрее и дешевле писать просто. Если бы на Ассемблере писали, наверное даже бету не выпустили бы. В самой IDE свехпроизводительность и не нужна особо,но по скорости подсветки синтаксиса в больших документах, например, видно, что не успевает, а любой текстовый редактор, написанный на С++ это делает мгновенно.
  • +0.03 / 2
  • АУ
 
 
 
 
 
  slavae ( Слушатель )
10 мар 2019 19:24:01

Херня это всё. Во всех языках программирования есть синтаксис и библиотеки. И они могут быть настроены в разные стороны.
Я закончил на эту тему.
  • -0.01 / 2
  • АУ
 
 
 
 
  TAU ( Слушатель )
11 мар 2019 01:47:21

И лексика, и уровень аргументации доставляют. Просто зашкаливающе.
  • +0.01 / 4
  • АУ
 
 
 
 
 
  Удаленный пользователь
11 мар 2019 08:33:34
Цитата
разраб, знающий Паскаль и C# например, в первом не станет кодить. Чистые "дельфисты"...
... Если проект громоздкий, его целесообразнее на разных языках написать, например драйвер, если нужен, на Ассемблере/С/С++, основной функционал - на С/С++, а гуй - на дот нете.






Не понял насчет аргументации, на дотнете не пишу - на контроллерах plain C наше всё.

А вот "разраб", "гуй" - ну да, сленг имеет место.
"В жизни я простоф разраб..." - Научно-технический рэп слушали?
"Гуёвая программа" - вполне себе говорят.
Мож вы и "писюк" не слышали - ну, в смысле IBM PC?
И "солярка" у меня не с топливом ассоциируется.
  • +0.09 / 5
  • АУ
 
 
 
  DarkRaider ( Слушатель )
11 мар 2019 23:25:02

Есть такая штука UniGui называется. Вот официальный сайт.  

ЦитатаНу а вообще, если есть алгоритм, то без разницы, на чём его реализовывать.

Ну вот Вы, slavae, на корню один из любимых холиваров на форуме зарубаете! Нельзя же так! Ведь ширнармассы ещё не успели высказаться о том, что Delphi и C++ (да собственно и прочие "классические" языки с жёсткой типизацией) уже "не торты",  да и вообще уже никому не нужны! Правда, очень занятно наблюдать по форумам, что Ассемблер ещё уважают.  Видимо сказывается мифичность названия и то, что его уже никто из поколений помоложе не знает.

Окунусь в коменты...


Это точно войдёт в мою личную копилку форумного идиотизма.


Под pascal  много подобных прожектов. Начиная с Kylix и Lazarus и заканчивая Free Pascal. В последних Дельфях сделали упор на изкоробочную кроссплатформенность Win-MacOS-Android.

Может быть я попробую показать вопрос немного с другой точки зрения?

Можно долго и упорно доказывать превосходство одних языков программирования над другими. Можно сравнивать их по сотне разных параметров, начиная с эффективности работы программы и заканчивая удобством написания. Хочется спросить, Вас, господа, ЗАЧЕМ?

За время моей работы, наиболее частая проблема, которую я встречал в общении с программистами, отнюдь не о каких то тонкостях языка. Самая большая проблема - незнание русского! Огромное стадо программистов, которые двух слов связать вместе не может, я промолчу про сложносочинённые предложения. ЗАЧЕМ углубляться в тонкости компьютерного языковедения, если грамотно проговорить то, что должна выполнить платформа исполнения, как она это должна сделать и когда - уже проблема?

1) Программист - это в первую очередь переводчик как лингвист (переводит с человеческого на компьютерный), во вторую это транслятор смыслового пространства(переводит понятия).

2) Идём дальше, человек не в состоянии напрямую переводить "с человеческого" в управляющие коды платформы исполнения - именно эта задача лежала в основе появления самих "языков программирования". Создать такой "промежуточный язык", который бы понимался человеком и мог быть легко транслирован в управляющие коды - следовательно это ещё один переводчик(компилятор или интерпретатор).

3) Количество платформ исполнения росло, единых жёстких стандартов не было, надо что то делать! Ну конечно!  Надо добавить ещё один слой! Операционная система! Пусть языки "посерьёзнее" (системные) смогут общаться как с уровнем ОС, так и с уровнем платформы исполнения(BIOS, коды процессора), ну, а те, что "побыстрее"(прикладные) не надо перегружать - им достаточно только "говорить" с уровнем ОС.

4) Вроде же всё хорошо, смазка поступает... лыжи едут...  но сложно...  вай, программист, он оказывается образованным должен быть, чтобы соображать как именно надо перевести хотелку дяди заказчика в компьютерное нутро... Непорядок! Надо нам существующие низкоуровневые языки упростить, чтобы оно, значить, среднему классу было доступно, народу понятно и учить легко! Сказано - сделано! Абстракция - наше всё!  

5) Абстракция, она как выяснилось для Пикассо была хороша... а в жизни, чего то не хватает... очень долго объяснять глупому компьютеру каждый раз, что он задолжал дяде заказчику...  надо "расширять и углублять" (@) Да здравствует наследование и полиморфизм! Всё в нашей жизни - объект и этот  объект TObject! Да здравствует объединение дров и котла(сиречь данных и методов их обработки) в одну сущность!

6) Опять что то не хорошо...   слишком много дядь-заказчиков появилось которые хотят "того, не знаю чего"...  надо чтобы компьютеры учились работать "с тем, не знаю с чем"...  ну и заодно, "это твоё второе желание... Теперь ты знаешь язык зверей, птиц и прочих..." (@Ибн Хаттабыч из одноимённого художественного фильма), пусть теперь все исполнительные платформы начнут понимать каждого школьника! Всё равно работаем "не понятно с чем"! Великое чудо случилось!

7) Проблема! Ты уже знаешь язык всех зверей, птиц.... а они, поганцы, его не знают!  Надо посередине между разными ОС и прикладными программами поставить ещё одного  толмача. Толмачей будет много, под каждую исполнительную платформу, по одному, главное чтобы каждый толмач досконально знал только 2 языка, на входе универсальное чудо, а на выходе значит понятный ОС диалект.

8 ) Ещё долгие годы чудо не отпускало умы причастных, чего только не появлялось под влиянием этого чуда в нашем маленьком королевстве... дошло до того, что каждый попробовал выпустить свою версию чуда...   в итоге их стало 2. И стали эти чудеса друг другу гадить по мелочи, одно сказало: А, буду ка я маленьким, как известная вошь, щупленьким, чтобы влезть могло в каждый миксер, зато кусать буду больно и пить всю доступную кровь так, чтобы у слонов потенция от оттока крови пропадала! Второе подумало десяток лет и сказало: ну и хрен с тобой, вошь! Буду я большим и серьёзным! Да так, чтобы на мне не только херь всякую для миксеров писали, а даже бы и софт тяжёлый, серьёзный, на системный похожий! На том и порешили...  первое чудо всё стремится научится летать и заражать новых пациентов, а второе слонопотамит потихоньку, жиреет...  время от времени подставляет страждущим разные открытые места, для проползания вдоль организма, но строго по одному маршруту, известному ещё с похабного анекдота про муравья! Самое забавное - чтобы ни начинал ты делать на этом втором чуде, можешь выбрать только сторону, с которой в слона заползать... либо сначала хобот, а на выходе ж*па, либо наоборот.  


9 ) И опять, вроде бы, всё завертелось. Порог входа - детский сад. Как что работает знать не надо, главное нажать на готовые кнопочки и на выходе получить годный набор костылей, багов и макетов дизайна, соответствующих текущему веянию дядьки-заказчика. Самое главное - делать как можно быстрее(чтобы показать!) и хуже(чтобы потом было чем заняться после сдачи контракта!), всё равно завтра все требования опять поменяются.  Но что то сильно расплодились у нас платформы исполнения и комп и миксер и самолёт...  хреново стали работать, когда одно в другое встраиваешь! Ведь сейчас цифровой век! Нельзя уже, как в старину, аналоговый вибратор в цифровой телефон вставлять! Надо исполнительные платформы шизофренией заразить! Пусть каждая хреновина будет думать - что в ней не один мозг, а сразу много! Ну и что? Ну тормозят безбожно! Зато куски мозга ломаются не сразу, а посекторно!  Можно успеть добежать! А если ещё запасных пустых мозгов навтыкать, которые только и делают - ждут кончины своего соседа, так можно зажить! А если ещё заставить эти свободные мозги пустой работой заниматься, чтобы значит ресурсы жгли поактивней - так это ж сколько людей зарплатами да бонусами накормить можно! Пустота, однако, сейчас тоже не бесплатная! Не зря же её шифруют!

10) Так и живём, в мозгах - шизофрения, в памяти - бардак, за дверью заказчик(то же шизофреник, только уже совсем настоящий)... " и вот со всей этой хернёй мы попробуем взлететь"! @анекдот про стюардессу

============================================
Ради чего меня в сказку потянуло?
Да вот и сам решил подсчитать количество переводчиков, между нами и ими в обыденной сегодня среде.  

(1) BIOS/коды
(2) ОС Гипервизор
(3) виртуальная ОС  
(4) виртуальная машина одного из чудес в ОС
(5) промежуточный язык и компилятор
(6) программист
(7) манагер *х
(8) типаТЗ
(9) cтарший манагер
(10) левая утренняя тестикула первого зама наиглавнейшего заказчика

Итого: Вы пытаетесь договорится какой же язык на (5) уровне выбрать чтобы объяснить (4) уровню, что именно пожелал сегодня (7) уровень, посредством толмаческого таланта (6) уровня. Ну хорошо, раз у нас отчасти сказка получилась, мы должны верить в чудеса! Представим, что с (10) по (7) уровень КАЖДЫЙ сделал своё дело как надо и (6) уровень понял задачу однозначно и правильно. Представим, что (6) был мастером и талант имел разухабистый, замечательно перевёл он задачу на "компьютерный"! Опять загвоздка получается! С (5)го по (1) уровень толмачи машинные без участия человека общаются, каждый сказ этот сокращает да приукрашивает как может. Что в итоге дойдёт до нутра машинного?


Выводы:
1) Каждый программист волен сам выбирать длинну цепочки этого испорченного телефона.
2) Чем короче эта цепочка, тем больше труда, знаний и времени нужно вложить в такой перевод, ибо чем сложнее язык для человека, тем проще он для машины и наоборот.
3) Чем меньше ошибок случилось в переводе, тем быстрей и точней исполнительная платформа выполнит поставленную задачу.
4) Хотим мы того или нет, но компьютеры ВСЕГДА делают именно то, что мы им написали! Дословно!
5) На определенном этапе развития у каждого программиста будет шанс выбрать длинну цепочки не только вниз, но и вверх.
6) Чем выше приведённый уровень, тем проще язык. На (11) уровне большинство "заказов" описывается всего одной высокоуровневой фразой с недостижимым уровнем абстракции: "Поди ка сюда, голубчик, и сделай мне к ... вот тут такую розовую кнопочку, чтобы когда я её нажал, мне на счёт ....  денег зачислялось. Сделаешь - повышение получишь, не сделаешь - сам знаешь, голову с плечь!".


Засим разрешите откланяться чудесным лозунгом!
  • +0.13 / 7
  • АУ
 
 
 
 
  slavae ( Слушатель )
11 мар 2019 23:42:51

Да я в курсе, у меня даже ссылка прилеплена на верхней строчке закладок. Но это ж js тот же. Я говорил не про трансляцию куда-то, а именно нативное приложение. Например. При запуске браузер скачивает нужные dcu-хи, билдит приложение и запускает как бы типа внутри себя, а в реальности просто является рамкой для приложения. В общем, какой смысл фантазировать о том, чего не случилось.
  • +0.00 / 0
  • АУ
 
 
 
 
 
  DarkRaider ( Слушатель )
12 мар 2019 00:14:10


Господь с Вами, уважаемый! В прошлый раз из такого вот желания Microsoft OLE и ActiveX родились...  А тоже ведь вряд ли главный идеолог заказывал золотой рыбке большой теннис!
  • +0.04 / 2
  • АУ
 
 
 
 
  DarkRaider ( Слушатель )
12 мар 2019 00:05:14


Ради чего меня в сказку потянуло?
Да вот и сам решил подсчитать количество переводчиков, между нами и ими в обыденной сегодня среде.  


(1)BIOS/коды <  (2)ОС Гипервизор < (3)виртуальная ОС < (4)виртуальная машина одного из чудес в ОС < (5)промежуточный язык и компилятор < (6) программист
  • +0.00 / 0
  • АУ
 
 
 
 
  Head790 ( Слушатель )
12 мар 2019 00:32:27

Задел крошечное эго дельфиста-ретрограда с манией величия? )
  • -0.01 / 1
  • АУ
 
 
 
 
 
  DarkRaider ( Слушатель )
12 мар 2019 02:25:35

Ну что Вы! Как можно? Чтобы задевать надо сначала задевалку отрастить.  Вы, же, просто повеселили, уже не в первый раз на этой ветке.
  • +0.05 / 3
  • АУ
 
 
 
 
 
 
  Head790 ( Слушатель )
12 мар 2019 12:14:16

Ископаемые дельфисты, верующие в свою нужность, ещё больше веселят. У вас бомбануло, и это очевидно)
  • -0.07 / 3
  • АУ
 
 
 
 
 
 
 
  slavae ( Слушатель )
12 мар 2019 21:54:42

Самое время похвалиться своими достижениями на скриптах )
  • +0.06 / 4
  • АУ
 
 
 
 
 
 
 
 
  grizzly ( Слушатель )
14 мар 2019 07:39:10

Да ладно Вам ехидничать.
От одного слова Delphi у пациента пердак рванул так, что вокруг полетели ошметки, тьфу, крики про ретроградов, невостребованных и ископаемых.
Истерикой энтузияста жабаскрипта, веб-дезигна и батареечных колясок удовлетворен. Веселый
  • +0.11 / 8
  • АУ
 
 
 
 
 
 
 
  small__virus ( Слушатель )
12 мар 2019 23:13:51

... писали, пишут и будут писать... (почти цы).И это даже не зло. И ничего порочного не вижу. По крайней мере, нигде не тормозило даже на одноядерниках с 512 оперативки.
Меня, последнее время, наповал убивают не дельфисты, а поклонники ордена Оракла (что бы их кривым рекурсиям тускло стало с 3-8 минутами подготовки документа на фри оракле) и 1С-ники....
  • +0.02 / 2
  • АУ
 
  pkdr ( Слушатель )
11 мар 2019 10:37:31

Для C++ builder подобный инструмент был уже лет 15 назад, выпускал его сам борланд.
  • +0.02 / 2
  • АУ
 
 
  Соколов Алексей ( Слушатель )
11 мар 2019 11:18:03

В Embarcadero Delphi это штатный инструмент (емнип, с версии 10.2).
На целевую платформу (линух) ставится сервер, через него в Делфи вкачивается СДК, компилится, деплоится и отлаживается проект.Подмигивающий
  • +0.00 / 0
  • АУ
 
 
 
  slavae ( Слушатель )
11 мар 2019 19:55:44

Они сделали новый компилятор NEXTGEN для компиляции с дельфей на линукс, но только терминальные программы, сервисы там всякие и всё такое.
Упоминаемая мной библиотека называется CrossVcl именно потому, что с ней можно компилить VCL. В последних версия добавлена даже частичная поддержка WinAPI.
  • +0.00 / 0
  • АУ