
Sergey
15.01.2017
22:46:02
и делай как хочешь
в моем же случае почти вся логика лежит прямо в сущностях
есть отдельные сервисы, которые через дабл диспатч в сущности передаются
если надо выделять какую-то логику или операцию

Google

Sergey
15.01.2017
22:47:11
p.s. ты ж читал Эванса?

da horsie
15.01.2017
22:47:24
видимо нет

Sergey
15.01.2017
22:47:31
ну мол что бы понять что по части терминологии нет путаницы
что "сущности" это не специфичный какой-то для ORM термин
видимо нет
Эрик Эванс - предметно ориентированное проектирование
почитай, годная книжка

da horsie
15.01.2017
22:49:06
DDD которая?

Sergey
15.01.2017
22:49:13
да

da horsie
15.01.2017
22:49:46
https://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215
оно?

Sergey
15.01.2017
22:49:55
да

da horsie
15.01.2017
22:50:01
спасибо
наших прибыло

Google

Pavel
16.01.2017
03:07:15
Игого =)

f4rt~
16.01.2017
03:17:47
?

Dumitru
16.01.2017
07:46:10
С подключением!

Alex Фэils?︙
16.01.2017
07:46:40
Прив, спс)

F01134H
16.01.2017
14:20:00
О, Квися

Quiss
16.01.2017
14:20:02
f4rt~, [16.01.17 17:16]
@Quiss
в ООП больше девушек)
это правда?

F01134H
16.01.2017
14:20:33
хахах

f4rt~
16.01.2017
14:21:07
Переманил еще одного на темную сторону силы

F01134H
16.01.2017
14:21:22
Он ща узнает, что не правда, и выйдет

Quiss
16.01.2017
14:21:25
+1
я уже список участников пролистал

Sergey
16.01.2017
14:21:35
Olha перекличка

Quiss
16.01.2017
14:22:06
так Olha есть и в пхп чатике
она уже не интересна

f4rt~
16.01.2017
14:22:10

Quiss
16.01.2017
14:22:19

f4rt~
16.01.2017
14:22:25

?
16.01.2017
14:22:30
/yazaban

Quiss
16.01.2017
14:22:34
ок, ок, сам ливну

Google

Quiss
16.01.2017
14:22:40
се равно тут скучно

f4rt~
16.01.2017
14:22:55
просто слишком сложный чатик для тебя

Denis
16.01.2017
14:45:44
Слишком много пхпшников в этом чате)

Sergey
16.01.2017
15:35:28

Sergey
16.01.2017
15:35:52
?
взял?

Роман
16.01.2017
15:36:04
Наверное нет. ?

f4rt~
16.01.2017
15:36:08

Sergey
16.01.2017
15:36:48
?
нуууу.... так вышло что он офер не принял

f4rt~
16.01.2017
15:36:59
привередливый какой

Sergey
16.01.2017
15:37:13
там были нюансы, мы через месяца 4 пожалели что так вышло

f4rt~
16.01.2017
15:37:41
а ты часто в Киеве выступаешь?

Sergey
16.01.2017
15:58:42
нет)

Роман
16.01.2017
16:58:32
Написал небольшой класс [ http://pastebin.ru/mX3xsEnW ], в качестве обучения.
Есть несколько вопросов:
1. Уместно ли здесь использование static? Чтобы не создавать каждый раз объект для кодирования/декодирования json.
2. Какие коды ошибок приемлемо указывать для Exception? Есть какие-то стандарты или зависит от разработичка?
Хотелось бы услышать какие минусы присутствуют, что можно улучшить? И вообще у меня сомнения в правильности использования исключений.
try {
JSON::decode(file_get_contents('config.json'));
} catch (Exception $e) {
echo $e->getMessage() . "\n";
}
разработчика*

F01134H
16.01.2017
16:59:38
юзать array() в 2017 - вот это точно ошибка)

Роман
16.01.2017
16:59:53
А что лучше?

F01134H
16.01.2017
16:59:55
а вообще, я рад, что я тут не единственный нуб

Google

Роман
16.01.2017
17:00:03
[]?
Ну это привычка. Никак не привыкну.

Aleh
16.01.2017
17:00:33

Роман
16.01.2017
17:00:33
А в чём нубство? В вопросах или в коде?
Так а как же автолоад и т.д.?

Admin
ERROR: S client not available

Роман
16.01.2017
17:00:56
Каждый раз подулючать функции?

Aleh
16.01.2017
17:01:10
в composer.json через files указываешь
по-моему такой класс был в yii1, только там он был потому, что json_encode/decode в 5.2 появились, а он типа раньше

Роман
16.01.2017
17:02:25
Опять же функций три и + массив с ошибками. И-за этого собственно и решил в класс запихать.
Обычный json_decode не устраивает информативностью.

F01134H
16.01.2017
17:03:22
имхо, для обучения лучше всего писать какие-нибудь алгоритмы

Rodion
16.01.2017
17:03:24
это не повод

F01134H
16.01.2017
17:03:37
2 в 1

Sergey
16.01.2017
17:04:25
function json_decode($json, $assoc = false, $depth = 512, $options = 0)
{
$data = \json_decode($json, $assoc, $depth, $options);
if (JSON_ERROR_NONE !== json_last_error()) {
throw new \InvalidArgumentException(
'json_decode error: ' . json_last_error_msg());
}
return $data;
}

Роман
16.01.2017
17:04:26
Обучение ООП я имею ввиду, а алгоритмы по ситуации же. А тут насущный вопрос появился.

Sergey
16.01.2017
17:04:32
function json_encode($value, $options = 0, $depth = 512)
{
$json = \json_encode($value, $options, $depth);
if (JSON_ERROR_NONE !== json_last_error()) {
throw new \InvalidArgumentException(
'json_encode error: ' . json_last_error_msg());
}
return $json;
}
не благодари

Rodion
16.01.2017
17:04:44
Название класса не отображает действительности

Aleh
16.01.2017
17:04:58

Google

Aleh
16.01.2017
17:05:23
а в целом обертка для эксепшенов норм или почти норм
но у @Enleur получше)

Роман
16.01.2017
17:05:39
Да, кстати, самому смешно, от ООП тут ничего нету.

Sergey
16.01.2017
17:05:40

Роман
16.01.2017
17:06:09
А для декод будет дублирование получается.
С эксепшинами.

Rodion
16.01.2017
17:07:30
это набор функций с областью видимости в виде класса

Роман
16.01.2017
17:07:46
А json_last_error_msg возвращает те же сообщения что и json_last_error?
Те же что в документации к json_last_error? *

Rodion
16.01.2017
17:08:47
где стикеры с Y.B.?)

Роман
16.01.2017
17:09:57

Rodion
16.01.2017
17:10:15
я всем

Sergey
16.01.2017
17:10:18
if (!function_exists('json_last_error_msg')) {
function json_last_error_msg() {
static $ERRORS = array(
JSON_ERROR_NONE => 'No error',
JSON_ERROR_DEPTH => 'Maximum stack depth exceeded',
JSON_ERROR_STATE_MISMATCH => 'State mismatch (invalid or malformed JSON)',
JSON_ERROR_CTRL_CHAR => 'Control character error, possibly incorrectly encoded',
JSON_ERROR_SYNTAX => 'Syntax error',
JSON_ERROR_UTF8 => 'Malformed UTF-8 characters, possibly incorrectly encoded'
);
$error = json_last_error();
return isset($ERRORS[$error]) ? $ERRORS[$error] : 'Unknown error';
}
}
http://php.net/manual/en/function.json-last-error-msg.php отсюда взято
так что.. ты сделал костыль)

Rodion
16.01.2017
17:10:37
if какой-то ебаный