Pull to refresh
50
0
Dmitrii Zolotov @dmitriizolotov

Flutter Developer@YandexPro, DevOps, IT Architect

Send message

Можно например использовать https://github.com/jkelly467/kossh для ssh-подключения на другую машину и там уже выполнять команды и разбирать ответ, можно даже сделать обертки для извлечения необходимой информации из текстового ответа. Непосредственно подключаться к POSIX на удаленном системе без ssh не позволяет безопасность, но если кто-то знает способ выполнения POSIX-запросов на другую linux-машину, то напишите пожалуйста.

Исправил, сейчас в примерах сделано корректно с хранением данных в инстансе.

Опечатка у меня конечно же, прошу прощения. При финальном редактировании думал о рабочих задачах (на Dart/Kotlin), в голове синтаксис перемешался. Исправил текст, спасибо что заметили!

Нет, копипасты не было, там первая часть скорее про рассмотрение как это было в старых версиях Python. Ниже есть упоминание про альтернативные типы (ну и в документации не очень рекомендуют использовать тип | None, хотя и считают этот синтаксис допустимым).

тут была у меня опечатка, скобки конечно же квадратные List[T], при финальном редактировании ошибся и в голове смешался синтаксис :( Но так да, более того при разработке PEP (там в конце документа можно увидеть), что сравнивали реализации в других языках (и даже предлагали использовать угловые скобки).

При написании статьи ChatGPT не использовался, повторения в данном случае - просто неудачный стилистический прием, исправлю. Смысловые повторения опять же связаны с тем, что статья была написана в несколько итераций и возможно где-то случились наложения. Спасибо за ваш отзыв, внесу корректировки в содержание.

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

Спасибо, исправил, репозиторий не был сделан публичным.

Спасибо за статью. Справедливости ради отмечу, что в Dart есть рефлексия. Ее убрали во Flutter, да, но сам Dart вполне успешно справляется с анализом AST при выполнении (в частности, это используется в ORM на Aqueduct/Conduit).

У проекта есть официальное демо с десятками сервисов разных видов https://github.com/go-micro/demo, может быть полезно

Именно объект или структуру? Структуру можно определить в def-файле, для структур из h-файлов классы-обёртки создаются автоматически при генерации klib.

Относительно производительности - ну тут любой язык будет немножко терять из-за своего рантайма, но в целом (поскольку код компилируется в исполняемый) она достаточно высокая (по крайней мере по сравнению с JVM Target).

Язык не только в мобилке используется :) (хотя там его действительно много, сильно много полезных фич есть по сравнению с java). На нём можно делать и веб-приложения (с нормальной типизацией как в TypeScript, но при этом с поддержкой многих других приятных дополнений, вроде DSL через лямбды и receiver), также можно делать и бэк. Сообщество тоже значительное (но конечно меньше java, просто из-за возраста языка) + очень хорошая документация и официальные примеры на многие кейсы (включая нативные приложения)

VSCode с официальным плагином для Go

Спасибо, упустил этот момент, добавил скриншот.

Здесь мы проверяем выбрасывание исключения при отсутствующем файле, для этого достаточно использовать синхронную операцию. Конечно же, в реальных условиях надо было бы использовать async with aiofiles.open, но это потребовало бы установки aiofiles (или aiohttp), а мы используем REPL в docker-образе (конечно же и тут можно было бы применить pip.main(['install', 'aiofiles']), но это бы несколько усложнило пример).

Согласен. С вашего разрешения могу добавить это как примеры в статью?

Да, есть такой риск, правда. Можно при запуске сканирования явно указать --nosend (чтобы не отправлялся обобщенный отчет в облако), но 100% гарантии, что ничего, кроме статистики запусков, в сеть не отправится здесь нет (кроме Privacy Policy). Можно профилировать трафик, который отправляется из приложения (например, через mitmproxy), если есть подозрения, что из сканера отправляется что-то лишнее, но тут уже скорее вопрос доверия.

И, в целом, есть свободная альтернатива (она не умеет так много, но тоже может быть полезна: https://github.com/zricethezav/gitleaks)

Можно, например, использовать готовые go-модули, реализующие вычислительно сложные задачи (те же нейронки, например, или какую-либо обработку изображений/видео/звука). Ну и чтобы не миксовать с JS, визуализацию результатов можно собрать там же, на Go

DOM фактически проксируется через V8 (с ним общаемся через syscall/js), поэтому принципиальной разности в скорости работы с элементами не будет. В основном изменения в производительности заметны при реализации вычислительно сложных задач.

А относительно размера можно посмотреть в сторону https://github.com/webassembly/binaryen, там есть оптимизирующий инструмент wasm-opt, который позволяет выполнять оптимизацию wasm уже после компиляции.

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Works in
Date of birth
Registered
Activity

Specialization

Fullstack Developer, DevOps
Middle
From 200,000 ₽
Flutter
Kotlin
Development of mobile applications
Kubernetes
Golang
Linux
High-loaded systems