Илия обнови решението на 21.01.2014 19:21 (преди почти 11 години)
+REPOSITORY = 'https://github.com/DeBillieJoe/ruby-retrospective-3'
+
+#Двадесет неща, които научих
+#
+#1. Научих, че използването на символи е много полезнo (примерно :+ и конструкцията &:+).
+#2. Научих, че мога да итерирам с each_with_object от модула Enumerable.
+#3. Научих, че има клас Struct и създаването на пропъртита чрез наследяването му.
+#4. Научих, че можеш да кажеш на flatten колко да е дълбочината на рекурсията.
+#5. Научих, че ако си предефинираш совалката (<=>) можеш да си спестиш много ядове.
+#6. Научих, че в Enumerable има много полезни методи.
+#7. Научих, че когато ползвам стрингове за константи е хубаво да се freeze-ват.
+#8. Научих, че не е добра практика да се променят обектите.
+#9. Научих, че не е хубаво имената променливите да са съкращения (cmp вместо comparison примерно).
+#10. Научих, че е полезно логиката да се разделя на малки съставни части в модули, класове и тн.
+#11. Научих, че е полезно да се използват константи.
+#12. Научих как работят define_method, method_missing и instance_eval.
+#13. Научих много за метапрограмирането.
+#14. Научих, че има Array има функция count и мога да използвам count {.....} вместо select {....}.size.
+#15. Научих, че да self се ползва изключително рядко.
+#16. Научих, че е пoнякога е по-добре да ползваш map/select пред each.
+#17. Научих, че при решаването на някакъв проблем е по-добре първо да се поровя добре в документацията на руби
+# да не би случайно решението да го има и така да не откривам топлата вода.
+#18. Научих, че не е добра идея да почвам с решаването на домашното 1 ден преди крайния срок.
+#19. Научих, че трябва да тествам повече.
+#20. Научих, че monkey-patching-a трябва да се избягва, но пък може да направиш готини работи с него.
Супер :)
Единствено по т. 3 искам да уточня, не е задължително да се наследява - резултатът от Struct.new
е клас, който може да се ползва спокойно.