A | B | C | D | E | F | G | H | CH | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
Projekt Ceylon je objektovo orientovaný programovací jazyk a SDK. Je založený na jazyku Java, vyvíjaný spoločnosťou Red Hat. Programy napísané v jazyku Ceylon sú spustiteľné nad Java Virtual Machine a JavaScript Virtual Machine.[1] Názov "Ceylon" je nepriamou referenciou k Jave, keďže oba ostrovy Jáva a Srí Lanka (kedysi známa pod menom Ceylon) produkujú kávu.
História
Vývojari stojaci za projektom Ceylon sú fanúšikmi Javy a to až do takej miery, že sa rozhodli jazyk si prispôsobiť vlastným predstavám a požiadavkam dnešného moderného sveta.[2] Prvé zmienky o novom jazyku boli zverejnené približne v polovici roka 2011, pričom prvá funkčná predprodukčná verzia Milestone 1 bola vydaná 20. decembra 2011[3], prvá produkčná verzia 1.0.0 uzrela svetlo sveta takmer dva roky po tom, 12. novembra 2013[4] a momentálne je Projekt Ceylon vo verzii 1.1.0.[5]
Vlastnosti jazyka
Jazyk Ceylon dedí väčšinu syntaxe od Javy. Program Hello World vyzerá následovne:[1]
shared void hello() {
print("Hello, World!");
}
Polymorfizmus operátorov
Ceylon nepodporuje preťaženie operátorov, keďže tento princíp je vo všeobecnosti považovaný za mätúci. Namiesto toho jazyk podporuje polymorfizmus operátorov, pričom operátor je skratka pre metódu zabudovaného typu. Tento prístup je považovaný za jednoduchší a bezpečnejší ako skutočné preťažovanie operátorov.
Rozhrania
Rozhrania sú dátové štruktúry, ktoré obsahujú definície členov, avšak nie ich implementáciu. Sú nápomocné pre definovanie kontraktu medzi členmi rôznych typov, ktorí majú rozdielne implementácie. Každé rozhranie je implicitne abstraktné.
Rozrhanie je implementované triedou, ktorá používa kľúčove slovo satisfies
. Je povolené implementovať viac ako jedno rozhranie. V tomto prípade sú rozhrania napísané po kľúčovom slove satisfies
v zozname oddelenom čiarkou. Ceylon umožňuje mať v rozhraniach okrem definícií aj obmedzený kód. Rozrhanie nemôže obsahovať inicializačnú logiku, avšak môže obsahovať mixiny (trieda, ktorá obsahuje kombináciu metód iných tried).
shared interface Comparable<in T> {
shared formal Comparison compare(T other);
shared Boolean largerThan(T other) {
return compare(other)==larger;
}
shared Boolean smallerThan(T other) {
return compare(other)==smaller;
}
...
}
Dedenie
Takisto ako v Jave, aj v jazyku Ceylon môžu triedy dediť iba od jednej triedy. Dedičnosť je deklarovaná kľúčovým slovom extends
. Trieda môže odkazovať sama na seba pomocou kľúčového slova this
.
Abstraktné triedy sú triedy, ktoré slúžia iba ako šablóna a nemôžu mať inštancie. Okrem toho fungujú presne ako bežná trieda.
Abstraktné metódy môžu mať iba abstraktné triedy. Abstraktné metódy nemajú žiadnu implementáciu a musia byť nahradené podtriedou, s výnimkou prípadu, kedy je aj táto trieda abstraktná.
Licencia
Celá práca na projekte, vrátane jej webstránky, špecifikácie jazyka a Ceylon Herd (repozitár pre moduly jazyku Ceylon) je voľne dostupná pod licenciami open source.[6]
Typový systém
Základné princípy typového systému sú:[7]
- žiadne špecíalne typy, tj. žiadne primitívne alebo zložené typy, "všetko je objekt".
- žiadne špeciálne funkcie pre zabudované typy.
- všetko by malo fungovať "ako to očakávate" z Javy / C / atď.
- nepridávať zložitosť typovým systémom známym z Javy. Preto žiadne preťažovanie metód a wildcard typy.
Prijatie
Ryan Paul tvrdí, že aj napriek tomu, že je motivácia Red Hatu "výstredná", King ju vie dobre obhájiť.[8] Neil McAllister na druhej strane ale tvrdí, že Ceylon je chyba a snaha Red Hatu by bola viac prínosná, ak by sa rozhodli podporiť existujúce alternatívy založené na JVM, ako napríklad Scala.[9] Andrew Oliver z magazínu JavaWorld popisuje jazyk Ceylon vo verzii pred 1.0.0 ako nádejný, avšak v momentálnej podobe nepripravený na použitie.[10]
Referencie
- ↑ a b Ceylon: Quick introduction . . Dostupné online.
- ↑ Gavin King. Introduction to Ceylon Part 1 . . Dostupné online.
- ↑ Gavin King. First official release of Ceylon . . Dostupné online.
- ↑ Gavin King. Ceylon 1.0.0 is now available . . Dostupné online.
- ↑ Gavin King. Ceylon 1.1.0 is now available . . Dostupné online.
- ↑ Ceylon: Licenses . . Dostupné online.
- ↑ Gavin King. The Ceylon Type System . . Dostupné online.
- ↑ PAUL, Ryan. The rationale for Ceylon, Red Hat’s new programming language . 15.4.2011, cit. 2015-01-31. Dostupné online.
- ↑ MCALLISTER, Neil. Red Hat's Ceylon language is an unneeded tempest in a teapot online. 22.4.2011, cit. 2015-01-31. Dostupné online.
- ↑ OLIVER, Andrew. A first look at Gavin King's Ceylon online. 25.4.2013, cit. 2015-01-31. Dostupné online.
Externé odkazyupraviť | upraviť zdroj
- Oficiálna stránka jazyka Ceylon (po anglicky)
Zdrojupraviť | upraviť zdroj
Tento článok je čiastočný alebo úplný preklad článku Ceylon (programming language) na anglickej Wikipédii.
Text je dostupný za podmienok Creative Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších podmienok. Podrobnejšie informácie nájdete na stránke Podmienky použitia.
ABC (programming language)
Active Server Pages
Ada (programovací jazyk)
ALGOL
ALGOL 60
ALGOL 68
ALGOL W
APL (programovací jazyk)
App Inventor
AWK
BASIC (programovací jazyk)
Befunge
Brainfuck
C++
Ceylon (programovací jazyk)
COBOL
ColdFusion
C (programovací jazyk)
C Sharp
Dynamické HTML
Dynamo (programovací jazyk)
D (programovací jazyk)
Eiffel (programovací jazyk)
Fortran
Glide
Go (programovací jazyk)
Groovy
Haskell (programovací jazyk)
Imagine (programovací jazyk)
Intercal
Interface description language
Interpreter
Interpreter (programovanie)
JavaFX Script
Java (programovací jazyk)
Java ME
Jazyk symbolických inštrukcií
Karel (programovací jazyk)
Lisp
Logo (programovací jazyk)
Lua
MATLAB
Nízkoúrovňový programovací jazyk
Objective-C
Object Pascal
Pascal (programovací jazyk)
Perl
PL/SQL
Programovací jazyk
Prolog
Python (programovací jazyk)
Qore (programovací jazyk)
Ruby (programovací jazyk)
Rust (programovací jazyk)
R (programovací jazyk)
SAS (programovací jazyk)
Scheme (programovací jazyk)
Scilab
Scratch
Script-Fu
Sigma-kalkul
Simula
Smalltalk
Squeak
Structured Query Language
Swift
Unified Modeling Language
Visual Basic
Visual Basic for Applications
Zoznam programovacích jazykov
Text je dostupný za podmienok Creative
Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších
podmienok.
Podrobnejšie informácie nájdete na stránke Podmienky
použitia.
www.astronomia.sk | www.biologia.sk | www.botanika.sk | www.dejiny.sk | www.economy.sk | www.elektrotechnika.sk | www.estetika.sk | www.farmakologia.sk | www.filozofia.sk | Fyzika | www.futurologia.sk | www.genetika.sk | www.chemia.sk | www.lingvistika.sk | www.politologia.sk | www.psychologia.sk | www.sexuologia.sk | www.sociologia.sk | www.veda.sk I www.zoologia.sk