Ruby is uniek onder objectgeoriënteerde scripttalen. In zekere zin is het een puristische taal voor wie houdt van objectgeoriënteerde talen. Alles is zonder uitzondering automatisch een object, terwijl dit in andere programmeertalen niet waar is.
Wat is een object? Nou, in zekere zin kun je het zien als het bouwen van een auto. Als je er een blauwdruk voor hebt, dan is een object wat is opgebouwd uit die blauwdruk. Het bevat alle kenmerken die het object bevat (d.w.z. merk, model, kleur) en de acties die het kan uitvoeren. Maar zelfs als pure objectgeoriënteerde taal, offert Ruby geen bruikbaarheid of flexibiliteit op door functies weg te laten die niet uitdrukkelijk verband houden met objectgeoriënteerd programmeren.
Ruby ontwerpen
Ruby's architect Yukihiro Matsumoto (eenvoudigweg bekend als "Matz" op het web) heeft de taal zo ontworpen dat deze eenvoudig genoeg is voor beginnende programmeurs om te gebruiken terwijl ze ook krachtig genoeg zijn voor ervaren programmeurs om alle tools te hebben die ze nodig hebben. Het klinkt tegenstrijdig, maar deze tweedeling is te danken aan Ruby's pure objectgeoriënteerde ontwerp en Matz's zorgvuldige selectie van functies uit andere talen zoals
Perl, Smalltalk en Lisp.Er zijn bibliotheken voor het bouwen van alle soorten applicaties met Ruby: XML-parsers, GUI-bindingen, netwerkprotocollen, gamebibliotheken en meer. Ruby-programmeurs hebben ook toegang tot de krachtige RubyGems programma. Vergelijkbaar met Perl's CPAN, RubyGems maakt het gemakkelijk om de bibliotheken van andere programmeurs in uw eigen programma's te importeren.
Wat is Ruby Niet?
Zoals elke programmeertaal heeft Ruby zijn nadelen. Het is geen krachtige programmeertaal. In dat opzicht, Python's het ontwerp van virtuele machines heeft een enorm voordeel. En als je geen fan bent van de objectgeoriënteerde methodologie, dan is Ruby niets voor jou.
Hoewel Ruby enkele functies heeft die buiten het domein van objectgeoriënteerde talen vallen, is het niet mogelijk om een niet-triviaal Ruby-programma te maken zonder de objectgeoriënteerde functies te gebruiken. Ruby presteert niet altijd even goed als andere vergelijkbare scripttalen in onbewerkte computertaken. Dat gezegd hebbende, toekomstige versies zullen deze problemen aanpakken en alternatieve implementaties, zoals JRuby, zijn beschikbaar als tijdelijke oplossing voor deze problemen.
Hoe wordt Ruby gebruikt?
Ruby wordt gebruikt in typische scripttaaltoepassingen zoals tekstverwerking en "lijm" of middleware-programma's. Het is geschikt voor kleine ad-hoc scripttaken die in het verleden mogelijk met Perl zijn opgelost. Het schrijven van kleine programma's met Ruby is net zo eenvoudig als het importeren van de modules je hebt een programma nodig dat bijna BASIS-achtig lijkt te zijn.
Net als Perl heeft Ruby ook eersteklas normale uitdrukkingen, waarmee tekstverwerkingsscripts in een handomdraai kunnen worden geschreven. De flexibele syntaxis helpt ook bij kleine scripts. Met sommige objectgeoriënteerde talen kun je vastlopen met uitgebreide en omvangrijke code, maar Ruby laat je vrij om je gewoon zorgen te maken over je script.
Ruby is ook geschikt voor grotere softwaresystemen. De meest succesvolle toepassing is in de Ruby on Rails webframework, software met vijf grote subsystemen, talrijke kleine onderdelen en een overvloed aan ondersteunende scripts, database-backends en bibliotheken.
Om de creatie van grotere systemen te ondersteunen, biedt Ruby verschillende compartimenteringslagen, waaronder de klasse en module. Door het ontbreken van overbodige functies kunnen programmeurs zonder enige verrassing grote softwaresystemen schrijven en gebruiken.
Welke vaardigheden zouden nuttig zijn om Ruby te leren?
- Een gedegen begrip van objectgeoriënteerde concepten. Ruby is een objectgeoriënteerde taal en de objectgeoriënteerde functies worden overal gebruikt. Zonder deze kritische vaardigheid zul je worstelen als een Ruby-programmeur.
- Een beetje functionele programmeerkennis. Dit is een pluspunt aangezien Ruby het blok of "sluiting" veel gebruikt. Het niet hebben van deze mogelijkheid is echter niet onoverkomelijk. Blokken maken is een functie die gemakkelijk genoeg kan worden geleerd tijdens het leren van Ruby.
- Een beetje navigatiekennis. De belangrijkste manier om een Ruby-script uit te voeren is vanaf de opdrachtregel. Weten hoe u door mappen navigeert, scripts uitvoert en invoer en uitvoer omleidt, zijn essentiële vaardigheden voor programmeurs van Ruby.
Toepassingen en tools die nodig zijn voor Ruby
- De Ruby tolk
- Een teksteditor zoals Notepad ++, Sciteof Vim. Tekstverwerkers zoals Wordpad of Microsoft Word zijn niet geschikt.
- Opdrachtregel toegang. Hoewel de details hiervan per platform verschillen, hebben Linux, Windows en OSX dit allemaal beschikbaar zonder extra downloads of software-installatie.