Новости «Разработка»
Яндекс выложил в опенсорс userver — инструмент для создания высоконагруженных приложений
Интернет, 29 июля 2022 года. Яндекс опубликовал исходный код и документацию фреймворка userver. Это первый открытый набор инструментов, который позволяет создавать высоконагруженные приложения на языке С++ и протестирован на масштабах уровня Яндекса. Userver используют в Яндекс Go, Лавке, Доставке, Маркете, финтех-проектах и многих других сервисах компании. Фреймворк предоставляется по открытой лицензии Apache 2.0.
Userver лучше всего подходит для разработки приложений с микросервисной архитектурой. Изначально фреймворк разрабатывался в Такси, с его помощью команда перешла с монолитного приложения на архитектуру, которая позволяет разрабатывать отдельные независимые компоненты (микросервисы) и использовать их в разных приложениях.
Микросервисы автономны, поэтому приложение на подобной архитектуре легко обновлять и добавлять в него новые функции. Так, микросервис поиска водителя на заказы в Такси можно использовать для схожей задачи — например поиска курьера для выполнения заказов Яндекс Доставки. То же самое можно проделать и с расчетом времени прибытия водителя или курьера и многими другими задачами.
«Когда мы переходили на микросервисы, мы понимали, что новый фреймворк должен быть как можно проще для разработчиков и бизнеса. Поэтому userver создавали с акцентом на надёжность и удобство, а внутри него есть всё необходимое для разработки, диагностики, мониторинга, отладки и экспериментов. Например, userver подсказывает как исправить ошибки ещё на этапе компиляции, умеет работать с разными базами данных, менять параметры на лету и так далее. Он хорошо подходит для разработки приложений как в небольших, так и в крупных компаниях. И с помощью userver даже новичок может за неделю написать новый микросервис», — говорит Антон Полухин, один из авторов фреймворка и руководитель группы бэкенд-разработки решений для продуктовых команд RideTech и eCom.
Яндекс выкладывает в опенсорс и другие свои ключевые технологии — например, распределенную систему управления базами данных YDB, способную обрабатывать миллионы запросов в секунду, а также библиотеку машинного обучения CatBoost, которую Яндекс применяет в Поиске и других сервисах.
>>> Подробности
()
Релиз среды разработки Apache NetBeans 14
Apache Software Foundation сообщила о релизе Apache NetBeans 14 – интегрированной среды разработки, поддерживающей языки программирования Java, Python, PHP, JavaScript, C, C++ и др.
Проект NetBeans IDE поддерживается и финансируется компанией Oracle, но разработка NetBeans ведётся независимым сообществом разработчиков (NetBeans Community) и компанией NetBeans Org.
Среди изменений 14-ой версии:
- доступна сборка с использованием JDK17 и улучшена поддержка новых выпусков Java;
- улучшенная поддержка системы сборки Gradle;
- поддержка PHP 8.1;
- улучшенная поддержка CSS;
- поддержка спецификации ECMAScript 13 / 2022;
- улучшение поддержки системы сборки Maven.
Полный список изменений
Доступны сборки для Linux, Windows и macOS.
>>> Подробности
GitHub прекращает разработку Atom
Популярный кроссплатформенный редактор кода Atom выпускаемый под лицензией MIT, возможности которого можно расширять с помощью плагинов, большое количество которых было создано пользователями за множество лет с момента самого первого релиза редактора, больше не будет разрабатываться. Официальный «закат» проекта намечен на 15 декабря 2022 года - Atom и связанные с ним репозитории будут заархивированы.
В GitHub обосновывают свое решение тем, что в последние годы в Atom уже не добавлялись какие-то новые значительные функции, а множество пользователей Atom перешло на использование родственного редактора - Visual Studio Code от Microsoft, во многом вдохновленного Atom, так же имеющего в основе фреймворк Electron (некогда известного как Atom Shell) и так же выпускаемого под свободной лицензией MIT. Теперь усилия разработчиков GitHub будут сосредоточены на проекте GitHub Codespaces, облачной среде разработки на основе VSCode.
>>> Подробности
Masm2c + libdosbox - тулкит для обратной разработки DOS-игр
Вышла первая публичная версия (0.9.6) тулкита для обратной разработки 16 битных DOS-игр: Masm2c и libdosbox.
Допустим, вы решили переписать движок старой любимой игры под ДОС или специализированного DOS-софта. Кроме того что реверс-инжиниринг сложен, задачу усложняет еще и то, что используется сегментная модель памяти (адресация за раз только 64 КБайт памяти одним сегментным регистром), прямой доступ к старому железу.
Если у вас есть бинарник с движком игры, тулкит позволяет сконвертировать его в работающий переносимый код на C++. Каждая инструкция x86 заменяется аналогичной функцией на С++ (native code). Libdosbox используется для эмуляции видео, звуковых устройств и для проверки конвертации каждой инструкции x86. Получается что-то среднее между декомпиляцией и дизассемблированием.
( читать дальше... )
>>> Подробности
Perl 5.36.0
С момента выхода Perl 5.34.0 прошло около года.
Если исключить документацию, автоматически генерируемые файлы и инструментарий для формирования самого релиза, в новой версии изменено 190000 строк в 1300 файлах .pm, .t, .c и .h.
( читать дальше... )
>>> Подробности
GitLab 15
22 мая состоялся выпуск GitLab — системы управления репозиториями кода на базе Git.
( читать дальше... )
Erlang/OTP 25
Доступен Erlang/OTP 25. Выпуск содержит новые функции, улучшения и доработки, нарушающие обратную совместимость.
( читать дальше... )
Развёрнуто про наиболее интересные изменения можно прочитать здесь.
>>> Подробности
Доступен язык программирования Hare
Впервые представлен широкой публике язык программирования Hare, который разрабатывает Дрю ДеВолт (автор Sway и SourceHut) со своей командой последние пару лет.
Hare — язык для системного программирования с минималистичным рантаймом, статической типизацией и ручным управлением памятью.
Исходный код компилятора предоставляется под лицензией GPLv3, а для стандартной библиотеки под лицензией MPL (Mozilla Public License). Компилятор Hare не основан на LLVM или GCC, а использует легковесный qbe. Программы на Hare не линкуются с libc по умолчанию.
( читать дальше... )
>>> Подробности
Rakudo 2022.04
Rakudo — компилятор языка программирования Raku, до октября 2019 года называвшегося Perl6. Компиляция осуществляется для MoarVM, JVM и других виртуальных машин.
( читать дальше... )
Erlang/OTP 25-rc1
Доступен первый (из трёх) релиз-кандидат грядущей мажорной версии Erlang/OTP 25.
Цель релиза – получить обратную связь от пользователей. Разработчики приветствуют даже отзывы вида: «У меня всё работает». Подробнее о способах оставить отклик и получить файлы OTP 25-rc1 можно прочитать по ссылке под новостью.
( читать дальше... )
>>> Подробности
re2c 3.0
В четверг 27 января состоялся релиз генератора лексических анализаторов re2c 3.0. Основное изменение — добавлена кодогенерация в Rust.
Напомним, что re2c специализируется на генерации быстрых и легко встраиваемых лексеров. Он отличается от более известного аналога flex гибким интерфейсом, генерацией оптимизированных нетабличных лексеров и поддержкой захватов (submatch extraction) на основе детерминированных конечных автоматов с тэгами (TDFA). re2c используется в проектах, где важна скорость работы лексера, например в Ninja и в PHP.
На сайте есть много примеров, теперь и на языке Rust.
>>> Подробности
| ← предыдущие | следующие → |
