Контент маркетинг и блог
· 10.07.2024 · ред.Вопрос
🔥Поясни за АйТи - как разные языки программирования уживаются в одном приложении.?
20 комментов
· 11.07.2024
Если мы говорим об условном бэке, то есть несколько способов:
- Можно сделать несколько маленьких приложений, который крутятся отдельно друг от друга и выполняют каждый свою функцию (микросервисы)
- Можно разные части одного монолитного приложения писать на разных языках и вызывать инструкций одного языка из другого. Там умеют Python, Assembler и, вроде, много кто ещё если захотеть
- А можно сделать вид, что наше приложение на разных языках, а на самом деле в конечной точке он собирается в один. Так происходит с фронтовыми фреймворками. Есть такие, в которых мы пишем на условном C#, а в конце всё равно получаем JS и Web Assembly
0
ответить
коммент удалён
· 11.07.2024
Да легко. У меня как-то была огромная прила, где был одновременно с++, java и kotlin. Никто не сдох
0
ответить
коммент удалён
· 10.07.2024
Они встают в одну линию, гладут руки друг на друга, и начинают танцевать. Напоминает псевдгреческий танец сиртаки. Так и танцуют и все работает.
А про язык-клей в комменте ниже – никогда подобного бреда не слышал 😐
Если серьёзно, просто загуглите IPC, там все уже придумано, и без языкового клея
0
ответить
коммент удалён
· 10.07.2024
Некоторые языки (например питон) — это язык-клей. На нем пишут обвязку над низкоуровневыми библиотеками на других языках и даже системные скрипты (программы выполняющие и системные команды операционной системы)
0
ответить
коммент удалён
· 12.07.2024
наносится тонким слоем на языки бумагу, дерево, стекло и металл
0
ответить
ответ удалён
· 10.07.2024
Можно написать несколько сервисов на разных языках, а общаться по сокетам. Так же есть уникальные фичи у разных языков: Интерпретатор питона написан на С, поэтому он легко дружится с С и С. Частая практика, когда проект пишут на питоне для скорости разработки, а узкие места пишут на С/С для повышения производительности. Так же С# поддерживает вставки на С. А С поддерживает ассемблерные вставки. Для JS есть webassembly, который позволяет встраивать в него С++ код, который повышает производительность раз в 20.
0
ответить
коммент удалён
· 10.07.2024
А вот эти (условно) костыли не влияют на то что программа медленнее работает. Я про сокеты.
0
ответить
ответ удалён
· 10.07.2024
"легко дружится" -лучше технологию описать (хотябы с док. ЯП)!
0
ответить
ответ удалён
· 10.07.2024
по моему пониманию, алгоритмические высокоуровневые ЯП (фреймворки) -уже костыли в сравнении с прямым кодом или с хотябы мнемоникой (ассемблер). Но болшинство даже примитивные алгоритмы включателя на коде немогут написать-исползуют компиляторы которые абстрагируют их глупых от сути работы железа-уже инвалиды костылные! но можно добавить лучших костылей о чём выше кто-то сообщил. А также хуже возможно даже прогромматором кодировать и накодировать болше сигналов (вкл) чем компилятор или интопр.! Это как саблю заиметь и можно безоружному проиграть
0
ответить
ответ удалён
· 10.07.2024
помимо хваленого ассемблера, форт и подобных; важнее конечная реализация алгоритмов чтоб меньше вычислений ЭВМ/проц. и меньше считывания бит было ведь от этого и зависит скорость программы и контента
0
ответить
ответ удалён
· 10.07.2024
Кстати, да, только вчера думал об этом. Если я бэкэнд напишу на Java, можно чтобы мне фронт написали, например на Python? И как это всё склеить тогда?
0
ответить
коммент удалён
· 10.07.2024
В наших 90% проектах, бэк на java, а фронт на react. Поэтому и питон можно ) интеграция по api
0
ответить
ответ удалён
· 10.07.2024
Спасибо за ответ!)
0
ответить
ответ удалён
· 10.07.2024
Как у ремонтника в сумке уживаются отвертка и молоток. Разные инструменты для решения разных задачек.
0
ответить
коммент удалён
· 10.07.2024
байты он дружные) как только разные языки оказываются одинаковыми байтами, жить им становится легко и просто)
0
ответить
коммент удалён
· 10.07.2024
Вот все равно не понимаю. Языки разные, принципы работы разные, как их слепляют в одну историю не понятно.
0
ответить
ответ удалён
· 10.07.2024
Если речь об интернет-вещах, то все программы общаются между собой с помощью HTTP запросов. Их можно как отправлять, так и принимать практически с любого языка программирования. REST API, websocket
0
ответить
ответ удалён
· 10.07.2024
Язык не важен. В продукте могут быть 100 микросервисов и все написаны на разных языках.
0
ответить
ответ удалён
· 10.07.2024
А как они друг с другом соединяются? По API?
0
ответить
ответ удалён
· 11.07.2024
Обычно неплохо уживаются. Вебмордочку нарисовать - жаваскрипт. Логика приложения - джава или питон, ну или си если нужна производительность, а то и все разом. Всякие скрипты инсталяшки это бат и шелл, тоже языки в общем то, А этот кусок кода на асемблере мы взяли из прошлой версии, разобраться не смогли но он работает не трогайте.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён