Ruby¼Ì³Ð
¾ÅͲһÌõ
Ruby ÀàµÄ¼Ì³Ð
¹Ø¼ü×Ö: Ruby ÀàµÄ¼Ì³Ð
Ò»¡¢ÆÕͨ·½Ê½µÄ¼Ì³Ð
RubyÖ»Ö§³Öµ¥¼Ì³Ð
ruby ´úÂë
class
Child < Father
......
end
ObjectÊÇËùÓÐÀàµÄÊ¼×æ£¬²¢ÇÒObjectµÄʵÀý·½·¨¶ÔrubyµÄËùÓжÔÏó¶¼ÊÇ¿ÉÓõġ£
superµÄʹÓãº
1¡¢ÔÚinitializeÖÐʹÓÃsuper£¬½«µ÷ÓÃÆä¸¸ÀàµÄinitialize·½·¨
2¡¢ÔÚÒ»°ãµÄʵÀý·½·¨ÖÐʹÓ㬽«µ÷ÓÃÆä¸¸ÀàÖÐͬÃûµÄ·½·¨¡£
ÏòÒ»¸ö¶ÔÏó·¢Ë͵÷Ó÷½·¨Ê±£¬rubyµÄ±¾Öʹý³ÌÈçÏ£º
1¡¢ruby½«¼ì²é¸Ã¶ÔÏóËùÊôµÄÀ࣬Èç¹û¸ÃÀàʵÏÖÁ˸÷½·¨£¬¾ÍÔËÐи÷½·¨
2¡¢Èç¹û¸ÃÀàûÓÐʵÏָ÷½·¨£¬ruby½«ÕÒµ½ÆäÖ±½Ó¸¸ÀàÖеķ½·¨£¬È»ºóÊÇÆä׿¸¸À࣬·²´ËÒÔÍù×·ËÝÕû¸ö׿ÏÈÁ´
3¡¢Èç¹û×îÖÕûÓÐÕÒµ½ºÏÊÊ·½·¨£¬ruby»á²úÉúÒ»¸öÌØÊâµÄÐÐΪ£¬Òý·¢Òì³£´íÎó
£¨×¢ÒâÕâÀ︸À࣬Èç¹û¸ÃÀàÖÐincludeÁËÒ»¸ömodule£¬ÔòrubyÈç¹ûÔÚ¸ÃÀàÖÐûÓÐÕÒµ½¸Ã·½·¨¶¨ÒåÊÇ£¬»á°Ñmoduleµ±³ÉÖ±½Ó¸¸Àࣩ
¶þ¡¢Mixin
Õâ¸öÊÇrubyÌṩ¸øÄ£¿éµÄ¹¦ÄÜ¡£ÀඨÒåÖУ¬Í¨¹ýincludeÒ»¸öÄ£¿é¡£µ±ÀàʹÓÃincludeºó£¬Ä£¿éµÄËùÓеÄʵÀý·½·¨£¨ºÍ³£Á¿£©ÔÚ¸ÃÀàÖоͿÉÒÔʹÓÃ
ÁË¡£ÏÂͼÏÔʾÁËÀàºÍmixinÄ£¿éÖ®¼äµÄ¹ØÏµÆäÔÀíÊÇ£¬µ±Ò»¸öÀà°üº¬Ò»¸öÄ£¿éʱ£¬Ruby´´½¨ÁËÒ»¸öÖ¸Ïò¸ÃÄ£¿éµÄÄäÃû´úÀíÀ࣬²¢½«Õâ¸öÄäÃû´úÀí²åÈ뵽ʵʩ
°üº¬µÄÀàÖÐ×÷ΪÆäÖ±½Ó³¬Àà¡£´úÀíÀàÖаüº¬ÓÐÖ¸ÏòÄ£¿éʵÀý±äÁ¿ºÍʵÀý·½·¨µÄÒýÓá£Õâ¸ö´úÀíÀàÊÇΨһָÏòµ×²ãÄ£¿é£º¸Ä±äÄ£¿éÖÐij¸ö·½·¨µÄ¶¨Òå
Ëü½«¸Ä±äËùÓаüº¬¸ÃÄ£¿éµÄÀà¡£
×¢Ò⣺
1¡¢Ä£¿éºÍÀàµÄÇø±ðÔÚÓÚ£¬Ä£¿é²»ÄÜʵÀý»¯£¬À಻ÄÜinclude
2¡¢Èç¹ûÄ£¿éºÍÀ಻ÔÚͬһ¸öÎļþÖУ¬Èç¹ûҪʹÓÃinclude£¬ÔòÏÈʹÓÃrequire£¬°ÑÎļþÒýÈë¡£
3¡¢include²¢²»ÊǼòµ¥µÄ½«Ä£¿éµÄʵÀý±äÁ¿ºÍ·½·¨¿½±´µ½ÀàÖУ¬¶øÊÇ£¬ËüÊǽ¨Á¢Ò»¸öÓÉÀൽËù°üº¬Ä£¿éµÄÒýÓá£Èç¹û¶à¸öÀà
ÒýÓøÃÄ£¿é£¬¶¼½«Ö
Ïà¹ØÎĵµ£º
¡¡×î½ü£¬ÎÒÐèÒªÒ»ÖÖ¿ìËÙ¿ª·¢ÓïÑÔ£¬Ä¿Ç°ÖËÊÖ¿ÉÈȵĿìËÙ¿ª·¢ÓïÑÔ¾ÍÊÇPythonºÍRubyÁË¡£RubyºÍPython¶¼ÊǷdz£ÓÅÐãµÄ½Å±¾ÓïÑÔ£¬ËäÈ»ËûÃǵÄÉè¼ÆÕÜѧ¼¸ºõÍêÈ«²»Í¬£¬µ«ËûÃÇЧÂʲ¶à£¬Ó¦ÓÃÁìÓòÒ²²î¾à²»´ó£¬ËƺõÌìÉú¾ÍÊǾºÕù¶ÔÊÖ¡£µ½µ×Ñ¡ÄǸöÄØ?ÎÒ×öÁËһЩ¼òµ¥µÄ±È½Ï¡£
¡¡¡¡ÎÒÃDZȽ ......
ת×Ô http://www.advidea.cn/biancheng/200943135232.html
Ruby watir ²âÊÔ¿ò¼Ü
´ó¶àÊýÈ˶¼»á°²×° ruby,
Ҳͨ¹ýRuby °²×° gem,
Ò²°²×°ÁËruby IDE¿ª·¢¹¤¾ß£ºnetbeans,
µ«¾ÍÊDz»ÄÜÅÜwatir»·¾³£¬¿ñÔμÓÍÂÖС£¡£¡£
´íÎóÈçÏ£º
in `require': no such file to load -- watir (LoadError)
·´Õý¾ÍÊÇÕÒ²»µ½watir,ÕâÀï ......
class Point
@x = 1
@y = 2
def initialize(x,y)
@x,@y = x,y
end
end
´úÂëÖеÄ@x£¬@yΪʵÀý±äÁ¿£¬ÊµÀý±äÁ¿Ö»¶ÔselfµÄ»·¾³Æð×÷Óã¬Òò´ËinitializeÍâÃæµÄ@x=1£¬@y=2Ö»¶ÔÀà±¾ÉíÆð×÷Ó㬶ø·½·¨ÄÚ²¿£¬µÄ@x£¬@yÊǶԶÔÏóµÄʵÀýÆð×÷Óõġ£
class Point
include Enumerable
def initialize(x ......
ÎÒÃÇÖªµÀrubyÖжÔÓÚÕûÊýµÄ[],[]=,<<,>>²Ù×÷ÊÇÕë¶ÔÓÚ¶þ½øÖƵÄÖµÀ´ÔËËãµÄ¡£
ÎÒÏÖÔÚдһ¸öÕë¶ÔÊ®½øÖÆÊý²Ù×÷µÄÀ࣬ӵÓÐÕûÊýµÄËùÓз½·¨£¬ÈçÏÂ:
class InterEx
def initialize(val=0)
@val=val
end
def to_s
@val.to_s
end
def [](idx)
self.to_s[idx].to_i
end
d ......
ʹÓà will_paginate ½øÐзÖÒ³ºÍ¼òµ¥²éѯ
ÔÚÃüÁîÐÐÏÂʹÓà gem install will_paginate ÃüÁ³öÏÖÏÂÃæ½á¹û°²×°³É¹¦
´ò¿ª books_controller.rb (Äã×Ô¼ºµÄ¿ØÖÆÆ÷)
×¢Ê͵ô²éÕÒÈ«²¿µÄ·½·¨£¬Ê¹ÓÃÏÂÃæµÄ·½·¨£¬ÒѾ¼¯³É¸ù¾Ýtitle½øÐвéѯ
Ruby´úÂë
#@books = Book.all
@books = Book.pagina ......