From: "Jesús Gabriel y Galán" Date: 2010-09-07T01:43:23+09:00 Subject: Re: My First Application On Mon, Sep 6, 2010 at 6:32 PM, Jason Hhh wrote: > Jesús Gabriel y Galán wrote: > > >> - Variables that start with $ are global variables. Try to avoid them, >> and specially in a program like this I think they are not needed. Make >> them local variables, and replace the few that you use inside the >> class with an instance variable that you set when creating the >> instance. > > How can I get the variables into the class then? Pass them in the initialize method if they are variable or use Constants inside the class, if they are harcoded values. >> - For an infinite loop: loop do {}, instead of while 1==1 >> >> - I can't see how you exit the loop > > I would like the user to be able to exit the loop by pressing a button > or something like that but I'm not sure how to do that without messing > up the looping. If you have some work to do that you don't want to stop to ask the user for input, you should use threads or processes. You launch a thread or process to do the work and present a menu to the user in the main thread to control the job. >> - In the loop body, there's too much detailed processing of the >> message, calling to_s, downcase and indexing several times. There's >> probably a way to DRY that up, but I'm in a rush right now. > > Thanks for your your feedback Jesus. BTW, nice job with your first application, looks really good for a first try. Jesus.