
Ro
19.03.2018
15:31:11
объекты в реальной жизни обычно простые

Alex
19.03.2018
15:32:25
ураа, хоть кто-то мне объянил)

Dm
19.03.2018
15:34:53

Alex
19.03.2018
15:35:13
Ну да, сам админ)

Google

Dm
19.03.2018
15:35:34
Бери выше! Основатель рубискул. Создатель!

Alex
19.03.2018
15:35:47
беру!

Ro
19.03.2018
17:20:59
есть еще один трюк - паттерн "декоратор", который позволяет избегать модулей. Но в руби коммьюнити его не любят. Если будешь юзать на работе, скорее всего скажут переписать) Я его активно юзаю для своих проектов. О нем говорит хорошо yegor256.com

Dmitry
19.03.2018
17:27:20
У меня на прошлом проекте его использовали

Alex
19.03.2018
17:30:37
Про патерны я думаю почитать head first паттерны проектирования

Andrey
19.03.2018
17:38:57
Мы используем декораторы.

Konstantin
19.03.2018
18:36:56

Ro
19.03.2018
18:38:32
хорошо если так)
правда, само слово декоратор бывает очень искажено
если вы юзаете gem для этого, скорее всего это не декоратор

Denis
19.03.2018
18:42:43
а что тогда?

Google

Vladislav
19.03.2018
18:42:46

Ro
19.03.2018
18:43:51

Denis
19.03.2018
18:44:06
Почему?

Alex
19.03.2018
18:44:18
Я тут не могу разобраться, почему [ 1, 2, 3].methods(false) возвращает [] ? В доках вроде написано что из массива методов при опции false исключаются все методы созданные в модулях
это что получается, все методы чтоль???

Ro
19.03.2018
18:47:26
Почему?
потому что паттерн декоратор довольно простой и не требует gem'ов
пример тут http://www.yegor256.com/2015/02/26/composable-decorators.html - больше в книге Elegant Objects (1 версия), но вы ее не купили наверное, т.к. она дорого стоит, а скачать нельзя)

Roman
19.03.2018
18:51:30
вот неплохой пример декоратора
https://github.com/khusnetdinov/ruby.fundamental/blob/master/patterns/structural/decorator.rb
а еще есть неплохая статья, даже на русском
https://mkdev.me/posts/ne-vsya-pravda-o-dekoratorah
и еще вот в контексте рельсы
https://github.com/infinum/rails-handbook/blob/master/Design%20Patterns/Decorators.md
в доке черным по белому написано об этом

Alex
19.03.2018
18:56:55
хех, вот человек с первого раза понял в чем проблема, я удевляюсь
public and protected singleton method, я неправильно перевел
я подумал что публичные методы и protected синглтон методы
а я тут в паралельном чате мурижил людей 2 часа, а они мне рассказывали про основы ооп...

Ro
19.03.2018
18:59:32
купите книжку Elegant Objects, будет вам инвестиция)

Denis
19.03.2018
18:59:52
Она слишком дорого стоит, а скачать нельзя.

Alex
19.03.2018
18:59:58
я куплю как заработаю

Ro
19.03.2018
19:00:17
напишите Егору на емайл
может он подешевле продаст

Alex
19.03.2018
19:00:25
буду на ней английский практиковать ?

Google

Ro
19.03.2018
19:00:47
все эти ваши книги по паттернам они конечно полезные
но там много неточностей
и старые уже

Tanya
19.03.2018
19:01:02
Цена: $40. Для участников конференций, где я выступаю: $20 (бывают еще скидки).
c гитхаба его книги

Denis
19.03.2018
19:02:17
слишком дорого дорого для нас
целых 80 баксов

Tanya
19.03.2018
19:02:32
40 же

Alex
19.03.2018
19:02:49
мб доставка не бесплатная?)

Tanya
19.03.2018
19:03:28
это с доставкой, если на амазоне брать

Denis
19.03.2018
19:03:34
40 же
ну про дорого не я сказал, а Роман.

Tanya
19.03.2018
19:03:41
$36.99
+ $3.99 shipping

Ro
19.03.2018
20:32:33
не дороже денег)

Alex
19.03.2018
20:42:07
Вопрос, когда я передаю методу обязательную переменную, то метод создает внутри своей области видимости ссылку на неё или второй объект ?
def(a)
puts a
end

Андрей
19.03.2018
20:44:44
Второй объект

Alex
19.03.2018
20:45:30
благодарю
У меня есть функция которая что-то делает с объектом , однако если ей нельзя что-то делать с объектом она возвращает nil и ничего не делает с объектом который ей передали, могу ли я делать с такой функцией конструкцию unless something_method(object) { puts 'something'} ? или это неочевидное поведение и так делать нехорошо?

Roman
19.03.2018
21:22:30
можно сделать вначале return nil unless something

Google

Alex
19.03.2018
21:23:14
в методе? я так и сделал
но теперь мне надо отработать nil и мне не очевидно как это делать по нормальному
так то работает

Admin
ERROR: S client not available

Alex
19.03.2018
23:44:48
Зачем тогда два метода ?
find_all → an_enumerator
Returns an array containing all elements of enumfor which the given block returns a true value.
select { |obj| block } → arrayclick to toggle source
select → an_enumerator
Returns an array containing all elements of enumfor which the given block returns a true value.

Andrey
20.03.2018
04:07:07
Просто так. В руби много дублирующихся функций.

Konstantin
20.03.2018
07:25:59
Find_all для всего возвращает массив
select возвращает массив, но только там, где он инстансно не переопределен
Попробуй создать хэш любой и вызвать на нем оба метода

Александр
20.03.2018
07:34:11
как переводится tabulation из динамического программирования?

Konstantin
20.03.2018
13:22:45

Henry
20.03.2018
14:42:55
очень ищет просто команду)

Roman
20.03.2018
16:09:53
Привет всем. Скажите, насколько тяжелая домашка в thinknetica?Я вот хочу записаться, но этот пункт останавливает. И еще: goodprogrammer кто-то проходил?

O
20.03.2018
16:16:25
Ну что Евгений
дай ему ответ:D

evgeny
20.03.2018
16:18:32

O
20.03.2018
16:20:14

evgeny
20.03.2018
16:21:01
сижу каждый день после работы с 7 вечера до часу-двух ночи. Просто так с наскока не взять домашку)
и это не реклама и не антиреклама, если что.

Google

O
20.03.2018
16:22:16
а я вообще не причём

Dm
20.03.2018
16:38:37

Alex
20.03.2018
16:39:07
телеграм походу могут заблочить в РФ

Dm
20.03.2018
16:39:25
Да
tg://socks?server=ettest.proxy.expert&port=1888&user=KDMTQ8&pass=BHW7QI

Alex
20.03.2018
16:39:35
суд проигран

Dm
20.03.2018
16:39:41
Вот прокся, если что )

Alex
20.03.2018
16:39:55
благодарю

Dm
20.03.2018
16:40:32
За её безопасность не ручаюсь, самому скинули

Alex
20.03.2018
16:42:21
я тут сижу, пытаюсь сделать задачку которую мне скинул Ro

Dm
20.03.2018
16:43:12
Еще одну?

Andrey
20.03.2018
16:43:48
Марсиане не ответили?