Giter Site home page Giter Site logo

rubyschool's Introduction

rubyschool

Rubyschool.us list of contents (Russian)

Урок 1

  • что такое Ruby
  • что такое Ruby on Rails
  • настраиваем окружение
  • устанавливаем программы

Урок 2

  • puts, print, gets. #, \n
  • переменные
  • специальные символы
  • .chomp, .to_i, to_s

Урок 3

  • irb
  • типы данных: string, fixnum, float, integer
  • class, array. Hash
  • задача про сопротивление (закон Ома)
  • преобразование типов данных (to_i переводим в to_s)

Урок 4

  • интерполяция строк - #{}
  • поддержка русского языка в Windows (#encoding: 866 + ANSI)
  • удаление символа (.chomp!)
  • методы
  • пайпы ||
  • задачи на преобразование типов и интерполяцию строк
  • дз: вывести числа 1..10, определить чётные и нечётные

Урок 5

  • методы (продолжение): upto, capitalize, strip, whitespace
  • \n \t \r
  • .times (считает от 0)
  • .upto (считает от 1)
  • задача: вывести на экран ряд цифр с помощью upto
  • задача: “Привет #{name}, в вашем имени #{name.length} букв”

Урок 6

  • блоки
  • .sleep, .times, do...end, rand
  • задания про upto, times, sleep
  • задача: рассчитать накопления (сколько будем откладывать и сколько месяцев)
  • formating disk, Matrix
  • дз: доделать задачу про накопления

Урок 7

  • if...end, операторы сравнения, exit
  • задача: алгоритм "вы довольны зарплатой?" (Да\Нет)
  • задача: посчитать, сколько гостей придёт
  • задача: сделать игру "однорукий бандит"

Урок 8

  • break, while true, ranges, each
  • разница между .. и ...
  • 1_000_000
  • калькулятор
  • if/else
  • задача: игра - угадываем число
  • ranges

Урок 9

  • функции и методы (def)
  • глобальные переменные (@)
  • символы (:)
  • массивы, добавление в массивы

Урок 10

  • инициализация массивов (продолжение)
  • задачи: двигаем робота, удаляем/добавляем учеников в список
  • loop do

Урок 11

  • разбор дз камень-ножницы-бумага
  • хэши (hash)

Урок 12

  • отличия хэшей от массивов
  • задача: создаем словарик
  • задача: переделываем “однорукого бандита” с использованием хэшей
  • дз “Tic-Tac-Toe” (крестики-нолики)

Урок 13

  • повторяем хэши
  • использование if в одну строку
  • merge
  • сохранение в файл >, >>
  • немного об HTML

Урок 14

  • введение в ООП
  • классы
  • объекты
  • attr_reader, attr_accessor

Урок 15

  • задачи с классами: самолеты и аэропорты, альбомы и песни
  • наследование
  • дз: сделать программу с классами Artist - Album - Song

Урок 16

  • статические методы
  • lambda-функции
  • yield
  • наследование
  • типы переменных

Урок 17

  • мета-программирование (send)
  • чтение и запись в файлы
  • получение списка папок и файлов в каталогах

Урок 18

  • GET/POST запросы
  • задача: программа для подбора пароля

Урок 19

  • установка DevKit на Windows
  • установка Sinatra
  • Helloworld на Синатре

Урок 20

  • установка и работа с Git
  • установка Ungit на Windows
  • продолжение работы с Sinatra

Урок 21

  • ещё немного HTML-разметки
  • основы CSS
  • Bootstrap
  • установка готового небольшого приложения Sinatra с включенным Bootstrap'ом

Урок 22

  • Рома создает репозиторий. а все копируют себе
  • ещё немного теории по git
  • доделываем приложение BarberShop для записи к парикмахеру (теперь уже с использованием Bootstrap)

Урок 23

  • доработка приложения BarberShop
  • немножко JS, jQuery
  • делаем colorpicker при помощи jQuery плагина

Урок 24

  • немного подробнее о коде из предыдущего jQuery плагина и просто JS и jQuery
  • валидация
  • сохранение значений в полях формы

Урок 25

  • настройка git для пушей без запроса пароля (по ключу ssh)
  • установка SQLite3
  • немного про синтаксис SQL
  • создание БД и таблиц

Урок 26

  • связываем приложение BarberShop с SQLite
  • устанавливаем datetimepicker
  • выборка из БД, вывод информации

Урок 27

  • разбираем домашнее задание
  • выводим из БД в веб (в таблицу)
  • создаем вторую таблицу, добавляем туда значения
  • делаем выборку из БД, заносим в выпадающее меню

Урок 28

  • повторение
  • новое приложение-блог (Leprosorium)
  • прием параметра из ссылки

Урок 29

  • введение в ActiveRecord
  • rake
  • tux
  • migrations

Урок 30

  • продолжение ActiveRecords
  • валидация при помощи ActiveRecord

Урок 31

  • общая инфа по HTTP и запросам
  • javascript

Урок 32

  • повторение материала про классы
  • работаем с localstorage
  • создаём магазин пиццы
  • разбираем вопросы, которые могут задавать на интервью при приёме на работу

Урок 33

  • продолжаем разбор вопросов, которые могут задавать на интервью при приёме на работу
  • немного про yield
  • пишем PizzaShop

Урок 34

  • небольшое объяснение про операторы для краткой записи операций x += 1; x ||= 1
  • продолжаем делать pizzashop (javascript)
  • устанавливаем Rails
  • объяснение структуры Rails

Урок 35

  • ещё разбор вопросов, которые могут задавать на интервью при приёме на работу
  • разбираем тесты, представленные на Odesk
  • продолжаем писать PizzaShop

Урок 36

  • краткое объяснение REST
  • анализ написанного приложения

Урок 37

  • введение в pull-реквесты
  • разбираем задачи с собеседования
  • настройка отступов в Sublime text
  • запускаем Rails
  • режимы запуска Rails
  • генераторы Rails
  • создаем контроллер
  • создаем модель

Урок 38

  • разбираем задачи на интервью
  • повторение
  • разбираем REST маршруты
  • сравнениваем resource и resources

Урок 39

  • создаем основные контроллеры (по REST) для сущности articles
  • создаем статичные страницы в RoR

Урок 40

  • удаление статей
  • атрибуты тегов data- (turbolinks)
  • небольшой рассказ про render
  • отношения one-to-many
  • создаем форму для комментариев

Урок 41

  • про типы связей (many-to-many, one-to-many, one-to-one)
  • задача: доделать блог до минимального функционала (CRUD)
  • полезные сервисы для веб-разработки
  • rspec и тесты
  • пишем пару простых тестов

Урок 42

  • матчеры для тестов
  • пишем тест, закрывающий баги на github
  • devise: установка, минимальная настройка, создание ссылок для входа-выхода

Урок 43

  • делаем ссылки входа, выхода и т. п. с помощью devise
  • сессии и куки
  • чуть-чуть про json
  • добавляем поля username в devise
  • настраиваем блог для поля username

Урок 44

  • “интервью” с другом Романа - Алексеем. Вопросы про Odesk (Upwork) и в целом про ruby и программирование
  • bootstrap
  • основы responsive-дизайна

Урок 45

  • принцип работы метода params в контроллерах (используется для приёма параметров через post)
  • разница между render и redirect_to
  • разница между before_filter и before_action
  • немного про хелперы
  • continuous integration и continuous delivery (CI и CD)
  • немного про vagrant

Урок 46

  • тестируем модели
  • устанавливаем rspec в приложение blog (и capybara)
  • устанавливаем shoulda-matchers
  • устанавливаем FactoryGirl: простейшая настройка, создание фабрики, тестирование
  • создаем фабрику с автоматическим назначением значений полей

Урок 47

  • понятие о приёмочном тестировании (acceptance testing)
  • пишем тест для capybara
  • понятие о i18n (internationalization)
  • применение i18n в capybara
  • before и after hooks

Урок 48

  • Scaffolding (генерация модели, вида и контроллера одной командой)
  • недостатки скаффолдинга
  • создание небольшого приложения при помощи скаффолдинга
  • кратко про отправку имейлов

Урок 49

  • полиморфные ассоциации (краткое объяснение что это такое и создание небольшого примера)
  • паттерны
  • Singleton. Разбор на примере.
  • типы переменных в классе, принадлежащие экземпляру класса и классу

Урок 50

  • регулярные выражения

rubyschool's People

Contributors

ro31337 avatar wazzuper avatar marat-y avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.