Эликсир для программистов на 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 Интересно Google представила Gemma 4 12B — мощную модель ИИ для локального использования. Новости в сети 0
Admin Интересно Хакерская группа PCPJack захватила 230 серверов AWS, Google Cloud и Azure для создания скрытой сети SMTP. Новости в сети 0
Admin Интересно Пентагон планирует создание кибервойск для противостояния России и Китаю. Новости в сети 0
Admin Интересно Мошенники используют поддельные сайты с ссылками на GitHub для распространения вредоносного ПО. Новости в сети 0
Admin Интересно OpenAI представила GPT-Rosalind для анализа биологических угроз. Новости в сети 0
Admin Интересно Создан ИИ-червь, который распространяется самостоятельно и выбирает цели для атаки. Новости в сети 0
Admin Интересно Google запускает сервис Dreambeans для персонализированных рекомендаций. Новости в сети 0
Admin Интересно Сбер представил оптический вычислитель для задач искусственного интеллекта. Новости в сети 0
Admin Интересно Мессенджеры собирают больше данных, чем нужно для переписки. Новости в сети 0
Admin Интересно К 2030 году дата-центры ИИ могут потреблять воду, достаточную для 1,3 млрд человек. Новости в сети 0
Admin Интересно Фейковые сайты имитируют открытые проекты для распространения вредоносного ПО. Новости в сети 0
Admin Интересно Google DoubleClick используется в новой кампании для распространения вредоносного ПО. Новости в сети 0
Admin Интересно Иранская разведка использует Telegram для вербовки шпионов и поджигателей. Новости в сети 0
Admin Интересно Детские данные: долгосрочный риск для идентичности. Новости в сети 0
Admin Интересно Embarcadero представила ИИ-ассистента Kai для Delphi и C++Builder. Новости в сети 0
Admin Интересно Китайская разведка использует облако Microsoft для кибершпионажа. Новости в сети 0
Admin Интересно NASA готовит телескоп Roman для изучения тёмной материи. Новости в сети 0
Admin Интересно Группа Gamaredon использует уязвимость WinRAR для распространения вредоносного ПО. Новости в сети 0
Admin Интересно Нобелевский лауреат Ричард Фейнман предложил математическую формулу для выбора ресторана в путешествии. Новости в сети 0
Admin Интересно США разрабатывают орбитальную систему для уничтожения ракет из космоса. Новости в сети 0
Admin Интересно Инженеры разработали технологию LAST для защиты SSD от программ-вымогателей. Новости в сети 0
Admin Интересно Anthropic расширяет доступ к своей системе Mythos AI для 200 организаций. Новости в сети 0
Admin Интересно Apple разрабатывает функцию для разделения счетов. Новости в сети 0
Admin Интересно Калифорния вводит цензуру для 3D-печати. Новости в сети 0
Admin Интересно Хакеры используют Steam для управления вредоносным ПО. Новости в сети 0
Admin Интересно Хакеры обманули искусственный интеллект Meta для кражи аккаунтов Instagram. Новости в сети 0
Admin Интересно ChatGPT может стать инструментом для фишинговых атак. Новости в сети 0
Admin Интересно В России вводят лимит на количество банковских карт для одного клиента. Новости в сети 0
Admin Интересно Вредоносное ПО для кражи учетных данных обнаружено в популярном инструменте Codex. Новости в сети 0
Admin Интересно Злоумышленники используют уязвимость FortiClient EMS для кражи данных. Новости в сети 0
Admin Интересно Новая киберкампания JINX-0164 атакует криптовалютные компании с помощью фишинга и вредоносного ПО для macOS. Новости в сети 0
Admin Интересно Калифорнийские суды тестируют ИИ для принятия решений по уголовным делам. Новости в сети 0
Admin Интересно Anthropic представила плагин безопасности для Claude Code. Новости в сети 0
Admin Интересно Хакеры используют двойную атаку для кражи игровых аккаунтов и мошенничества. Новости в сети 0
Admin Интересно Российские компании используют ИИ для контроля за сотрудниками. Новости в сети 0
Admin Интересно Huawei предложила новый закон Тау для развития полупроводников. Новости в сети 0
Admin Интересно Паспорт для установки Линукс. В США испугались собственного закона и спасают свободное программное обеспечение. Новости в сети 0
Admin Интересно Microsoft предупредила о необходимости нескольких перезагрузок для обновления Secure Boot. Новости в сети 0
Admin Интересно BTMOB: скрытый троян для Android, способный захватить устройство. Новости в сети 0
Admin Интересно Что нужно учитывать перед использованием ИИ-чатботов для медицинских советов. Новости в сети 0
Admin Интересно Искусственный интеллект используется для распространения вредоносного ПО. Новости в сети 0
Admin Интересно Малайзия вводит жёсткие ограничения для онлайн-платформ. Новости в сети 0
Admin Интересно Специалисты раскрыли технику Underminr для обхода защитных DNS-фильтров. Новости в сети 0
Admin Интересно Intel готовит для Linux новый способ соединения компьютеров через USB-кабель. Новости в сети 0
Admin Интересно SpaceX повысила цены на доступ к Starlink для военных дронов во время войны с Ираном. Новости в сети 0
Admin Интересно Северокорейская группировка Void Dokkaebi сменила язык программирования для вредоносного ПО. Новости в сети 0
Admin Интересно Искусственный интеллект оказался слишком дорогим для крупного бизнеса. Новости в сети 0
Admin Интересно Иранские хакеры используют обновления Zoom для взлома систем. Новости в сети 0
Admin Интересно Микроскоп MOSAIC объединил десяток лазерных режимов для изучения живых клеток. Новости в сети 0
Admin Интересно GitHub представил новые функции безопасности для npm. Новости в сети 0

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