Решение на Пета задача от Аделина Рудова

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

Към профила на Аделина Рудова

Резултати

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

Код

REPOSITORY = 'https://github.com/arudova/ruby-retrospective-3'
# Двадесет неща, които научих:
#
# 1. Array#hash и как работи.
# 2. Практика е да се оставя празен ред преди такъв, който връща стойност.
# 3. Важно е, кодът да се "опакова" в модули и класове.
# 4. Не трябва да има празен ред след дефиницията на клас.
# 5. String#% и различните форматирания, които предлага.
# 6. Използва се reduce вместо inject.
# 7. Хешовете са изключително подходящи и удобни за метапрограмирането.
# 8. Метапрограмирането, от своя страна, е полезно, когато искаме да избегнем повтарящия се код в няколко сходни функции.
# 9. Вариантът за подаване на Proc обект като аргумент на функция, чрез литералният синтаксис за дефиниране на lambda.
# 10. self.dup е начинът за избягване на нежелани мутации на self. Като цяло трябва да се избягва изпълняването на операции върху self.
# 11. Лоша практика е да се използват мутиращи методи.
# 12. Добре е стойности, присвоени на константи, да се замразяват.
# 13. Private методите стоят в най-отдолу в дефиницията на клас, след ключовата дума private.
# 14.
# 15.
# 16.
# 17.
# 18.
# 19.
# 20. Никога не е добра идея да се оставя, каквото и да било, за последния момент.

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

Аделина обнови решението на 22.01.2014 15:30 (преди почти 11 години)

+REPOSITORY = 'https://github.com/arudova/ruby-retrospective-3'
+
+# Двадесет неща, които научих:
+#
+# 1. Array#hash и как работи.
+# 2. Практика е да се оставя празен ред преди такъв, който връща стойност.
+# 3. Важно е, кодът да се "опакова" в модули и класове.
+# 4. Не трябва да има празен ред след дефиницията на клас.
+# 5. String#% и различните форматирания, които предлага.
+# 6. Използва се reduce вместо inject.
+# 7. Хешовете са изключително подходящи и удобни за метапрограмирането.
+# 8. Метапрограмирането, от своя страна, е полезно, когато искаме да избегнем повтарящия се код в няколко сходни функции.
+# 9. Вариантът за подаване на Proc обект като аргумент на функция, чрез литералният синтаксис за дефиниране на lambda.
+# 10. self.dup е начинът за избягване на нежелани мутации на self.
+# 11.
+# 12.
+# 13.
+# 14.
+# 15.
+# 16.
+# 17.
+# 18.
+# 19.
+# 20. Никога не е добра идея да се оставя, каквото и да било, за последния момент.

Аделина обнови решението на 22.01.2014 17:18 (преди почти 11 години)

REPOSITORY = 'https://github.com/arudova/ruby-retrospective-3'
# Двадесет неща, които научих:
#
# 1. Array#hash и как работи.
# 2. Практика е да се оставя празен ред преди такъв, който връща стойност.
# 3. Важно е, кодът да се "опакова" в модули и класове.
# 4. Не трябва да има празен ред след дефиницията на клас.
# 5. String#% и различните форматирания, които предлага.
# 6. Използва се reduce вместо inject.
# 7. Хешовете са изключително подходящи и удобни за метапрограмирането.
# 8. Метапрограмирането, от своя страна, е полезно, когато искаме да избегнем повтарящия се код в няколко сходни функции.
# 9. Вариантът за подаване на Proc обект като аргумент на функция, чрез литералният синтаксис за дефиниране на lambda.
-# 10. self.dup е начинът за избягване на нежелани мутации на self.
-# 11.
-# 12.
+# 10. self.dup е начинът за избягване на нежелани мутации на self. Като цяло трябва да се избягва изпълняването на операции върху self.
+# 11. Лоша практика е да се използват мутиращи методи.
+# 12. Добре е стойности, присвоени на константи, да се замразяват.
# 13.
# 14.
# 15.
# 16.
# 17.
# 18.
# 19.
# 20. Никога не е добра идея да се оставя, каквото и да било, за последния момент.

Аделина обнови решението на 22.01.2014 17:23 (преди почти 11 години)

REPOSITORY = 'https://github.com/arudova/ruby-retrospective-3'
# Двадесет неща, които научих:
#
# 1. Array#hash и как работи.
# 2. Практика е да се оставя празен ред преди такъв, който връща стойност.
# 3. Важно е, кодът да се "опакова" в модули и класове.
# 4. Не трябва да има празен ред след дефиницията на клас.
# 5. String#% и различните форматирания, които предлага.
# 6. Използва се reduce вместо inject.
# 7. Хешовете са изключително подходящи и удобни за метапрограмирането.
# 8. Метапрограмирането, от своя страна, е полезно, когато искаме да избегнем повтарящия се код в няколко сходни функции.
# 9. Вариантът за подаване на Proc обект като аргумент на функция, чрез литералният синтаксис за дефиниране на lambda.
# 10. self.dup е начинът за избягване на нежелани мутации на self. Като цяло трябва да се избягва изпълняването на операции върху self.
# 11. Лоша практика е да се използват мутиращи методи.
# 12. Добре е стойности, присвоени на константи, да се замразяват.
-# 13.
+# 13. Private методите стоят в най-отдолу в дефиницията на клас, след ключовата дума private.
# 14.
# 15.
# 16.
# 17.
# 18.
# 19.
# 20. Никога не е добра идея да се оставя, каквото и да било, за последния момент.

Да, добри изводи... :)

Определено има какво да се рефакторира още (като начало, може да започнеш с while-а в първа задача), а и май има задачи, които не си написала и си взела наготово (поради липса на време).

В заключение се надявам, че си доволна от научените неща и че няма да спираш да се учиш :)

Да, за съжаление нямах възможността да отделя много време за тази задача, за разлика от повечето колеги. Определено има още върху какво да работя, и резултатът за това е налице.

Надявам се с проекта да се представя на ниво :)