@oop_ru

Страница 706 из 785
Max
26.07.2018
11:20:13
https://habr.com/company/piter/blog/418157/ ох как тут подгорело...

>> Это же тот мракобес, который любую проблему решает еще одним декоратором:

Roman
26.07.2018
11:25:56
new If() неплохо...

Google
code4aman
26.07.2018
11:35:59
https://habr.com/company/piter/blog/418157/ ох как тут подгорело...
Комментарии топ: ФПшники: лол, ООП головного мозга! ООПшники: лол, поехавший ФПшник)

Sergey
26.07.2018
11:41:27
new If() неплохо...
в смолтаке if-ы были методами объектов и никто не ныл

даже ФП-никам бы понравилось (ибо нет управляющих структур - есть функции))

Roman
26.07.2018
11:42:27
ну это же не смолтолк

в джаве это зачем

Sergey
26.07.2018
11:43:00
просто так)

потому что Егор упорот

Roman
26.07.2018
11:43:36
потому что Егор упорот
ну я как то так и представлял =))

Aleh
26.07.2018
11:50:33
в джаве это зачем
чтобы и эти конструкции были полимофрны

а еще представь, что был бы единый интерфейс работы. Зачем тебе булево значение, если может быть объект с каким-нибудь методом аля then

и такой же метод например у futures с такой же сигнатурой, а еще у какого-нибудь either

теперь не надо выдумывать хитрые правила приведения к булу в if(), теперь у тебя есть просто метод и если хочешь, чтобы и твой объект можно было так использовать - делаешь ему метод then с такой же сигнатурой

Roman
26.07.2018
11:56:12
Google
Mykola
26.07.2018
13:40:41
мдя... днище)

Aleh
26.07.2018
13:41:21
если по аналогии с js синтаксисом, то было бы чето типа true.then(() => 1, () => 2) false.then(() => 1, () => 2)

Sergey
26.07.2018
13:43:52
if(condition).then(success, faiture)

Aleh
26.07.2018
13:44:06
if лишний тут)

Sergey
26.07.2018
13:44:20
почему?)

хз мне лень читать о чем вы

Aleh
26.07.2018
13:44:32
condition.then(success, failure)

Sergey
26.07.2018
13:44:45
а ну да

логично

Mykola
26.07.2018
13:49:30
как всегда, афтар пишет "синглтон это плохо нет прощения сразу в ад", и не обьясняет почему плохо то

апологет собственного мнения)

Борис
26.07.2018
14:22:42
Гребаные математики, не доказали что две прямые на плоскости могут пересечься только в одной точке. Апологет собственного мнения

Борис
26.07.2018
14:29:00
ты точно не пропустил слов в моем предложении?

Nikolay
26.07.2018
16:14:30
https://habr.com/company/piter/blog/418157/ ох как тут подгорело...
не особо вчитывался, но показалось что автор просто решил написать свой лисп на джаве. Не понятно зачем, ведь уже есть Clojure

Igor
26.07.2018
16:18:07
Что была стат. типизация ?

Sergei
26.07.2018
19:27:42
автокомплит гугла не глобален, а на основе того что ты искал в нём раньше

Aleh
26.07.2018
19:29:02
Что была стат. типизация ?
но уже есть хаскель

Sergei
26.07.2018
19:30:11
не особо вчитывался, но показалось что автор просто решил написать свой лисп на джаве. Не понятно зачем, ведь уже есть Clojure
Книгу не читал пока, но из его докладов и статей на сайте почерпнул много чего полезного. Конечно я не со всем согласен но примерно так на 60-70%

Google
ivan
27.07.2018
03:48:17


Andrey
27.07.2018
03:49:21
Бугаенко одобряет.

Ilia
27.07.2018
06:43:03
Зато все понятно!

Sergey
27.07.2018
07:54:12
вот что только люди не делают лишь бы функции не писать

ivan
27.07.2018
07:54:55
Bohdan
27.07.2018
07:55:02
Sergey
27.07.2018
07:55:39
можно functions) я не против)
ну и судя по названию random string с понятием абстракции мы не знакомы

Sergey
27.07.2018
07:57:47
а в чем проблема?
а, точняк, в php-ж параметризованные типы это что-то дикое и не нужное.... Я к тому что если тебе надо достать рандомный элемент из списка тебе не надо знать тип элементов списка

иначе тебе придется делать всякие RandomInt, RandomBool, etc

Denis
27.07.2018
07:59:16
вот что только люди не делают лишь бы функции не писать
Просто в ООП языках ты иначе не можешь гарантировать что твою строку не будут неправильно юзать

Sergey
27.07.2018
07:59:49
Denis
27.07.2018
08:00:12
Ну там где нет алгебраичных типов данных

Sergey
27.07.2018
08:00:41
в phpdoc можно описать)

в php конкретно проблема еще в том что люди почему-то думают что типы должны в рантайме проверяться

(и по этой причине нету у тебя дженериков там, потому что оч большая нагрузка на рантайм))

Google
ivan
27.07.2018
08:02:31
в phpdoc можно описать)
Это вариант. Но я пошел другим путем. И один раз пишу класс RandomString и всегда его юзаю. А можно везде юзать 1н класс RandomElement (или фцию) и везде прописывать доку.

Sergey
27.07.2018
08:02:49
отрой для себя psalm

/** * @psalm-template T * @psalm-param T[] $list * @psalm-return T */ function randomElement(iterable $list) { }

Admin
ERROR: S client not available

Sergey
27.07.2018
08:04:51
а лучше попробуй какой-нибудь функциональный язык. Даже тот же typescript, что бы не особо переучиваться и что бы профит был

ivan
27.07.2018
08:06:04
а лучше попробуй какой-нибудь функциональный язык. Даже тот же typescript, что бы не особо переучиваться и что бы профит был
На котлине пишу иногда) psalm юзал, но: или psalm или phpstorm inspection необходимо выбрать что-то одно - и это для меня трабла.

Sergey
27.07.2018
08:06:12
это тоже

Denis
27.07.2018
08:06:14
Да есть же вроде Flow для пхп

Sergey
27.07.2018
08:06:29
есть yay который позволяет тебе добавить в php все необходимое для описания типов, можно научить psalm это дело понимать и лучше типы выводить

но объемы работы астрономические

ivan
27.07.2018
08:08:35


Инспекция написана на kotlin для php Все публичные методы должны быть описаны в интерфейсе.

Ivan
27.07.2018
08:09:26
что это за редактор такой интересный?

Sergey
27.07.2018
08:09:31
ivan
27.07.2018
08:09:48
https://carbon.now.sh/

ivan
27.07.2018
08:10:39
ну в чем проблема это же на php для psalm написать? проще ж
Если бы я один принимал решение psalm vs phpstorm - тогда было бы проще)

Google
ivan
27.07.2018
08:10:54
но DSL приятный
то есть этот код норм? :)

Sergey
27.07.2018
08:11:37
то есть этот код норм? :)
да, вполне. Там же нет new

ivan
27.07.2018
08:11:41
))

в kotlin нету new ))

Sergey
27.07.2018
08:12:59
в kotlin нету new ))
я вкурсе) я к тому что с целью имутабельность делать это норм. У тебя ж там не совсем как в примере с рандом стринг - там у тебя описание правил меняется

Sergey
27.07.2018
08:15:09
понимаю, я как бы треть времени на typescript пишу

ivan
27.07.2018
08:17:30
Все это я вел к тому Егор норм чувак. У него много фантастических идей, но я для себя вынес определенные идеи и начал лучше писать код.

https://www.youtube.com/watch?v=AshxbePAbCM веселый и прикольный батл))

Sergey
27.07.2018
08:23:01
Все это я вел к тому Егор норм чувак. У него много фантастических идей, но я для себя вынес определенные идеи и начал лучше писать код.
у него просто такая стратегия донесения инфы. иногда она работает, а вот когда он на SOLID накидывал было смешно смотреть как он понятия подменяет

занятно что он интервьировал Дэвида Вэста, но не интервьюировал Алана Кея. Случай когда Алан случайно зашел в комменты в его блог не всчет

https://www.yegor256.com/2017/12/12/alan-kay-was-wrong.html - вот тут в комментиках Алан рассказывает в своей манере что такое ООП)

ivan
27.07.2018
08:25:55
я не супер догоняю SOLID, но для меня Single Responsibility основная фишка декораторов и всей парадигмы которую пропагандирует Егор

Sergey
27.07.2018
08:28:39

Страница 706 из 785