由于我在RoR中编写游戏,我需要有一个游戏循环,负责每次页面刷新时检查不同的事情。我的问题是,实施的最佳方式是什么?
我目前在我的应用程序控制器中包含了game_loop。这是最好的做法吗?
答案 0 :(得分:1)
在ApplicationController
中执行游戏外观before_filter
听起来很合理,尽管您可能不希望将您的逻辑放在此类中:
class ApplicationController < ActionController::Base
before_filter :do_game_loop
private
def do_game_loop
Game.do_game_loop # the implementation of Game is in another file, maybe in lib
end
end
请注意,这将在应用程序中每个操作之前执行游戏循环,该操作涉及从ApplicationController
延伸的控制器,包括用户登录,注销等。可能更好仅在肯定需要处理游戏循环的控制器中添加before_filter
。