Решение на Пета задача от Атанас Димитров

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

Към профила на Атанас Димитров

Резултати

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

Код

REPOSITORY = 'https://github.com/naskord/ruby-retrospective-4'
# Двадесет неща, които научих
#
# 1. Малък трик за смятане на сумата от n-тите числа на Фибоначи
# и Лукас - може да се сметне със същата формуа, но с начални
# стойности сумите от началните стойности на Фибоначи и Лукас(в частност за зад.1)
# 2. Има готови функции, проверяващи типа на число - Numeric#real?, Numeric#integer?(в частност за зад.2).
# Като цяло има готови функции за почти всичко, стига някой да се порови малко...
# 3. Да си изключвам телефона по време на лекции, и да влизам през задната врата, когато закъснея.(Какво, това не се брои?)
# 3. Искаш за 'забавиш' резултата? Върни функция, връщаща резултата.
# 4. В Ruby няма наистина private понятие. Може да почукаш на вратата и да не ти се отвори(искаш да използваш 'private' метод),
# но ако къщата гори, взимаш шперца(Object#send, Object#instance_eval...) и си отваряш сам.
# 5. Ако трябва интерполация и/или специални символи - двойни кавички, иначе единични.
# 6. Използването на Symbol за ключ в Hash е за предпочитане, пред String.
# 7. Всичко е обект.
# 8. Може да е изтъркано, но добрите имена на променливи и методи спестяват време при повторно четене на кода.
# 9. Паралелното присвояване е удобно, но понякога води до затрудняване на четене на кода.
# Харесва ми swap-ването a, b = b, a, без трета променлива.
# 10. Метапрогрмиране - awesomeness level: OVER 9000! Изглежда, че с метапрограмиране може
# да се направи, едва ли не, всичко, но нямам все още достатъчно опит.
# 11. Monkey-patch-ването изглежда като добра идея, но почти винаги не е.
# 12. Научих за цивилизацията, обитавала някога връх Дупевица, Люлин планина.(Каквооо, и това ли не се брои?)
# 12. Може да се изпуснат скобите(в повечето случаи), при извикване на метод, което понякога ми изглежда объркващо.
# 13. В Ruby не се гледа с добро око на for.
# 14. Ако пишеш ; на края на реда, ще се случи нещо много гадно - ще ти гръмне компютъра или... ще_спре_да_работи_space-a.
# 15. class << self е за предпочитане, при дефиниране на 2+ класови метода.
# 16. Добрата подредба на кода подобрява четимостта му.
# 17. Използването на Symbol#to_proc е по-кратко, но винаги ми трябват 2 допълниелни секунди, за да осъзная какво се случва.
# 18. Да не пиша 'морж, с голям нос', за който някой друг(или аз) ще трябва, впоследствие, да пише 'птица'.(лекцията на Сава)
# 19. Рядко е наложително да се използва #some_method! .
# 20. attr_accessor and family улесняват живота и съкращават кода, но всяко нещо с границите си.
# P.S. 8 и 16 са малко lame, но кладенецът с идеите пресъхна, а ми трябваха още две новополучени знания.

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

Атанас обнови решението на 19.01.2015 10:56 (преди почти 10 години)

+REPOSITORY = 'https://github.com/naskord/ruby-retrospective-4'
+
+# Двадесет неща, които научих
+#
+# 1. Малък трик за смятане на сумата от n-тите числа на Фибоначи
+# и Лукас - може да се сметне със същата формуа, но с начални
+# стойности сумите от началните стойности на Фибоначи и Лукас(в частност за зад.1)
+# 2. Има готови функции, проверяващи типа на число - Numeric#real?, Numeric#integer?(в частност за зад.2).
+# Като цяло има готови функции за почти всичко, стига някой да се порови малко...
+# 3. Да си изключвам телефона по време на лекции, и да влизам през задната врата, когато закъснея.(Какво, това не се брои?)
+# 3. Искаш за 'забавиш' резултата? Върни функция, връщаща резултата.
+# 4. В Ruby няма наистина private понятие. Може да почукаш на вратата и да не ти се отвори(искаш да използваш 'private' метод),
+# но ако къщата гори, взимаш шперца(Object#send, Object#instance_eval...) и си отваряш сам.
+# 5. Ако трябва интерполация и/или специални символи - двойни кавички, иначе единични.
+# 6. Използването на Symbol за ключ в Hash е за предпочитане, пред String.
+# 7. Всичко е обект.
+# 8. Може да е изтъркано, но добрите имена на променливи и методи спестяват време при повторно четене на кода.
+# 9. Паралелното присвояване е удобно, но понякога води до затрудняване на четене на кода.
+# Харесва ми swap-ването a, b = b, a, без трета променлива.
+# 10. Метапрогрмиране - awesomeness level: OVER 9000! Изглежда, че с метапрограмиране може
+# да се направи, едва ли не, всичко, но нямам все още достатъчно опит.
+# 11. Monkey-patch-ването изглежда като добра идея, но почти винаги не е.
+# 12. Научих за цивилизацията, обитавала някога връх Дупевица, Люлин планина.(Каквооо, и това ли не се брои?)
+# 12. Може да се изпуснат скобите(в повечето случаи), при извикване на метод, което понякога ми изглежда объркващо.
+# 13. В Ruby не се гледа с добро око на for.
+# 14. Ако пишеш ; на края на реда, ще се случи нещо много гадно - ще ти гръмне компютъра или... ще_спре_да_работи_space-a.
+# 15. class << self е за предпочитане, при дефиниране на 2+ класови метода.
+# 16. Добрата подредба на кода подобрява четимостта му.
+# 17. Използването на Symbol#to_proc е по-кратко, но винаги ми трябват 2 допълниелни секунди, за да осъзная какво се случва.
+# 18. Да не пиша 'морж, с голям нос', за който някой друг(или аз) ще трябва, впоследствие, да пише 'птица'.(лекцията на Сава)
+# 19. Рядко е наложително да се използва #some_method! .
+# 20. attr_accessor and family улесняват живота и съкращават кода, но всяко нещо с границите си.
+# P.S. 8 и 16 са малко lame, но кладенецът с идеите пресъхна, а ми трябваха още две новополучени знания.