共找到 13 篇tag为 "rails" 的文章

21 June 2016
MVC

BackboneJS开发总结

BackboneJS - A MVC Javascript Structure

Background: 一直致力于尝试各种技术的豆厂,在某个客户项目中使用了Backbone.js作为前端JS框架。

Technology Stack:Rails, jQuery, Coffeescript, Backbone.js

What is Backbone.js

Backbone.js is a MVC Javascript Structure

Backbone.js gives structure to web applications by providing models with key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing API over a RESTful JSON interface.

如果你熟悉Rails或者熟悉MVC,我敢保证你可以很快地掌握Backbone.js

BackboneJS
read more
13 June 2016
BDD
TDD

简介如何测试Rails应用

If builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization. -- Gerald Weinberg, Weinberg’s Second Law

为什么我们需要自动化?

测试无疑会提高代码的正确性,而自动化不但能保证测试的可重复性,省去了手工测试的麻烦,也大大提高了生产力。

TDD & BDD

TDD,BDD是现在流行的测试方式。TDD是为了把事情做对(Do things right),而BDD主要是为了做正确的事(Do rignt thing). 在开发过程,BDD应先于TDD。因为方向错误了,做的再好,也没有意义。

Test-driven development

TDD要求,在写代码前先写测试(有时也会先写代码,再补完测试)。TDD不但可以确保代码的正确性,还可以帮助我们分解问题,保护已有代码,使代码有更好的维护性。

TDD流程 -- Red, Green, Refactor

TDD要求我们,在用代码实现前先要先思考我们期待这段代码做什么、如何同其他部分相互合作的,之后才是如何实现代码。

  1. Red: 写出测试。由于这个时候代码还没实现,所以测试是红色的。
  2. Green: 用最简单的代码让测试通过,让测试编程绿色。TDD并不主张过分的think ahead。代码可以通过测试即可。随着我们测试的增加和对问题理解的深入,可以不断的对代码进行改进。
  3. Refactor: 重构,不单单要重构实现,还要重构测试。尽量避免冗余,尽量使代码更好维护。

    重复以上过程。

Test introduction
read more
13 November 2014

RAILS中利用YAML文件完成数据对接

最近在做的Ruby on Rails项目中,需要将远程数据库中的数据对接到项目数据库中,但是远程的数据不仅数据表名跟字段命名奇葩,数据结构本身跟项目数据结构出入比较大,在数据导入过程中代码经历了几次重构,最后使用了YAML文件解决了基本数据[^basic-data]对接的问题。在此写一篇博文,我会尽量重现一路过来的代码变更,算是分享一下我的思考过程,也算是祭奠一下自己的苦逼岁月。

Splash Background
read more