Size: a a a

Angular - русскоговорящее сообщество

2020 May 29

ПП

Павел П in Angular - русскоговорящее сообщество
san shan
Инкапсуляция не исключает геттеры и сеттеры. В javascript это нормально.
Это шутка
источник

ss

san shan in Angular - русскоговорящее сообщество
Павел П
Это шутка
Я пока не дорос)
источник

ПП

Павел П in Angular - русскоговорящее сообщество
Эрик Поуль
зачем нужно чтобы метод каждый раз вызывался в темплейте при чендждетекшене?
Вообще не понял, в чём вы здесь видите проблему
источник

ЭП

Эрик Поуль in Angular - русскоговорящее сообщество
Павел П
Вообще не понял, в чём вы здесь видите проблему
Почему вызов функции на каждом ченждетекшене лучше чем пайп или синтаксический сахар, который закеширует вызов функции и она отстрелит только на изменении входного аргумента?
источник

S

Smooth Operator in Angular - русскоговорящее сообщество
Ekaterina
А напомните аргументацию парой фраз пожалуйста
они скрывают логику и ухудшают семантику кода
источник

ПП

Павел П in Angular - русскоговорящее сообщество
Эрик Поуль
Почему вызов функции на каждом ченждетекшене лучше чем пайп или синтаксический сахар, который закеширует вызов функции и она отстрелит только на изменении входного аргумента?
Можно в методе закешировать и сделать хеш-функцию себе. Можно декоратор накалякать и поголовно делать методы кешируемыми. Можно юзать статик функции сервайсов и накинуть на них кешируемый декоратор. Зачем сюда ещё и возможность с пайпами, у меня и так с 20 вариантов решения задачи, я не могу определиться, что красивее
источник

E

Ekaterina in Angular - русскоговорящее сообщество
Smooth Operator
они скрывают логику и ухудшают семантику кода
Спасибо :)
источник

S

Smooth Operator in Angular - русскоговорящее сообщество
Smooth Operator
они скрывают логику и ухудшают семантику кода
а еще, если используются в шаблоне
то перерасчитываются на каждый ченж детекшен
источник

ПП

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

ЭП

Эрик Поуль in Angular - русскоговорящее сообщество
Павел П
Можно в методе закешировать и сделать хеш-функцию себе. Можно декоратор накалякать и поголовно делать методы кешируемыми. Можно юзать статик функции сервайсов и накинуть на них кешируемый декоратор. Зачем сюда ещё и возможность с пайпами, у меня и так с 20 вариантов решения задачи, я не могу определиться, что красивее
Так декоратор тот же сахар. И зачем писать везде кэширование. А сахар с пайпом даёт возможность писать в одном стиле темплейт
источник

ПП

Павел П in Angular - русскоговорящее сообщество
Не говоря уже про возможность изменения реализации при необходимости, не изменяя внешние интерфейсы
источник

E

Ekaterina in Angular - русскоговорящее сообщество
Smooth Operator
а еще, если используются в шаблоне
то перерасчитываются на каждый ченж детекшен
Иногда это и надо. Но согласна, что стоит об этом помнить и стараться минимизировать
источник

ЭП

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

ПП

Павел П in Angular - русскоговорящее сообщество
Эрик Поуль
Так декоратор тот же сахар. И зачем писать везде кэширование. А сахар с пайпом даёт возможность писать в одном стиле темплейт
Те кому нужен такой пайп, уже написали такой пайп. Это просто реализация частного случая, вводить это в стандарт - не вижу смысла, если нужно - реализуй сам или скопируй код с инета
источник

ЭП

Эрик Поуль in Angular - русскоговорящее сообщество
Павел П
Те кому нужен такой пайп, уже написали такой пайп. Это просто реализация частного случая, вводить это в стандарт - не вижу смысла, если нужно - реализуй сам или скопируй код с инета
Это довольно частый случай, и лучше чтобы это был стандарт, а не разновидности своих велосипедов на разных проектах
источник

ПП

Павел П in Angular - русскоговорящее сообщество
Эрик Поуль
Это довольно частый случай, и лучше чтобы это был стандарт, а не разновидности своих велосипедов на разных проектах
Ты же понимаешь, что из подобной штуки, начнут пилить ужасающие костыли?
источник

ПП

Павел П in Angular - русскоговорящее сообщество
Я против того, чтобы у них была такая возможность по дефоулту
источник

ЭП

Эрик Поуль in Angular - русскоговорящее сообщество
Павел П
Ты же понимаешь, что из подобной штуки, начнут пилить ужасающие костыли?
А ты понимаешь что и сейчас пишут фигню, не думая о том как отработает изменение?
источник

S

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

ЭП

Эрик Поуль in Angular - русскоговорящее сообщество
Лучше чтобы была возможность и изначально работало без лишних вызовов
источник