Ruby on ainutlaatuinen joukossa oliopohjaiset skriptikielet. Tietyssä mielessä se on puristin kieli niille, jotka rakastavat esinekeskeisiä kieliä. Kaikki, poikkeuksetta, on automaattisesti objekti, kun taas muilla ohjelmointikielellä tämä ei ole totta.
Mikä on esine? No, tietyssä mielessä voit ajatella sitä auton rakentamisen kannalta. Jos sinulla on suunnitelma sille, niin esine on se, joka on rakennettu kyseisestä suunnitelmasta. Se sisältää kaikki objektin hallussa olevat ominaisuudet (ts. Merkki, malli, väri) ja toiminnot, joita se voi suorittaa. Mutta edes puhtaana oliokeskeisenä kielenä, Ruby ei uhraa mitään käytettävyyttä tai joustavuutta jättämällä pois ominaisuuksia, jotka eivät nimenomaisesti liity olio-ohjelmointiin.
Suunnittelu Ruby
Rubyn arkkitehti Yukihiro Matsumoto (tunnetaan verkossa yksinkertaisesti nimellä "Matz") suunnitteli kielen riittävän yksinkertaiseksi aloittelevat ohjelmoijat käyttävät samalla riittävän tehokkaita kokeneille ohjelmoijille, jotta heillä olisi kaikki tarvitsemansa työkalut. Se kuulostaa ristiriitaiselta, mutta tämä kaksijakoisuus johtuu Rubyn puhtaasta esinekeskeisestä suunnittelusta ja Matzin huolellisesta valinnasta muiden kielten, kuten esimerkiksi
Perl, Smalltalk ja Lisp.On kirjastoja kaiken tyyppisten sovellusten rakentamiseksi Ruby: XML-jäsentäjät, GUI-sidokset, verkkoprotokollat, pelikirjastot ja paljon muuta. Ruby-ohjelmoijilla on myös pääsy tehokkaisiin RubyGems ohjelmoida. Vertailukelpoinen Perlin kanssa CPAN, RubyGems on helppo tuoda muiden ohjelmoijakirjastojen omiin ohjelmiin.
Mikä on Ruby Ei?
Kuten kaikki ohjelmointikielet, myös Rubylla on omat puolensa. Se ei ole korkean suorituskyvyn ohjelmointikieli. Tältä osin Pythonin virtuaalikoneen suunnittelulla on valtava etu. Lisäksi, jos et ole objektisuuntautuneen metodologian fani, niin Ruby ei ole sinua varten.
Vaikka Rubylla on joitain ominaisuuksia, jotka eivät kuulu olosuhteisiin suuntautuneiden kielten piiriin, ei ole mahdollista luoda ei-triviaalista Ruby-ohjelmaa käyttämättä oliopohjaisia ominaisuuksia. Ruby ei aina suorita yhtä hyvin kuin muut vastaavat komentosarjojen kielet raa'issa laskentatehtävissä. Tulevat versiot kuitenkin käsittelevät näitä ongelmia ja vaihtoehtoisia toteutuksia, kuten JRuby, ovat saatavana kiertotapana näihin aiheisiin.
Kuinka Rubya käytetään?
Rubiinia käytetään tyypillisissä komentosarjojen kielisovelluksissa, kuten tekstinkäsittelyssä ja "liimaamisessa" tai väliohjelmistoissa. Se soveltuu pieniin, ad-hoc-komentosarjojen tehtäviin, jotka aiemmin on ehkä ratkaistu Perlin kanssa. Pienten ohjelmien kirjoittaminen Rubyn avulla on yhtä helppoa kuin moduulit tarvitset ja kirjoitat melkein perustason "tapahtumasekvenssin" tyyppisen ohjelman.
Perlin tavoin, myös Rubylla on ensiluokkainen säännölliset lausekkeet, mikä tekee tekstinkäsittelyohjelmista kirjoittamisen hetkessä. Joustava syntaksi auttaa myös pienissä kirjoituksissa. Joillakin olosuhteisiin keskittyneillä kielillä voit takertua sanallisella ja tilaa vievällä koodilla, mutta Ruby antaa sinun vapaasti pelätä komentosarjasta.
Ruby sopii myös suurempiin ohjelmistojärjestelmiin. Sen menestyvin sovellus on Ruby on Rails -verkkokehys, ohjelmisto, jolla on viisi suurta alijärjestelmää, lukuisia pieniä osia ja runsaasti tukiskriptejä, tietokantaohjelmia ja kirjastoja.
Suurempien järjestelmien luomisen helpottamiseksi Ruby tarjoaa useita osioita, mukaan lukien luokka ja moduuli. Koska se ei ole tarpeeton, ohjelmoijat voivat kirjoittaa ja käyttää suuria ohjelmistojärjestelmiä ilman yllätyksiä.
Mitkä taidot olisivat hyödyllisiä Rubyn oppimisessa?
- Kiinteä käsitys oliokeskeisistä käsitteistä. Ruby on oliokeskeinen kieli ja olio-ominaisuuksia käytetään kaikkialla. Ilman tätä kriittistä taitoa kamppailet Rubyn ohjelmoijana.
- Hieman toiminnallista ohjelmointitietoa. Tämä on plus, sillä Ruby käyttää lohkoa tai "sulkemista" laajasti. Tämän kyvyn puuttuminen ei kuitenkaan ole ylitsepääsemätön. Lohkojen luominen on ominaisuus, jonka voi oppia tarpeeksi helposti oppiessaan Rubya.
- Hieman navigointitaidot. Ensisijainen tapa käyttää Ruby-skriptiä on komentoriviltä. Ruby-ohjelmoijille on välttämätöntä tietää, kuinka navigoida hakemistoja, suorittaa komentosarjoja ja ohjata syöttö ja lähtö.
Rubyn kannalta tarvittavat sovellukset ja työkalut
- Ruby tulkki
- Tekstieditori, kuten Notepad ++, SciTEtai Vim. Tekstinkäsittelyohjelmat, kuten Wordpad tai Microsoft Word, eivät sovellu.
- Komentorivin pääsy. Vaikka tämän yksityiskohdat eroavat toisistaan eri käyttöjärjestelmästä toiseen, Linuxissa, Windowsissa ja OSX: ssä kaikilla on tämä saatavana ilman ylimääräisiä latauksia tai ohjelmistojen asennuksia.