@rubyschool

Страница 566 из 921
Pavel
13.03.2018
19:53:10
Сейчас там раилс 5

Но наверно представление создать можно

Alex
13.03.2018
20:10:55
Я решил эту задачу

мое решение https://github.com/Amourlive/connect_four/blob/master/connect_four.rb

Google
Alex
13.03.2018
20:17:34
если кто-нибудь попинает, буду благодарен

одна проблема там точно есть, я так и не сделал проверку на переполнение колонны

теперь и проверку добил

Ro
13.03.2018
20:34:50
а что за магические значения 6, 9, 15, 14, 20, 19?

Alex
13.03.2018
20:35:41
Это количество ходов перед тем как проверка начнёт работать

Ведь нет смысла проверять условную матрицу когда в ней даже нет 4 фишек одного игрока и 3 другого

Ro
13.03.2018
20:37:32
основная претензия к коду - нельзя понять что он делает

что такое diagonal_left?

Alex
13.03.2018
20:37:58
Проверка диагонали слева

Ro
13.03.2018
20:38:01
т.е. я ожидают от метода, что это будет или существительное, или глагол

если существительное, то это запрос (не изменяет состояние экземпляра класса)

Alex
13.03.2018
20:38:34
Значит я неправильно именую

Ro
13.03.2018
20:38:35
если глагол, то команда (изменяет состояние класса)

Google
Ro
13.03.2018
20:39:01
если это проверка, которая возвращает boolean, то она должна заканчиваться вопросом

именование - важная вещь

Alex
13.03.2018
20:39:39
Ну у меня там есть один метод с вопросом)

Ro
13.03.2018
20:40:00
в моем случае все методы были private, кроме одного (move)

так и должно быть

метод move принимает один параметр (столбец), а состояние о том, кто ходит хранится внутри игры

это кстати вам на будущее - если методы не собираетесь использовать извне, то делайте их private

(и тестировать их в этом случае не надо)

Alex
13.03.2018
20:42:00
Завтра сделаю рефакторинг?

Ro
13.03.2018
20:42:14
потом еще задание - сделай инициализацию матрицы произвольного размера (так у меня в шаблоне было)

Alex
13.03.2018
20:43:24
Я в принципе уже знаю как это сделать, а нормально ли то что я по бокам сделал столбцы с наполнением?

Ro
13.03.2018
20:44:30
плюс такой момент - если диагональ пойдет не вверх, а вниз - сможет код об этом узнать?

пока не могу понять

потом поправишь когда - гляну еще раз, пока не особо понятно)

Alex
13.03.2018
20:45:43
У меня есть проверка диагонали слева на право и справо на лево

Потому метода с диагональю два

Ro
13.03.2018
20:47:03
а вверх-вниз?

Alex
13.03.2018
20:48:28
Ну у меня диагональ может быть снизу с левого угла вверх в правый угол и справа снизу влево вверх я оба проверяю

Ro
13.03.2018
20:49:55
+ сделай вывод самой board: | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |X| | | | | | | | | |X|X| | | | | | |O|X|O|O|X| | | | |O|X|X|O|O|O|X| | | |1|2|3|4|5|6|7|8|9|

то, что сейчас - не играбельно)

Google
Ro
13.03.2018
20:50:30
ну точнее играбельно, но не наглядно

Alex
13.03.2018
20:50:45
Согласен, я и спрашивал тогда на счет условий

Я в принципе уже знаю как это сделать, а нормально ли то что я по бокам сделал столбцы с наполнением?

Я их сделал из-за того что не знал как мне сделать простую функцию проверки по диагонали, без них не представляю на сколько труднее выйдет проверка

artem3321
14.03.2018
01:47:37
Работяги, есть ли смысл писать gui прилы под винду на рубях? Не будет ли отладка занимать 4x времени разработки и вообще, много ли багов?

Александр
14.03.2018
01:55:47
кто нибудь gitlab ci использует с docker-compose?



services: - docker:dind

надо было это добавить в .gitlab-ci.yml

artem3321
14.03.2018
04:12:59
А какая аргументация ?

Александр
14.03.2018
04:13:31
ненадо будет есть кактус :)

Aleksej
14.03.2018
04:14:27
используй C#
А долго вкатываться?

Ro
14.03.2018
04:14:58
все относительно, друг мой. Наслаждайся процессом

?

А какая аргументация ?
аргументация - каждый инструмент хорош для своего дела. Топором гвозди неудобно забивать, хотя можно. А ножом неудобно дерево пилить, хотя можно.

на рубях можно делать gui приложения, но оно для этого не предназначено

Alex
14.03.2018
04:18:32
Доброе утро

Aleksej
14.03.2018
04:18:40
Я вот грущу, что рынок windows phone умер. В визуально студии пилить приложения под винфон - одно удовольствие.

Google
artem3321
14.03.2018
04:19:49
аргументация - каждый инструмент хорош для своего дела. Топором гвозди неудобно забивать, хотя можно. А ножом неудобно дерево пилить, хотя можно.
Тогда почему например не c++ или java ? Если язык не удобен для определенных задач, должна быть аргументация почему не удобен, иначе выходит что то из разряда, рельсы - хороши, потому что рельсы

Ro
14.03.2018
04:39:56
C# и .Net это родная платформа для винды

Java - это виртуальная машина, которая под винду никогда заточена не была

C++ сложнее в изучении, плюс сборщика мусора нет - сложнее программировать будет

Alex
14.03.2018
05:10:49


Ro
14.03.2018
05:33:11
потому что это массив наверное? сомневаюсь, что в irb без скобок

[1] pry(main)> arr = ['a'] => ["a"] [2] pry(main)> arr => ["a"]

Alex
14.03.2018
05:34:07


Admin
ERROR: S client not available

Ro
14.03.2018
05:34:55
[3] pry(main)> arr.to_s => "[\"a\"]" [4] pry(main)> puts "#{arr}" ["a"]

т.е. x - у тебя массив вроде

попробуй x[0] сделай

кстати, юзай pry вместо irb

gem install pry

а потом pry

Alex
14.03.2018
05:36:15
но я же использу два ключа для двумерного массива, как так то

Ro
14.03.2018
05:36:32
подумай

значит что-то не так

проверить тип объекта можно с помощью .class

например:

Google
Ro
14.03.2018
05:37:05
[1] pry(main)> arr = ['a'] => ["a"] [2] pry(main)> arr.class => Array

Alex
14.03.2018
05:38:14
а в чем вообще разница pry и irb ?





такое ощущение что мой key2 из внешнего цикла не передается во внутренний

хотя он же выводит значение просто не приводит их к string

Vlad
14.03.2018
05:44:26
а в чем вообще разница pry и irb ?
Не знаю что там в irb есть, но в pry брейкпоинты, список методов объектов можно посмотреть, документацию вывести по методам зайти внутрь методов посмотреть сорцы. Я в основном только для этого использую. Возможно irb тоже большую часть из этого умеет.

Alex
14.03.2018
05:45:40
понятно, благодарю за объеснение

нашел свою ошибку





Andrey
14.03.2018
13:37:09
Парни кто сталкивался с такой задачей, помогите как решить. У меня есть файл со списоком id устройств. Мне надо скажем подсчитать сколько устройств с таким id есть в базе. Список большой 20к например. Как мне это распараллелить? имеется sidekiq. проблема раз в параметрах хочется передать больше одного id а то как то жирно. проблема два получить результаты в одном месте. Т.е. завел скажем запись в postgres и паралельно суммировать в нее не получится, надо лочить получается на время чтения/записи нового значения?

Пока идея сохранить в базе hstore там в формате {1: {ids: [6,8,9], devices_find: 5, status: 'done'}, 2: {ids: ....} } и передовать в sidekiq id куска, то что в примере имеет номера 1,2

Vlad
14.03.2018
14:00:03
@Pazzik ты бы конкретнее уточнил, что у тебя за модели данных, ибо я начал писать тебе кучу кода, но скорее всего я тебя не понял. Тебе надо сделать именно обработку файла со списком Id устройств? Не разово, а чтобы постоянно можно было обрабатывать загружаемый файл?

Andrey
14.03.2018
14:07:55
теперь я тебя не понял )) у меня таблица с устройствами, там у каждого устройства есть уникальный id не тот что в базе данных id, а idfa называется, но это неважно суть одна. и есть администраторы которым дают csv файл и в котором какой то список этих idfa. И мне надо по этому списку некие манипуляции сделать в базе, отметить в другой таблице что такие idfa у нас есть и как я выше написал где то дать некоторые числа типа сколько нашлось сколько обработано и т.д. Список не меняется на ходу. есть файл его надо обработать отдать метрики.

Сейчас это не делается паралельно, мне выгружают список я его ищу и делаю свои дела, но когда пошли списки на 20к стало падать =)) 1к еще переваривает тупой вариант )

Alex
14.03.2018
18:12:31


Vladimir
14.03.2018
18:13:06
там наверное сеанс игры из 20 человек?

Alex
14.03.2018
18:21:55
неа, из 2) про количество играков я ещё как-то не подумал реализовать, а это идея :DDD

evgeny
14.03.2018
18:22:32
а что нужно ввести, чтобы поставить крестик или нолик в середину поля?)

Fuzzy
14.03.2018
18:23:33
крестики-нолики: ММО эдишн

Страница 566 из 921