4. Ruby ir
objektorientēta
dinamiska
programmēšanas valoda
vienkārša pēc izskata
spēcīgas iespējas
5. Ruby on Rails
Moderns “tīmekļa lietojumu ietvars”
Veidots Ruby programmēšanas valodā
Radies no 37signals Basecamp aplikācijas
Atvērtā koda programmatūra
Fokusējas uz izstrādātāju produktivitāti
Spējā (Agile) programmatūras izstrādes pieeja
6. Pamatprincipi
Neatkārto sevi
DRY - Don’t Repeat Yourself
Vienošanās nevis konfigurēšana
Convention over Configuration
Programmatūra ar viedokli
Opinionated software
16. SQL bind variables
Employee.find(1)
database.yml
development: ActiveRecord
adapter: oracle_enhanced SELECT * FROM employees
database: XE WHERE (employees.id = 1)
username: blogdemo
Oracle optimizer
password: blogdemo
encoding: utf8 SELECT * FROM employees WHERE
cursor_sharing: similar (employees.id = :SYS_B_0)
17. Oracle Data Types
Ruby Rails Oracle
Fixnum :integer NUMBER
Float :float NUMBER
BigDecimal :decimal NUMBER, DECIMAL
Time :datetime DATE
Time :time DATE
Date :date DATE
String :string VARCHAR2
String :text CLOB
String :binary BLOB
True/FalseClass :boolean NUMBER(1), CHAR(1)
18. Citi ierobežojumi
Identifikatori līdz 30
lēni Data Dictionary skatījumi
simboliem
CLOB / BLOB izmantošana
tukšs String == NULL
SQL pieprasījumos
Oracle XE nav uz Mac OS X
LIMIT, OFFSET neesamība
23. class Employee < ActiveRecord::Base
set_create_method do
plsql.employees_pkg.create_employee(
:p_first_name => first_name,
:p_last_name => last_name,
:p_employee_id => nil
)[:p_employee_id]
PL/SQL end
set_update_method do
procedūras plsql.employees_pkg.update_employee(
esošās
:p_employee_id => id,
:p_first_name => first_name,
datubāzēs
:p_last_name => last_name
)
end
set_delete_method do
plsql.employees_pkg.delete_employee(
:p_employee_id => id
)
end
end