Как стать автором
Обновить
27
0
ApeCoder @ApeCoder

Разработчик

Отправить сообщение

Почему "пришлось" разве этот формат не был организован ей же?

Чем stackoverflow не катит?

Кто запрещает договориься называть "девопс инженером" разновидность operatioons инженера, который знает devops подход и обладает навыками, часто использующимися при devops подходе?

Подставляются не типы а объекты типа. Конвариантны/контравариантны не типы а преобразования типов. Т.е. функция над типами. Ко-вариантны

Within the type system of a programming language, a typing rule or a type constructor is:

  • covariant if it preserves the ordering of types (≤), which orders types from more specific to more generic: If A ≤ B, then I<A> ≤ I<B>;

  • contravariant if it reverses this ordering: If A ≤ B, then I<B> ≤ I<A>;

  • bivariant if both of these apply (i.e., if A ≤ B, then I<A> ≡ I<B>);[1]

  • variant if covariant, contravariant or bivariant;

  • invariant or nonvariant if not variant.

т.е. у вас есть спрособ описать функцию на пространстве типов f(x) -> y
если из x1 is x2 следует f(x1) is f(x2) то преобразование ковариантно. (Аргумент со-варьируется с результатом)

Например в C# вот это не скомпилируется, так как List<> сам по себе не тип а фактически конструктор типов.

 public static void Main()
  {
    object x = null;
    if (x is List<object> || x is List<>)
    {


    }
  }

Впрочем, мы это уже обсуждали

Тут мне непонятно. Если есть коллекция ICollection с методами Add(Object x) и Object GetFirst() почему мутабельный List с такими же методами не является его подтипом?

Спасибо за ссылку
1987 - это ваша ссылка

3.3. Type Hierarchy A type hierarchy is composed of subtypes and supertypes. The intuitive idea of a eubtype is one whose objects provide all the behavior of objects of another type (th e supertype) plus something extra. What is wanted here is something like the following substitution property [S]: If for each object o1 of type S there is an object o2 of type T such that for all programs P defined in terms of T, the behavior of P is unchanged when o1 is substituted for oz, then S is a subtype of T. (See also [2, 171 for other work in this area.)

Т.е. для всех программ, не для одной функции.

А вот википедия - 1994
 Barbara Liskov and Jeannette Wing described the principle succinctly in a 1994 paper as follows:[1]

Subtype Requirement: Let {\displaystyle \phi (x)}

 be a property provable about objects {\displaystyle x} of type T. Then {\displaystyle \phi (y)} should be true for objects {\displaystyle y} of type S where S is a subtype of T.

Вообще, определение подтипизации, зависящее от того какие функции мы вызываем в программе, - это какое-то вырывание гланд через анус.

Этот документ целиком не читал, но как мне кажется по определнию выше, это ограничение скорее как нечто связывающее употребление и отношение между типами. Если оно не соблюдается, то что-то надо менять. Или программу или отношение.

Если программа делает то, что нужно, но принцип не соблюдается, возможно вам нужны другие отношения между типами.

Если не секрет, как вас занесло в обсуждение девопсов?

Изначальный посыл - вы едите вилкой хехе, а мы давно едим ложкой. Вот, возьмем, например, суп.

Метарассуждение:
Обычно, когда все делают X, потом приходит дедок и говорит "Вы дураки и не лечитесь, а надо делать Y" вариантов несколько:

  • Дедок самый умный, а весь остальной мир - тупые. Это самый маловероятный вариант. Даже Эйнштейн не отменил Ньютона - релятивистскую поправку при сложении скоростей почти никто не использует

  • Дедок занимается какой-то узкой нишей и него оправдано Y. Понять, что у других по другому, он не осиливает. Иногда эта узкая ниша потихоньку разрастается и теснит другие (ну или быстро), но обычно для X всегда остается место

  • Дедок - Кулибин, он придумал Y и он захвачен идеей. Смотрите! Это Я! Я! приудумал! Обычно он не удосуживается изучением существующих способов сделать то же самое и закрывает глаза на какие-то аспекты реальности (а то получится, что идея не такая уж иновая и уже кем-то опробована, но не подошла).

Чтобы порядок сохранялся? Если там запрос на создание документа, потом на его модификацию, например, если очередь то они так и обработабтся, а если стек, то надо сначала модифицировать потом создать. А как?

Структуры данных зависят от того, как устроены алгоритмы (например, индексы зависят от запросов). Либо это не может быть общая БД либо эта общая БД и есть интернет

Откуда вы взяли что 90% прослушавших вариант кажется грустнее?
Допустим это правда и 90% прослушваших он кажется грустнее. И 100% прослушавших относиться к западной культуре, подтверждает ли это факт, что минор культурно-независим?

Если этот комментарий понятен 90% попытавшимся его прочитать, значит ли что русский язык понимают вообще все люди Земли?

И эта разница очевидна без знания теориии, без этих всяких терций с гармониками, без эзотерики и отсылок к культурным традициям. Просто на слух.

Что значит "просто на слух"? Как вы убедились, что представителям другой культуры это так же очевидно?

https://www.google.com/amp/s/www.nme.com/blogs/nme-blogs/the-science-of-music-why-do-songs-in-a-minor-key-sound-sad-760215%3Famp

Тут есть ссылка на исследование что дикари слышат минор.

У в самой статье идея что минор похож на грустную речь.

The Mafa tribe people may also be reacting to sound and emotion associations that originate from the way that we speak. Scientists have shown that the sound spectra – the profile of sound ingredients – that make up happy speech are more similar to happy music than sad music and vice versa.

Хотелось бы попросить автора статьи на хабре сначала немножко погуглить и сделать обзор текущих теорий относительно рассматриваемого предмета со ссылками на источники и отделить факты от мнений.

Иначе не разберёшь - то ли нам рассказывают то, что уже было выяснено наукой, то ли это убогая доморощенная дилетантская теория очередного Кулибина, который не разобравшись в фактах что-то придумал и несёт это в массы.

Почему не использовать Span вместо самодельного StringPart?

А как вы планируете спринты? Есть ли какое-то планирование поверх спринтов? Как отслеживаете зависимости?

А я-то тут при чём?

Вы же сказали "либо у людей так или иначе будут ожидания касательно объёма+сроков и они будут расстраиваться" соответственно именно вы и не допускаете

Зачем?

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

Да. Еще пробовали в конце спринта пытаться затолкать фичи со срезанием углов по качеству, но оказалось, что потом себе дороже. У нас баги в проде довольно дорого стоят и расмотрев на ретроспективе пришли к выводу что лучше бы фичу отложили но выпустили качественно

Наверняка есть такие люди, которые бесятся от любого несоответствия прикидки и реальности. Интересно, что вы даже не допускаете существования людей, которые относятся к прикидкам не так как вы.

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

После нескольких спринтов новичок понимает, что можно не успевать найстухев и все ок и не особо парится.

Ну бывают иногда гиперответственные которые парятся на любое несоответствие реальности картине мира.

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

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность