Ruby programozási nyelv
Történelem és fejlesztési
Matsumoto, ventilátor az objektum-orientált programozás, álmodott egy nyelvet erősebb, mint a Perl, és az objektum-orientált, mint a Python. A fő célja a Ruby - egy egyszerű és ugyanakkor érthető programok esetében fontos, nem a sebesség a program, és a rövid időn fejlődés, az egyértelműség és az egyszerűség a szintaxis.
Nyelv elvét követi „legalább meglepetés”: A program kell viselkedniük, mint a programozó elvárja. Azonban keretében Ruby, ez azt jelenti, a legkisebb meglepetést nem ismerik a nyelvet, és ő is alapos vizsgálat. Matsumoto maga azt állítja, hogy a célja a fejlesztési minimalizálása volt meglepetés, amikor a programozás neki, de nem volt meglepve, hogy megtanulják, miután a terjedését a nyelv, amely gondolkodás programozók és hasonlóan sok elvének „legalább meglepetés” egybeesett annak elvét.
Ruby is örökölte Pearl programozási nyelv ideológia része a programozó ugyanazt az eredményt elérni számos különböző módon. Az emberek különbözőek, és szükségük van választás szabadsága. „Inkább, hogy a sok szempontból, ha lehet, de ösztönzi és irányítja a felhasználók választhatnak a legjobb út, ha lehetséges.”
Az egyik fő célkitűzése a fejlődés volt, hogy szabad a programozók rutin munka, amely a számítógép végezhet gyorsabb és jobb. Különös figyelmet, különösen, kapott mindennapos rutin gyakorlatok (szövegszerkesztő, adminisztráció), és számukra a nyelv beállítása különösen jól.
Ezzel szemben a számítógép-orientált nyelv, gyorsabban fut, a fejlesztés célja az volt a nyelv, amely legközelebb van az ember. Minden számítógép által végzett munka az emberek, az emberek számára, és meg kell, hogy vigyázzon először az emberek töltött erőfeszítéseket. Nyelv lehetővé teszi, hogy gyorsan és egyszerűen egy személy, hogy egy feladatot, de talán több időre van szükségük a számítógép.
Alapelvei programozási nyelv tervezési és néha állni a „Ruby Way” (eng. Ruby Way). Hal Fulton kiemeli ezeket az elveket, mint „egyszerű, de nem túl egyszerű”, „elv legalább csodálkozás” másodlagos sebesség program dinamikus, egyszerű szigorú szabályok, amelynek végrehajtása nem éri el a pedantéria, hogy meg kell teremteni az egészséges és szép programokat, mint a programozás oka. Általánosságban elmondható, hogy nem kell a pontos megfogalmazása és néha a kifejezés, hogy a kritika.
Ruby jellemzői
Ruby számos innovatív megoldásokat, ritkán vagy soha nem találtak közös programozási nyelvek. Felveheti módszerek nemcsak az összes osztályt, hanem semmilyen tárgyat. Például felveheti egy sor önkényes eljárás. Ez a példa is mutatja, hogyan lehet használni a Ruby Singleton. Ebben a példában egy Singleton objektum str.
Bármilyen design Ruby visszatér. Például:
konténerek
Munka tömbök - az egyik Ruby erősségeit. Ezek automatikusan állítsa be a méretet, tartalmazhat olyan elemeket, a nyelv és hatékony eszközöket feldolgozásra.
Eljárási tárgyak és iterátoroké
A nyelv 2 ekvivalens rögzítésére szolgáló eljárást kód blokkokat: korutinokat használható a legtöbb inline módszerek: A következő példa azt mutatja, a használat coroutine és iterátoroké tömbök ami azt mutatja, a rövidség felvétel Ruby sok meglehetősen bonyolult intézkedések (véletlenszerűen kiválaszt egy szekvenciát a négyzetek a számok „0” a „10” és a nyomtatási együtt indexek):
Osztályok szennyeződések módszerek operátor túlterhelés
Az alábbi példa egy olyan osztályt definiál nevű személy, amelynek célja, hogy adatokat tároljon a nevét és korát a személy.
végrehajtás
Ruby, több implementáció: a hivatalos tolmács, C-ben írt, JRuby - végrehajtása a Java, .NET IronRuby tolmácsa platform (fejlesztés alatt), Rubinius - jobbára a Ruby alapuló Smalltalk-80 VM.
Hivatalos tolmácsa átírták a legtöbb platformon, beleértve a Unix, Microsoft Windows (beleértve a Windows CE), DOS, Mac OS X, OS / 2, Amiga, BeOS, szótag, Acorn RISC OS, és mások.
interaktív Ruby
Támogatás IDE
standard könyvtár
Amellett, hogy a nagy teljesítményű funkciók beépített nyelv, Ruby és a nagyméretű standard könyvtár. Ez elsősorban a könyvtár dolgozni különböző hálózati protokollokat a szerver oldali és kliens eszközök működjenek együtt a különböző adatok (XML, XSLT, YAML, PDF, RSS, CSV, WSDL). Amellett, hogy a beépített nyelvi hibakereső eszközöket szállítjuk Ruby könyvtár egység tesztelése, elemzése. Van is egy könyvtár archívkezelő, dátumok, kódolás, tömbök, szisztémás beadásra, elosztott számítási, többszálú támogatást, és így tovább. D.
A hierarchia csúcsát Ruby osztályok.
Dinamikus tömb tárolja tetszőleges tárgyak, indexelt 0.
Tárgyak tárolt végrehajtási környezetét egy kódot része (az érték a változók, módszerek és hasonlók. D.). Ez később felhasználhatók számítások elvégzéséhez ebben az összefüggésben.
Wrapper körül ukazatelyaSi, főleg írásra kiterjesztéseket.
A módszer nem áll kapcsolatban egy adott objektumot. Meg lehet csatolni, hogy egy tárgy, és nevezik módszer.
terjeszkedés
dokumentáció
használata
KOffice kifejlesztett Kross, egy olyan mechanizmust, hogy támogassa a szkriptek, amely magában foglalja a Ruby.
WATIR (angol Web Application Testing Ruby.) - egy ingyenes eszköz automatizált tesztelés a webes alkalmazások a böngésző.
Hátrányok nyelv és tolmács
A hátrányok a Ruby tolmács ma a következőket tartalmazza:
Alacsony fordulatszám (természetes megtorlás gyors írás komplex programok). Ruby az egyik leglassabb az összes használt webes fejlesztési gyakorlat programozási nyelvek.
Támogatás hiánya az operációs rendszer szálak (van támogatása Operációs rendszer folyamatok Unix típusú operációs rendszerek), van egy kísérleti változata 1.9.
A hiányzó beépített támogatja a Unicode (lehet üzemeltetni további könyvtárak a kísérleti verzió 1.9).
Hiánya összeállítása a bytecode. (Ebben az esetben lehetőség van összeállítani Ruby Java és a .NET bytecode segítségével JRuby és Ruby.NET fordító). A kísérleti változat 2.0 tartalmazza a virtuális gép YARV, fordítása Ruby bytecode és nagymértékben gyorsítja végrehajtását. Ezen kívül más projektet párhuzamosan dolgoztak virtuális gépek, beleértve Rubinus és Maglev.
Tudtad, hogy a komponens diagram, komponens diagram - egy módszer az objektum-orientált tervezés, amely leírja a jellemzőit a fizikai reprezentációja a rendszert. Chart Component lehetővé teszi, hogy meghatározza a rendszer architektúráját fejlesztenek, létrehozva a komponensek között fennálló kapcsolatokat.
Hírek Fórum
Knights-éter elmélet
Ez Kornilov írta az oldalán a szociális háló.
Szerint Kornilov, majd az üzenetet találkozott hitetlenség.
Most Vladimir Kornilov döntött, hogy visszatér erre a témára, amelyek kapcsán tesz közzé a facebook képek titokzatos izraeliek, akik részt vettek az odesszai mészárlást.
A sok kérdés, hogy Kornilov, azt mondta, szeretne választ kapni, például a következők:
„Miért véletlenül sétált Odesszában az orvosi berendezések, gumikesztyű, ahol már előre tudták, hogy lesz sérült és megölte? Vagy miért ez a harcos hirtelen elfelejtett angolul, amikor rájött, hogy a rekordját?”.
Víz tavak, tengerek, óceánok északi --------- lushariya forgatni az óramutató járásával ellentétes Lc m - p-in-k-i, és a víz a déli polushariya - RA - vezetőképes-oldott -sya- PO- h ász nyíl - Obra-zuya- -Oral-hangya-ski-e-ovo vízmű.
Ennek fő oka a forgatás örvények helyi szél.
Minél nagyobb a szélsebesség nagyobb forgási sebességének pezsgőfürdők és ennek következtében nagyobb centrifugális erő pezsgőfürdők, ezzel is növelve a víz szintje a tengerek és óceánok.
És minél kisebb a centrifugális erő pezsgőfürdők, annál alacsonyabb a vízszint a tengerek és óceánok.
Az áramlási sebesség a kerületét a tengerek és óceánok nem mindenütt egyforma, és függ a mélység a parttól. A sekély részben a tengeri áramlatok sebessége megnő, és a mély része a tenger csökken.
Szezonális ingadozások vízszint karóra tsya nem az egész part a tengerek és az óceánok-s, de csak azokban az partjain, ahol -nagy szögsebessége az áramlások, és következésképpen nagy centrifugális erő a víz. (A centrifugális erő F = v / r).
Az egyenes partok, ahol áram nincs szögsebesség vízszint nem emelkedik.