没有合适的资源?快使用搜索试试~ 我知道了~
首页Rails 3敏捷开发指南:保持与框架同步
"《敏捷Web开发与Rails》是一本专为Rails 3版本设计的书籍,作者们强调了随着Rails核心团队的持续更新,可能会出现前后版本之间的不兼容性问题。因此,在阅读本书提供的示例时,确保安装正确版本的Rails至关重要,这可以在第一章“安装Rails”(第24页)中找到指导。为了检查当前运行的Rails版本,可以在命令行中使用`rails -v`命令。 书中内容覆盖了Rails框架的全面视角,对于新手开发者来说,它不仅提供了一个快速入门的起点,而且帮助他们在Rails领域建立起成功的职业基础。作者们Sam、Dave和David的经验分享表明,即使在最新版的编写过程中,这本书仍然保持着其作为推荐给新Rails开发者首选教材的地位。 Mikel Lindsaar,Rails核心贡献者之一,同时也是Ruby的创造者之一,他提到自己最初学习Rails时读的是第一版,而他在阅读最新版后确认,这本书一如既往地保持了其优秀的教学价值。读者可以登录Wow! eBook网站(<www.wowebook.com>)下载该书,以便获取最新且详尽的Rails开发知识。 在阅读本书时,务必关注Rails官方wiki(<http://www.pragprog.com/wikis/wiki/ChangesToRails>`_)上关于可能影响到本书内容的更新信息,以确保跟上技术发展的步伐。《敏捷Web开发与Rails》不仅是一本实用的指南,也是一本长期与时俱进的参考书籍,对于希望进入或提升Rails技能的开发者来说,是不可多得的资源。"
资源详情
资源推荐
Introduction
Ruby on Rails is a framework that makes it easier to develop, deploy, and
maintain web applications. During the months that followed its initial release,
Rails went from being an unknown toy to being a worldwide phenomenon, and
more important, it has become the framework of choice for the implementation
of a wide range of so-called W e b 2.0 applications.
Why is that?
Rails Simply F e e l s Right
First, a large number of developers were frustrated with the technologies they
were using to create web applications. It didn’t seem to matter whether they
were using Java, PHP, or .NET—there was a growing sense that their job was
just too damn hard. And then, suddenly, along came Rails, and Rails was
easier.
But easy on its own doesn’t cut it. W e ’ r e talking about professional developers
writing real-world websites. They wanted to feel that the applications they
were developing would stand the test of time—that they were designed and
implemented using modern, professional techniques. So, these developers dug
into Rails and discover ed it wasn’t just a tool for hacking out sites.
For example, all Rails applications are implemented using the Model-View-
Controller (MVC) architecture. Java developers are used to frameworks such
as Tapestryand Struts, which are based on MVC. But Rails takes MVC further:
when you develop in Rails, you start with a working application, there’s a
place for each piece of code, and all the pieces of your application interact in a
standard way.
Professional programmers write tests. And again, Rails delivers. All Rails appli-
cations have testing support baked right in. As you add functionality to the
code, Rails automatically creates test stubs for that functionality. The frame-
work makes it easy to test applications, and as a result, Rails applications
tend to get tested.
RAILSSIMPLYFEELSRIGHT 17
Rails applications are written in Ruby, a modern, object-oriented scripting
language. Ruby is concise without being unintelligibly terse—you can express
ideas naturally and cleanly in Ruby code. This leads to programs that are easy
to write and (just as important) are easy to read months later.
Rails takes Ruby to the limit, extending it in novel ways that make a pro-
grammer’s life easier. This makes our programs shorter and more readable.
It also allows us to perform tasks that would normally be done in external
configuration files inside the codebase instead. This makes it far easier to see
what’s happening. The following code defines the model class for a project.
Don’t worry about the details for now. Instead, just think about how much
information is being expressed in a few lines of code.
class Project < ActiveRecord::Base
belongs_to :portfolio
has_one :project_manager
has_many :milestones
has_many :deliverables, :through => :milestones
validates :name, :description, :presence => true
validates :non_disclosure_agreement, :acceptance => true
validates :short_name, :uniqueness => true
end
Two other philosophical underpinnings keep Rails code short and readable:
DRY and convention over configuration. DRY stands for don’t r e p e a t yourself :
every piece of knowledge in a system should be expressed in just one place.
Rails uses the power of Ruby to bring that to life. Y o u ’ l l find very little duplica-
tion in a Rails application; you say what you need to say in one place—a place
often suggested by the conventions of the MVC architecture—and then move
on. For programmers used to other web frameworks, where a simple change
to the schema could involve them in half a dozen or more code changes, this
was a revelation.
Convention over configuration is crucial, too. It means that Rails has sensi-
ble defaults for just about every aspect of knitting together your application.
Follow the conventions, and you can write a Rails application using less code
than a typical Java web application uses in XML configuration. If you need to
override the conventions, Rails makes that easy, too.
Developers coming to Rails found something else, too. Rails isn’t playing catch-
up with the new de facto web standards; it’s helping define them. And Rails
makes it easy for developers to integrate features such as Ajax and RESTful
interfaces into their code, because support is built in. (And if you’re not famil-
iar with Ajax and REST interfaces, never fear—we’ll explain them later in the
book.)
Report erratum
RAILSIS AGILE 18
Developers are worried about deployment too. They found that with Rails you
can deploy successive releases of your application to any number of servers
with a single command (and roll them back equally easily should the release
prove to be somewhat less than perfect).
Rails was extracted from a real-world, commercial application. It turns out
that the best way to create a framework is to find the central themes in a
specific application and then bottle them up in a generic foundation of code.
When you’re developing your Rails application, you’re starting with half of a
really good application already in place.
But there’s something else to Rails—something that’s hard to describe. Some-
how, it just feels right. Of course, you’ll have to take our word for that until
you write some Rails applications for yourself (which should be in the next
forty-five minutes or so...). That’s what this book is all about.
Rails Is Agile
The title of this book is Agile W e b Development with Rails. Y o u may be sur-
prised to discover that we don’t have explicit sections on applying agile prac-
tices X, Y , and Z to Rails coding.
The reason is both simple and subtle. Agility is part of the fabric of Rails.
Let’s look at the values expressed in the Agile Manifesto as a set of four pref-
erences:
1
• Individuals and interactions over processes and tools
• W o r k i n g software over comprehensive documentation
• Customer collaboration over contract negotiation
• Responding to change over following a plan
Rails is all about individuals and interactions. There are no heavy toolsets,
no complex configurations, and no elaborate processes. There are just small
groups of developers, their favorite editors, and chunks of Ruby code. This
leads to transparency; what the developers do is reflected immediately in what
the customer sees. It’s an intrinsically interactive process.
Rails doesn’t denounce documentation. Rails makes it trivially easy to cre-
ate HTML documentation for your entire codebase. But the Rails development
process isn’t driven by documents. Y o u won’t find 500-page specifications at
the heart of a Rails project. Instead, you’ll find a group of users and devel-
opers jointly exploring their need and the possible ways of answering that
need. Y o u ’ l l find solutions that change as both the developers and the users
become more experienced with the problems they’re trying to solve. Y o u ’ l l find
1. http://agilemanifesto.org/. Dave Thomas was one of the seventeen authors of this document.
Report erratum
WHOTHISBOOKIS FOR 19
a framework that delivers working software early in the development cycle.
This software may be rough around the edges, but it lets the users start to get
a glimpse of what you’ll be delivering.
In this way, Rails encourages customer collaboration. When customers see
just how quickly a Rails project can respond to change, they start to trust
that the team can deliver what’s required, not just what has been requested.
Confrontations are replaced by “What if?” sessions.
That’s all tied to the idea of being able to respond to change. The strong, almost
obsessive, way that Rails honors the DRY principle means that changes to
Rails applications impact a lot less code than the same changes would in other
frameworks. And since Rails applications are written in Ruby, where concepts
can be expressed accurately and concisely, changes tend to be localized and
easy to write. The deep emphasis on both unit and functional testing, along
with support for test fixtures and stubs during testing, gives developers the
safety net they need when making those changes. W i t h a good set of tests in
place, changes are less nerve-racking.
Rather than constantly trying to tie Rails processes to the agile principles,
we’ve decided to let the framework speak for itself. As you read through the
tutorial chapters, try to imagine yourself developing web applications this way:
working alongside your customers and jointly determining priorities and solu-
tions to problems. Then, as you read the more advanced concepts that follow
in Part III, see how the underlying structure of Rails can enable you to meet
your customers’ needs faster and with less ceremony.
One last point about agility and Rails: although it’s probably unprofessional
to mention this, think how much fun the coding will be.
Who This Book Is For
This book is for programmers looking to build and deploy web-based applica-
tions. This includes application programmers who are new to Rails (and per-
haps even new to Ruby) and ones who are familiar with the basics but want a
more in-depth understanding of Rails.
W e presume some familiarity with HTML, Cascading Style Sheets (CSS), and
JavaScript, in other words, the ability to view source on web pages. Y o u do not
need to be an expert on these subjects; the most you will ever be expected to do
is to copy and paste material from the book, all of which can be downloaded.
How T o Read This Book
The first part of this book makes sure you are ready. By the time you are done
with it, you will have been introduced to Ruby (the language), you will have
Report erratum
HOWTO READTHISBOOK 20
been exposed to an overview of Rails itself, you will have both Ruby and Rails
installed, and you will have verified this installation with a simple example.
The next part takes you through the concepts behind Rails via an extended
example; we build a simple online store. It doesn’t take you one by one through
each component of Rails (“here is a chapter on models, here is a chapter on
views,” and so forth). These components are designed to work together, and
each chapter in this section tackles a specific set of related tasks that involve
a number of these components working together.
Most folks seem to enjoy building the application along with the book. If you
don’t want to do all that typing, you can cheat and download the source code
(a compressed tar ar chive or a zip file).
2
The third part of the book, starting on page 258, surveys the entire Rails
ecosystem. This starts with the functions and facilities of Rails that you will
now be familiar with. It then covers a number of key dependencies that the
Rails framework makes use of that contribute directly to the overall function-
ality that the Rails framework delivers. Finally, there is a survey of a number
of popular plugins that augment the Rails framework and make Rails an open
ecosystem rather than merely a framework.
Along the way, you’ll see various conventions we’ve adopted.
Live Code
Most of the code snippets we show come from full-length, running exam-
ples that you can download. To help you find your way, if a code listing
can be found in the download, there’ll be a bar before the snippet (just
like the one here).
Download w o r k / d e m o 1 / a p p / c o n t r o l l e r s / s a y _ c o n t r o l l e r. r b
class SayController < ApplicationController
def hello
end
def goodbye
end
end
This contains the path to the code within the download. If you’re reading
the ebook version of this book and your ebook viewer supports hyper-
links, you can click the bar, and the code should appear in a br owser
window. Some browsers (such as Safari) will mistakenly try to interpret
some of the templates as HTML. If this happens, view the source of the
page to see the real source code.
2. http://pragprog.com/titles/rails4/source_code has the links for the downloads.
Report erratum
剩余456页未读,继续阅读
海豚的翅膀
- 粉丝: 0
- 资源: 158
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功