Pull to refresh

Comments 7

Вы хотя бы исправили те недочеты, на которые вам в контакте показали =) Например, разделить логику с представлением, убрать евал-ы, ну и т.д. А вообще, ваш пост побудил меня написать расово-правильный (что-то вроде MVC) таск-менеджер. Как допишу, пришлю вам ссылку.
да как-то мне лень совсем для таких маленьких утилит следовать MVC :)

Ну на самом деле хорошо, что пост хоть чем-то кому-то пригодился.)
За код в картинках, надо расстреливать!
Что-то не работает, вот что выдает:
~/Temp/todo $ ruby ./rtodo.rb
System files was created
> Welcome to R-todo v0.1, type 'help' to get info
help

^C./rtodo.rb:9:in `gets': Interrupt
from ./rtodo.rb:9
Вместо load лучше использовать require.

Вместо eval(«system.#{method}») — system.send(method)
eval(«system.#{method}(string_user_input)») — system.send(method, string_user_input)

system.keywords.each… — этому циклу стоит находиться в классе System (кстати, цикл лучше заменить на вызов find). А keywords лучше сделать константным хешем:

class System
KEYWORDS = { 'add' => 'task_add', 'remove' => 'task_remove', 'list' => 'task_list'}

#…
end

Для чтения файла целиком существует метод File#readlines.

… Дальше было лень всматриваться в код :)
Sign up to leave a comment.

Articles