《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
随着JUnit的普及,”测试驱动开发” 程序开发方法的推广,同时伴随着敏捷开发、极限编程的流行,可以从”技术”上保证产品质量的单元测试,深刻影响着现在的任何软件开发。受此影响,Rails中就内部集成了测试功能,方便大家进行各种类型的测试。本节,我们就详细介绍一下Rails中集成的测试功能。
目录结构介绍
打开%Depot%/test/目录,你会发现,这个目录下有五个目录:fixtures、functional、integration、performance、unit,还有一个文件test_helper.rb。另外,D瓜哥看Rails的文档中说明中,没有提到 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
上两节,我们简单创建了一个商品维护的应用。但是,在想应用中添加商品信息时,我们必须确保商品信息的正确性!那么,如何来实现呢?也许你已经想到了,数据校验!这节我们就给大家介绍一下数据校验。
对于任何程序来说,数据校验都是必须的。比如,我们注册邮箱,邮箱名不能为空;在论坛注册账号,注册名不能为空,当然有些是邮箱等不能为空。同样,对于,我们这个学习程序”Depot购物网”,也有同样的要求。比如,产品名称不能为空;产品价格不能为0,否则只能”赔钱”!
这样,问题就来了: 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
在看了产品相关的应用后,我们的客户有一个要求(客户似乎总有提不完的要求。对吧?):商品列表太丑了。提议我们进行美化,看能否将商品图片一起展示出来?
这让我们有点进退维谷。作为开发人员,我们职业性地深吸一口气,带着不置可否的摇头,低声问道”你想要什么?”同时,我们也想想炫耀一下,Rails可以轻松应付这些变化。我们打开我们信赖的编辑器。
在我们进行更深入的开发之前,最好使用一组测试来确保应用的可行性。我们可以使用 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
我们在上节内容最后说到,我们需要首先开发和商品信息相关的模块。那么,这一节我们就真正进入系统开发阶段。
首要的开发任务是创建Web应用的结构,使得我们可以在其之上维护我们的产品信息,比如创建新产品,删除已有产品,删除不需要的产品等等。提前说明一点,我们将采用很小的迭代开发,小到以分钟来度量。现在开始。
具有代表性的是,我们在每一个迭代中会再分为很对步骤,比如在迭代C中,可以有C1、C2、C3等。在本次迭代中,我们分为两步。
D瓜哥的呱呱——以后简称D呱呱
由于以前没有注意到这个细节 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
上一节,我们介绍了Rails的整体架构。实践出真知,如有想更加真实体会Rails的魅力,还是使用Rails自己动手开发一个网站来的更加真真切切!所以,本系列文章从本节开始,带领大家从零开始,做一个购物车系统。另外,这里特别说明一下,本系列的基本内容会跟着《Agile Web Development with Rails》这本书的内容来。(D瓜哥也是初学,想自己玩;水平所限,还玩不转。)D瓜哥也会亲自实践一遍,如果实践中发现什么问题,会努力解决,问题描述以及解决方案都会 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
经过上面两节的介绍和折腾,我们对Rails有了一个初步的认识。这一节,我们抛开具体的编码,站在更高的层次去俯瞰一下整个Rails程序的架构。
对于Rails来说,一个很诱人的特性就是Web程序的组织结构。这种结构可以让人更加容易地去创建应用程序。但是这是为什么呢?这一节我们就来看看这其中的奥妙。
Model、View与Controller
让我们暂时将时光返回到1979年,Trygve Reenskaug为交互程序设计了一种新的架构。在他的设计中,应用程序被划分成了三个组件中去:Models, Views和Controllers。
Model组件负责维护应用程序的状态。有时,应用程序的状态是瞬时的,也许只存在于用户和应用程序的交互中;有时,应用程序的状态却是持久的,并且会被保存到应用程序之外,一般是数据库。
Model并不仅仅是数据,还组织、维护着和数据相关的所有业务规则。例如, 阅读全文…
以前没有攒资料的习惯,这一两年才养成了这个习惯。有次和大学老师聊天,和她说攒了不少资料,她就让我分享给她看。后来和她进一步沟通,觉得整理一下,分给学弟学妹看也许对他们更有帮助。为了这个目标,把资料重新梳理了一下,并且添加了一点我个人对学习方法的理解,分享出来,希望对大家有所帮助!
本文章面向刚刚踏入挨踢行业的新手,高手可以直接飞过!当然,如果有好的资料,或者一些不同的看法,请留言交流!
学习方法论
- 享受学习!寻找学习中的乐子,享受这种乐子!强化学习中的成就感,提高自己对课程,对学习,对生活的自信心!在《只要一部计算机,就可以创造出 阅读全文…
分类: Java, Linux, Web开发, 挨踢(IT), 轶事趣闻 标签: Git, Java, JavaScript, Linux, Ruby, SQL, Web, jQuery, vim, 数据库, 程序员
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
在上一节中,D瓜哥简单讲解了一下Rails环境的搭建。这一节,D瓜哥将通过一个小小的例子,来给大家演示Rails的牛逼之处!
新建工程
用过Java的人都知道,即使在Eclipse等集成开发工具中,新建一个工程也相当麻烦。各种选择、各种设置,真心很麻烦。那叫一个纠结啊!(不瞒大家,D瓜哥就是Java攻城师一枚。)
您知道Rails中新建一个工程需要多大的工作量吗?如果我告诉你, 阅读全文…
《Agile Web Development with Rails》抄书笔记系列
“《Agile Web Development with Rails》抄书笔记系列”目录
很早之前就对Python、Ruby等动态语言很感兴趣。因为一直在犹豫应该学习Python,还是该学Ruby(传说中的Ruby on Rails太牛逼闪闪了,可以先看看“牛逼闪闪的Ruby迭代器”体验一下Ruby的牛逼之处)。在我犹豫出门改迈左脚还是该迈右脚的时候,时间已经悄悄过去了好几年。最近,由于想做一个网站(抱歉,还没开始编码),在陈皓(微博)大哥的指点下,不再犹豫,开始学习Ruby。由于D瓜哥的目的很简单,就是做个网站,所以直接开始学习Ruby on Rails。在范凯(微博)的博客中,推荐了Ruby on Rails(一下简称Rails)的三本书,《Agile Web Development with Rails》是第一本。然后,D瓜哥就开始了不平凡的抄书过程。
这是第一篇抄书笔记。所以,D瓜哥就先来说一下Rails的环境搭建。
操作系统选择
鉴于D瓜哥的惨痛经历, 阅读全文…
前两天在“博客园”上看了一篇文章“PHP基础教程”,介绍PHP的,感觉挺好。D瓜哥在学Ruby,正好也写一篇“Ruby入门教程”。需要说明一下,这篇文章适合有编程基础的,但是没接触过Ruby的新手。而且,这篇文章侧重入门,老鸟可以直接飞过。(如果能帮忙检查一下是否有描述不当,甚至错误的地方,也欢迎来踩两脚。D瓜哥感激不尽。)
Ruby环境搭建
在Windows下,搭建Ruby环境,比较简单的方法是在“RubyInstaller”上下载一个合适的版本(D瓜哥使用的是 阅读全文…