Решение на Седма задача - ретроспекция от Светослав Годжев

Обратно към всички решения

Към профила на Светослав Годжев

Резултати

  • 2 точки от тестове
  • 0 бонус точки
  • 2 точки общо
  • 1 успешни тест(а)
  • 0 неуспешни тест(а)

Код

REPOSITORY = 'https://github.com/svetoslaw/ruby-retrospective-2016'
# 1. Методи с еднакви имена в различни класове, реализирани по различен начин са подходящи, когато искаш да използваш
# даден метод, но не е сигурно какъв е обекта върху който ще го ползваш.
# 2. array = ['one', 'two', 'three']
# array.each {|n| array.delete(n)}
# Това няма да изтрие всички елементи от масива, а само първия и третия, защото #each итерира по индексите на масива.
# След като изтрие първия елемент масива става ['two', 'three'] и взима елемента с индекс 1('three') и така прескача 'two'.
# 3. За по-кратък и разбираем код #reject може да се използва за премахване на елементи от хеш или масив.
# 4. За да изберем определени елементи от масив или хеш, по-добре е да се ползва #select вместо #each със #if във себе си.
# 5. В случая на трета задаче е добре да се разделят опциите и позиционните аргументи в класове, защото се държат
# като отделни обекти.

Лог от изпълнението

From https://github.com/fmi/ruby-retrospective-2016
 * branch            master     -> FETCH_HEAD
HEAD is now at a22cf37 Set rubocop version to 0.46.0 to fix obsolete cop errors
Cloning into 'submission'...
HEAD is now at 6b98450 make separate classes for the options and arguments
From /tmp/ruby-retrospective-2016/checker
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> upstream/master

Changes URL:
https://github.com/svetoslaw/ruby-retrospective-2016/compare/1f710b00c26...6b98450f8a9

'tasks/1/solution.rb' -> '/tmp/ruby-retrospective-2016/checker/tasks/1/solution.rb'
'tasks/2/solution.rb' -> '/tmp/ruby-retrospective-2016/checker/tasks/2/solution.rb'
'tasks/3/solution.rb' -> '/tmp/ruby-retrospective-2016/checker/tasks/3/solution.rb'
'tasks/4/solution.rb' -> '/tmp/ruby-retrospective-2016/checker/tasks/4/solution.rb'
'tasks/5/solution.rb' -> '/tmp/ruby-retrospective-2016/checker/tasks/5/solution.rb'
Inspecting 1 file
.

1 file inspected, no offenses detected
.................

Finished in 0.00462 seconds
17 examples, 0 failures
Inspecting 1 file
.

1 file inspected, no offenses detected
...............

Finished in 0.00518 seconds
15 examples, 0 failures
Inspecting 1 file
.

1 file inspected, no offenses detected
...............

Finished in 0.00543 seconds
15 examples, 0 failures
Inspecting 1 file
.

1 file inspected, no offenses detected
....................

Finished in 19.48 seconds
20 examples, 0 failures
Inspecting 1 file
.

1 file inspected, no offenses detected
.........................

Finished in 0.0171 seconds
25 examples, 0 failures
.

Finished in 0.00158 seconds
1 example, 0 failures

История (2 версии и 0 коментара)

Светослав обнови решението на 10.01.2017 14:25 (преди почти 8 години)

+REPOSITORY = 'https://github.com/svetoslaw/ruby-retrospective-2016'

Светослав обнови решението на 16.01.2017 16:59 (преди почти 8 години)

-REPOSITORY = 'https://github.com/svetoslaw/ruby-retrospective-2016'
+REPOSITORY = 'https://github.com/svetoslaw/ruby-retrospective-2016'
+
+# 1. Методи с еднакви имена в различни класове, реализирани по различен начин са подходящи, когато искаш да използваш
+# даден метод, но не е сигурно какъв е обекта върху който ще го ползваш.
+# 2. array = ['one', 'two', 'three']
+# array.each {|n| array.delete(n)}
+# Това няма да изтрие всички елементи от масива, а само първия и третия, защото #each итерира по индексите на масива.
+# След като изтрие първия елемент масива става ['two', 'three'] и взима елемента с индекс 1('three') и така прескача 'two'.
+# 3. За по-кратък и разбираем код #reject може да се използва за премахване на елементи от хеш или масив.
+# 4. За да изберем определени елементи от масив или хеш, по-добре е да се ползва #select вместо #each със #if във себе си.
+# 5. В случая на трета задаче е добре да се разделят опциите и позиционните аргументи в класове, защото се държат
+# като отделни обекти.