Ruby (programski jezik): razlika između inačica

Izvor: Hrvatska internetska enciklopedija
Prijeđi na navigaciju Prijeđi na pretraživanje
Bot: Automatski unos stranica
 
m Bot: Automatska zamjena teksta (-{{cite book +{{Citiranje knjige)
Redak 13: Redak 13:
|implementacije = [[Ruby MRI]], [[YARV]], [[Rubinius]], [[MagLev (software)|MagLev]], [[JRuby]], [[MacRuby]], [[RubyMotion]], [[HotRuby]], [[IronRuby]], [[Mruby]]
|implementacije = [[Ruby MRI]], [[YARV]], [[Rubinius]], [[MagLev (software)|MagLev]], [[JRuby]], [[MacRuby]], [[RubyMotion]], [[HotRuby]], [[IronRuby]], [[Mruby]]
|pod_utjecajem = [[Ada (programming language)|Ada]],<ref name="nov2pro"/> [[C++]],<ref name="nov2pro"/> [[CLU (programming language)|CLU]],<ref name="bini"/> [[Dylan (programming language)|Dylan]],<ref name="bini"/> [[Eiffel (programming language)|Eiffel]],<ref name="nov2pro">
|pod_utjecajem = [[Ada (programming language)|Ada]],<ref name="nov2pro"/> [[C++]],<ref name="nov2pro"/> [[CLU (programming language)|CLU]],<ref name="bini"/> [[Dylan (programming language)|Dylan]],<ref name="bini"/> [[Eiffel (programming language)|Eiffel]],<ref name="nov2pro">
{{cite book
{{Citiranje knjige
   | last=Cooper
   | last=Cooper
   | first=Peter
   | first=Peter
Redak 26: Redak 26:
   | quote=To a lesser extent, Python, LISP, Eiffel, Ada, and C++ have also influenced Ruby.}}
   | quote=To a lesser extent, Python, LISP, Eiffel, Ada, and C++ have also influenced Ruby.}}
</ref> [[Lua (programming language)|Lua]], [[Lisp (programming language)|Lisp]],<ref name="bini"/> [[Perl]],<ref name="bini"/> [[Python (programming language)|Python]],<ref name="bini"/> [[Smalltalk]]<ref name="bini">
</ref> [[Lua (programming language)|Lua]], [[Lisp (programming language)|Lisp]],<ref name="bini"/> [[Perl]],<ref name="bini"/> [[Python (programming language)|Python]],<ref name="bini"/> [[Smalltalk]]<ref name="bini">
{{cite book
{{Citiranje knjige
   | last=Bini
   | last=Bini
   | first=Ola
   | first=Ola

Inačica od 18. studeni 2021. u 02:26

Datoteka:Disambig.svg Za druga značenja, pogledajte Ruby.
Ruby
Datoteka:Ruby logo.svg
Paradigma:više paradigmi: objektno orijentirani, imperativni, funkcijski, refleksivni
Pojavio se:1995.
Dizajnirao:Jukihiro Macumoto
Razvijatelj:Jukihiro Macumoto, et al.
Posljednje izdanje:2.1.2 / 9.5.2014.
Disciplina tipiziranja:dinamičko
Glavne implementacije:Ruby MRI, YARV, Rubinius, MagLev, JRuby, MacRuby, RubyMotion, HotRuby, IronRuby, Mruby
Pod utjecajem:Ada,[1] C++,[1] CLU,[2] Dylan,[2] Eiffel,[1] Lua, Lisp,[2] Perl,[2] Python,[2] Smalltalk[2]
Utjecao na:Clojure, D,[3] Elixir, Falcon, Fancy,[4] Groovy, Ioke,[5] Mirah, Nu,[6] potion, Reia, Swift[7]
OS:Višeplatformski
Licencija:Ruby licenca ili BSD licenca[8][9]
Internetska stranica:http://www.ruby-lang.org/

Ruby je dinamički, objektno orijentirani programski jezik koji kombinira sintaksu inspiriranu Perlom s nekim osobinama Smalltalka. Nastao je u Japanu 90-ih (tvorac Yukihiro Matsumoto), ali izvan Japana postaje popularniji tek u 2000.-oj s pojavom knjige na engleskom jeziku, "Programming Ruby".

Opis

Ruby je višeplatformski jezik opće namjene i otvorenog koda. Popularne primjene jezika uključuju sistemsku administraciju i izradu internetskih aplikacija, ali od 2006-e programeri polako nalaze i neke netipične primjene kao stvaranje elektroničke glazbe [10], programiranje analognog hardwarea [11] i stvaranje računalnih igara [12]. Glavna implementacija Rubya je u C-u, a druge implementacije nalazimo u Javi (JRuby), Microsoftovoj .NET platformi (IronRuby) te Objective-C (MacRuby). Zbog kvalitete implementacije MacRubyja, ona počinje biti snažna alternativa za stvaranje desktop aplikacija za Mac OS X operativni sustav.

Ruby je daleko najviše populariziran 2005.-e dolaskom Ruby on Rails frameworka za web aplikacije. Zbog toga što se u nekim zajednicama Ruby koristi gotovo isključivo za Rails programiranje, ponekad je lako protumačiti da su ta dva pojma sinonimi. To nije točno; treba razumijeti da je "Ruby on Rails" samo programska podrška napisana u Ruby programskom jeziku.

Primjeri sintakse Rubyja

Tipični "hello world" program:

 puts "Hello world!"

Stvaranje i poziv funkcije:

 def hello(name)
  puts "Hello #{name}"
 end
 
 hello("world")

Definicija klase:

 class Person
   # constructor method
   def initialize(name)
     @name = name
   end
   
   def say(text)
     puts "#{@name} says: " + text
   end
 end
 
 # usage:
 frank = Person.new("Frank")
 frank.say("Hello everyone")
 
 # output:
 # => Frank says: Hello everyone

Izvori

  1. 1,0 1,1 1,2 Cooper, Peter (2009) Beginning Ruby: From Novice to Professional. „To a lesser extent, Python, LISP, Eiffel, Ada, and C++ have also influenced Ruby“.
  2. 2,0 2,1 2,2 2,3 2,4 2,5 Bini, Ola (2007) Practical JRuby on Rails Web 2.0 Projects: Bringing Ruby on Rails to Java. „It draws primarily on features from Perl, Smalltalk, Python, Lisp, Dylan, and CLU“.
  3. Intro – D Programming Language 1.0 – Digital Mars
  4. • Parametar accessdate nije dopušten u klasi web

  5. • Parametar accessdate nije dopušten u klasi web

  6. • Parametar accessdate nije dopušten u klasi web

  7. • Parametar accessdate nije dopušten u klasi web

  8. COPYING in Ruby official source repository
  9. BSDL in Ruby official source repository
  10. Archaeopteryx
  11. Arduino
  12. Gosu

Vanjske poveznice