阅读 七周七语言

来源:互联网 发布:移动宽带提速软件 编辑:程序博客网 时间:2024/06/17 18:18

看介绍很吸引我。 记下一词: 享受编程


ruby

没有环境在网上找了一个 http://codepad.org, 支持很多语言。 

  1.  解释型语言
  2.  纯面向对象语言. 一切皆对象, 数字是 Fixnum
  3.  强类型语言。运行时检查类型。动态语言 (可以在运行过程中,变换类型) 
    1. 面向接口编程,而不是面向实现。 
    2. 动态语言 。 有pop,push 的方法的,就可以当做“栈”用。(言外之意  静态语言只有栈和子类可以做栈用? )
语言中的基本要素
1函数: (也是一种对象)
def print_hello    puts "hello ruby"endprint_helloputs print_hello === output hello rubyhello rubynil

数组。 [-2], [0..1] 
[1,2,3]
散列
代码块
def call_block(&block)    block.callenddef pass_block(&block)    call_block(&block)endpass_block {puts "xxxxxxx "}

class Tree    attr_accessor :children, :node_name    def initialize(name, children=[])        @children=children        @node_name=name    end    def visit_all(&block)        visit &block        children.each {|c| c.visit &block}    end    def visit(&block)        block.call self    endend    ruby_tree = Tree.new("ruby",     [Tree.new("first"), Tree.new("second")])puts "visiting a node"ruby_tree.visit {|node| puts node.node_name}puts "visiting a tree"ruby_tree.visit_all {|node| puts node.node_name}======visiting a noderubyvisiting a treerubyfirstsecond



课后练习
文档: http://www.ruby-doc.org/   http://ruby-doc.com/docs/ProgrammingRuby/
s = "hello world"s.gsub(/world/, "ruby")puts s 


说实话, 这本说看下来, 不容易。 我会告诉你, 7种语言一种多没有学过吗。 最近在看 haskell。 



0 0
原创粉丝点击