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²¢²»ÊǼòµ¥µÄ½«Ä£¿éµÄʵÀý±äÁ¿ºÍ·½·¨¿½±´µ½ÀàÖУ¬¶øÊÇ£¬ËüÊǽ¨Á¢Ò»¸öÓÉÀൽËù°üº¬Ä£¿éµÄÒýÓá£Èç¹û¶à¸öÀà
ÒýÓøÃÄ£¿é£¬¶¼½«Ö
Ïà¹ØÎĵµ£º
1.1.Rails
1.1 ´´½¨Ò»¸öRailsÓ¦ÓóÌÐò
$ rails app_name
¿ÉÑ¡Ïî:
-d, database=xxx Ö¸¶¨°²×°Ò»¸öÊý¾Ý¿â(mysql oracle postgresql sqlite2 sqlite3 ), ĬÈÏÇé¿öÏÂÊÇÊý¾Ý¿â
-r, ruby-path= Ö¸¶¨RubyµÄ°²×°Â·¾¶,Èç¹ûûÓÐÖ¸¶¨£¬scriptsʹÓÃenvÈ¥ÕÒRuby
-f, freeze (¶³½á)freezes RailsÔÚvendor/railsĿ¼
1.2 API Docume ......
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 formµÄÁ½ÖÖд·¨¡£
Ruby formд·¨Ò»£ºÊ¹ÓÃform_for
< % form_for :order, :url => { :action => :save_order } do |form| %> < p> < %= label :order ......
ruby³£¹æ·ÃÎÊaccessÊý¾Ý¿âµÄ·½·¨Ó¦¸ÃÊÇʹÓÃDBI¿â
£º
require 'dbi'
DBI.connect("DBI:ADO:Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db.mdb;")
¿ÉÊÇ
¼òµ¥³¢ÊÔÖ®ºóûÄܳɹ¦£¬ÌáʾÕÒ²»µ½Çý¶¯Æ÷ADO,ÀÁµÃÔÙÊÔ£¬ËìÕÒÆäËû·½·¨¡£
Ò»·¬ËÑË÷Ö®ºó£¬·¢ÏÖ¿ÉÒÔÓÃWIN32OLEÀ´·ÃÎÊaccess,дһ¸ö¼òµ¥µÄÀà°ü×°Ö®:
......