Показать сообщение отдельно
Старый 04.07.2019, 14:07   #8
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,354
Написано 2,470 полезных сообщений
(для 6,850 пользователей)
Ответ: JS Замыкания vs глобальные переменные vs сборщик мусора (тупой вопрос))

Сообщение от EvilOkta Посмотреть сообщение
Идеологически мне не понятен смысл применения замыканий. Если как говорит Randomize - для контекстного деления кода на блоки, и по сути "эмуляции" private переменных так? Или это все словоблудие?
Инкапсуляция какбы. Разделение ответственности, модульность, вот зачем всё это. Да, ты можешь отказаться ото всяких "private"-подобных заморочек и в мелком проекте даже не сложно будет ориентироваться, пока количество связанных частей мало.

Сообщение от EvilOkta Посмотреть сообщение
В каких случаях замыкания применять полезнее чем другие способы?
Во всех. Принял данные внутрь своей процедуры, выдал результат, без затрагивания внешнего контекста и такой луковицей должна быть вся твоя программа. Каждый сабконтекст должен иметь доступ к тому лишь минимуму данных, которые ты сам ему предоставил. Это вопрос не уровня js, а в приницпе про программирование. Приёмы из блица, когда у тебя всё в глобалах остались в блице, там других вариантов зачастую просто не было.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Randomize за это полезное сообщение:
ABTOMAT (09.07.2019), ant0N (04.07.2019)