А не смущает, что чтобы исследование было двойным слепым, вы не должны были делать анализ на антитела? Потому что информация об их наличии меняет ваше поведение (и увеличивает шансы заболеть по сравнению с теми кто соблюдает меры предосторожности).
То есть вы, потенциально, ухудшаете значение эффективности, которое будет получено в результате исследования.
Если внезапно бизнес требует — то никакого json-rpc там не будет. Там будет либо rest либо soap (прекрасно умирающий, но все еще не умерший) причем с конкретной реализацией протокола обмена поверх rest или soap. Потому что когда у вас интеграция и не вы определяете как она делается можете не рассчитывать на то что там будет хоть-какой-нибудь стандарт.
Статья написана так, что нельзя в нее взглянуть и сразу увидеть какое произношение правильное. В результате в половине случаев вначале читаешь неправильное произношение что определенно не способствует запоминанию правильного.
Почему бы не использовать всю палитру взможностей языка а не ограничивать себя лишь объектами? Не говоря уж о том, что большинство современных языков сознательно делают мультипарадигменными, а вы предлагаете сделать шаг назад и ограничиваться только объектно ориентированной парадигмой.
А в тесте вы как моки будете инжектить в эти поля? DI, он не в последнюю очередь для упрощения тестирования, а когда вы инжектити зависимость в приватное поле — это почти тоже самое, что создать там зависимость через new.
Вставка в середину у вас по факту не слишком дешевая. Не О(1) и даже не O(размер блока).
Потому что блок вам надо еще найти (видимо перебирая блоки подряд). То есть у вас будет что-то вроде O(n/размер блока)+O(размер блока) что, внезапно, эквивалентно O(n).
Можно и так. Только, во первых по памяти вы проиграете, а во вторых, константы в ассимптотическом анализе увеличатся (из-за логики по определению какой блок, в какую сторону сдвигаем и т.п.) Ну и да, с уменьшением размера блока структура все больше походит на linked list
Ну рассмотрите вставку не в начало, а в самую середину. Все равно получите O(n). Динамический массив — он такой. В него можно вставить значение в любое место.
48 на 12 делится нацело, а на 18 нет, это может влиять.
То есть вы, потенциально, ухудшаете значение эффективности, которое будет получено в результате исследования.
Потому что блок вам надо еще найти (видимо перебирая блоки подряд). То есть у вас будет что-то вроде O(n/размер блока)+O(размер блока) что, внезапно, эквивалентно O(n).