Рубрика «json» - 3

Компактные структуры данных - 1

Введение

Несколько месяцев назад в поисках идей по ускорению кода я изучал множество научных статей по computer science. Не буду притворяться, что хорошо их понимал, но меня не пугает непонятное, и я готов признать своё невежество1. Я обнаружил статью, написанную пятнадцать лет назад2, в которой было множество новых для меня концепций. Мне никак не удавалось в них разобраться.

Что же делать дальше? Можно искать другие статьи, чтобы они заполнили мои пробелы. Это рискованное предприятие, потому что они могут запутать ещё больше, но избежать этого нельзя. Я нашёл статью с нужной структурой данных, в которой упоминался исходный код с веб-сайта. Код был написан на C++, а я работаю на Rust, но решил, что всё равно стоит на него взглянуть. Однако зайдя на сайт, я не обнаружил там ресурс, поэтому я написал владельцу веб-сайта, который оказался преподавателем computer science.

Этот преподаватель (Гонсало Наварро) очень тепло меня принял и сразу же ответил мне3 4. И только в процессе общения с ним я осознал, что видел его фамилию на множестве статей в этой области. Оказалось, я познакомился с одним из специалистов мирового уровня в области компактных структур данных (succinct data structure). Невежество может завести очень далеко.

Что же такое компактные структуры данных? Если вы изучали в последние десятилетия computer science, то могли сталкиваться с ними, но мне не доводилось встречаться с ними в процессе работы программистом, а если и доводилось, то я сразу же о них забыл. Но я считаю, что эти структуры данных обладают потрясающими свойствами.

Все мы пользуемся массивами и хэш-таблицами5, популярны также различные деревья. Нам не нужно полностью понимать их устройство, чтобы эффективно пользоваться их свойствами. А теперь я задаюсь вопросом, почему же люди не используют компактные структуры данных чаще.

Я решил, что стоит немного о них рассказать.Читать полностью »

Когда только начинаешь кодить, многое приходится делать вручную: переименовывать файлы, проверять данные, снова и снова запускать тест. Это нормально, но рано или поздно приходит мысль: «А можно ли сделать так, чтобы всё работало само?» 

Всё, конечно, не заработает, но Python заметно сокращает рутину. Например, с его помощью можно скачивать файлы, отправлять отчёты, проверять API, заходить в браузер и кликать по кнопкам. Если какое-то действие приходится выполнять слишком часто — значит, пора его автоматизировать.

Читать полностью »

Введение

Автоматизация тестирования в мире САПР – это вызов, который невозможно переоценить. Инженеры, архитекторы и проектировщики создают сложнейшие модели, а разработчики ПО ломают голову, чтобы их инструменты работали без сбоев. Но чем мощнее становится программное обеспечение, тем сложнее его тестировать. Проверять САПР вручную – всё равно что искать иголку в стоге сена, который кто-то ежедневно переворачивает. Мы быстро поняли, что такой подход не работает. Поэтому решили изменить систему и построить свою.

Читать полностью »

Предусловие у вас уже скачан или скачайте sublimetext с официального сайта.

  1. Открываем sublimetext и нажимаем сочетание клавиш ctrl+shift+p, должно открыться белое окно с поиском.

Поиск

Поиск

В окне поиска начинаем писать Package Control, у вас появится список, выбираем из списка Package Control: Install Package и нажимаем ЛКМ(левая кнопка мыши).

Читать полностью »

Таки здравствуйте. Как вы поняли по названию, сегодня в блоге ЛАНИТ мы продолжим мучить JSON. Располагайтесь поудобнее и поехали вместе выжимать из него очередную порцию полезностей для работы.

В предыдущей статье мы использовали JSON как формат передачи данных и файл для подгрузки тестовых данных. Но это еще не все, что он может нам дать для тестирования API. И да, сегодня мы научимся использовать JSON в качестве шаблона для валидации ответов на запросы.

Читать полностью »

Привет! Меня зовут Максим Соколов, я — аналитик в команде “Управление доступностью товаров и категорий”. В нашей команде была выделена отдельная подгруппа, которая создавалась специально под новый продукт-фичу для селлеров. Сразу стало понятно, что для реализации нового функционала требуется разработка нового микросервиса. Командой разработки было принято решение интегрироваться по gRPC, но мне до конца не было понятно, почему выбор именно такой. И тут я решил разобраться подробнее!

Читать полностью »

Когда речь заходит о форматах обмена данными, сразу на ум приходят два давних соперника: XML и JSON. Это как сравнить эпическое повествование с краткой заметкой на полях. XML — это длинный роман, где каждый нюанс тщательно прописан и обрамлен тегами. JSON — это записка на холодильнике с краткими инструкциями. Оба формата выполняют свою задачу, но важно понимать, когда лучше использовать один, а когда другой. Ведь забивать гвозди молотком — это хорошо, а вот пытаться забивать им шурупы — уже не так весело.

Читать полностью »

В связи с переходом на отечественное ПО в организации пришлось искать замену Windows утилиты администрирования кластера. После изучения вопроса выяснилось, что для администрирования кластера 1С существует 3 подхода:

  1. Внешняя обработка внутри 1С — графический интерфейс, кроссплатформенная. В ситуации если все пользовательские лицензии заняты, но нужно посмотреть кем и при необходимости отключить пользователей, забывших выйти из 1с, эта обработка бесполезна.

  2. Читать полностью »

Привет! Если вы открыли эту статью, вероятно, вам интересна разработка BIM-приложений, а конкретно - просмотрщиков 3D-моделей (Viewer). Возможно, у вас уже есть свое BIM-приложение, и вы столкнулись с трудностями, или вы только планируете начать разработку и собираете информацию. В любом случае, вы попали по адресу.

Я расскажу вам историю о том, как мы создавали наш 3D Viewer, какие подводные камни встретились на пути, и какие уроки мы извлекли. Поехали!

Выбор технологии: своя разработка vs открытые библиотеки

Когда мы начинали наш проект чуть больше года назад, у нас было два пути:

  1. Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js