AB>Если твоя задача работать с перекладыванием JSON-ов (здесь вместо JSON можно подставить любое нужное слово) по сети (а это over 99% всех современных задач), то гошечка — это единственный разумный выбор на сегодня.
Правильно, Go и проектировался для этой задачи. Но я отмечу, что и C# в этой роли ничуть не хуже.1
И заявление про "over 99% задач" напоминает про молотки и гвозди: если работать с бэкендом, то, конечно, 99% задач выглядят как перекладывание JSON/protobuf/thrift/... Но это на самом деле даже не половина задач.
Re[15]: Почему GO нишевый? Будущее за zig? Ошибаюсь?
R>Ну, если подумать, то в сфере применения го (микросервисы) замещение одного языка другим может произойти довольно быстро. Кстати, знаю контору, которая микросервисы на го начала менять на микросервисы на пыхе (не знаю почему. компания федерального уровня).
То, что надо.
Синтаксис php очень похож на c++/java/c# и потому гораздо более мне привычен и понятен, чем python и golang.
А ведь на php можно писать и консольные и даже GUI приложения.
И exceptions там есть в отличие от golang.
Не понимаю, почему golang популярен среди python программистов.
Здравствуйте, rudzuk, Вы писали:
s>> Насколько я наслышан, в РФ для некоторых областей нельзя использовать Java, т.к. там JVM, а не нативный код.
R>Что-то маленькое, встроенное и с полетным заданием?
Нет.
s>> Так что причины предпочесть одну технологию другой могут быть разными.
R>Да мне просто интересно, какие могут быть причины в предпочтении мертвой технологии
Например, у ключевых людей на проекте в прошлом большой опыт на Delphi + желание обеспечить себе дополнительную безопасность, мол, если стартовать проект на Delphi и добиться каких-то результатов, то потом с этого проекта их не сковырнуть и никуда этот проект не передать.
Может и еще более тривиально: проект стартует не на новом месте, а переиспользует наработки, сделанные давным-давно на Delphi. Чем переписывать уже работающее на что-то другое, проще продолжить на современном Delphi.
Re[16]: Почему GO нишевый? Будущее за zig? Ошибаюсь?
s>> Насколько я наслышан, в РФ для некоторых областей нельзя использовать Java, т.к. там JVM, а не нативный код.
R>Что-то маленькое, встроенное и с полетным заданием?
Здравствуйте, so5team, Вы писали:
s> s>> Насколько я наслышан, в РФ для некоторых областей нельзя использовать Java, т.к. там JVM, а не нативный код.
s> R>Что-то маленькое, встроенное и с полетным заданием?
s> Нет.
А где?
s> R>Да мне просто интересно, какие могут быть причины в предпочтении мертвой технологии
s> Может и еще более тривиально: проект стартует не на новом месте, а переиспользует наработки, сделанные давным-давно на Delphi. Чем переписывать уже работающее на что-то другое, проще продолжить на современном Delphi.
Проект написан под новый дельфийский фреймворк — Firemonkey, что равносильно переписыванию с нуля. Я потому шарп с впф и упомянул, и там и тут (wpf, firemonkey) делается упор на выразительные возможности. Вот только, пиши они его на шарпе, завести на линуксе не получилось бы, а дельфийское работает.
Здравствуйте, m2user, Вы писали:
m> s>> Насколько я наслышан, в РФ для некоторых областей нельзя использовать Java, т.к. там JVM, а не нативный код.
m> R>Что-то маленькое, встроенное и с полетным заданием?
m> Для маленького и встроенного есть Java Card.
Для маленького, встроенного и с полетным заданием есть специальные версии JVM, где никакого байткода нет.
R>Проект написан под новый дельфийский фреймворк — Firemonkey, что равносильно переписыванию с нуля. Я потому шарп с впф и упомянул, и там и тут (wpf, firemonkey) делается упор на выразительные возможности. Вот только, пиши они его на шарпе, завести на линуксе не получилось бы, а дельфийское работает.
UNO совместимо с Blend (UI редактор для XAML) и работает под линукс. поддержка майков. Кроме того есть avalonia.
у дотнета другая проблема — прожорливость и тормознутость по сравнению с ЯП натив-компайл.
ЗЫ А в дельфи есть сборщик мусора?
PS multiple platforms (Windows, OS X, iOS and Android) — с сайта, линукса нет вроде.
Здравствуйте, rudzuk, Вы писали:
s>> s>> Насколько я наслышан, в РФ для некоторых областей нельзя использовать Java, т.к. там JVM, а не нативный код.
s>> R>Что-то маленькое, встроенное и с полетным заданием?
s>> Нет.
R>А где?
В одном разговоре упоминались области, связанные с обработкой гостайны (как я понял, на компьютерах в организациях с высоким уровнем секретности не может стоять абы что). В другом упоминались системы, связанные с обеспечением работоспособности объектов критической инфраструктуры (энергетики в частности). Но подробностей не знаю, т.к. не из РФ и к подобным разработкам отношения не имею.
Оборонка и те самые полетные задания -- это вообще отдельная область со своими заморочками.
R>Проект написан под новый дельфийский фреймворк — Firemonkey, что равносильно переписыванию с нуля. Я потому шарп с впф и упомянул, и там и тут (wpf, firemonkey) делается упор на выразительные возможности. Вот только, пиши они его на шарпе, завести на линуксе не получилось бы, а дельфийское работает.
Если у вас есть доступ к таким подробностям, может вам поспрашивать и о других причинах?
Кроме того, вы, похоже, как-то превратно восприняли формулировку "давно сдохли" и "мертвые". Эти формулировки означают не то, что язык мертв в медицинском смысле. А то, что он когда-то был мейнстримом и успешно конкурировал с другими мейнстримовыми языками. А потом из мейнстрима вылетел и глобального влияния на индустрию не оказывает, стал нишевым. Просуществовать в своей нише может еще не один десяток лет (см. Fortran, COBOL, RPG, MUMPS, SmallTalk и т.д., и т.п.)
Re[19]: Почему GO нишевый? Будущее за zig? Ошибаюсь?
Здравствуйте, Разраб, Вы писали:
Р> R>Проект написан под новый дельфийский фреймворк — Firemonkey, что равносильно переписыванию с нуля. Я потому шарп с впф и упомянул, и там и тут (wpf, firemonkey) делается упор на выразительные возможности. Вот только, пиши они его на шарпе, завести на линуксе не получилось бы, а дельфийское работает.
Р> UNO совместимо с Blend (UI редактор для XAML) и работает под линукс. поддержка майков. Кроме того есть avalonia.
Вот, кстати, софта на уно не видел вообще. Есть примеры, чтобы на десктое запустить? На авалонии видел.
Р> ЗЫ А в дельфи есть сборщик мусора?
Сборщика мусора нет. Управление памятью полу-автоматическое.
Р> PS multiple platforms (Windows, OS X, iOS and Android) — с сайта, линукса нет вроде.
Здравствуйте, so5team, Вы писали:
s> В одном разговоре упоминались области, связанные с обработкой гостайны (как я понял, на компьютерах в организациях с высоким уровнем секретности не может стоять абы что).
Речь явно не о байткоде, просто для работы с гостайной сертификация нужна. Есть JVM, которые такую сертификацию имеют.
s> Если у вас есть доступ к таким подробностям, может вам поспрашивать и о других причинах?
Я бы спросил, была бы возможность...
s> А то, что он когда-то был мейнстримом и успешно конкурировал с другими мейнстримовыми языками. А потом из мейнстрима вылетел и глобального влияния на индустрию не оказывает, стал нишевым. Просуществовать в своей нише может еще не один десяток лет (см. Fortran, COBOL, RPG, MUMPS, SmallTalk и т.д., и т.п.)
Уместнее сказать, что раньше мейнстримом было создание десктопного софта, а сейчас мейнстрим это веб и мобилки. Следовательно, все прочие языки стали нишевыми, а мейнстрим сейчас это жаваскрипт/инструменты разработки для мобильных платформ. Но ставить дельфы в один ряд с языками из музея компьютерной истории... ну, такое себе.
Здравствуйте, rudzuk, Вы писали:
s>> В одном разговоре упоминались области, связанные с обработкой гостайны (как я понял, на компьютерах в организациях с высоким уровнем секретности не может стоять абы что).
R>Речь явно не о байткоде, просто для работы с гостайной сертификация нужна. Есть JVM, которые такую сертификацию имеют.
За что купил, за то и продаю.
R>Уместнее сказать, что раньше мейнстримом было создание десктопного софта, а сейчас мейнстрим это веб и мобилки.
Java все еще применяется и там, и там, и там.
R>Следовательно, все прочие языки стали нишевыми, а мейнстрим сейчас это жаваскрипт/инструменты разработки для мобильных платформ. Но ставить дельфы в один ряд с языками из музея компьютерной истории... ну, такое себе.
Ну вот в моем списке был и Fortran, и SmallTalk (а ранее еще упоминались Eiffel, OCaml и Ada). Вы считаете это "рядом языков из музея компьютерной истории". Но для тех, кто продолжает использовать Fortran/SmallTalk/OCaml/Ada они таковыми не являются и они явно возмутятся тому, что вы их инструменты в музейные экспонаты зачисляете. Вот точно так же, как вы возбудились по поводу Delphi. И это мы еще лисперам на любимую мозоль не наступили
Re[5]: Почему GO нишевый? Будущее за zig? Ошибаюсь?
Здравствуйте, vsb, Вы писали:
vsb>А зачем от неё избавляться? Нет никакой проблемы в копипасте.
Ну ладно, предположим, вы побороли ту проблему, что человек при изменении логики одного куска кода должен перепроверить (и, вероятно, изменить тоже) все которые сделаны из него (или он сделан из них).
Но вот научить Git/аналог определять святым духом, какая из точек приложения одинакового контекста единственно правильная — вы точно не сможете.
vsb> Все проблемы от кривых абстракций, а не от копипасты.
The God is real, unless declared integer.
Re[21]: Почему GO нишевый? Будущее за zig? Ошибаюсь?
Здравствуйте, so5team, Вы писали:
s> R>Уместнее сказать, что раньше мейнстримом было создание десктопного софта, а сейчас мейнстрим это веб и мобилки.
s> Java все еще применяется и там, и там, и там.
Жаба никогда не была популярной на десктопе
s> Ну вот в моем списке был и Fortran, и SmallTalk (а ранее еще упоминались Eiffel, OCaml и Ada). Вы считаете это "рядом языков из музея компьютерной истории". Но для тех, кто продолжает использовать Fortran/SmallTalk/OCaml/Ada они таковыми не являются и они явно возмутятся тому, что вы их инструменты в музейные экспонаты зачисляете. Вот точно так же, как вы возбудились по поводу Delphi. И это мы еще лисперам на любимую мозоль не наступили
Ну это не серьезно... Там в списке и кобол был. Тот самый кобол, на который в одной конторе в штатах, как-то, долго искали программиста и даже смогли, в конце-концов, найти. Фортран, ада изначально нишевые и ниши узначально узкие. На этом основании считать их "мертвечиной"? Не серьезно.
Здравствуйте, rudzuk, Вы писали:
R>Вот, кстати, софта на уно не видел вообще. Есть примеры, чтобы на десктое запустить? На авалонии видел.
если только из шаблонов. Хотя фшарпист русский русский доклад делал, он там Elmish.WFP прикрутил (презентер на F#, xaml на бленде).
Р>> PS multiple platforms (Windows, OS X, iOS and Android) — с сайта, линукса нет вроде.
R>Не понял о чем это. О дельфях?
Firemonkey вроде я смотрел
☭ ✊ В мире нет ничего, кроме движущейся материи.
Re[22]: Почему GO нишевый? Будущее за zig? Ошибаюсь?
Здравствуйте, rudzuk, Вы писали:
R>... Фортран, ада изначально нишевые и ниши узначально узкие. На этом основании считать их "мертвечиной"? Не серьезно.
С чего бы им быть изначально нишевым. Это по ходу дела они нишевыми стали. Причем по разным причинам.
Re[22]: Почему GO нишевый? Будущее за zig? Ошибаюсь?
Здравствуйте, rudzuk, Вы писали:
s>> R>Уместнее сказать, что раньше мейнстримом было создание десктопного софта, а сейчас мейнстрим это веб и мобилки.
s>> Java все еще применяется и там, и там, и там.
R>Жаба никогда не была популярной на десктопе
А я и не утверждал, что она была популярна на десктопе. Да и начала она там нормально использоватья только когда "Java перестала тормозить" (с), где-то после 2000-го года. Когда уже Web-разработка расцвела буйным цветом.
Однако, Java для разработки десктоп-приложений успешно применяется до сих пор (одни написанные на Java IDE чего стоят).
s>> Ну вот в моем списке был и Fortran, и SmallTalk (а ранее еще упоминались Eiffel, OCaml и Ada). Вы считаете это "рядом языков из музея компьютерной истории". Но для тех, кто продолжает использовать Fortran/SmallTalk/OCaml/Ada они таковыми не являются и они явно возмутятся тому, что вы их инструменты в музейные экспонаты зачисляете. Вот точно так же, как вы возбудились по поводу Delphi. И это мы еще лисперам на любимую мозоль не наступили
R>Ну это не серьезно... Там в списке и кобол был. Тот самый кобол, на который в одной конторе в штатах, как-то, долго искали программиста и даже смогли, в конце-концов, найти.
COBOL в середине нулевых, как минимум, использовался в Сбербанке. Не удивлюсь, если в крупных компаниях РФ он до сих пор применяется.
R>Фортран, ада изначально нишевые и ниши узначально узкие.
Вы заблуждаетесь.
R>На этом основании считать их "мертвечиной"? Не серьезно.
Ну извините, что разбил вам розовые очки и вы узнали, что Delphi для кого-то не выглядит живой и перспективной технологией.
Re[6]: Почему GO нишевый? Будущее за zig? Ошибаюсь?
Здравствуйте, Pzz, Вы писали:
N>>Знакомые которые на нём пишут — одинаково рассказывают, не сговариваясь, что уровень, в первую очередь, копипастинга превышает все разумные пределы и все известные аналоги кода на других языках.
Pzz>Мне кажется, эти люди внутри рассуждают, как если бы они писали на C++ или чем-то подобном, а фактически пишут на Go.
А какая разница, если гугл утверждает, что язык хорош перетащить людей с чего угодно?
Pzz>Я тоже пишу на Go, и как-то вот обхожусь без массового копипастинга.
От задач зависит. Если задача потребует того, что хорошо ложится на ООП с наследованием и виртуальными функциями — то копипаста будет расти как плесень в жару.
У меня предпоследняя работа была как раз такой где вообще наследование не было нужно (кроме особо специфичных мест), туда Go ложился практически идеально, хотя все писали на C++. А на одну раньше, наоборот, без многоуровневой иерархии впору было вешаться.
N>>Ругань типа "пока я собирался поменять все 4 места, где что-то надо было менять, добавили ещё 6" совершенно типична. N>>А вот это уже наверняка результат отсутствия нормального наследования в объектах, соответственно, реюз кода катастрофически усложняется.
Pzz>Может здесь пора сделать рефакторинг?