Ruby

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Ruby - Presentation Transcript

    1. Ruby Андрей Ситник
    2. Содержание
      • Философия
      • Истоки
      • Определение
        • Скриптовой
        • Объектный
        • Динамический
      • Примеры
      • Реальный проект
      • Ссылки
    3. Философия Я хочу, чтобы компьютер был моим слугой, а не господином. — Юкихиро Мацумото, создатель Ruby
    4.  
    5. Perl , Smalltalk , Eiffel , Ada , Lisp Истоки
    6. Ruby — скриптовый ,   объектный ,   динамический язык программирования
    7. Скриптовый
      • Необязательная компиляция ruby code.rb
      • Никаких лишних строк puts "Hello world"
      • Интерактивная консоль >> "Ruby" * 2 => "RubyRuby"
    8. Синтаксический сахар Необязательные символы: User. find ({ 'login' => 'ai' }) ; User. find ( { 'login' => 'ai' } ) User. find { 'login' => 'ai' } User. find 'login' => 'ai' Однострочные операторы: puts 'правда' if true open 'http://ya.ru' rescue puts 'Нет связи'
    9. Всё возвращает значение def sum ( a , b ) a + b end a = if true 'правда' else 'ложь' end #=> 'правда'
    10. Функция как аргумент [ 1 , 2 , 3 ]. find { | i | i % 2 == 0 } #=> 2
    11. Работа с массивами 5 . times { | i | puts i } [ 1 , 2 , 3 ]. each { | i | puts i } [ 1 , 2 , 3 ]. map { | i | i + 1 } #=> [2, 3, 4] [ 1 , 2 , 3 ]. inject { | sum , i | sum + i } #=> 6
    12. Объектный -1 . abs () #=> 1 SomeClass. new #=> объект класса 2 .+( 3 ) #=> 5
    13. Динамический class String def /( another ) File. join ( self , another ) end end 'dir' / 'file' #=> "dir/file"
    14. Пример. Тестирование. RSpec describe Users do it 'should add user' do # Метод empty? должен вернуть true Users. should be_empty Users << 'ai' Users. length . should == 1 end end
    15. Пример. ORM. ActiveRecord class Author < ActiveRecord::Base has_many :posts end class Post < ActiveRecord::Base belong_to :author end ai = Author. find_by_login ( 'ai' ) ai . login #=> &quot;ai&quot; ai . posts . length #=> 3 post = ai. posts . first post . title #=> &quot;Первая запись&quot;
    16. Пример. Веб. Sinatra site.rb get '/post/:id' do post = Post. find ( params [ 'id' ]) haml :post end views/post.haml %html %body %h1 = post .title %p = post .text
    17. 3 человека + 48 часов + Ruby =
    18. Ссылки Руби: Обучение: Встречи: Книги: Изучаем Ruby Ruby on Rails. Быстрая веб-разработка. Путь Rails ruby-lang.org bit.ly/BPCg3 twitter.com/spbruby
    SlideShare Zeitgeist 2009

    + Andrey SitnikAndrey Sitnik Nominate

    custom

    176 views, 0 favs, 0 embeds more stats

    Рассказ о Ruby студентам из Micr more

    More info about this document

    CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

    Go to text version

    • Total Views 176
      • 176 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 0
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories