Решение на Четвърта задача от Николай Беличев

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

Към профила на Николай Беличев

Резултати

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

Код

REPOSITORY = 'http://github.com/belichev/ruby-retrospective-1'
# Двадесет и едно неща, които научих.
# 1. Едно "отваряне" на клас може да се ползва за дефиниране на няколко метода
# 2. Променливите трябва да имат значещи имена
# 3. Ако не се укаже експлицитно върху кой обект се извиква даден метод, Руби го извиква за self
# 4. Познаването на модула Enumerable спестява дефинирането на вече съществуващи методи
# 5. Създаване на хеш с дифоутна стойност за несъществуващите елементи - Hash.new(0)
# 6. Използване на map вместо inject
# 7. Използване на each вместо inject
# 8. Нов ред между методите в клас
# 9. attr_accessor - тарикатски начин за дефиниране на set и get методи
# 10. Интервал преди и след всяка от къдравите скоби
# 11. Няма нужда да се създават излищни полета
# 12. Резултатите от split могат да се сложат в променливи на един ред разделени със запетая
# 13. Използване на тернарен оператор вместо if/else
# 14. Използване на конструкции с if накрая вместо стандартния if
# 15. Ненужните променливи отежняват кода
# 16. Извикване на методи, без ограждане на аргументите в скоби
# 17. Действието на Array(1) и Array([1, 2])
# 18. Подаване на ламбда като блок с помощта на амперсанд
# 19. Отделни класове за всяка промоция и всеки купон + наследяване
# 20. Отделен метод и за най-малкото действие с цел по-малко наслагване на тежки/трудно четими конструкции в кода
# 21. Използване на unless

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

Николай обнови решението на 14.11.2011 16:13 (преди над 12 години)

+REPOSITORY = 'http://github.com/belichev/ruby-retrospective-1'
+
+# Двадесет и едно неща, които научих.
+
+# 1. Едно "отваряне" на клас може да се ползва за дефиниране на няколко метода
+# 2. Променливите трябва да имат значещи имена
+# 3. Ако не се укаже експлицитно върху кой обект се извиква даден метод, Руби го извиква за self
+# 4. Познаването на модула Enumerable спестява дефинирането на вече съществуващи методи
+# 5. Създаване на хеш с дифоутна стойност за несъществуващите елементи - Hash.new(0)
+# 6. Използване на map вместо inject
+# 7. Използване на each вместо inject
+# 8. Нов ред между методите в клас
+# 9. attr_accessor - тарикатски начин за дефиниране на set и get методи
+# 10. Интервал преди и след всяка от къдравите скоби
+# 11. Няма нужда да се създават излищни полета
+# 12. Резултатите от split могат да се сложат в променливи на един ред разделени със запетая
+# 13. Използване на тернарен оператор вместо if/else
+# 14. Използване на конструкции с if накрая вместо стандартния if
+# 15. Ненужните променливи отежняват кода
+# 16. Извикване на методи, без ограждане на аргументите в скоби
+# 17. Действието на Array(1) и Array([1, 2])
+# 18. Подаване на ламбда като блок с помощта на амперсанд
+# 19. Отделни класове за всяка промоция и всеки купон + наследяване
+# 20. Отделен метод и за най-малкото действие с цел по-малко наслагване на тежки/трудно четими конструкции в кода
+# 21. Използване на unless