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

Rails Girls Sofia - Blitz Intro to Programming

Rails Girls Sofia - Blitz Intro to Programming

Част от презентацията на Rails Girls Sofia събитието.

Dimitar Dimitrov

March 13, 2016
Tweet

More Decks by Dimitar Dimitrov

Other Decks in Programming

Transcript

  1. Езици за програмиране • Ruby (Руби) е език за програмиране

    • Има и други (C#, Java, C++, PHP, JavaScript, Clojure, Scheme и още 2783...) • Можем да ползваме произволен* език, за да правим това, което ще правим днес • Руби е готин и ще ползваме него • Може да си изкарвате прехраната с Ruby :)
  2. Внимание - термини • Код = съвкупност от команди и

    данни • Кодът на Ruby (а и повечето други езици за програмиране) се пази в текстови файлове • Изпълнява се от програма (интерпретатор), кръстена “ruby” • Може да си играете с Ruby и в т.нар. “интерактивна конзола” (REPL) – irb
  3. 1. Данни • Всичко се върти около данните – зареждате

    данни, манипулирате данни, произвеждате данни. • Програмиране = зареждане на данни, манипулация на данни, произвеждане на данни (по автоматизиран начин)
  4. 1. Данни – зареждане 1. “Зареждане” на данни – прочитане

    от файлове, вход от потребителя, прочитане от друга програма (база данни, интернет и т.н.) 2. Вмъкване на данните в самата програма
  5. 1. Данни – типове 1. Данните имат различни типове 2.

    Всеки тип поддържа определен набор операции 3. Например, числата поддъжат деление: 42 / 2 4. Какво става, ако разделим “бетон” / “небе”?
  6. 1. Данни – типове 1. Текст – без ограничение в

    дължината 2. Числа – цели, с плаваща запетая, рационални, комплексни 3. Съставни типове данни – списъци от неща, речници с неща 4. Наши собствени типове данни – “продукт”, “поръчка”, “потребител”, …
  7. 2. Имена 1. Механизъм да реферираме към определени данни 2.

    Името си го избираме ние и го “насочваме” към някакви данни 3. Може да сменяме накъде сочи името 4. Правим манипулации с името, реално работейки с данните зад него 5. Имената наричаме променливи (variables)
  8. Имена (променливи) и данни (стойности): някакво_име  =  данни   Например:

    event_name  =  "Rails  Girls  Sofia”   coaches  =  50   accepted_participants  =  coaches  *  2 2. Имена
  9. 3. Действия Всички данни (стойности) поддържат определени операции/действия: данни.действие  

    данни.друго_действие()   данни.пак_действие(други_данни)   данни.друго_действие(и,  разни,  опции)
  10. Обекти? 1. Обекти = тип данни + операциите, които можем

    да правим с тях. 2. Днес ще приемем, че “данни” и “обекти” са взаимозаменяеми.
  11. 4. Условия if  условие      изпълни  това,  ако  условието

     е  истина   else      иначе  изпълни  тази  част   end
  12. 4. Условия братчеда  =  Човек.нов(name:  'Пешо')   if  братчеда.гладен?  

       братчеда.иди_да_обядваш   else      братчеда.изиграй_едно_хоро   end
  13. 5. Цикли • Начини да повтаряте едно и също действие

    многократно (т. нар. "цикли") • Повече от един начин да стане това; избираме си различни, според ситуацията • Принципът е еднакъв в повечето езици за програмиране
  14. 5. Цикли while  cat.alive?      cat.eat      cat.sleep

         cat.purr_for_diversion      cat.plot_for_world_domination   end
  15. 6. Изрази • Всичко в Ruby е израз. Всяко валидно

    парче код, което можете да пуснете самостоятелно в irb и да не получите грешка. • Всеки израз си има резултат (някаква стойност) • Ще наричаме тази стойност “оценка” • Ще видите това по-късно в irb