В чем разница между запросом на стороне клиента cassandra и запросом на стороне сервера cassandra и как это влияет на производительность

Если вы думаете о греческих корнях этого термина, это должно стать очевидным.

  • Poly = many: polygon = многогранный, полистирол = много стиролов (a), polyglot = many языки и т. д.
  • Morph = изменение или форма: морфология = изучение биологической формы, Morpheus = греческий бог сновидений способен принимать любую форму.

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

Например, на многих языках целые числа и поплавки являются неявно полиморфными, поскольку вы можете добавлять, вычитать, умножить и т. д., независимо от того, что типы различны. Они редко рассматриваются как объекты в обычном терминах.

Но таким же образом класс, подобный BigDecimal или Rational или Imaginary, может также обеспечивать эти операции, даже если они работают на разных типах данных.

Классическим примером является класс Shape и все классы, которые могут наследовать его (квадрат, круг, додекаэдр, нерегулярный многоугольник, знак и т. д.).

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

Заставляя класс отвечать за его код, а также за его данные, вы можете добиться полиморфизма. В этом примере каждый класс будет иметь свою собственную функцию Draw(), а клиентский код может просто сделать:

shape.Draw()

, чтобы получить правильное поведение для любой формы.

Это в отличие от старого способа делать вещи, в которых код был отделен от данных, и у вас были бы такие функции, как drawSquare() и drawCircle().

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


(a) Я изначально написал это как шутку, но оказалось, что это правильно, и, следовательно, не так уж смешно. Момермер-стирол происходит из углерода и водорода C8H8, а полистирол производится из групп этого (C8H8)n.

Возможно, я должен был заявить, что полип был большим количеством букв p, хотя теперь, когда мне пришлось объяснять эту шутку, даже это не выглядит забавным.

Иногда вам нужно просто уйти, пока вы находитесь: -)

1
задан Ankit Machhi 5 March 2019 в 07:48
поделиться