@JSlang

Страница 265 из 2237
Aleh
30.10.2016
21:20:36
что лол

[Anonymous]
30.10.2016
21:20:54
прототипы, это же тоже классы

Sergey
30.10.2016
21:20:54
модуль - объект. То что он экспоузит - его интерфейс. То чно внутри - состояние инкапсулированное и детали

[Anonymous]
30.10.2016
21:21:00
наследование

Google
Sergey
30.10.2016
21:21:07
наследование не нужно)

Aleh
30.10.2016
21:21:12
наследование механизм обмана системы типов

епт

Sergey
30.10.2016
21:21:15
в динамически то типизированном языке

Дмитрий
30.10.2016
21:21:32
Наследование — это механизм, чтобы ломать инкапсуляцию

Aleh
30.10.2016
21:21:40
это все протектед

Дмитрий
30.10.2016
21:21:46
в динамически то типизированном языке
Потому что у нас прототипы

Aleh
30.10.2016
21:21:47
без него норм

Sergey
30.10.2016
21:22:14
@ZeroBias а какая разница? вон erlang - там тупо функции но он крайне близок к тому что Алан Кей закладывал в термин ООП

@ZeroBias вообще нет. protected это механизм для ломания инкапсуляции. Его добавили сильно позже потому что "процедурным сишникам" так захотелось

[Anonymous]
30.10.2016
21:22:40
наследование механизм обмана системы типов
не понимаю, как это мешает прототипному наследованию быть

Sergey
30.10.2016
21:23:02
@hihideaki а это не мешает. Прототипное наследование намного более гибкое

Google
Sergey
30.10.2016
21:23:22
@ZeroBias ну так в наследовании только protected ломает инкапсуляцию и больше ничего

Aleh
30.10.2016
21:23:40
+

Sergey
30.10.2016
21:23:55
наследование - это просто возможность объявлять новые типы

и если бы все соблюдали принцип подстановки старушки Барбары, было бы норм

и если бы extends убрали

95% задач где использут extends можно легко и просто заменить на implements и композицию.

Aleh
30.10.2016
21:24:39
тогда бы сделали плагин для бабеля еще один

который добавляет(

Дмитрий
30.10.2016
21:24:51
и если бы extends убрали
Ну так не пользуйся им, какие проблемы)

Sergey
30.10.2016
21:24:54
ну это тупые необразованные массы

так я и не использую

почти

Aleh
30.10.2016
21:25:17
инфраструктура ж(

Sergey
30.10.2016
21:25:20
точно так же как в твоем функциональном коде иногда появляется стэйт

у меня иногда появляются наследники классов

[Anonymous]
30.10.2016
21:25:32
вот ты создаешь приложение у тебя две сущности, у них 90% похожего. без наследования тебе придется отказываться от чего-то, вероятно полезного.

Aleh
30.10.2016
21:25:43
композиция?

Sergey
30.10.2016
21:25:51
композиция)

Aleh
30.10.2016
21:25:55
и интрефейсы

Google
Sergey
30.10.2016
21:26:03
просто с синтаксисом той же джавы это не удобно

тут соглашусь

Sergey
30.10.2016
21:26:27
вообще extends придумали что бы экономить память

> State monad норм ? я их называю разновидностью объектов)

Aleh
30.10.2016
21:26:41
State monad норм ?
ну ты же ей не каждую свою функцию обмазываешь)

Sergey
30.10.2016
21:27:33
вообще... был такой язык... lisp. Функциональнее некуда. Но с практической точки зрения туда добавили возможность процедурщину делать. Тупо потому что "памяти не хватит" и с внешним миром надо как-то работать. Процедурное взаимодействие с внешним миром и функционально чистая логика

@hihideaki нет, композиция позволяет тебе DRYить код

Дмитрий
30.10.2016
21:28:00
[Anonymous]
30.10.2016
21:28:00
подскажи где почитать про композицию

и как гуглить такое

[Anonymous]
30.10.2016
21:28:12
чтобы в точку

Sergey
30.10.2016
21:28:13
@hihideaki я говорю о 70-х, вспомни сколько килобайт памяти в те времена стоил?)

Sergey
30.10.2016
21:28:46
@xamgore без синтаксиса!

Aleh
30.10.2016
21:28:48
подскажи где почитать про композицию
https://en.wikipedia.org/wiki/Composition_over_inheritance

Дмитрий
30.10.2016
21:28:50
FORTH

Sergey
30.10.2016
21:29:01
www.javaworld.com/article/2073649/core-java/why-extends-is-evil.html

Google
Sergey
30.10.2016
21:29:10
вот тут хорошо проблема наследования в ООП описана

[Anonymous]
30.10.2016
21:29:20
@hihideaki я говорю о 70-х, вспомни сколько килобайт памяти в те времена стоил?)
ну Бритву Окама не в программировании придумали и не для экономии памяти, а для экономии мозгов

Sergey
30.10.2016
21:29:20
что мол "это не ооп други, ООП не про наследование"

@hihideaki бритва окама придумана филосафами как один из инструментов (есть еще другие бритвы) дабы срезать ими до истины

Дмитрий
30.10.2016
21:30:30
Надо отдать должное, холиваришь ты лихо, я уже не улавливаю нити беседы ?

Sergey
30.10.2016
21:30:40
есть еще бритва Хэнлона

она как раз про C++

[Anonymous]
30.10.2016
21:30:55
Sergey
30.10.2016
21:31:15
@hihideaki бритвы ты упомянул. И я все еще не понял к чему ты это

Admin
ERROR: S client not available

[Anonymous]
30.10.2016
21:31:45
@hihideaki бритвы ты упомянул. И я все еще не понял к чему ты это
ну это самый яркий пример из жизни, принципа DRY, разве нет?

Sergey
30.10.2016
21:31:59
@hihideaki нет.

Aleh
30.10.2016
21:32:25
DRY не про код, а про смысл

Sergey
30.10.2016
21:32:45
дублирование логики != множить сущности

сущности у нас остаются те же просто в разных местах повторяются

[Anonymous]
30.10.2016
21:33:22
дублирование == множить сущности

Sergey
30.10.2016
21:33:43
@hihideaki нет. У тебя одна и та же сущность, просто их много. А бритва окама о том что ты приплетаешь НОВЫЕ сущности

что бы обосновать какой-то факт

и повторюсь - композиция

[Anonymous]
30.10.2016
21:34:17
не вижу разницы, извини

Google
Sergey
30.10.2016
21:34:22
я думаю ты прекрасно знаешь что такое композиция функций

то же и с объектами

никакого дублирования логики

никакого наследования классов - лишь наследование типов

вообще... ладно

закругляясь скажу - есть такое мнение (и его высказывают бородатые дядьки, которые стояли у истоков ООП), что нужно просто забить на ООП. Скажем... выдумать что-то новое, трендовое, с теми же идеями но чуть чуть по другому

переучивать людей всеравно бесполезно

Aleh
30.10.2016
21:37:10
типа как mvc и flux?)

Sergey
30.10.2016
21:37:17
вот только хотел написать)

ну сработало же)

теперь у всех однонаправленный поток данных

прям как в MVC 70-х годов)

Aleh
30.10.2016
21:38:02
где-то Тругве взгруснул)

Sergey
30.10.2016
21:39:00
Тругве не грустит. На FWdays чувак одну из его идей описывал. Люди не поняли... я к слову тоже. Про контекстно-зависимые объекты, у которых интерфейс адаптируется под контекст

тип для задач с нетривиальной логикой

надо бы к слову почитать еще раз и разобраться

а по функциональщине... никогда не забуду у нас в минске конфу... все было весело, и вот один доклад... тип "вы не знаете теорию категорий - вы говно"

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

а то понаридумывали монад

ладно... надо дела делать. А то тут народ походу на холивары не падкий

Дмитрий
30.10.2016
21:59:06
Да ты просто с козырей зашёл, всех раскидал ваще, похоливаришь тут ?

[Anonymous]
30.10.2016
21:59:55
почитал про композиция, действительно очень просто и соблюдает dry

Страница 265 из 2237