Код: 315221Назва:
Технологія веб-програмування Ruby on Rails
Анотація: Курс присвячено новітнім технологіям веб-програмування, реалізованим у фреймворці Ruby on Rails. В рамках даного курсу розглядаються основи мови Ruby і детально, на прикладах, розбираються ключові аспекти Ruby on Rails.Тип дисципліни: вибірковаРік навчання: 4Семестр: веснянийКількість кредитів: 4 (загальна кількість годин - 120 год.; аудиторні години - 42 год.; лекції - 20 год.; практичні заняття - 22 год.; самостійна робота - 78 год.)Форма контролю: залікВикладач(і): Захоженко П.О.Результати навчання: Після завершення цього курсу студент буде знати мову Ruby на достатньому для написання веб-застосунків рівні, а також розуміти методи імплементації типової для веб-застосунків функціональності за допомогою фреймворка Ruby on Rails. Спосіб навчання: аудиторнийНеобхідні обовязкові попередні й супутні модулі: Алгоритми і структури даних;
Основи веб-технологій;
Розробка клієнт-серверних застосуваньЗміст дисципліни: Студенти вивчають особливості мови Ruby: синтаксичні конструкції, основні типи і структури даних, об'єктну модель, функціональні елементи (blocks, procs, lambdas) і метапрограмування.
Також розглядається Rack: інтерфейс для імплементації веб-серверів на Ruby і веб-застосунки, написані на Rack-сумісних мікро-фреймворках (Sinatra, Roda).
Потім студенти опановують різні аспекти Ruby on Rails фреймворка починаючи з основи - Router, Models, Views, Controllers (MVC) і продовжуючи різною типовою для веб-застосунків функціональністю та її імплементацією на Rails. Зокрема, розглядається: аутентифікація, авторизація, операції, що виконуються в фоновому режимі (background/async operations), інтернаціоналізація, робота з client-side (JavaScript), відправка електронних листів (emails), real-time client-server communication (websockets) тощо. Також розглядається автоматизоване тестування як необхідний аспект розробки якісного коду і методи імплементації різних типів автоматичних тестів в Rails. Крім того, певний час приділяється методам масштабування (scaling) Rails застосунків.
Впродовж усього курсу окрема увага спрямовується на важливість стилю написання коду, а саме його відповідності загальноприйнятим в середовищі Ruby-програмістів конвенціям.
методологією.Рекомендована література: ООсновна: 1. Ruby: official documentation. Web 2. Ruby on Rails Guides. Web. 3. Ruby Style Guide. Web. 4. Dave Thomas, Chad Fowler, Andy Hunt. Programming Ruby 1.9 & 2.0 (4th edition): The Pragmatic Programmers' Guide. "The Pragmatic Bookshelf". 2013.5. Bigg, Ryan, Rebecca Skinner, Yehuda Katz, and Steve Klabnik. Rails 4 in Action. Shelter Island, NY: Manning Publications, 2015. Print. Додаткова:1. Why The Lucky Stiff. "Why's (Poignant) Guide to Ruby." Web. . 2. Olsen, Russ. Design Patterns in Ruby. Upper Saddle River, NJ: Addison-Wesley, 2008. Print.3. Black, David A. The Well-grounded Rubyist. Greenwich, CT.: Manning, 2009. Print.4. Pytel, Chad, and Tammer Saleh. Rails Antipatterns: Best Practice Ruby on Rails Refactoring. Upper Saddle River, NJ: Addison-Wesley, 2011. Print.5. Chelimsky, David, Dave Astels, Bryan Helmkamp, and Dan North. The RSpec Book. O'Reilly Media, 2011. Print.6. Burns, Anthony, and Tom Copeland. Deploying Rails: Automate, Deploy, Scale, Maintain, and Sleep at Night. Dallas Tex: Pragmatic Bookshelf, 2012. Print.7. Valim, Jose. Crafting Rails Applications: Expert Practices for Everyday Rails Development. Raleigh, NC: Pragmatic bookshelf, 2011. Print.Форми та методи навчання: лекції, практичні заняття, самостійна робота Методи й критерії оцінювання: рейтингове оцінювання за 100-бальною системою: поточний контроль - 70 балів (опитування, тести на комп'ютерах, індивідуальне завдання на комп'ютері); підсумковий контроль - 30 балів (залік).Мова навчання: українська