Эликсир для программистов на Python

A

Android

36E72FED 0512 4809 9956 7BDD672EBDC8


Python - мой любимый язык. Python - это первый язык, который я выучил после тщательного отбора много лет назад, и почти всегда он используется в работе.

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

Python настолько прост в использовании, эффективен, вездесущ и хорошо поддерживается, что мне не нужно смотреть на другие языки. Он имеет по крайней мере одну хорошую библиотеку или структуру для каждого домена, поэтому я всегда могу быть уверен, что мне не нужно начинать с нуля. Бэкэнды, встроенные системы, веб-приложения, настольные приложения, даже приложения для Android. Поскольку Python - это Python, существует реализация для любой среды, поэтому в Python можно работать с экосистемами других языков.

Освоив мощные возможности метапрограммирования, предлагаемые Python, я могу обобщить систему, использовать метапрограммирование и закончить в гораздо меньшем количестве строк, чем на любом другом языке, который я знаю.

Программирование на Python было настолько хорошим, что стало скучно. Я пробовал некоторые языки здесь и там, но ничего не застряло. Мне пришлось ждать, пока Эликсир найдет что-то достаточно интересное.
Elixir - это функциональный язык высокого уровня, который компилируется в Erlang. Erlang существует с 1986 года, и это язык, разработанный с учетом конкретной области: телекоммуникации. Erlang оказался вполне способным и вне этого, и с современными стеками, опирающимися на множество мелких компонентов, Erlang стал интересным выбором. Эликсир сделал это тоже красиво.

В Elixir есть макросы, которые являются более жесткой формой метапрограммирования, но также и более мощными. Метапрограммирование Python может иметь большое значение, но есть структуры, которые можно упростить только с помощью макроса.

В Elixir есть Phoenix, одна из самых совершенных веб-фреймворков благодаря встроенным возможностям веб-сокетов. Библиотека live view, недавнее дополнение к экосистеме Elixir, позволяет использовать веб-сокеты и Elixir вместо AJAX, что позволяет писать веб-приложения без написания JavaScript. В Python есть Django, и хотя люди из Python могут быть более чем довольны им, я боюсь этого, так как это заставляет вас делать вещи в стиле Django и только так. Феникс, с другой стороны, остается в стороне.

Elixir имеет Plug (http-серверы) и Ecto (ORM). Они не являются частью стандартной библиотеки, но поддерживаются командой Elixir. Наличие стандартных библиотек для общих функций означает, что вам не нужно изучать 4 разных библиотеки для одной и той же работы. В некоторых случаях они могут не подходить для проекта, но разработчики были достаточно внимательны, чтобы сделать их настраиваемыми и пригодными для повторного использования. Чтобы быть немного более техническими, Plug и Ecto - это в основном наборы макросов и интерфейсов, поэтому они невероятно многократно используются. В Python только запросы достигли аналогичного статуса; для http-серверов существует множество фреймворков, каждый со своей реализацией. Существует как минимум четыре основных ORM (Django, SqlAlchemy, Peewee, Pony).

Эликсир компилируется в Эрланг. Erlang запускает собственную виртуальную машину, BEAM. BEAM перезапускается самостоятельно в случае ошибки, поддерживает распределение по узлам и параллелизм. Он имеет ETS и другой механизм для хранения данных в памяти, почти как встроенный Redis. Есть и другие функции, но это болевые точки Python при развертывании приложения.

Благодаря BEAM Elixir может быть развернут без докера, что устраняет уровень сложности из стека без каких-либо недостатков. Python без докера, это почти самоубийство.

Как функциональный язык, Elixir отлично справляется с обработкой данных. Если у вас есть кодовая база с множеством опций конфигурации, которые нужно обойти, Python легко загромождается, и нет элегантного способа справиться с этим. В Elixir есть оператор канала, который облегчает чтение цепочек функций. В Python вы не часто видите цепочки функций, но когда они есть, они уродливы, и вы ничего не можете с ними поделать.

У Elixir есть и другие возможности, но именно эти имеют реальное значение при сравнении с Python. В нем больше понятий и больше сложности, но также его сложнее освоить. Пока что это был единственный недостаток, который влияет на мою работу.
Надеюсь эта информация была вам полезна.
 
Похожие темы
Admin Интересно Милла Йовович создала инструмент для памяти ИИ MemPalace, но разработчики сомневаются. Новости в сети 0
Admin Интересно Reddit вызван в секретный суд для раскрытия личности анонимного пользователя, критикующего ICE. Новости в сети 0
Admin Интересно Северокорейская группа APT37 использует социальную инженерию в Facebook для распространения вредоносного ПО. Новости в сети 0
Admin Интересно Хакеры используют письма от GitHub и Jira для кражи данных. Новости в сети 0
Admin Интересно Google представила технологию для защиты от кражи куки-файлов. Новости в сети 0
Admin Интересно Купили камеру для безопасности, а она «дудосит» Пентагон. Ирония эпохи интернета вещей. Новости в сети 0
Admin Интересно Adobe выпустила экстренные обновления для уязвимости Acrobat Reader. Новости в сети 0
Admin Интересно Кампания GlassWorm эволюционировала, используя Zig-дроппер для заражения инструментов разработчиков. Новости в сети 0
Admin Интересно TikTok превратился в поле битвы для спецслужб и ботоферм. Новости в сети 0
Admin Интересно MemPalace: Милла Йовович запустила открытый инструмент для долгосрочной памяти ИИ. Новости в сети 0
Admin Интересно Спецслужбы используют мобильные игры для слежки за пользователями. Новости в сети 0
Admin Интересно Кампания GlassWorm использует Zig-дроппер для заражения IDE разработчиков. Новости в сети 0
Admin Интересно Китай создал компактный гравитационный детектор для поиска подводных лодок. Новости в сети 0
Admin Интересно Троянец SparkCat маскируется под приложения для доставки еды и крадёт криптофразы. Новости в сети 0
Admin Интересно Суперкомпьютер предскажет протонные удары для миссии Artemis II. Новости в сети 0
Admin Интересно Microsoft раскрыла детали использования cookie для управления PHP-веб-шеллами на Linux-серверах. Новости в сети 0
Admin Интересно Apple упростила смену региона для владельцев iPhone в России. Новости в сети 0
Admin Интересно Китай запрещает искусственным интеллектам создавать виртуальные отношения для детей. Новости в сети 0
Admin Интересно Мошенники используют фишинговые атаки для кражи банковских данных. Новости в сети 0
Admin Интересно Мошенники используют функции Android для получения полного контроля над устройствами. Новости в сети 0
Admin Интересно В Google Play обнаружены десятки вредоносных приложений для Android. Новости в сети 0
Admin Интересно Вредоносная версия WhatsApp использовалась для распространения шпионского ПО. Новости в сети 0
Admin Интересно Хакеры используют уязвимость CVE-2025-55182 для взлома 766 хостов Next.js и кражи учетных данных. Новости в сети 0
Admin Интересно Японские учёные провели крупнейший классический запуск квантового алгоритма для химии. Новости в сети 0
Admin Интересно Нейросеть научилась самостоятельно создавать эксплойты для взлома серверов. Новости в сети 0
Admin Интересно ICE использует шпионское ПО для борьбы с фентанилом, вызывая опасения за приватность. Новости в сети 0
Admin Интересно Нидерландские облачные провайдеры объединились для конкуренции с американскими гигантами. Новости в сети 0
Admin Интересно Исследователи обнаружили вредоносную кампанию, использующую ISO-файлы для распространения троянов и майнеров. Новости в сети 0
Admin Интересно Google требует от разработчиков Android подтверждения личности для сохранения возможности сторонней загрузки. Новости в сети 0
Admin Интересно Итальянская компания создала поддельную версию WhatsApp для слежки за пользователями. Новости в сети 0
Admin Интересно Apple выпустила экстренное обновление для старых айфонов. Новости в сети 0
Admin Интересно Google Диск представил новые инструменты для защиты от вымогателей. Новости в сети 0
Admin Интересно «Плывущая челюсть» и подозрительные тени. Инструкция для тех, кто не хочет попасться на уловки кибермошенников. Новости в сети 0
Admin Интересно Киберпреступники использовали поддельный CERT-UA для распространения вредоноса AGEWHEEZE. Новости в сети 0
Admin Интересно Slack получил 30 новых функций с использованием искусственного интеллекта для повышения продуктивности. Новости в сети 0
Admin Интересно Кибератака на Cisco началась с плагина для проверки уязвимостей. Новости в сети 0
Admin Интересно Холоднее космоса. Глубже 2 километров. Тише абсолютного нуля. Физики включили ловушку для тёмной материи. Новости в сети 0
Admin Интересно Google выпустил обновление для Chrome, устраняющее уязвимость нулевого дня. Новости в сети 0
Admin Интересно Хакеры активно используют уязвимость в устройствах Citrix для кражи паролей. Новости в сети 0
Admin Интересно Цифровые активы после смерти: как управлять рисками для цифрового наследства. Новости в сети 0
Admin Интересно Злоумышленники взломали аккаунт npm библиотеки Axios для распространения вредоносного ПО. Новости в сети 0
Admin Интересно Proton Meet представил новый сервис для видеозвонков с акцентом на конфиденциальность. Новости в сети 0
Admin Интересно Airbus представила автономный дрон для перехвата беспилотников. Новости в сети 0
Admin Интересно Microsoft отозвала проблемный патч KB5079391 для Windows 11. Новости в сети 0
Admin Интересно Гонка вооружений в сфере ИИ: почему управление уязвимостями становится приоритетом для компаний. Новости в сети 0
Admin Интересно Роботы на Марсе могут стать более автономными для ускорения исследований. Новости в сети 0
Admin Интересно Появился DVRTC — учебный проект для изучения уязвимостей интернет-телефонии. Новости в сети 0
Admin Интересно Европейский союз запрещает использование ИИ для создания поддельных откровенных изображений. Новости в сети 0
Admin Интересно Новый инструмент Hadrian для поиска уязвимостей в интерфейсах программирования приложений. Новости в сети 0
Admin Интересно Плагин для Visual Studio Code стал инструментом атаки на разработчиков криптовалют. Новости в сети 0

Название темы