As Sloth As Possible

ǽʸ¤ʥޥΤǤꤿ

ݡ

칩ǹԤʤ줿SBM˻äƤۤmixi֥˽񤤤ƤȤΤȤäΤǡۤȹͤȤޤȤ롣

ȤƤ⿷ä

ְŪäΤϡޤäͤ˷빽ΩοͤȡSBMˤϡSIȤο͡ǡޥ˥󥰤쥳ǡθ򤷤Ƥ븦ԡWebӥγȯԤ䱿ļԡѹʳʤɤʤɡ

ϤȤƤ⿷äŻȤ̣ǤȤǶᵻѷϤΥե󥹤ٶ˲٤­򱿤ǤΤɡʷϵȤϤޤǰ㤦϶̣Ūˡ֥󥷥塼޸Webӥפ˸ƤΤǡʤBtoBʶȳ並Ԥȸή뵡ϾʤƱ˽ޤ뤳Ȥǡΰ㤤ΰ㤤򴶤ƻɷ뤳ȤǤɤä

ݤ˻Ĥäȯɽ

ɤⶽ̣ƤäΤɡŪˤʤ뤷ƤǻΤǡŪäȯɽԤ¾λüԤˤǤȤơĤݤ˻ĤäȯɽˤĤƤλ

ǥȥޡƥ

ȯɽԤϳؤingҤβĤSBMˤ򤶤äȤʤꡢΥǥϤɤ֤ƤơɤŸƤΤɤȤƤä

ޤSBMȤϥ饤֥åޡȤӥdel.icio.usΡ֥֥쥤פȰʹߤΡ֥֥쥤פʬơΰ㤤ͻΰ㤤ϡ֥Υ֥åޡΥХååסȥ졼ǤäΤdel.icio.usʹߤѤΥġˤʤäפȤȻŦޤɾβĻ벽֥ζδˤ֥ѡޥ󥯡פá륿󥰤ʤɤʬˡ֥֥쥤פȤϰۤʤװǤ롢Ȥ⡣

ǸSBM֤ƤˤĤơ֥֥쥤פȤϸ󥱡ȷ̤ˤܤǤ7%٤Ρ֥桼פʤȤλ¤ŦޤޤSBMϤ֥㥺ۤƤʤפΤäƤΤ϶ǧǤϤɡºݤ˿򸫤ήФسȤ롣7%äơ˼ʬ볦ǻ椤׽ĤäƤȤǧʤ󤳤SBM֥ġȤơסְռŪˡǽưŪˡ׻ȤäƤ桼äǤäơȵդ̤ʤɤSBMéĤꡢ֤ΰòSBMɤSBMȸƤФƤʤӥȤäƤͤϴޤޤƤʤȤϤϤääƤޤ֤ޤˤѥפΤϳΤ

Ƨޤǡ̵˰ؤإץΤǤϤʤĺ֡פ򥭡ɤˡ٥åȤ򶹤¸ߴƤŪʤΤܻؤ٤ǤϤʤȤƤä㤨ΰòSBMȥSBMХSBMʤɡºݤ˥˥åSBM䥤ȥSBMϤۤ¸ߴƤƤϤɡХSBM˴ؤƤϺΤȤޤΩä㤬ʤߤĿŪˤϲŪͳȤƲĤϡmixiХʤɤΥߥ˥ƥǽФƤ˥塼乹󤬡PCʸ֤SBMξۿ̤ƤΤǤϤʤפȸäƤɡ¿ʬñˡSBM˥ݥȤŤ餤פΤθȻפ֥åޡåȤ䥢ץꥱȤʤURL򥳥ԥڤŤ餤ˤ⤽üǤΥ֥饦ˡURLפռ̤˾ʤ㳲쵤ˤ褦ʲФƤʤ¤ꡢХʸSBM夷ʤΤʡȻפ

ʤߤˡĤΥץ쥼ϤȤƤ򤫤äƤ⤵뤳Ȥʤ˰ʤäɤäƶϤäȤ⶯ΤϤ뤪ʤΤǤϤʤ

WebˡֵդפѤ륳󥺡ޡ

ȯɽԤϥ󥺡ǥ꡼줿Ф󥺡ޡξҲ𡣲ɤΤϼºݤ˻ȤäƤߤyuguiε򸫤ꤷƤ餦ᤤȻפΤǡƲϤʤ

ؿΤϤUIؤΤꡣ䵤Υ᥿եΤơ˥ޡȥȤΨɤǤ뤫ɵᤷäϻͤˤʤäʤ¾˥٥ʲ򤬤ʤ顢̤ˡָ¤ˤ벿פ˻ɬפϤʤդUI߷פäˤʤΤǤޤ̤εˤĤĤƹͤ뤳Ȥˤ롣

ȡŪäΤϡְȥȤ򥻥åȤˤưĤΥޡפˤ롢ȤȥȤФˤʤäƤ뤳ȤǡñΤǥƥĤȤȡϥ󥺡ޡդ륵ӥǤƱˡñWeblogϿǤ륵ӥפȸäƤɡϤTumblr˻Ƥڡ򼴤ˤƥޡ¤٤ȡ֤륳ƥĤФƤᡦפ˸Τˡͤ򼴤ˤ¤٤ȡ֤οͤ򸫤ƤɤפäΤ֤줿Ͽפ˸롣ǤοͤθФƤ뤷켫ΤΩɤʥƥĤˤʤ롣򤤡

ƤƻפäΤϡSBM˻ƤϤ뤱ɡSBMȤϤޤ٥ȥΰ㤦ӥʡȤȡSBMôäƤΤΥơ礭ſ򷹤ӥΤ褦˻פ롣󥰤ʤɤⶡƤϤΤɡɾʬȸäǤϥᥤǤϤʤդˤä˽ſ᤹Ȥäޤ줿̥ϤäƤޤ⤹롣女󥺡ޡɤȯŸΤ˵ˤʤȤ

ѥͥǥå

ѥͥ顼Τߤ۾ε󤬾Ҳ𤷤SBMƳ㤬򤫤äSBMƳȤǡʤȤ桼ƱΤƱ򸫤ȤͭǤƤ뤳ȤǡʤγǧΤλ֤äơꥳߥ˥˽Ǥ褦ˤʤäȤΤȡޤƳϰǻϤơθ桼礷ݤˡ֥ΥƾͭΥȤ夬פȤǰ줿֤ष¾ưΤͭספȳ͹ɾǥΥäϵʤäȤΤȡȡʸ⥯åפǤ褦ˤƤºݤˤϼʸΥåפؤɤʤäȤ⡣򤤡äˤ⥯åפ꥽ϻɤʡ

줫顢SBMƳߤ۾󥷥塼޸˥롼ñ̤SBMBuzzurlPlusפ꡼ECʥӤˡ֥ߥ˥ƥָȤդʸ᤿פȤⶽ̣ϼ¤livedooråץƱոǡSBMŸˤϥˤʤȻפäƤ롣

¾Ūʰ

쥳ǡȤڤSBMܤƤͤ¿äݡΤˡҲؤ󹩳ؤʬθȤƤ򤤥ǡѤƤ뤷ޡƥ󥰤ΥġȤƤ쥳ǡϽפǤɡ֥ƥĤɾȤƤSBMפ֥ߥ˥ƥȤƤSBMפؤθڤʤäȤˤʤ롣ˤĤƤϸҤ롣

ȡޤʬڤäƤȤɡϤƥֿ͵ۤץ쥼Ǹڤnaoya󤬥˥˥䤷ФꤷƤΤ򤫤äޤSBMӥ󶡼ԤȤƸäƤȡ֤Ϥƥ֤Ĺꡦפ򤽤ΤޤޡSBMĹꡦפߤ˸ΤϤ⤦ŤˤʤäߤʤȻפäåפʤ㤦ȤäƤɡäѸƤʤȤ٤ʤääȻǰޤϤɬפʡ

Ф˻פä

ȤꤢϽ񤫤ʤ櫓ˤϹԤʤȻפäƤΤǽ񤯡

ʤmixi?

SBMϡmixi٥ȤȤäƹΤ졢mixi٥ȾǻüԤδ٤줿ޤۤmixiǽ񤯤褦졢(üԤmixiΥ桼ǤΤʤΤ)mixiǸήޤ礦Ȥ줿mixiӥȤɤäΤǤǤϸ뵤ϤʤΤϡSBMȤ򱿱ĤˤäƤˡŬڤäΤȤȡ

(ɵ: 6˥֥Τȥ᡼⤷ƤΤΤäƤɡ4ǤιΡ5TechTalk.jpǤιΤˤϵդƤʤäѤδ㤤Ǥ͡ޤ󡣤ޤǤ⤽Ǥmixi٥ȤǤαѤȡۤmixi˽񤯤褦˴뤿Ȥ̯ʡȻפΤǡεҤϻĤƤޤTechTalk.jpŨ롣ȥåȤ)

mixiϵϤǤϤΤΡֱˤ񤭹ߤˤ⥢Ȥɬפʥɤʥߥ˥ƥפǤ뤳ȤѤϤʤǤʾ塢ξ˸ã뤳ȤǤʤSBMȤäƼΤ뤳ȤǤʤʤ꡼ϤSBM˴ؿͭפʾäƤͤθ¸ߤΤ뤳ȤǤʤäꡢΤäƤƤ⻲äǤʤäꤷǽ롣

ϤäSBMΡ׸ʤΤˡSBMСƤʤ׾ǹԤʤ̣狼ʤǽ餫֥ǹΤơ᡼ǻüԤʤꤷơۤϥ֥˽񤤤SBMǥ֥åޡ뤳ȡȤˡŬڤǤϤʤäΤäơTwitterǤޤޤäʹʤФ⤽¸ߤΤʤä䡢Τʤäס줫顢λüԤΥ֥Ͼζͭ䤹褦ˡSBMץդƤȤޤǻؼФƤˤؤ餺mixiȤ̵бǤʤ˴ۤ񤯤Ȥ侩ȤϤɤȤʤͳΤʤ󶵤ߤǤʤΤʤ鼡ʹߤϰ㤦ˡƤߤ

ӥ󶡼ԤλǸäƤͤߤä

줫顢㴳ˤʤäΤϡȯɽƤӥͥȳؽѤФ굤̣äȡ㤨С쥳ǡեΥߡθоݤȤƸˡSBMϥǡνȤª礬¿ɤȡ桼ƱΤΥߥ˥ƥʸ䡢ΥƥĤղä줿Ȥ߽Фͤ䡢UIˤ桼ưѲʤɡSBMȤ֥ӥפ˽פǤФƤʤ

󡢳ؽŪʸоݤȤƤ˰ɤΤǤ뤳Ȥ⡢ӥͥδǤ̤ͥȤ㤤Ȥ⡢ʬˤ狼롣줫顢䱧äϤդˤ⿨줿󥺡ޡξҲ⤢ä櫓ǡϤѻͤˤʤäɡ1åȤäƤդ򷡤겼Ƥ̲ꤷääƤ⤤餤ΥơޤʤΤˡ줬̵äΤǰ

Ǹ

Ĥϵ󤲤ɤ⡢ȯɽ϶̣ΤФäθ̤Τ礨⤹ɷΤȤƤͭפʻ֤ǤĤȯɽԤٷƻ֤򻶤ΰ߲ǤäƤäˤߤʤ󤢤꤬Ȥޤ

֥ͥ
Objective-C ˻桪

ܲObjective-C 2.0ɽ˻äƤɽȤΤ˻äΤϽƤɡƱܤɤǡɤʬФơ֤狼ʤס֤䤽ϼ¤ϤȤǡġפȤȤ桹򤫤äͤɤǤȥ롼ʤȤ⽦äƤߤٶˤʤʤ

겿ꡢObjective-CʤƤޥ˥åʸΡɽʤƤȥåʺŤˡ24ͤ⽸ޤäΤiPhone̤ʤƻפäɡǤiPhone㤦ɽͤʤäΤݿä䲶ʤɡȤϸʤǾư㤤ͤʤɡɤä衣

CHAPTER2CHAPTER3ޤǤɤCHAPTER2Objective-CδŪħ乽ʸCHAPTER3饹ȷѾäƤ˴ؤƤϾܲObjective-C 2.0ɤǤ餦Ȥơʲɽ˵󤬤ää­

[[Hoge alloc] init]ˤĤ

ObjCǥ饹饪֥ȤΥǥˤĤƤáallocθ³ƽ񤫤ʤȤʤȸ줿Ȥ뤬ϲΤɤʤΤޤ줬ɬܤʤʤŻˤʤΤפȤμ䤬󤬤ä

allocθinit⤷init...ǻϤޤå³ͳϡƤӽФ¦ǤʬƻȤȤޤ̵顣̤ˡ

id obj = [Hoge alloc];
/* ʤ̤ʽ */
[obj init];

ȤȤʸˡ̵ɡNSObjectΥ饹᥽åɤǤȤallocñ˥Ƥƥ֥Ȥǡ줬֥ȤȤƿ񤦤ˤϺǽNSObjectΥ󥹥󥹥᥽åɤinitƤӽФƤʤФʤ餺Υɤѿobjϡ֤ʤ̤ʽפ򤷤ƤˤϡֲǤʤ褦ȤȰ۾ʵư򤹤סܤϸƤʤɡNSObjectinitϷ빽äƤϤ԰ʾ֤ΤΤäƤåȤϤäݤüʥǤʤȳ̵ʤΤǡallocȽƱˤäƤޤ褦ˤޤ礦ȸá

㤢ǥƤȽ̤ʤǤȸȤäٶ­¨ǤʤɡŪˤ̤Υ֥ȤŪ˻ȤƤȤΤ⤷ʤ߷׻ۤ餸ʤȤ狼ʤʡ

ʤߤˡallocinit֥Ȥ֤饹᥽åɡפϤ롣NSObjectnewäƥ᥽åɤƤΤǡ嵭Υǥˡ

id obj = [Hoge new];

äƽ񤤤ƤƱ̣ˤʤ롣ȰʤinitƤӽФʤΤǡդƱΤȤꤿä餽Ȥ򤹤륯饹᥽åɤƤɬפ롣ȡCocoaΥ饹Ǥǿ䤳ȤƤĤϡ饹᥽åɤѰդƤ롣㤨NSArrayarrayWithObjects:ȤʤߤˡFoo饹Υ饹᥽åɤΡfooWithHoge:פȡFoo饹Υ󥹥󥹥᥽åɤΡinitWithHoge:פбΤˤʤäƤ褦

Υǥ

ܲObjective-C 2.0ˤϡ̾AΤ褦ˤ롢Ƚ񤫤Ƥ롣

- (id)init
{
    self = [super init];
    if (self != nil)
    {
        /* 餫ν */
    }
    return self;
}

ϼ¤ϡΤ褦˽񤤤Ƥξʤ

- (id)init
{
    [super init];
    /* 餫ν */
    return self;
}

ѡ饹νŪ˸ƤӽФȤȡreturnάǤʤΤѤʤɡŪselfؤnilåϤʤƤǤ롣ѡ饹νéäNSObjectinitƤӽФȼưŪselfإ֥Ȥ뤷selfnilǤnilФåñ̵뤵סޤ󥹥ѿΰȤϴɡ

㤢Ǥ虜虜selfؤŪˤΤȸСself˼ʬȤʤ֥ȤƤ⤤׾ˡ֥ѡ饹init֤ͤʬȤȤϸ¤ʤפ顣ȥåʼǽʤΤ(㤨NSStringȤϼ¤Ϸ빽ȥåʤȤäƤ롣äФƤΤʬ)üʤȤ򤹤ΤǤʤϾΥǥǽ񤤤ƤselfʬȤʤƤ⤤äʡï

superΰ̣

selfñ˥֥ȤäΤФsuperѿդؤϤǤʤ¿ʬͽʤʡsuperϲȸȡּʬ̤ηѾطéäƹԤäƺǽ˸Ĥ饹μȤäơʬΥƥȤǤν¹ԤפȤʸ񤷤͡

ŪˤϰľΥѡ饹򸫤ơʤФ˾ءĤ򷫤֤ƺǽŪˤNSObjectޤǹԤǡְľ夫餸ʤơåפƤĤΥ饹Υ᥽åɤƤӽФ뤫פȤä夬äʹƶäɡ¤Ϥ㤯㤷ɤ񤱤ФǤ餷ɡ¹Ի˴¸Υ饹ν񤭴ޤǤäƤΤObjective-CˤơɾηѾط򸵤ˤ䤳ԤʤΤϴ롣ǽŪˤϡ֤Ǥ뤫ǤʤꡢʤȤ򤷤ʤʤʤ褦߷פ͡פȤĤ㤽

å쥯

֥᥽åɤƤӽФݤ˰ĤȤˤϺǸ:դ롢ʣΰȤ"keyword:"¤٤פȤΤɤǡʹߤ˥ɤդΤʬäɡˤϥ᥽å̾ǥɤ̵ɡդˡϤʤΤפȤμ䤬夬äϤäȸ򤷤䤹ݥȤ⡣¿ʬ᥽å̾ȤåɤȤä

㤨С

[obj setValue:@"hoge" forKey:@"name"];

ȤΡ֥å쥯פϡsetValue:forKey:פΤҤȤޤȤޤǤäơκݤ:Υɤޤࡣä̵Ruby˽񤯤ȡʲΤ褦ʥ᡼

# RubyǤϥ᥽å̾:ϻȤʤɡ˻ȤȤ
obj.setValue:forKey:("hoge", "name")
# äȸȡ᡼
# ֥åѥå󥰡פäݤ
# ºݤ᥽åɸƤӽФˡObjCˤ⤢롢
# ȤŪˤCδؿǤȤ򤷤Ƥ
obj.__send__(:setValue:forKey:, "hoge", "name")

ʤΤǡֺǽΰܤ᥽å̾ǡܰʹߤɡפȤΤϸꡣ츫ʬƤ褦ɡäĤ = ᥽å̾פȻפä쥯(SEL)ȤäƾRuby__send__ߤʤȤȤˡ

SEL sel = @selector(setValue:forKey:);

ʤɤȤơ֥᥽å̾פ롣

ʤߤˡǽΡְܤΰϤɤ˽񤯤ΤפФƤϡֲΰΤ狼᥽å̾ˤפʡCocoaȰĤΰ᥽åɤ㤨С

id url = [NSURL URLWithString:@"http://www.apple.com"];

Τ褦ˡΰ뤫ʬ褦̿̾ΤˤʤäƤ롣äsetValue:forKey:⡢ֺǽ餬ͤˤʤ륪֥Ȥǡˤʤ륪֥ȡפäƤΤʬ褦ˤʤäƤ͡

ȤǡäȰ㤦äˤʤ뤱ɡ

# ϤäεRuby
obj.setValue:forKey:("hoge", "name")

첿ФʤȻפä顢

# RubyCocoa
obj.setValue_forKey("hoge", "name")

RubyCocoaOSX::NSObjectѾ饹Υ᥽åɤƤӽФȤȤۤܰ(ޤ˺äƤΤɤ)RubyCocoaMacץäͤϰƳObjCΥ᥽åʤʬ뤫⤷ʤǤ⤽CocoaΤʤRubyCocoaʬŤ餤ääϤ뤱ɡޡ

ܲObjective-C 2.0ɽκ

ϤȤꤢֲɤơǼߤפäƤäɡϿԺƤȤΤȡȡϵäɡ2٤Ǥ̤ʿǤɤΤǤ?Ȥΰո鼡ϻʿˤƤߤ뤳Ȥˤʤä¿ʬˤ⤦󤰤餤Ť뤳ȤˤʤꤽʤΤạ̇̄ͤϥ᡼󥰥ꥹȤ˻äƤߤȤ衪

˻äǡ֤Ȥǽ񤯤ȸäޤ޽񤫤ʤ᥽åɡפȯưƤޤäʬ٤줿ɡRubyKaigi 2008˹ԤäƤ³

ĥ饤֥νֺ(arton)

RubyCdzĥˡβ⡣īޥ˥åʥåʤȻפäīΤ˥ޥ˥åʤΤäƤפȤ¦άä餷īǤĤФޤǤäƤޥ˥åؤʤΤǡά꤫⤷ʤ

Rubyγĥ饤֥Ϸ빽ñ˽񤱤餷򤽤ʤΤǺCٶͤƽ񤤤Ƥߤ褦ʡrubyĥ񤤤Ƥߤƥ - 6ǯhogelogǥץ뤬äƤ뤱ɡϤä򤽤

ȸĿŪ˶̣äΤϡarton󤬥ץץब꤯ưʤƤξǥǥХåϤ᤿Ȥarton󤬤줳񤭴ƤήƤIRCΥˡߤʤǡ֤򤳤Ф󤸤ʤסartonפʤɤȶϤƤ򤫤äڥץʤ̥ƥץäïää

˻ŻǻȤRuby(Ȥ󤵤)

ŻǻȤġ䤽αˡʤɤξҲHikiȤRedMineȤRedMine󿧤ʥåǾҲ𤵤ƤRubyΤissue trackingˤȤƤ餷ٻȤäƤߤ褦ʡ

Ȥʤȥץ󥽡FastladderҲ𤷤ƤˡˤFastladderΥɿƤΤϴְ㤤ʤȤ󤵤ΤȻפ

Ǥ⤽θtwitterǡFastladderäƤǤǶȯƤʤ͡˰äΤʡפȤƤΤ򸫤ƾǤä䤤䤤䤤䡢ޤ˰ƤʤǤȤޤο̾(ͤȤRubyKaigi˹ԤäƤޤ)桹ֵ꤬̣ˤʤäƤޤäƤΤɡκθĿɸˤϤȡFastladderγȯפäƤޤΤǡGoogle롼ˤȿǤƤʤ˿ʤǤХݡȤ˾ʤɵ󤲤Ƥ館ĥäбޤ

The future of Ruby in Mac OS X(Laurent)

RubyCocoaMacRubyξҲAppleҰLaurent Sansonetti󤫤顣wktkƤäɡˤƤ⤢夬褦RubyistΥޥΨι⤵򼨤ƤΤʡ

ȾRubyCocoaξҲǡȾRubyCocoaMacRubyȤץDz褷ƤȤƤ롢ȤáŪʤȤ񤤤פϡ֥֥åǤϤʤObjective-CRubyϤ뤳Ȥǡåѡ𤹤ݤΥСإåɤʣ򤱤פȤΤ׻ݡʤ®٤Ū᤯ʤäƤȤǴ夬äƤ

RubyCocoaȤȤƤϡNSObject쥯饹פäƤȤ֤̤ܶ˴ɡRubyistȤƶ̣Τϡʤ٤Objective-CΥåѥå󥰤¸뤿˥դƳƤ뤳ȡMacRubyϺ1.9١ɡεǽ1.9ˤ̵줬ƤMRIˤ뤫⤷ʤäƤȤǺ˴ԡ

ȡʤߤMacRubyiPhoneưȤʬǤʤRubyGCǤϤʤObjC 2.0GCȤäƤΤǡGCݡȤ̵iPhoneΥ󥿥˥ѥǤʤ餷ϤäȻǰ

줫θʤ桹򤫤äLaurentϥե󥹸줬졩ä褦ǡäˤʤȡܸǼ䢪ե󥹸ѸDzܸפȤˤʤäƤޥ󥬥롪

Real-World Enterprise Ruby(줵󡢹椵)

ȸγȯRubyƳˤäƤΥΥϥƣƥΥ塼󥺤ͤ顣Ūˤ˿ܤäʾ塢ͤȤ⥹ĤǥơΩäƤˤ⤫餺IRCǤϡ֥ĤץˤʤʤäƤס̡ͤϤޤäפʤɤ夬äƤΤǤʤȻפäƹԤäƤߤ顢Τ򤤤ȤäƤʤǤʤȤˤʤäΤΥ饯䤷Ƥ٤

ʤߤƤSIȳοͤˤϤʤ껲ͤˤʤä󤸤ʤȻפyuguiΡ֤狼äȤĤۤäƤפȤоŪʡʤܵҤRubyƳǧˡȤθѤˤĤƤ褯狼륻åä

Ǹ

ŻPerläƤΤɡס2ִݡRubyޤߤʻ֤ᤵƤä˳ڤäRubyKaigiåդԡǤ蘆Ƥä˿δդ

줫֤ФƤ줿sotarokȤƤ줿daftbeatsޤƤyuguiΥƤRuby˳ݤƤ줿from_kyushu˽ޤ꤬Ȥϥ++

ɵ

ȲRubyConfTĤJRubyTĤƤƤRubyҼPHPTĤ夿sotarokȡSunȲηҤʤΤJRubyTĤƤϢä⤤Ƥʤ桹̯ʴäïˤĤäޤʤäΤϡĥåԤʤΤХƤ

ɽ̤ꡢRubyKaigi˹ԤäƤޤѤ˳ڤäRubyƤƽ¤֤äΤΥݡȤϴˤǤäƤȻפưUPƤ褦ʤΤǤѤƤ餦Ȥợäå򤤤Ĥ

Ĵֱ(ޤĤȤ)

Ruby»ˤʤĤĤ󤸤ʤȤݤáݤ˻ĤäΤϡRuby򥭥ȥסǤ͡դա

Ruby M17N(椤Martin J. Drst)

Ruby1.9¿бΤʸΰ礭ѤäƤ롣ͣ󥳡ǥ󥰤Ѵ򤫤⤷ʤString֥ȼΤ󥳡ǥ󥰤ġȤäˤʹƤ1.9ϤޤޤϮƤʤΤǶ̣ä

ĿŪˤϡ󥳡ǥ󥰤ɤString֥Ȥñ̤ǥ󥳡ǥ󥰤ޤäƤޤȤʤȡ㤨ܸ饤֥ʤɤ񤯤Ȥ˾꤯ΤѤˤʤΤǤϤʤפäƤäˤʤä¿ʬȤäʸΥ󥳡ǥ󥰤򵭲ƤưöѴäǽΥ󥳡ǥ󥰤ᤷ֤ȤޥХȤʸ֤᥽åɤϥץǥ󥳡ǥ󥰤롢ߤʤΤܤˤʤȻפɡ㴳ťʤäƤݤʤˤ⤢餺

RSpecˤRailsץꥱBDD(yugui)

ǽ饵֥åˤɡʤ󤫥ᥤDzID(faultier)ϢƤƤƤӤäꤷƹԤä顢Ƥ˻ŻƤҤǤλäҡ̯ʴ

ǡοBDDǤϳΤ˼Ӥ夲ƤޤRSpecSeleniumȤ褦ˤʤäƳʤ˥Х⸺äֲäƤ뤫ΤꤿФޤSpec򸫤פäƤ⼫˿ƩLLԴʥ٥ƥץޤ俷ͥץޤޤຮǤڥץΤdzȯ®٤ݻǤΤεѿ夬ޤ

;̤ɡSpecΤʤɤ񤯤ȤϾĹ˿ФפȤ֥ڥץˤϥʥӥϥԥԥϥޡפȤ֤̾狼ʤĤۤäƤפȤˤä㤦ͤǤyuguiϡºݤˡƴ롣

RubyDzŬϢꤹ11ˡ(ujihisa)

ujihisaνϤϰ۾

1ܽλ

ϥ+ĤХ饹Ʋ̱äTAKESAKO󡢤ήƲնε̱Yet Another Ʋ񡣴ؤƤ줿daftbeatsϤФ彣餭Ƥ줿from_kyushu͡

ڤdaftbeatsȤˤޤƤähacktourȤй̤Rubyץߥ󥰡ͽäIRCܥåȤȵƤ뤦뤬ƤƤ

³ϤȤ

ĹʤꤽʤΤ2ܤΤȤϸǤޤ񤭤ޤ

ΥڡΥȥåץ