Thespian的独白日记:演员的应用程序

作为一个演员转变为程序员/演员保持一个演员但又追求编程的人,我需要一个地方来保留自己的独白。 无论是像我的手背一样知道的独白,还是在阅读新剧本时遇到的独白。

在我的朋友Gianna和我制作此程序之前,我有一个名为“ Monologues”的Word文档,其中包含我所有曲目中的所有独白。 在快速访问我的独白时,不是最坏的,但不是最好的。

输入舞台右侧:Thespian的独白日记。

请稍等…我输入的是1,但我的意思确实是2。我想返回搜索结果,但是我在此处定义的“后退”方法只是将我带回到主菜单(如下面的代码所示) 。

  def back 
放置“请键入'back'返回”
答案= gets.chomp.downcase
提出“清除”
如果答案==“返回”
list_commands
其他
背部
结束
结束

该代码有效,我想还可以,但是我认为这与用户体验无关。 谁想要使用不允许您搞砸几次的应用程序?

“人非圣贤孰能; 宽恕神圣” —亚历山大·波普

而且我们希望这段代码是神圣的!

解决方案

争论! 当我们第一次学习编码时,总是将参数传递给方法,但是,无论出于何种原因,我似乎都忘记了使用参数来帮助抽象方法。

老实说,在实际程序中用于解决此问题的代码有些混乱(很快就会修复,请耐心等待!),所以我担心现在将确切的代码放在这里可能会造成混淆。 但是这是我计划如何修复代码的代码片段:

  def back(方法) 
放置“请键入'back'返回”
答案= gets.chomp.downcase
提出“清除”
如果答案==“返回”
方法
其他
后退(方法)
结束
结束

这是该方法的作用:’back’方法将方法作为参数。 每次调用“ back”方法时,它将要求用户键入“ back”。 当用户键入“ back”时,您传入的方法将被调用,并应调用您刚使用的方法,表面上将您返回到您刚使用的“页面”。 如果用户输入的不是“ back”(后退),则它将自行调用,要求您再次键入“ back”。

这几乎是非常简单的事情,但是它使您的代码更加灵活,使您的生活变得更加轻松!

刚开始,很难记住实现目标的所有不同方式……

但是要记住的一件好事是尽可能多地抽象……而参数是做到这一点的好方法!


下载这个软件:

在您的终端中,复制并粘贴以下代码。

  git clone git@github.com:okasten / module-one-final-project-guidelines-dumbo-web-100818.git 

然后使用以下代码运行该应用程序:

 红宝石bin / run.rb 

请继续关注使用Ruby on Rails的该应用程序的更新版本!