
Анатолий
06.07.2017
11:17:27
Тогда помогает паттерн синглтон
Он возвращает инстанс, который не является статическим классом. Естественно, он же инстанс

Rushan
06.07.2017
11:17:49
всё, понял, понял

Анатолий
06.07.2017
11:17:50
Но опа! он единственный и неповторимый

Google

Jman
06.07.2017
11:18:05
https://habrahabr.ru/company/mailru/blog/325492/
Правда на всеми горячо любимом php. Но суть одна
Там есть описание синглтона

Rushan
06.07.2017
11:19:42
чувак, я знаю описание синглтона ))

Анатолий
06.07.2017
11:19:53
И есть описание его недостатков. Первый из которых побеждается включением головы :)

Artem
06.07.2017
11:20:18
но вообще можно же просто заюзать любой DI контейнер и сказать что это будет синглтон и всё
и не писать руками

Анатолий
06.07.2017
11:20:33
Ибо создавая синглтон, ты явно соглашаешься с тем, что вносишь в приложение глобальное состояние, блин, ты же ради этого его и создаёшь :)
А то это получается какое-то пустое хейтерство
первый попавшийся пример
Корневой контекст статический, его поля - статические, и в них хранятся инстансы контекстов
Когда нужно добраться до инстанса контекста, ты пишешь AppContext.Config.VersionConfig() и юзаешь его.

Google

Анатолий
06.07.2017
11:23:48
Да, тут без синглтона
Всему своё место :)

Олег
06.07.2017
11:25:54

Rushan
06.07.2017
11:26:19
да, забыл, в инъекторе он как вариант

Олег
06.07.2017
11:26:51
Сказки дцатилетней выдержки

Gid
06.07.2017
11:28:00
эх щас бы поинкапсулировать

Олег
06.07.2017
11:28:21
Вроде шарписты, вроде типа пишем на современном языке, а тоже стереотипами живут

Gid
06.07.2017
11:28:22
вместо public int Prop {get; set;}
> 2k17
> не юзать паблик статик

Олег
06.07.2017
11:29:02

Vlad
06.07.2017
11:29:21
все дружно переходим на F#

Blue Screen of Death
06.07.2017
11:29:26
Паблик статик войд мейн

Rushan
06.07.2017
11:29:29

Олег
06.07.2017
11:29:42
Про тормозные машины

Анатолий
06.07.2017
11:30:14
все сговорились про тормоза понаписать

Igor
06.07.2017
11:30:27
Оба из которых сахарнее шарпа, бгг
Кстати может может синглтон и считают “антипаттерном”, а в той же Scala/Kotlin это ключевое слово
object MySingleton
Создает класс MySingleton с 1 стат. полем ссылкой на синглтон

Andrey
06.07.2017
11:30:38
Скинь ссылку на телеграм чатег.

Олег
06.07.2017
11:30:39
Классическая боль

Google

Rushan
06.07.2017
11:30:44
а чем котлин сахарнее шарпа ?

Blue Screen of Death
06.07.2017
11:31:04

Олег
06.07.2017
11:31:26
?

Andrey
06.07.2017
11:31:35

Gid
06.07.2017
11:31:41

Rushan
06.07.2017
11:31:44
ну а помимо ?

Gid
06.07.2017
11:31:45
не работаешь, отдыхаешь
а отдыхать хорошо
вот и весь сахар

Олег
06.07.2017
11:32:09
Просто в файле

Gid
06.07.2017
11:32:12
надо выбрать язык чтоб не работать и постоянно отдыхать
думаю фшапр бы выбрал

Igor
06.07.2017
11:32:25

Andrey
06.07.2017
11:32:51

Олег
06.07.2017
11:32:52
В скале есть экстеншн-методы, есть имплиситы
Есть компаньон-обжекты
В котлин тоже, кстати

Google

Igor
06.07.2017
11:33:37

Олег
06.07.2017
11:33:39
А так да, jvm не обойти

Andrey
06.07.2017
11:33:55
Ну ладно. Вам не пофиг на другие языки?)

Олег
06.07.2017
11:34:05
Неа

Rushan
06.07.2017
11:34:07
нет

Vlad
06.07.2017
11:34:08
нет

Олег
06.07.2017
11:35:04
Просто тут периодически ругают условную жаву, так что обраточку тоже хочется кинуть
Мы ж не сектанты, бгг

Timur
06.07.2017
11:35:26
еретик в храме!

Admin
ERROR: S client not available

Rushan
06.07.2017
11:36:12
Ересь !! Во славу императора!!

Igor
06.07.2017
11:39:04
все дружно переходим на F#
Вот кстати за что его люблю, что можно юзать легкую IDE.
В C#/Kotlin с их extensions-functions и Scala с имплиситами, без тяжелого комбайна IDEA/VS фиг поймешь что и откуда.
(в Kotlin их extensions-functions только и можно отличить по “наклонному шрифту”.)

Artem
06.07.2017
11:39:24

Vlad
06.07.2017
11:39:43
vscode + ionide

Igor
06.07.2017
11:39:48
Да VSCode

Andrey
06.07.2017
11:40:00
Мде... Вот и лёгкая ide)

Олег
06.07.2017
11:40:43

Vlad
06.07.2017
11:40:44
давайте вчерашний срач повторим про вскод\нотепад2\н++?(нет)

Владимир
06.07.2017
11:40:53
н++

Igor
06.07.2017
11:40:54

Google

Владимир
06.07.2017
11:40:55
/тред

Rushan
06.07.2017
11:41:12
emacs

Олег
06.07.2017
11:41:18
Но шо в скале, шо в котлине нет linq увы

Andrey
06.07.2017
11:41:28

Олег
06.07.2017
11:41:59
Ага, глянь
payments.stream().sorted(Comparator.<Payment>comparingInt(p -> p.getGroup().getPriority())
.reversed()
.thenComparing(Comparator.comparing(Payment::getPriority).reversed())
.thenComparing((first, second) ->
StringUtils.defaultString(first.getName()).compareToIgnoreCase(second.getName())
)
);

Blue Screen of Death
06.07.2017
11:42:06

Летучая
06.07.2017
11:42:08

Дмитрий
06.07.2017
11:42:10

Andrey
06.07.2017
11:43:05

Igor
06.07.2017
11:43:45

Олег
06.07.2017
11:44:12
Ну там и выше написанное скомпилится, кек
Это ванильные жава стримы

Andrey
06.07.2017
11:45:47

Igor
06.07.2017
11:51:12
Интересный вопрос.
По крайне мере, тебе будет очень тяжело их найти ext-method,
если твоя IDE не может их искать по всему проекту без учета импортов.

Олег
06.07.2017
12:01:56

Vinc
06.07.2017
12:05:25
Подскажите, можно ли в мемори стрим сериализовать объекты?

Му
06.07.2017
12:05:45
есессно

Vinc
06.07.2017
12:05:48
при помощи бинари формата, конечн

Му
06.07.2017
12:06:01
это не связанные вещи
куда хочешь, туда сериализуй

Vinc
06.07.2017
12:06:17
есессно
а как?
т.е. с файл стримом понятно - указал файл и с ним потом работай, а тут каким образом?

Blue Screen of Death
06.07.2017
12:06:29
Эта группа больше не существует