
Sergey
14.02.2017
12:12:04

Sergey
14.02.2017
12:12:34

Google

Sergey
14.02.2017
12:13:15

Sergey
14.02.2017
12:13:43

Paul
14.02.2017
12:13:56
в жсе есть интерфейсы?
Если ты про жавовые, то нет. И причем тут жс к трюизму о ненужности наследования данных?

Sergey
14.02.2017
12:13:57

Sergey
14.02.2017
12:14:25

Sergey
14.02.2017
12:15:09

Paul
14.02.2017
12:15:22
А babel на что?

Sergey
14.02.2017
12:15:29

Sergey
14.02.2017
12:15:38

Sergey
14.02.2017
12:15:41

Aleh
14.02.2017
12:15:54

Paul
14.02.2017
12:16:08

Юра В
14.02.2017
12:16:55
интерфейс как протокол

Google

Paul
14.02.2017
12:17:00

Sergey
14.02.2017
12:17:04
если нет то бобо

Aleh
14.02.2017
12:17:35
Вошло в es2015, но вроде были разговоры, чтобы выпилить
Я особо не помню

Sergey
14.02.2017
12:18:30
ну в общем то это конечно полезное новвовведение, но главное что не ломающее совместимость
что обычно самое больное

Aleh
14.02.2017
12:18:59
В es не ломают совместимость от слова совсем)
Если че

Sergey
14.02.2017
12:19:39
в общем без этого рыдать не будет никто сильно)

Paul
15.02.2017
05:43:01

Aleh
15.02.2017
13:26:32

Paul
15.02.2017
13:29:03
Как strict ломает старый код?
this == undefined вместо глобального объекта. В итоге нельзя strict-ить всякие moment.js, которые расчитывают на это
Ещё что this может быть примитивом тоже что-то поломать может теоретически (проверки на this)

Aleh
15.02.2017
13:33:55

Paul
15.02.2017
13:34:27

Aleh
15.02.2017
13:34:49
Ну разве что кто-то случайно написал "use strict" вначале когда-то

Paul
15.02.2017
13:35:21
Ну, возможно не совсем верно называть это ломанием, я не спорю.

Google

Paul
15.02.2017
13:35:26

Aleh
15.02.2017
13:36:07
угу.
Ну формально да, ломание)

Paul
15.02.2017
13:36:44
Ломание, если у кого-то в коде уже было просто так написано "use strict" наверху xd
Но вообще код по-разному отработает на ES6-движке и на ES5-движке.

Aleh
15.02.2017
13:37:10
Ага, очень мало вероятный кейс конечно)

Dov
15.02.2017
16:53:29
че пачаны кто на чем пилет?
о чем у вас тут вообще дискуссии?

Vitaly
15.02.2017
17:12:16
коротко: ругают ООП и боготворят ФП.
иногда наоборот, но это редко

Aleh
15.02.2017
17:22:17

da horsie
16.02.2017
03:21:21
http://blog.cleancoder.com/uncle-bob/2014/11/24/FPvsOO.html

?
16.02.2017
10:41:41
http://blog.cleancoder.com/uncle-bob/images/fpvsoo.jpg ))

Admin
ERROR: S client not available

Aleh
16.02.2017
10:46:41
слева должно быть objects
@fes0r по поводу видоса integrational tests are scum я тут все думаю над проблемой: если мы меняем интерфейс контракт где-то внутри приложения, то тяжело понять или даже просто найти все места, где надо внести изменения, тесты ведь останутся все зелеными

Hell
16.02.2017
17:57:00
я сегодня стал свидетелем того, как фирма потеряла неколько миллионов евро из-за того, что метод объекта нарушил принцип SRP (содержал "псевдо-Boolean" параметр)

first
16.02.2017
17:58:27
прикольно
как случилось?

Vitaly
16.02.2017
17:58:59
без подробностей скучно

Sergey
16.02.2017
18:00:13
Как измеряли потери?

Google

Hell
16.02.2017
18:02:40
https://git.io/vDSsa
Вот из-за этотго
этот метод выполняет две СОВЕРШЕННО РАЗНЫЕ ОПЕРАЦИИ

Aleh
16.02.2017
18:04:58
https://github.com/OXIDprojects/oxid-ce-hot-offer/blob/d1cdcd8a063fc1801a53036372aa968c5a081133/core/oxuser.php#L1349
лол

Hell
16.02.2017
18:05:35
но об этом умалчивается в PHPDoc. Тут еще один анти-паттерн - устаревший комментарий, не соответсвующий действительности.
найдите вторую фунцкию без знания фреймворка

Aleh
16.02.2017
18:07:36
по мне так весь класс пример того, как не надо делать

Hell
16.02.2017
18:08:03
This is Enterprise!

Aleh
16.02.2017
18:08:24
https://github.com/OXIDprojects/oxid-ce-hot-offer/blob/d1cdcd8a063fc1801a53036372aa968c5a081133/core/oxuser.php#L784
https://github.com/OXIDprojects/oxid-ce-hot-offer/blob/d1cdcd8a063fc1801a53036372aa968c5a081133/core/oxuser.php#L832

Hell
16.02.2017
18:09:06
так что делает вторая фунцкия метода? И в чем она заключается? И где там тот парамтер - разделитель функцинала?

Aleh
16.02.2017
18:10:32

Hell
16.02.2017
18:10:48
https://git.io/vDSZc
вот он разделитель

Rodion
16.02.2017
18:11:24
необходимо всегда явно проверять значение, заодно и тип его