Опис курсу
Ruby 🇺🇦Одразу зазначу, що структура може трішки змінюватися у процесі, але загальна картина спектру тем буде наступною:
- SDLC, методики та методології роботи. Waterfall, Agile. Scrum та Kanban.
- Основи Git. Github.
- Основні концепції програмування/Встановлення Ruby/RVM/IRB. Кодові угоди (Code Conventions).
Тут ми поговоримо по якому принципу влаштована робота в команді та компанії, як та де маніпулювати кодом (зберігання, обмінювання, відкочування і т.п.). А також налаштуємо робоче середовище. - Типи даних Ruby, змінні Ruby, оператори Ruby, Strings, Array, Hashes, регулярні вирази.
- Керуючі структури, циклові структури While і For, діапазони. Block, proc та lambda.
- Методи, файли та IO, обробка винятків.
- Розуміння ООП, класів, модулів, міксинів. Основні принципи.
В цій частині поговоримо про про основи Ruby, що будемо часто використовувати під час створення програм. - Модульні тести. Вступ до RSpec.
- Інструменти статичного аналізу коду (ruby-lint, rubocop).
Тут поговоримо про тести, як писати та для чого вони, а також про інструменти, які підказують, що в нас не дуже «гарно» написано з можливістю автокоригування. - Ruby on Rails. MVC.
- Ruby on Rails. Моделі.
- Ruby on Rails. Контролери.
- Ruby on Rails. Шляхи.
- Ruby on Rails. Вигляд(view). Макети та візуалізація.
- REST. REST в Ruby on Rails.
- Ruby on Rails. Безпека.
- Ruby on Rails. Веб-токени JSON (JWT).
Тут ми вже нарешті будемо розглядати фреймоврк RoR. З чого він складається та порядок роботи (overflow). - SQL. Реляційні СУБД (MySQL, PostgreSQL).
- NoSQL. Огляд MongoDB / Redis.
- Ruby on Rails. Міграції БД.
- Ruby on Rails. TDD. Капібара.
База даних – вона практично всюди потрібна, тому для нас це важлива частина, яку охопимо у вивченні. А також інший вид тестів end-to-end. - HTML5. Загальні теги. Семантична розмітка та нові елементи. Форми.
- CSS3. Селектори, Потік елементів, Псевдокласи та елементи, Коробкова модель. Позиціонування.
- Чуйний/адаптивний веб-дизайн. медіа запити.
- Bootstrap CSS Framework.
- Препроцесори CSS.
Цю частино ми бігло пройдемо, оскільки це базова частина у web і це передбачає, що ви вже мали бути хоча б ознайомлені. ЇЇ можна дійсно пропрацювати самостійно. - Основи JavaScript.
- Умовні оператори JavaScript. Цикли. Масиви.
- Функції.
- BOM JavaScript. Обробка подій.
- ES 2015.
- JavaScript DOM.
- Бібліотека jQuery.
- AJAX. Fetch API.
- NodeJS. Менеджер пакетів вузлів (npm).
Куди ж без JS на сьогоднішній день у web аплікаціях? Він потрібен як зі сторони frontend-у так і зі сторони backend-у. - Патерни проектування.
- Зчеплення та згуртованість. (Coupling and cohesion).
- YAGNI, KISS, DRY.
- OOD. Принципи SOLID.
- Багатопотоковість і паралелізм.
А тут вже обговоримо речі які вам будуть потрібні, коли наберетесь трохи досвіду, щоб знати хороший тон кодингу та яких принципів варто притримуватися.
Ось такий план, якщо є якісь питання чи пропозиції, очікую фідбек у коментарях.
p.s: картинка до цього допису - це те, як Midjourney бачить опис "Людина в темній кімнаті пише код на Рубі у стилі матриці".