All streams
Search
Write a publication
Pull to refresh
25
0
Максым Атыгаев @atygaev

Java Backend Developer

Send message
Удавалось достичь прироста в 20%.
Адовенько! :) Но, пожалуй, я остановлюсь на моих текущих наработках)
:) Вроде здорово! :)
Вы решали задачу, как представить в JSON произвольные типы, но получилось у вас только усложнить синтаксис, а произвольные типы все еще представить не удалось (корежить человекопонятный жисон, и все равно передавать не тип, а строку — это не решение).


В чем конкретно мне не удалось решить поставленную задачу представления JSON типов? Прошу отметить, что в статье речь идет исключительно о null, true, false, number, string, array, object.

корежить человекопонятный жисон, и все равно передавать не тип, а строку — это не решение


Я если честно, не понял Ваш этот комментарий.
Как потом понять что это был именно ObjectId из такого объекта:
{
  "_id": "562d2063bc0f12de6a000001"
}

?

Это еще один способ, да. Но лично мне не нравится это тем, что приходится явно указывать «строение» id.
Уважаемые, почему такая реакция в разделе «Ненормальное программирование»? :) Решение не предлагается для промышленного внедрения. Преследовалась совершенно простая цель. Никаких намеков на производительность и крутость! :) Разве данная статья противоречит правилам Хабра или раздела «Ненормальное программирование»? :) За что минусы-то? :)
Мне не понравилась такая идея и я решил изобрести NSNJSON. К тому же в Вашей идее необходимо знать природу этих данных. Здесь же всё прозрачно и универсально.
Можно. Почему бы нет?! :)

Я ставил задачу реализовать все множество JSON на основе лишь его подмножества. И более-менее формально описал процесс. Не нужно думать, что я предлагаю какое-то новое решение для промышленных задач. Вовсе нет. Просто была идея и просто она реализованна! :)
:) пример демонстрирует один из способов применения. Примером я хотел показать, как передавать данные, которые не являются валидным JSON. Хотелось придумать формат, который основывался на каком-нибудь известном формате и требовал бы минимум усилий для написания драйверов для этого формата.
Ну это же ненормальное программирование. Оно не должно что-то давать. Оно просто есть.

В качестве одно из примеров применения могу предложить передачу объектов, содержащие значения не входящие в спецификацию JSON. Для простоты возьму ObjectId из MongoDB.

Вот берем какой-нибудь документик:

{
  _id: ObjectId("562d2063bc0f12de6a000001")
}


Этот документ, не является валидным JSON.

А мы возьмём и преобразуем его в JSON-формат:
{
  "t": "object",
  "v": [{
    "n": "_id",
    "t": "objectid",
    "v": "562d2063bc0f12de6a000001"
  }]
}


И всё, теперь это валидный JSON. Написать функцию восстановления тоже не составит труда.
Каждый раз, когда сталкиваюсь с Rx%Language% забочусь о производительности. Ведь создаются объекты и это здорово, но какие-то мы отбрасываем, какие-то отображаем во что-то другое (новые объекты) и уже потом отбрасываем. Вот, статью бы, которая сказала: «Не волнуйтесь %Товарищ%, можно использовать Rx%Language% и в то же время не сильно убавить производительность. Просто нужно то-то и то-то, а вот так-то и так-то делать не надо. Ну… Ну… Ну разве что иногда, когда вам нужно вот это или вон то..»
А кто-нибудь знает, есть ли академическая альтернатива Википедии?
Хорошо, что данную тему поднимают! Спасибо!
А что смущает?
Ну, это я прочитал, но вопрос «почему» остался. Почему всё таки не научить метод работать с глобалами? В Cache есть универсальные функции, которые могут работать с различными типами аргументов и всё ок. А чего бы тут так не сделать? м?
Вопрос к Cache разработчикам: зачем sequence? Почему бы не улучшить increment?
А что сложного-то взять да указать в статье и написать остальное читайте в документации? Почему я должен лезть и открывать документацию. Почему мне предлагают перейти с одного на другое, но не говорят что именно плохого может случиться?

Да дело не в копировании документации. А просто в отношении к людям (к разработчикам). Это отношение очень отталкивает.
А почему бы в статье не указать какие именно ограничения? Про численное переполнение?
Помню, что когда для такого дела используешь Java с проверенными технологиями, то ночью спишь спокойно. А когда это какой-нибудь Node.js, то как-то вот не получается. Оно конечно работает, оно конечно даже вполне себе стабильно работает, но почему-то нет покоя. Не знаешь что, где и когда может отвалится.
но что то я не видел современных проектов на java.


Ходят слухи, что и Сбербанк и Альфабанк используют Java технологии в личном кабинете пользователя.

Есть еще достаточно известный магазин различных товаров, который более чем полностью реализован на Java (я как бывший инсайдер это говорю).

Еще, на моей скромной практике, почти всегда не хватало «вот этих вот готовых для прототипирования фреймворков». Малейший шаг в сторону — «ну… это не по концепту… Ну вам это не нужно.»

Information

Rating
Does not participate
Location
Бердск, Новосибирская обл., Россия
Date of birth
Registered
Activity

Specialization

Backend Developer
Lead
Java
PostgreSQL
Docker
Spring Boot