
- •Розділ і: еволюція інструментальних технологій в середовищі Ruby on Rails
- •1. Знайомство з Ruby on Rails
- •2. Поговоримо про Ruby
- •3 . Філософія Ruby
- •4. Можливості Ruby
- •5. Переваги Rails
- •6. Філософія Ruby on Rails
- •7. Як працює mvc в Ruby on Rails?
- •8. Active Record
- •9. Скаффолдинг
- •10. Ajax (Asynchronous JavaScript and xml)
- •1. Популярність серед користувачів
- •2. Мови програмування
- •3. Концептуальна суть Rails та Django
- •4. Модель і база даних
- •5. Url Роутинг та контроллери
- •6. Контроллер, вид
- •7. Шаблон і форма
- •8. Адміністрування користувача
- •9. Ajax
- •10. Засоби для тестування
МІНІСТЕРСТВО ОСВІТИ УКРАНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ "ЛЬВІВСЬКА ПОЛІТЕХНІКА"
ІНСТИТУТ КОМП’ЮТЕРНИХ НАУК ТА ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ
Курсове проектування
На тему:
Ruby on Rails – висхідна зірка комп’ютерних інформаційних технологій (еволюція інструментальних технологій в середовищі Ruby on Rails)
Завдання
Для виконання курсової роботи з дисципліни
«Методи і засоби комп’ютерних інформаційних технологій»
Студентці групи КН-30
Тема: Ruby on Rails – висхідна зірка комп’ютерних інформаційних технологій (еволюція інструментальних технологій в середовищі Ruby on Rails).
Задано:
дослідити програмний інструментарій спеціалізованої мови Ruby для здійснення веб ужитків;
дослідити:
принципи побудови;
основні функціональні можливості;
засоби до функціонування;
напрямки найбільш вдалих застосувань;
Завдання видав: доцент Фабрі Людвіг Павлович
Прийняла до виконання:
Дата видачі завдання: 5.10.09
Зміст
Розділ І: еволюція інструментальних технологій в середовищі Ruby on Rails 5
1. Знайомство з Ruby on Rails 5
2. Поговоримо про Ruby 5
3. Філософія Ruby 6
4. Можливості Ruby 6
5. Переваги Rails 7
6. Філософія Ruby on Rails 9
7. Як працює MVC в Ruby on Rails? 10
8. Active Record 13
9. Скаффолдинг 14
10. AJAX (Asynchronous JavaScript and XML) 15
Розділ ІІ: RoR і Django: хто кого? 18
1. Популярність серед користувачів 20
2. Мови програмування 21
3. Концептуальна суть Rails та Django 22
4. Модель і база даних 23
5. URL Роутинг та контроллери 23
6. Контроллер, вид 24
7. Шаблон і форма 24
8. Адміністрування користувача 25
9. AJAX 25
10. Засоби для тестування 25
Висновок (ще одна думка) 26
Корисна література: 29
Сьогодення усе частіше й частіше шокує нас своїм темпом життя. Все нові і нові винаходи не дають людству стояти на місці. Нові прогресивні технології щораз із більшою активністю заповнюють наш простір. Не так уже й давно ще новинка, буквально за мізерний період часу стає звичним, побутовим явищем. Великим чином це стосується інформаційних технологій. Подивимось, все починалось з величезних за об’ємом і затратами ЕОМ. А зараз – все менші, портативніші, потужніші рішення приходять їм на зміну. Разом із прогресом апаратного складу проходить еволюція програмного забезпечення...
Актуальною на сьогоднішній день є тема, пов’язана з веб-технологіями. Розширення мережної інфраструктури – приєднання все більшої кількості користувачів з новими побажаннями, вимогами – диктує напрямки розвитку нових рішень. Значне місце серед них посідає розробка веб-ужитків. І тут на допомогу приходять нові інструментарії – втілення прогресивних технологій.
В першу чергу інструментарій повинен дозволяти не тільки якісну, але й швидку розробку, відповідно поставлених вимог. Вже існуючі платформи щораз удосконалюючись, вступають в потужну конкуренцію. На їх фоні виникають нові, які не зважаючи на те, що молоді, претендують бути першими. Так з’являються зірки комп’ютерних інформаційних технологій.
Серед таких висхідних зірок знаходиться Ruby on Rails. Саме ця платформа найбільш мене зацікавила. Тому уся подальша мова йтиме саме про неї.
У своїй роботі я намагатимусь детально та зрозуміло описати основні переваги Rails – те, що зробило її популярною на цілий світ. А також проведу аналіз-порівняння із ще однією потужною платформою – Django. І, звісно, поділюся власними враженнями про розробку в середовищі Ruby on Rails…
Розділ і: еволюція інструментальних технологій в середовищі Ruby on Rails
1. Знайомство з Ruby on Rails
“Rails is the most well thought-out web development framework I’ve ever used. And that’s in a decade of doing web applications for a living. I’ve built my own frameworks, helped develop the Servlet API, and have created more than a few web servers from scratch. Nobody has done it like this before.”
-James Duncan Davidson, Creator of Tomcat and Ant
На сьогоднішній час Ruby on Rails (RoR) – один з найвідоміших фреймворків для проектування веб-аплікацій. Він був розроблений провідною ІТ фірмою «37signals» (Чикаго, Іллінойс). А його батьком став Девід Хейнемер Ханссон. У липні 2004 року як безплатний продукт у світ вийшла перша версія Ruby on Rails 1.0. Вона набула широкої популярності серед розробників невеликих та середніх веб-ужитків.
І дійсно, з того часу стрімко зростає цікавість програмістів до Ruby on Rails. До прикладу кількість запитів в Google становить 13 млн., в той час, коли Struts – найвідоміший з фреймворків світу Java – 19 млн.
2. Поговоримо про Ruby
Коли ми говоримо про Rails, неможливо стороною оминути Ruby. Це спричинено не тільки тим, що каркас Rails був написаний на Ruby але і тим, що вони працюють як одне ціле.
Ідея написання Ruby виникла 23 лютого 1993 року, коли талановитий програміст Юкіхіро Мацумото розмовляв зі своїми колегами. Він планував написати таку сценарну мову, яка була б повністю об’єктно-орієнтованою, без будь-якого «іграшкового присмаку». На той час автор добре знав Perl, Pyton. Тому, без сумніву від них він запозичив все найкраще. Як сам пише про себе автор: «Мені, як мовному ман’якові і фанату об’єктно-орієнтованого програмування з п’ятнадцятилітнім стажем надзвичайно хотілося, щоб існувала істинно об’єктно-орієнтована, легка у вживанні мова програмування…».
В грудні 1995 року світ побачив Ruby 0.95. Але так, як уся документація була Японською, доступ до розуміння отримало надзвичайно мало людей. Лише в 1997 році вийшла англійська версія, а 1998 року відкрився форум «Ruby-talk». З цього часу починається стрімке зростання поширення Ruby.
3 . Філософія Ruby
Ruby в перекладі означає рубін. Яка вдала назва для для такої молодої і настільки перспективної мови, що як висхідна зірка засяяла на небосхилі програмування.
Отже, основне призначення Ruby – швидкість і простота розробки програми, зрозумілість і доступність синтаксису. При цьому швидкість роботи самої програми не береться до уваги.
Мова Ruby працює за принципом «найменшої неочікуваності». Це означає , що програма поводить себе саме так, як очікує цього програміст. Звісно, цю рису мають можливість спостерігати люди, які більш глибше працюють з ужитком.
Основною ціллю розробки було звільнення програміста від рутинної роботи, яку, однак, за нього тепер швидше і якісніше виконує комп’ютер. Наприклад опрацювання текстів чи адміністрування.
4. Можливості Ruby
“Before Ruby on Rails, web programming required a lot of verbiage, steps and time. Now, web designers and software engineers can develop a website much faster and more simply, enabling them to be more productive and effective in their work.”
-Bruce Perens, Open Source Luminary
Ruby ідеально поєднує в собі найкращі риси, запозичені з інших мов. До прикладу, від Perl Ruby наслідує можливість досягнення однієї і тієї ж мети кількома способами. І це прекрасний варіант. Є безліч людей і безліч думок, навряд чи однакових, і кожна по своєму геніальна. Лаконічний і простий синтаксис – вплив Ада, Эйфель і Python. Обробка виключень в стилі Java і Python.
Ruby – повністю об’єктно-орієнтована мова програмування. Всі дані в являються об’єктами в розумінні Smalltalk. Єдине виключення — керуючі конструкції, які в Ruby на відміну від Smalltalk не обєктами. Наприклад, число «1» — це екземпляр класу Шаблон :RDoc. Також можна добавляти методи в клас і навіть в конкретний екземпляр під час виконання програми. Проте не підтримується множинна спадковість.
Містить автоматичний прибиральник сміття. Він працює для всіх об'єктів Ruby, в том числі для зовнішніх бібліотек. До прикладу, створення розширень для Ruby на C дуже просто завдяки збору сміття, та нескладного і зручного API.
Ruby Підтримує блок коду (код взятий в { … } або do … end). Блоки можуть використовуватись в методах або перетворюватись в цикли.
Цілі змінні в Ruby автоматично конвертуються між типами Шаблон:RDoc (32-розрядні) і Шаблон:RDoc (більше 32 разрядів) в залежності від їх значення, що дозволяє виконувати цілочисельні математичні розрахунки з нескінченою точністю.
Не вимагає попереднього оголошення змінних, хоча для інтерпретатора бажано, щоб змінні присвоювалось порожнє значення nil (тоді інтерпретатор знає, що ідентифікатор вказує на змінну, а не на ім’я методу). Мова використовує прості домовленості для визначення області видимості. Наприклад: просто var — локальна змінна, @var — змінна екземпляру (член або поле об’єкту класу), @@var — змінна класу, $var — глобальна змінна.
В Ruby безпосередньо в мові реалізовано багато шаблонів програмування, так, наприклад, «одинак» (англ. singleton) може бути реалізований додаванням потрібних методів одному конкретному обєкту.
Ruby достатньо гнучка до платформи ОС. Вона розроблялася на GNU/Linux, але працює на багатьох версіях Unix, DOS, Microsoft Windows (частково, Win32), Mac OS, BeOS, OS/2 і т. д.