新手问题 面向对象设计问题

bianlimit · 2014年06月13日 · 最后由 rco 回复于 2014年06月14日 · 2205 次阅读

小弟初学 ruby(之前没折腾过面向对象)。现在想做一个这样的脚本,看能不能用面向对象的方式。

目的:公司来新员工后,用这个脚本自动添加 AD 账号,添加 posix 账号(如果是工程师),在编译服务器上添加相关个人文件夹并设置权限(如果是工程师)。

上面这样的流程应该怎么去折腾面向对象?或者不适合这样做?

不要为了面向对象而面向对象。

#1 楼 @hooopo 我感觉这个好像也不折腾,只是为了弄明白面向对象。看样子这个更适合过程。 谢谢!

简单说,主要是确定类和方法。员工就是类,可区分为普通和工程师。有一个注册方法。

class Employee
  attr_accessor :name

  def initialize(name)
    @name = name
    add_ad_account(@name)
    add_posix_account(@name)
    add_personal_folder(@name)
  end

  def add_ad_account(name)
    ...
  end

  def add_posix_account(name)
    ...
  end

  def add_personal_folder(name)
    ...
  end
end

Employee.new("Bian Limit")

已经开始折腾流程的。
太多的要判断了。 谢谢楼上的兄弟了

6 楼 已删除

#6 楼 @2033391318 随便找到的现成例子:

require 'rubygems'
require 'eventmachine'

EventMachine.run {
  EventMachine.add_periodic_timer(2) {
    puts "a"
  }
}

@rco 请教一下:eventmachine 是关于什么的?

首先你要先有个对象。

#6 楼 @2033391318

loop do
  puts "a"
  sleep(2)
end

#7 楼 @rco 哇这需求就上 EM 实在是杀鸡用牛刀...

#12 楼 @blacktulip 估计真正要的不会是那么单纯重覆印出 a 而已。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号