Решение на Четвърта задача от Борис Минев

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

Към профила на Борис Минев

Резултати

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

Код

REPOSITORY = 'http://github.com/bminev/ruby-retrospective-1'
#1. Инстанцирането е по-добър подход от наследяването.
#2. При блокове е по-прегледно да има " "(space) след скобата, отваряща блок и преди затварящата.
#3. Добре е да има интервали ограждащи << оператора. Същото важи и за останалите оператори.
#4. Хубаво е да има празен ред между методите в клас.
#5. Съществува функцията each_cons, която има някои много интересни, приложения, въпреки, че се
# ползва рядко.
#6. Лош стил е да се използва ';' за събиране на един ред на statements, които могат да бъдат на
# повече редове.
#7. Добре е да се познава пълният набор от фичъри, които даден език предлага, и да не се подхожда
# към всеки проблем с един и същ метод (както в моя случай - за задача 1 ползвах само inject).
# Никой метод не е универсален.
#8. Вместо "array.select { |n| !n.nil? }" може да се ползва просто "array.compact".
#9. Не бива да се използват еднобуквени и НЕговорящи имена на променливи.
#10. Като параматър по подразбиране не бива да се задават странни стойности като -1 когато може
# да се подаде nil.
#11. Научих се да използвам case по предназначение.
#12. Работата на отделните методи трябва да е добре разпределена по такъв начин, че да са
# относително кратки и извършващи възможно най-атомарни операции.
#13. Array(x) може да се използва за създаване на копие на x.
#14. При изброяването 1st, 2nd... - 11th, 12th и 13th са изкючение от правилото.
#15. По-добър дизайн е за invoce-а да отговаря самостоятелен клас.
#16. Разбрах как се използва send метода.
#17. Разбрах как се използва Kernel.const_get.
#18. Научих как се форматира стринг.
#19. Разбрах съшността на Single Responsibility Principle.
#20. self не е задължителен в конекста на класа и е препоръчително да се изпуска, когато е възможно.

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

Борис обнови решението на 14.11.2011 05:30 (преди над 12 години)

+REPOSITORY = 'http://github.com/bminev/ruby-retrospective-1'
+
+#1. Инстанцирането е по-добър подход от наследяването.
+#2. При блокове е по-прегледно да има " "(space) след скобата, отваряща блок и преди затварящата.
+#3. Добре е да има интервали ограждащи << оператора. Същото важи и за останалите оператори.
+#4. Хубаво е да има празен ред между методите в клас.
+#5. Съществува функцията each_cons, която има някои много интересни, приложения, въпреки, че се
+# ползва рядко.
+#6. Лош стил е да се използва ';' за събиране на един ред на statements, които могат да бъдат на
+# повече редове.
+#7. Добре е да се познава пълният набор от фичъри, които даден език предлага, и да не се подхожда
+# към всеки проблем с един и същ метод (както в моя случай - за задача 1 ползвах само inject).
+# Никой метод не е универсален.
+#8. Вместо "array.select { |n| !n.nil? }" може да се ползва просто "array.compact".
+#9. Не бива да се използват еднобуквени и НЕговорящи имена на променливи.
+#10. Като параматър по подразбиране не бива да се задават странни стойности като -1 когато може
+# да се подаде nil.
+#11. Научих се да използвам case по предназначение.
+#12. Работата на отделните методи трябва да е добре разпределена по такъв начин, че да са
+# относително кратки и извършващи възможно най-атомарни операции.
+#13. Array(x) може да се използва за създаване на копие на x.
+#14. При изброяването 1st, 2nd... - 11th, 12th и 13th са изкючение от правилото.
+#15. По-добър дизайн е за invoce-а да отговаря самостоятелен клас.
+#16. Разбрах как се използва send метода.
+#17. Разбрах как се използва Kernel.const_get.
+#18. Научих как се форматира стринг.
+#19. Разбрах съшността на Single Responsibility Principle.
+#20. self не е задължителен в конекста на класа и е препоръчително да се изпуска, когато е възможно.