关于Ruby常因此语法案例累积

变量问题:

直至昨晚竣工,学习了一个多月份之MVC与jQuery,从所开的演习中,发觉jQuery的代码也发跟C#言语一样可重构,多页面有同样使用的艺术函数,均好放于一个单独立的js文件或者自定义的js库中。

看似变量和艺术变量的别是啊?

每当动用时,引用此库文件即可。举个简单的事例,如前方介绍的蝇头单下拉列表联动的功效,不管是于MVC添加,还是编辑时,均用写上几乎独一律之函数来实现。为了js代码没有冗余。我们即便足以重构它们了。

好像变量:可以直接利用

每当MVC应用程序下之Scripts目录下,创建一个insus.common.utility.js库。
图片 1

艺术变量:需要实例化后,才能够采取该变量

js类库中,只是简短把少单函数搬过来。
有一个地方,即是管#23行代码,改为#24执。这样好配合到MVC创建和编辑的下拉列表的联动。

案例一:

连下去,我们可以修改Update.cshtml和Create.cshtml视图了,先押Update.cshtml视图:
图片 2

class Person
   @@name = "Tom"
    @@names = "Toms"
    @@age = 10  
  def jek
      @jj = "jj"
      @@bb="wonter"
  end  
  def Person.getName
    return  @@name
  end
  def Person.getNames
      return  @@names
    end  
    def Person.getage
        return  @@age
        end    
end
class Xx < Person
    def aa
        puts "#{@@age}"    
        ll = Person.new
        ll.jek
        @bb = @@bb
        puts "#{@bb}"

    end
end
puts Person.getNames
x = Xx.new
x.aa

咱们补充加了#5实施代码,那是援刚才创建好之js库。还是把#105至#127履代码删除。再看Create.cshtml视图:
图片 3

父子类继承问题:

引用#8行代码,把#15改为#16行,把#31改为#32。把#37至#57行代码删除。
通过之如出一辙改,就上我们的初期目的了。

重写父类方法,或直接下父类方法。

案例二:

class Father
  def says
    puts "I am father."
  end
  def fatherInfo
    puts "father info."
  end
end
class Son < Father
    def sonInfo
    puts "son info."
    end
end
class Two < Father
    def twoInfo
    puts "two info."
    end
end
#father = Father.new
son = Son.new
two = Two.new
#father.says
#father.fatherInfo
son.says
son.sonInfo
son.fatherInfo
two.twoInfo
two.says

传参问题:

类中参数的传递与运。

案例三:

class Father
  def initialize name
    @name = name
  end
  def says
    puts "I am father."
  end
  def fat xx
      @xname = xx
      puts "I am father. #{@xname}"
  end  
end
class Son < Father
  def sayss
    puts "I am son. name: #{@name}"
  end
  def sonsays
      puts "no : #{@name}"
  end  
end
son = Son.new "Tom"
#son.says
#son.sonsays
son.fat "wonter"

循环和判断问题:

提到数组

案例四:

list1 = ["192.168.48.202","icare","log"]
list2 = ["192.168.48.101","tomcat","sysif"]
length = list1.length
length.times do |t|  
 #print "#{list2[t]} \n"  

 if list2[t] = list1[t]
     puts "ok list1:#{list1[t]} \n list2:#{list2[t]}"
 else
     puts "no"
 end
end  
puts "#################################################################"
for i in list1 do  
  print "#{i} "  
end 
puts "\n"

关于引入和通配:

load 'D:\Workspaces\Ruby2\control\CdkPkg.rb'
#load 'D:\Workspaces\Ruby2\control\Cdel_linkP.rb'
class Home 
  def test_linkpkg    
      pkg=ClinkPkg.new
      pkg.linkPkg
   end
#  def test_del_linkP
#      del=Cdel_linkP.new
#      del.del_linkP
#   end
end
t = Home.new
test_methods = t.public_methods.grep(/^test_/)  # 把所有test_开头的方法找出来。
test_methods.each do |test|
  t.send(test)  # 执行每个测试用例。
end

实则不任啊语言,什么语法都是各有千秋,关键就看怎么用之好,怎么用底随手。

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图