Обновить
25
0
ApeCoder@ApeCoder

Разработчик

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

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


Во втором случае, правда, это не совсем велосипед.


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

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

Я просто пытался избавиться от древнегреческого заимствования в вашей фразе

Если нужен второй спец, а есть уже один со своей технологией то как искать?

аналоги

Вы хотели сказать "подобия"?

Cоздайте, только, чтобы вот это так же работало:

Ой, это не также. [] — это стандартный литерал для массива в typescript а вам приходится делать что-то специальное. Часть с тайпгардом не реализована.

Подсказка: вот это — стандартный литерал для массива.


[1, 2];

В TS вы можете стандартный массив попробовать привести этому типу.


И вот тут идет речь про стандартный массив:


if (isNonEmptyArray(bar)) {
    needNonEmpty(bar); // okay
} else {
    needEmpty(bar); // error!! urgh, do you care?        
}

Внутри If у переменной bar уточняется тип до NonEmpty а внутри else — стандартный массив

Создайте, только, чтобы вот это так же работало:


type NonEmptyArray<T> = [T, ...T[]];

const okay: NonEmptyArray<number> = [1, 2];
const alsoOkay: NonEmptyArray<number> = [1];
const err: NonEmptyArray<number> = []; // error!

if (isNonEmptyArray(bar)) {
    needNonEmpty(bar); // okay
} else {
    needEmpty(bar); // error!! urgh, do you care?        
} 

контексте самого произвольного вектора без создания сторонних типов.

Как только вы описываете концепцию вектора с некоторым условием, воспринимаемую системой типов вы создаете новый тип на основе верктора, возможно, неименованный.

В тайпскрипт, оказывается, тоже можно

Мне думается еще чем опаснее, тем больше усилий тратится на борьбу (например, у симптомного бошльше шансов попасть на карантин) => тем меньше возможностей размножиться. Интересно, насколько это влияет на эволюцию вируса.

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


Я не помню, чтобы кто-то из авторов книжек называл рефакторингом введения кеша. Так же стоит учитывать что оно находится в связи со словом factoring — декомпозиция, разбиение на кусочки.


Такое прочтение слова refactoring имеет ценность, так как рекомендуют отделять реструктуризацию кода от значимых изменений.


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

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

Я был неточен в определении.

Да, мне надо было скопипастить из википедии:


"Рефа́кторинг (англ. refactoring), или перепроектирование кода, переработка кода, равносильное преобразование алгоритмов — процесс изменения внутренней структуры программы, не затрагивающий её внешнего поведения "

Обычно в книжках по рефакторингу я видел "extract method" а не "introduce cache".

А что, серологический тест уже есть? Кто проводит? В википедии вот что:


A number of laboratories and companies are developing serological tests, which detect antibodies.[413] As of 6 April 2020, none of these has been proved sufficiently accurate to be approved for widespread use.[414] In the US a serological test developed by Cellex has been approved for emergency use by certified laboratories only.[415]
В процессе рефакторинга написал декоратор для репозитория валют, который кэширует результаты.

Это не рефакторинг а добавление новой фичи. Рефакторинг — это изменение структуры кода без изменения функциональности.

Вот тут аргументы в пользу локдауна:
https://www.washingtonpost.com/graphics/2020/world/corona-simulator/


Начиная с
Whoops! As health experts would expect, it proved impossible to completely seal off the sick population from the healthy.

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

Информация

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