• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Ruby on rails
 

Ruby on rails

on

  • 396 views

My first presentation on what is Ruby on Rails

My first presentation on what is Ruby on Rails

Statistics

Views

Total Views
396
Views on SlideShare
347
Embed Views
49

Actions

Likes
0
Downloads
1
Comments
0

3 Embeds 49

http://amolnpujari.wordpress.com 32
http://www.linkedin.com 13
https://www.linkedin.com 4

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address] -Ruby has a wealth of other features, among which are the following: Ruby has exception handling features, like Java or Python, to make it easy to handle errors. Ruby features a true mark-and-sweep garbage collector for all Ruby objects. No need to maintain reference counts in extension libraries. As Matz says, “This is better for your health.” Writing C extensions in Ruby is easier than in Perl or Python, with a very elegant API for calling Ruby from C. This includes calls for embedding Ruby in software, for use as a scripting language. A SWIG interface is also available. Ruby can load extension libraries dynamically if an OS allows. Ruby features OS independent threading. Thus, for all platforms on which Ruby runs, you also have multithreading, regardless of if the OS supports it or not, even on MS-DOS! Ruby is highly portable: it is developed mostly on GNU/Linux, but works on many types of UNIX, Mac OS X, Windows 95/98/Me/NT/2000/XP, DOS, BeOS, OS/2, etc.
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]
  • [email_address]

Ruby on rails Ruby on rails Presentation Transcript

  • puts hello ruby on rails by amol.pujariWhy should you switch to Ruby? If you are happy with Perl or Python, you donthave to. But if you do feel there must be a better language, Ruby may be yourlanguage of choice. Learning a new language is harmless. It gives you newideas and insights. You dont have to switch, just learn and try it. You may findyourself comfortable enough with Ruby to decide to switch to it.- Matz (Yukihiro Matsumoto), written ruby in 1995
  • Agenda.items.each {|item| puts item} RoR - Market Trend Know ruby  Principles  Features Ruby on rails  Principles  Building blocks  Caching  Security  Community Support
  • Market Trend - Need for Ruby on Rails Less “Time To Market” Quick to build & deploy Its free Rapid application development Handle traffic – when needed Huge free libraries with strong community support
  • Who is using Ruby on Rails
  • Ruby on Rails – Todays world Visits/sec twitter 642 scribd 940 1041 blingee 1170 1621 327 yellowpages 1734 penny-arcade 2069 78 43things 4190 232 kongregate 4488 158 potchforkmedia 4740 projectpath 5041 Around 4000 companies have RubyOnRails funnyordie 5089 adopted in last 4 years
  • So what is Ruby..?
  • Ruby A scripting language Purely Object Oriented Extreme dynamic Easy to learn, simple Influenced by Python, Perl and Lisp Open source and free Cross Platform
  • Ruby - Programming is fun, enjoy it You dont want to fight with the language, feel natural Be creative
  • Ruby - concise and succinct Concentrate on the problems Its like pseudo-code, simple Focus on human factor
  • Ruby - extreme dynamic eval, meta-programming, reflection, Open Classes
  • Ruby - features Dynamic yet strong typing Regular expressions, symbols, mutable strings Blocks, Iterators, generators Collections, arrays, hashes Interpolation, default arguments Operator overloading exception handling Native threads Custom dispatch behavior (method_missing) Garbage collection
  • if you want to try out all these examples given then download ruby from http://www.ruby-lang.org/en/downloads/ open console, type irb, and enter have fun …end# so simple often my code requires no comments - amol.pujari
  • ruby on railsextracted by David Heinemeier Hansson from his work on Basecamp, a projectmanagement tool by 37signals
  • Ruby on Rails: Rapid application development Web application framework Free Very less code Fast development & client appreciation Quick incremental development model Multiple Databases support Testing support Continues Integration support Deployment support Cloud ready solution
  • Ruby on Rails: Principles - CoC Conventions Over Configurations Database table name: books { id(pk), created_at, updated_at }:unicode Database migration: app/db/migrate/<ts>_create_books.rb Model: class Book => app/models/book.rb Views: app/views/books/ Controller: class BooksController => app/controllers/books_controller.rb Unit tests: app/test/unit/book_test.rb Fixtures: app/test/fixtures/books.yml Functional tests: test/functional/books_controller_test.rb Routes: resources :books =>
  • Ruby on Rails: Principles - DRY Dont Repeat Yourself
  • Rails: building blocks ORM: Active Record Action Pack  Action Dispatch  Action Controller  Action View Active Support Active Model, Active Resource, Action Mailer Railties
  • Rails: Active Record CRUD support  migrations Model level validations  Associations Callbacks  Query interface
  • Rails: Active Record: Association
  • Rails: Active Record: Association
  • Rails: inbuilt caching SQL Caching caches_page :index caches_action :index Fragment caching => <% cache do %> ...<% end %> ActiveSupport::Cache::Storeconfig.cache_store = :memory_store# :FileStore, :mem_cache_store, :redis,
  • Rails: Security Session Hijacking  Stealing a user’s session_id  Use database store and SSL Session Fixation  Attacker fixes a session id known to her  Issue a new session identifier (reset_session in RAILS) Cross-Site Request Forgery (CSRF)  Rails includes a security token in non-GET requests SQL Injection  Unauthorized reading/writing  Model.first(:conditions => ["login = ? AND password = ?", entered_user_name, entered_password])  attr_protected :is_admin HTML/JavaScript Injection  h @book.description # => alert(script inside);
  • Ruby on Rails – wider support Databases  Development  Performance  Security  Ibm db2  Neatbeans  J-meter  Md5, Kerberos  Oracle  Apatana  Yslow, Firebug  Sha1, Sha2  MsSql  Eclipse  Five-runs  Platforms  Mysql  Radrails  New-relic  All flavors of linux  Postgres  Project Management  Http-perf  Windows, MS DOS, Mac  Sqlite  Redmine  Memcache, redis  CMS  Mongodb  Trac  Apache benchmark  Wordpress, Mephisto  Cassandra  Basecamp  Standards  Comatoes, Radiant  BerkleyDB  Spring loop  XML/REST  spree UI  Assembla  MVC/ORM  Testing  HTML 5  Repositories  Deployment  Cuccumber, Rspec  Flash  Svn, cvs  Apache  Factory-girl, selenium  Flex  Github  NGINX  Flavors Scripts  Mercurial  Mongrel  Jruby  Ajax  Visual Source Safe  Glassfish  Iron ruby  Jquery  Continues Integration  phusion-passanger  Rubinies  Prototype  Capistrano  WebSphere  Ruby shoes  Css 3  Cruise Control  Rack  Sinatara  Coffeescript  moonshine  metal  Merb
  • Thanks. :)any queries?