Эликсир для программистов на 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 UFOLABSNEWS AnyDesk для Linux можно взломать без пароля и получить root. Новости в сети 0
Admin UFOLABSNEWS Обнаружен новый вредоносный загрузчик AvisLoader для Windows, использующий P2P-сеть Tox. Новости в сети 0
Admin UFOLABSNEWS Microsoft планирует создать «стоп-кран» для сверхинтеллекта. Новости в сети 0
Admin UFOLABSNEWS Злоумышленники активно эксплуатируют критическую уязвимость в плагине Bricksforge для WordPress. Новости в сети 0
Admin UFOLABSNEWS Киберпреступник CyberXero использовал ИИ Claude для кражи 628 тысяч записей украинских пользователей. Новости в сети 0
Admin UFOLABSNEWS Подозреваемые в сексторции использовали поддельные изображения для шантажа жертв. Новости в сети 0
devqp Статья Автоматизация sqlmap через кастомизированный ChatGPT для пентеста Уязвимости и взлом 0
Admin UFOLABSNEWS Китайский хакер использовал ARTEX AI и Claude для атак на банки Южной Кореи. Новости в сети 0
Admin UFOLABSNEWS Google представила новые возможности для интеграции рабочих сервисов. Новости в сети 0
Admin UFOLABSNEWS Хакеры используют Google Ads и Bing для распространения вредоносных установщиков Claude. Новости в сети 0
Admin UFOLABSNEWS Милый ежедневник оказался прикрытием для шпионской программы. Новости в сети 0
Admin UFOLABSNEWS Злоумышленники эксплуатируют уязвимости в AhsayCBS для установки веб-шеллов и майнинга криптовалюты. Новости в сети 0
Admin UFOLABSNEWS Профессор религии обвинён в киберпреследовании после использования X для травли коллеги. Новости в сети 0
Admin UFOLABSNEWS Исследователи опубликовали рабочий эксплойт для уязвимости в AnyDesk Linux. Новости в сети 0
Admin UFOLABSNEWS Гражданин Украины и России признал вину в организации сети из 15 000 денежных мулов для киберпреступников. Новости в сети 0
Admin UFOLABSNEWS Серверы с NVIDIA для российского ИИ подорожали до миллиона долларов. Новости в сети 0
Admin UFOLABSNEWS Citrix выпустила патчи для критической уязвимости в NetScaler, позволяющей удалённое выполнение кода. Новости в сети 0
Admin UFOLABSNEWS Поэзия стала новой угрозой безопасности для искусственного интеллекта. Новости в сети 0
devqp Статья Практическое руководство по Twitter ADS для начинающих (2024) Спам, рассылки, трафик, SEO 0
Admin UFOLABSNEWS Киберпреступники использовали инструмент ARTEX для атак на южнокорейские финансовые компании. Новости в сети 0
Admin UFOLABSNEWS Microsoft Teams получит поддержку инструментов для обнаружения дипфейков. Новости в сети 0
devqp Статья Эффективные шаблоны для разблокировки Google Ads Уязвимости и взлом 0
Admin UFOLABSNEWS Голландские спецслужбы предупредили об угрозе китайских хакеров для периферийных устройств. Новости в сети 0
Admin UFOLABSNEWS Злоумышленники получили несанкционированные сертификаты для доменов Google. Новости в сети 0
devqp Статья VolWeb: Централизованная платформа для форензик-анализа памяти Уязвимости и взлом 0
devqp Статья Техники персистентности в Windows для административного доступа Уязвимости и взлом 0
devqp Статья Реализация API для блокировки Windows-ПК на Rust Полезные статьи 0
Admin UFOLABSNEWS Feather разрабатывает универсальную платформу для роботов с возможностью замены ИИ. Новости в сети 0
devqp Статья Эффективные методы обхода SMS-фильтров для SIM-рассылок Спам, рассылки, трафик, SEO 0
Admin UFOLABSNEWS Нейросеть за месяц помогла написать графический драйвер для Mac M4. Новости в сети 0
Admin UFOLABSNEWS Пентагон заказал 4000 дронов-камикадзе Kiwi для массовых атак. Новости в сети 0
Admin UFOLABSNEWS Вредоносное ПО Lunex Stealer использует драйвер AMD для кражи данных. Новости в сети 0
Admin UFOLABSNEWS Злоумышленники обходят WAF для эксплуатации уязвимости в Oracle PeopleSoft. Новости в сети 0
Admin UFOLABSNEWS Принципы Zero Trust для ИИ-агентов: начинаем с устранения слепых зон. Новости в сети 0
Admin UFOLABSNEWS В плагине Elementor для WordPress обнаружена критическая уязвимость CSRF. Новости в сети 0
Admin UFOLABSNEWS Google отправляет чипы TPU в космос для тестирования устойчивости ИИ. Новости в сети 0
Admin UFOLABSNEWS Технологию для Марса приспособили, чтобы пиво не теряло пузырьки. Новости в сети 0
Admin UFOLABSNEWS Уязвимость в плагине Elementor для WordPress позволяет злоумышленникам создавать администраторские аккаунты. Новости в сети 0
Admin UFOLABSNEWS Новая версия вредоносного ПО PamStealer для macOS использует многослойное шифрование и устойчивость. Новости в сети 0
Admin UFOLABSNEWS Безопасность приложений, созданных с помощью ИИ: 5 ключевых аспектов для проверки перед загрузкой. Новости в сети 0
Admin UFOLABSNEWS Ботнет CARBONATO использует краденые учетные данные для финансирования собственного шлюза ИИ. Новости в сети 0
Admin UFOLABSNEWS Поздравляем, мы теперь биоматериал для ChatGPT. Власти сливают права граждан ради дружбы с техногигантами. Новости в сети 0
Admin UFOLABSNEWS Новая версия вредоносного ПО MacSync использует календари iCloud для доставки вредоносных модулей. Новости в сети 0
Admin UFOLABSNEWS В приложении MAX отсутствует сквозное шифрование, а сервер может изменять его работу для отдельных аккаунтов. Новости в сети 0
Admin UFOLABSNEWS Домен third-party.com, используемый в документации для разработчиков, теперь распространяет атаки ClickFix. Новости в сети 0
Admin UFOLABSNEWS Хакеры начали активно эксплуатировать критическую уязвимость WordPress для выполнения кода. Новости в сети 0
Admin UFOLABSNEWS Злоумышленники используют ИИ для кражи данных кредитных карт. Новости в сети 0
Admin UFOLABSNEWS Искусственный интеллект для программистов тайно отправлял их проекты в облако. Новости в сети 0
Admin UFOLABSNEWS Новый вредоносный код для Windows использует ИИ для принятия решений. Новости в сети 0
Admin UFOLABSNEWS Опасность в одном файле Kubernetes YAML для организации GCP. Новости в сети 0

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