programmingruby:Ruby 101:思路方法对象

从思路方法说起   在上篇文章里我们看到对象思路方法实质上是向对象发送消息下面我们再来看个有趣应用在Ruby里字典可以通过 {key = value} 来创建如果你使用版本是1.9或以上当key类型是Symbol时创建字典语法可以进步简化为 {key: value} (注意冒号要紧贴在key后面)这使得我们可以创建这样对象:   代码 1   有没有觉得这个写法很面熟?有些同学可能已经看出来了这个... [阅读全文]

programming:SCSI Programming For Beginners

引言分享在Windows下面实作SCSI programming的经验给有兴趣的朋友. SCSI 简介在介绍SCSI programming之前, 我须要先介绍一下SCSI 的基本观念. SCSI的英文全名是“Small Computer System Interface”,SCSI并不是专门为硬盘设计的接口,是一种广泛应用于小型计算机系统里的高速数据传输技术。但是目前最常... [阅读全文]

编程小结:极端编程(eXtreme Programming)小结

极端编程(eXtreme Programming)是种开发纪律以简单性、交流、反馈和勇气为基本宗旨它做法是以有效实战规则将整个团队(Team)紧密联系起来通过充分反馈使团队(Team)能随时知道自己目前状况和恰当调节规则以适应自己特殊情况   在极端编程中每个项目贡献者都是“团队(Team)”完整部分这个队伍是围绕着个每天和队伍坐在起共同工作商业代表—&mdas... [阅读全文]

rubyonrails:Martin演讲实录 Ruby

Ruby是个非常好开发工具  我今天想跟大家讨论主题是ruby我去年来过上海但是那时候我生病了今天是我来上海第天也是这次我中国的行过程中身体好转第天所以我想这是我在上海第次演讲谢谢大家到来  这次演讲主题是ruby, 在这的前我还从来没有做过这方面演讲我使用ruby已经有段时间了但是还不算是ruby专家ruby自身也在不断地快速发展中我在软件Software方面有很强Unix背景在我大学毕业后第份... [阅读全文]

rubyonrails:ruby 杂项

本章处理些实际问题.  语句定界符  有些语言需要定类型标点,般会是分号(;)来结束每语句.Ruby却采用了shell里sh和csh方便做法.行中多个语句由分号分开,但在行尾分号却并不需要;个换行被看作个分号.如果行以反斜杠结束,随后换行将忽略;这就允许你单个逻辑行可以跨越数行.  注释  为什么写注释?虽然良好代码可自成文档,但那种自以为别人能看懂并按你方式很快去理解想法是.除此的外,你自己在离... [阅读全文]

rubyonrails:ruby 对象的初始化 思路方法

前面节 Fruit 类有两个实变量,分别表述水果类型和状态.直到为这个类写了个定制inspect思路方法,我们方才了解它不会对个缺乏属性水果做出合理解释.幸运是,Ruby提供了种允许实变量总是被化思路方法.  initalize思路方法  当Ruby创建个新对象时,它总是会寻找个名为 initialize 思路方法并执行它.因此,我们可以简单通过个initialize思路方法向实变量中加入缺省值,... [阅读全文]

rubyonrails:ruby 异常处理:ensure

当个思路方法结束工作时我们也许需要进行清理工作.也许个打开文件需要关闭,缓冲区数据应清空等等.如果对于每个思路方法这里永远只有个退出点,我们可以心安理得地将我们清理代码放在个地方并知道它会被执行;但个思路方法可能从多个地方返回,或者异常我们清理代码被意外跳过.beginfile = open("/tmp/some_file", "w")# ... write to the file ...file... [阅读全文]

rubyonrails:ruby 异常处理:rescue

个运行着常会遇到意外问题.个要读取文件不存在;当希望存入些数据时磁盘满了;用户可能输入不恰当数据.  ruby file = open("some_file")  ERR: (eval):1:in `open: No such file or directory - some_file  个健壮会合理并漂亮处理这些问题.面对那些异常是件讨人厌工作.C员被要求做到检查每个可能导致发生系统返回值并立刻... [阅读全文]

rubyonrails:ruby 模块

Ruby模块非常类似类,除了:  模块不可以有实体  模块不可以有子类  模块由module...end定义.  实际上...模块模块类是类类这个类父类.搞懂了吗?不懂?让我们继续看下去吧.  模块有两种使用方法.其是将相近思路方法和实体放在个相对集中域里.Ruby标准包里Math模块就扮演着这角色:ruby Math.sqrt(2)1.41421ruby Math::PI3.14159  ::操... [阅读全文]

rubyonrails:ruby 流程控制 思路方法

这章我们将讨论更多Ruby流程控制.    我们用语句测试有次序条件.正如我们所见,这和C,Javaswitch相当接近,但更强大.ruby i=8ruby i| when 1, 2..5| pr "1..5n"| when 6..10| pr "6..10n"| end6..10nil  2..5表示2到5的间个范围.下面表达式测试 i 是否在范围内:  (2..5) = i   内部也是用关... [阅读全文]

rubyonrails:基于Ruby的元编程技术

元编程并不是个很新概念通常元编程被认为是通过来生成如果从这种意义上来考虑那么lex和yacc以及JavaCC应该都可以算是具有了元编程概念在Java中元编程得到了广泛应用但在Ruby中元编程使用变得相当简单和容易实现使用Ruby语言本身来产生Ruby代码不需要借助外部工具著名RoR框架就是建立在Ruby元编程基础上可能你对元编程还没什么概念但是Ruby已经内建了元编程这种机制所以很有可能你在不知不... [阅读全文]

programmingruby:Programming Ruby 读书笔记(一)

1. 成员变量读写属性: attr_reader 和 attr_writer Test def initialize(name)  @name = name end   attr_reader :name attr_writer :name  end  test = Test.("AAA")  puts test.nametest.name = "BBB"puts test.name  如果不使... [阅读全文]

programmingruby:Programming Ruby 读书笔记( 2)

1.再谈ruby Test a = [1, 3, 5, 7, 9] puts a[0]     #-----1 puts a[-2]    #-----7 puts a[1, 3]   #-----[3, 5, 7] puts a[-3, 2]   #-----[5, 7] puts a[1..3]   #-----[3, 5, 7] puts a[1...3]   #-----[3, 5]  ... [阅读全文]

programmingruby:Programming Ruby 读书笔记( 3)

Ruby标准类型:  A.数字 Test   3.times    { pr "X " } 1.upto(5)   { |i| pr i, " " } 99.downto(95) { |i| pr i, " " } 50.step(80,5) { |i| pr i, " " }   a = "23" b = "34" puts " " puts a + b puts Integer(a) + In... [阅读全文]

programmingruby:Programming Ruby 读书笔记( 4)

Ruby正则表达式   3种表示思路方法:Regexp.(^s*[a-z])/^s*[a-z]/%r...{^s*[a-z]}  测试代码: def show_reqexp(a, re)     a =~ re   "#{$`} #{$&} #{$}"      "no match"  end   end  puts show_reqexp("Fats Waller", /ll/)  结果:F... [阅读全文]

programmingruby:Programming Ruby——数组 哈希表和控制结构

和哈希表  Ruby和哈希表是索引集合两都都是保存对象集合并能通过键来读取键是数字但是哈希表则支持对象作为键它们都是随着新元素加入要增长在访问元素方面效率比较高但哈希表更加灵活无论是还是哈希表都能保存区别类型对象;你可以使用个保存数字串和浮点数就像你等会将会看到那样  你可以使用文本来创建和化个新——个由中括号包围元素集合对于个你能通过使用中括号间数字来获取每个元素就如例子... [阅读全文]

rubyonrails:Ruby概述

Ruby是面向对象编程语言她追求是“简便快捷面向对象编程”Ruby是解释型语言因此不需编译即可快捷地编程同时Ruby具有类似Perl强大文本处理功能她可并不只是个玩具您可以用她来进行实用编程此外您还可以很方便地使用C语言来扩展Ruby功能因此可以把她当作各种库前端来使用  若您曾经“想要种简单面向对象语言”或者认为“Perl功能虽然好用但... [阅读全文]

rubyonrails:Ruby中实现stream

流是通过延时求值实现Ruby中实现stream也是可以做到可惜就是没有尾递归优化按照sicp首要是两个:delay和force:def mem_proc(exp) alread_run=false result=false lambda{   !alread_run   result=exp.call   alread_run=true   result     result  end }endd... [阅读全文]

rubyonrails:初用ruby的几个注意事项

今天按照Agile Web Development with Rails depot例子准备根据数据库表自动生成scaffold,  那天在公司把这个例子做了遍觉得挺顺利没想到今天换到家里机子后出现了不少问题.  在这里记录下出现问题及解决办法.  1.创建好数据库和products表后执行  cmdruby script/generate scaffold product  结果报错  exis... [阅读全文]

rubyonrails:Ruby程序设计的简单例子

基于目前学习Ruby知识并有Ruby标准库帮助你应该能够构建个真实世界应用了  在开始时我提供了个举例应用这个中使用了大量我们已经讨论过Ruby特征这个读取个简单文本文件以得到组股票符号和个人所拥有股份数并且在个普通金融网站WebSite(finance.yahoo.com)检索股票价格在检索股票价格以后它计算这个人portfolio(股份数×每份股票价格)  不只是展示简单Ruby语... [阅读全文]

functional:Functional Programming with C#: Dynamic List Generation

.code { border: 1px dashed #999999; padding: 3px; background-color: #F6F6F6;}Part I. A Simple ExpansionIf we define a Expand() extension method for a FuncT,T delegate type we can use it to generate l... [阅读全文]

yogaforbeginners:WCF programming for Beginners

Windows Communication Foundation (WCF)Windows Communication Foundation (WCF) is a dedicated communication frame work provided by the Microsoft. WCF is a part of .NET 3.0. The runtime environment provi... [阅读全文]
1 共1条 分1页