Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Ruby 2013 Lecture 0

Ruby 2013 Lecture 0

Уводна лекция за курса "Програмиране с Ruby", който се води във ФМИ към СУ през учебната 2013/14 г. http://fmi.ruby.bg/

More Decks by Programming Ruby @ fmi.uni-sofia.bg

Other Decks in Programming

Transcript

  1. Аксения Пенкова Александър Иванов Генади Самоковаров Димитър Димитров Ивайло Петров

    Петко Борджуков Пламен Стоев Сава Чанков Станка Енчева Стефан Кънев Христо Владев И други...
  2. Kimo's high expectations set a new pace for me. He

    taught me “the standard pace is for chumps” - that the system is designed so anyone can keep up. If you're more driven than “just anyone” - you can do so much more than anyone expects. — http://sivers.org/kimo
  3. 0 45 90 135 180 180 150 130 110 90

    6 5 4 3 Скалата
  4. Задачите • десет броя • предават се онлайн • проверяват

    се автоматично • обикновено 0-6 точки
  5. Задачите • десет броя • предават се онлайн • проверяват

    се автоматично • обикновено 0-6 точки • могат да дават допълнителни точки
  6. Задачите • десет броя • предават се онлайн • проверяват

    се автоматично • обикновено 0-6 точки • могат да дават допълнителни точки • имате право да пропуснете три
  7. Задачите • десет броя • предават се онлайн • проверяват

    се автоматично • обикновено 0-6 точки • могат да дават допълнителни точки • имате право да пропуснете три • чуждите решения са публични
  8. Проекти • на края на семестъра • вие измисляте или

    ние избираме • 60 точки • 1/3 функционалност, 1/3 стил, 1/3 тестове
  9. Проекти • на края на семестъра • вие измисляте или

    ние избираме • 60 точки • 1/3 функционалност, 1/3 стил, 1/3 тестове • да работят е задължително, но не достатъчно
  10. Бонуси • Предизвикателства • Участие в час • Участие във

    форумите (помощ на другарчето) • Бонус точки за елегантни решения
  11. Бонуси • Предизвикателства • Участие в час • Участие във

    форумите (помощ на другарчето) • Бонус точки за елегантни решения • Принос в GitHub
  12. Бонуси • Предизвикателства • Участие в час • Участие във

    форумите (помощ на другарчето) • Бонус точки за елегантни решения • Принос в GitHub • Изнасяне на кратка презентация по време на курса
  13. Участие в час • даваме Snickers за добри въпроси, отговори

    или коментари • обикновено на тях има код, който ви носи 1 точка
  14. Участие в час • даваме Snickers за добри въпроси, отговори

    или коментари • обикновено на тях има код, който ви носи 1 точка • насърчават да не спите в час
  15. Участие в час • даваме Snickers за добри въпроси, отговори

    или коментари • обикновено на тях има код, който ви носи 1 точка • насърчават да не спите в час • ако прекалите с глупостите ще хванете захарна болест
  16. Предизвикателства • малка задачки относително често • малки: 4-10 реда

    код • често: 2+ пъти в седмицата • имате 24 часа за всяка
  17. Тежките ограничения максимум X реда код в метод максимум Х

    нива на влагане в метод максимум Х метода в клас
  18. Тежките ограничения максимум 7 реда код в метод максимум 2

    нива на влагане в метод максимум 10 метода в клас
  19. “Besides a mathematical inclination, an exceptionally good mastery of one's

    native tongue is the most vital asset of a competent programmer.” — Edsger Dijkstra* * изобретател на blog post-а
  20. “Programs must be written for people to read, and only

    incidentally for machines to execute.” — H. Abelson and G. Sussman
  21. web framework най-популярното нещо в Ruby няма да говорим за

    него (или поне най-много лекция-две)
  22. В този курс ще се учим как се дялкат камъни,

    а не как се строят катедрали.
  23. $ cat hello.rb puts "Hello world!" forty_two = 6 *

    9 puts "The answer is #{forty_two}" $ ruby hello.rb Hello world! The answer to is 54 интерпретира се
  24. # Output "I love Ruby" say = "I love Ruby"

    puts say # Output "I *LOVE* RUBY" say['love'] = "*love*" puts say.upcase # Output "I *love* Ruby" # five times 5.times { puts say } днес на http://ruby-lang.org/