Skip to content

Latest commit

 

History

History
50 lines (40 loc) · 2.38 KB

File metadata and controls

50 lines (40 loc) · 2.38 KB
title Web development
date 2015/01/04
author Ivo Herweijer
the_summary One of the areas of software development where Ruby really shines is web development. From creating a simple website to a full cloud based webservice, it is all easily attainable.

Web development

One of the areas of software development where Ruby really shines is web development. From creating a simple website to a full cloud based webservice, it is all easily attainable.

Ruby on Rails

I should mention Ruby on Rails. You have been learning the Ruby language, how to speak it. But Rails is a very powerful and popular toolkit for building websites.

Ruby on Rails, or RoR, consists of a set of Ruby libraries. These libraries help you do things that websites commonly need. Like routing an incoming request to the correct handler. Or interacting with the database. Or returning a fully rendered webpage.

RoR makes creating a website easy, if you follow the RoR conventions. This also means that you do not have to set up a lot of complicated stuff in order to get RoR to work. RoR people call this principle convention over configuration.

One important convention is called: Model-View-Controller (for purists it is a design pattern). It means that you should separate code for: business logic (the model), rendering webpages (the view) and connecting stuff (the controller).

If you're interested in learning about Rails, I would head over there right away. Start putting your Ruby skills to proper use!

Other frameworks

One disadvantage of RoR is that, because there are so many libraries and conventions, it takes a while to learn RoR.

There are several other Ruby web frameworks that are simpler and easier to learn:

  • Sinatra
    Popular: Sinatra
  • Hanami
    Clever: Hanami
  • Camping
    Originally crafted by _why (just like this website): Camping
  • Ramaze
    Simple and few conventions: Ramaze
  • NyNy
    Very simple, but extendable: NyNy

This is just a short list of all frameworks that are available. Some searching should give you many more options.