• 约定优先于配置(CoC)

    约定优于配置(Convention Over Configuration),也称作按约定编程是一种软件设计范式。目的在于减少软件开发人员所需要做出的决定的数量,从而获得简单的好处,而又不失去其中的灵活性。 本质是说,开发人员仅需规定应用中不符约定的部...
  • Ruby – 枚举 Enumerable (三)

    Each相关方法Enumable对象有很多与each详细的方法,他们可以遍历整个集合并且传递其中的元素到代码块,直到完全遍历完成迭代才会停止。这些方法体系中的每个成员都有自己特定的语义和定位。 reverse_each该方法可反向迭代一个枚举对象。 ...
  • Ruby – 枚举 Enumerable (二)

    集合类型就是为遍历出现的,而他们可以包含特殊状态的独立对象:集合类型中的第一个或最后一个,最大一个或者最小一个。Enumable对象带来了许多用于元素处理的工具。 first就像这个名字一样Enumable # first方法返回可枚举对象迭代时的第...
  • Git协同开发流程

    开发流程 具体操作每次项目开始时,我会将基础代码框架并配置需要用到的组件,然后将基础代码包更新到我自己的仓库中。 Fork需要点击右上角的 fork 按钮,将主仓库的代码 fork 到自己的仓库中。 Clone然后转到自己的Github仓库,将...
  • Ruby - 枚举 Enumerable (一)

    所有集合类型对象的创建都不一样,但是他们中大多数都有共通的特性。在Ruby中,集合类型对象通常都包含Enumerable模块。 使用Enumerable的类有一种协定:该类必须定义一个名为each的实例方法,而同时该模块也赋予了该类一组集合类型的相关...
  • Ruby - 具名参数

    12345def func(a:,b:) puts a,bendfunc(a:1,b:2) 在方法定义中,有两个以冒号结尾的参数。而在调用的时候,却更像是使用哈希。 Ruby的匹配规则会使得a和b的绑定值与期望的一致,而不需要去研究是怎么转化成哈...
  • Ruby - 默认哈希值行为

    默认情况下,如果我们使用不存在的键值去请求哈希时,会得到nil 但是,如果我们给Hash指定了默认值 1h = Hash.new(0) 代码中初始化哈希的默认值为0,当使用一个不存在的键时,就会返回该默认值(也可以使用defalut方法为...
  • Ruby - 深入理解Symbol

    符号(symbol)是Ruby内置类Symbol中的实例。它拥有一个字面构造器:冒号引导符,可以通过这个记号,从字面上辨认出符号与字符串、变量名、方法名等等的区别。 123:a:book:"This is Chongya" 也可以...
  • Ruby错误处理和异常

    引发和捕获异常异常(exception)是一种特殊对象。是Exception类或者子类的实例。引发一个异常意味着停止程序的正常执行,之后要么处理初心的问题,要么完全退出程序。 处理问题还是退出程序,取决于是否使用了rescue子句。如果程序中有该子句...
  • Ruby-迭代器和代码块

    1loop {puts "loop forever" } loop是一个迭代器,是一种方法。他在调用的语法上附加了一个条件:需要额外提供一个代码块。 loop方法访问了在代码块中的代码:方法可以调用执行该代码块...