
Sergey
22.06.2018
11:28:14
но мы пишем на php

Artem
22.06.2018
11:28:20

Bohdan
22.06.2018
11:28:58
структурку

Google

Sergey
22.06.2018
11:29:40
ну да, я говорил только про случаи когда ты начинаешь думать стоит ли строку заворачивать в объект
когда составные все проще

Artem
22.06.2018
11:30:33
понятно, но это, мне кажется, не то чтобы прямо таки супер обязательная фича

Bohdan
22.06.2018
11:31:05
и его выразительность

Artem
22.06.2018
11:33:13
просто из таких фич складывается удобство пользования языком
да, пожалуй. Правда одновременно растёт сложность. Добавляется новый синтаксис и потом надо человеку объяснить "Зачем это?". Появляются чисто технически возможности использовать синтаксические конструкции не для того, как они были задуманы. Правда не уверен, что это хороший аргумент

Sergey
22.06.2018
11:33:15
маленькая фича там, маленькая фича здесь... статический анализ, вывод типов

Bohdan
22.06.2018
11:33:37

Sergey
22.06.2018
11:33:53

Bohdan
22.06.2018
11:34:03
человек, который не может проанализировать и понять, что есть хорошо, а что есть плохо - плохой программист
то же самое касается и людей, которые не хотят учиться

Sergey
22.06.2018
11:34:11
extract($data);
if ($foo) {
вот такие штуки намного более "сложные" во всех смыслах

Artem
22.06.2018
11:35:09

Google

Sergey
22.06.2018
11:35:18
или там
array_map(static function ($value, $key) {
return "$key: $value";
}, $arr, array_keys($arr));

Bohdan
22.06.2018
11:35:22
вот именно

Artem
22.06.2018
11:35:25
ну и есть сложнее наверняка

Bohdan
22.06.2018
11:35:29
суть в том, что ты его плохо знаешь
это не плохо и не хорошо

Artem
22.06.2018
11:36:00

Sergey
22.06.2018
11:36:43

Bohdan
22.06.2018
11:36:48
просто это факт, определяющий твое отношение к синтаксису
мне вон тоже синтаксис го или питона нравится больше
хотя в го каналы первое время выглядят странно, инициализация структур тоже своеобразная
в питоне вон вообще списочные выражения
там черт ногу сломит, хотя штука гуд

Sergey
22.06.2018
11:38:09
питон синтаксически сильно ограничивает в том какую грязь можно разводить, но я видел код на питоне такой, что просто пиздец. Так что в целом всегда найдется тот кто сделает говно

Bohdan
22.06.2018
11:38:32

Sergey
22.06.2018
11:39:05
вообще привычка это очень сильная штука. привык ты на сиподобных языках писать а потом кричишь что лисп какой нечитабельное говно
зато в лиспе можно написать (+ 1 2 3) вместо 1 + 2 + 3
добавить к этому еще какие-нибудь прикольные фичи связанные со списками и того и глядишь из комбинации маленьких штук родится что-то интересное

Bohdan
22.06.2018
11:40:12
когнитивные искажения, именно

Mykola
22.06.2018
12:14:44
Есть ли где-то мануал по подключению к mssql ?

Sergey
22.06.2018
12:27:10
p.s. если что - за вопросы, ответ на которых выдается в первых трех результатах выдачи гугла, мы иногда баним

Bohdan
22.06.2018
12:28:35
а иногда нет
может завести бота-револьвер? "крутите барабан"

Google

F01134H
22.06.2018
12:31:07
русская рулетка, кто проиграл - пермабан

Bohdan
22.06.2018
12:39:54
ну или кубик
6 - бан, 3, 4 и 5 - РО на день, два и три

F01134H
22.06.2018
12:42:30
народ
public function make(string $ip, int $port) : self
{
return new self;
}
в интерфейсе получается нельзя self указать для тайпхинтинга?
а, туплю, пардонъ
static забыл
а хотя не, все равно нельзя. Печаль

Sergey
22.06.2018
12:44:56

F01134H
22.06.2018
12:45:22
нельзя, ругается что несоответствует декларации
что логично, в интерфейсе self другой класс

Bohdan
22.06.2018
12:45:45
можно, делаю

F01134H
22.06.2018
12:46:02
меня пхпшторм вводит в заблуждение или что?

Anton
22.06.2018
12:46:25
что у тебя внутри интерфейса?

F01134H
22.06.2018
12:46:29

Anton
22.06.2018
12:46:32
тоже make () : self ?

F01134H
22.06.2018
12:46:38
ага

Bohdan
22.06.2018
12:46:47

F01134H
22.06.2018
12:48:04

Bohdan
22.06.2018
12:48:15
нет, все ок

Google

F01134H
22.06.2018
12:48:20
а в интерфейсе что?

Admin
ERROR: S client not available

Bohdan
22.06.2018
12:48:21
много где такое юзаю
интерфейса нет

F01134H
22.06.2018
12:48:33
гхм

Bohdan
22.06.2018
12:48:42
угу, сорри, не совсем релевантно

F01134H
22.06.2018
12:48:43
тогда это не тот же самый кейс
помню читал что то про это, у этой фичи даже название есть, но не помню какое
в некоторых языках можно так делать, а в пхп видимо нельзя

Anton
22.06.2018
12:49:48
self -- транслируется в название класса. в контексте которого используется

F01134H
22.06.2018
12:50:25
уже нашел как можно решить
interface iFoo
{
public function bar (string $baz) : iFoo;
}
class Foo implements iFoo
{
public function bar (string $baz) : Foo {...}
}

Anton
22.06.2018
12:50:32
ок

Bohdan
22.06.2018
12:54:00
работает, вполне по lsp

F01134H
22.06.2018
12:54:01
ага
уже нашел этот косяк)

Bohdan
22.06.2018
12:54:14
не работает?

F01134H
22.06.2018
12:54:17
не)
надо интерфейс указывать

Google

Bohdan
22.06.2018
12:55:32
а, там еще с ковариантностью/контрвариантностью вроде что-то...

F01134H
22.06.2018
12:56:35
ага
как ты собрался угол задавать, если это линия?
типо берешь такой, вычисляешь угол, рисуешь по нужному вектору линию
кек
тебе формула нужна, что бы высчитать координаты для линии, что бы она была под заданным углом
це вообще не про пхп)

Vitaly
22.06.2018
13:28:29

Vlad
22.06.2018
14:16:36
в ларке Explicit Binding в мидлваре достать можно?
$request->route()->parameter('document')