Решение на Девета задача от Кристиян Тодоров

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

Към профила на Кристиян Тодоров

Резултати

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

Код

REPOSITORY = 'https://github.com/kristiyantodorov/ruby-retrospective-2015-1'
# Двадесет неща, които научих:
#
# 1. Използването на case в кода, занчително подобрява четимостта му.
# 2. Обособяването на различните смислови части в отделни методи спомага за по-
# добра конструкция на кода.
# 3. Необходимо е да използвам по-добри имена за променливите си.
# 4. Тестовете са важни, защото разкриват проблеми с логиката на кода.
# 5. Научих ситуации, в които е хубаво да се използва метода dup.
# 6. Методите sample и product, значително улесниха логиката на кода ми.
# 7. Не е необходимо да се дефинират два еднакви метода за едно и също нещо в
# различни класове, а може да се преизползва този метод чрез включването на
# модул.
# 8. Използвайки навръзване на методи, значително подобрих метода prime?.
# 9. За неща, които ще се използват често и няма да бъдат променяни е добре да
# се използват константи.
# 10. Научих, че метода capitalize може да се използва и върху стрингове от
# числа без това да води до проблеми.
# 11. Предефинирането на <=> вместо на сравнение и равенство поотделно прави
# кода по-лесно разбираем.
# 12. Научих как да използвам метода alias_method и кога е добре да го правя.
# 13. Научих за метода each_with_object и ползите от него.
# 14. Научих колко са удобни методите none? и any?
# 15. Започнах все по-често да използвам идеята на Enumerable за навръзване на
# няколко метода един след друг.
# 16. Научих се как да научавам неща от чужд код(досега не съм разбирал колко
# хубаво нещо е това).
# 17. Научих се да използвам наследяването по по-добър начин.
# 18. Научих как и кога да използвам метода each_cons
# 19. Всяко нещо може да бъде подобрено при повторен опит.
# 20. Разбрах, че е много полезно да се върна малко назад и да видя грешки,
# които съм допускал и да се опитам да ги премахна по най-добрия начин,
# след като съм научил повече неща.

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

From https://github.com/fmi/ruby-retrospective-2015-1
 * branch            master     -> FETCH_HEAD
HEAD is now at 767dd8d Update the task name in the readme for clarity
Cloning into 'submission'...
HEAD is now at 6bbf3a0 Finished solutions
From /tmp/ruby-retrospective-2015-1/checker
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> upstream/master

Changes URL:
https://github.com/kristiyantodorov/ruby-retrospective-2015-1/compare/767dd8dfe46...6bbf3a0dc4c

‘solutions/04.rb’ -> ‘/tmp/ruby-retrospective-2015-1/checker/solutions/04.rb’
‘solutions/02.rb’ -> ‘/tmp/ruby-retrospective-2015-1/checker/solutions/02.rb’
‘solutions/03.rb’ -> ‘/tmp/ruby-retrospective-2015-1/checker/solutions/03.rb’
‘solutions/01.rb’ -> ‘/tmp/ruby-retrospective-2015-1/checker/solutions/01.rb’
OK
........

Finished in 0.00482 seconds
8 examples, 0 failures
OK
....................

Finished in 0.0111 seconds
20 examples, 0 failures
OK
....................

Finished in 0.09752 seconds
20 examples, 0 failures
OK
.........................................................

Finished in 0.02964 seconds
57 examples, 0 failures
From https://github.com/fmi/ruby-homework
 * branch            master     -> FETCH_HEAD
HEAD is now at 9dd040c Modify a test in task 8 to not include empty cells
.

Finished in 0.00159 seconds
1 example, 0 failures

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

Кристиян обнови решението на 27.01.2016 12:43 (преди около 9 години)

+REPOSITORY = 'https://github.com/kristiyantodorov/ruby-retrospective-2015-1'
+
+# Двадесет неща, които научих:
+#
+# 1. Използването на case в кода, занчително подобрява четимостта му.
+# 2. Обособяването на различните смислови части в отделни методи спомага за по-
+# добра конструкция на кода.
+# 3. Необходимо е да използвам по-добри имена за променливите си.
+# 4. Тестовете са важни, защото разкриват проблеми с логиката на кода.
+# 5. Научих ситуации, в които е хубаво да се използва метода dup.
+# 6. Методите sample и product, значително улесниха логиката на кода ми.
+# 7. Не е необходимо да се дефинират два еднакви метода за едно и също нещо в
+# различни класове, а може да се преизползва този метод чрез включването на
+# модул.
+# 8. Използвайки навръзване на методи, значително подобрих метода prime?.
+# 9. За неща, които ще се използват често и няма да бъдат променяни е добре да
+# се използват константи.
+# 10. Научих, че метода capitalize може да се използва и върху стрингове от
+# числа без това да води до проблеми.
+# 11. Предефинирането на <=> вместо на сравнение и равенство поотделно прави
+# кода по-лесно разбираем.
+# 12. Научих как да използвам метода alias_method и кога е добре да го правя.
+# 13. Научих за метода each_with_object и ползите от него.
+# 14. Научих колко са удобни методите none? и any?
+# 15. Започнах все по-често да използвам идеята на Enumerable за навръзване на
+# няколко метода един след друг.
+# 16. Научих се как да научавам неща от чужд код(досега не съм разбирал колко
+# хубаво нещо е това).
+# 17. Научих се да използвам наследяването по по-добър начин.
+# 18. Научих как и кога да използвам метода each_cons
+# 19. Всяко нещо може да бъде подобрено при повторен опит.
+# 20. Разбрах, че е много полезно да се върна малко назад и да видя грешки,
+# които съм допускал и да се опитам да ги премахна по най-добрия начин,
+# след като съм научил повече неща.