Důraz ve funkčním stylu programování je kladen na funkce a výsledky vyhodnocení namísto pořadí výskytu operací. Jedná se o dominantní paradigma jazyků, které kontrastuje s imperativním stylem programování. Scala je funkční programovací jazyk, protože podporuje funkční programování. Ačkoli je známo, že Scala je fúzí jak objektově orientovaného programování, tak funkčního programování, budeme hovořit o jeho části funkčního programování. Následuje několik jeho funkčních programovacích funkcí:
- Scala je funkční jazyk, který neumožňuje měnitelný stav, protože při synchronizovaném přístupu vytváří problém se synchronizací.
- Scala podporuje tento model s knihovnou Actors, ale umožňuje měnitelné i neměnné proměnné.
- Knihovna herců je jedním ze způsobů, ale jinak vám Scala poskytuje konstrukce takovým způsobem, že byste obvykle měli vytvářet vals, ne vars. Naznačuje, že Scala ideálně funguje spíše z hlediska konstant než z hlediska proměnných. Pokud je opravdu nevyžadujete, neměli byste ve Scale vytvářet vars. Jedná se spíše o nativní vlastnost stylu funkčního programování než o objektově orientovaný styl programování.
- Funkce jsou občany „první třídy“ ve funkčním programování. S nimi se zachází stejně jako s proměnnými.
- Funkce může být:
- přiřazené k proměnným.
- předán proměnným.
- předán jiné funkci.
- napsané v rámci funkce.
- Všechno ve Scale je objekt, dokonce i jeho funkce.
- Podobně jako Python a Ruby jsou uzávěry nabízeny také ve Scale.
Rámečky ve Scale
Scala není jazyk, který se opravdu naučíte pouze pro Spark. Ve Scale se vyvíjí několik dalších rámců. Někteří z nich jsou:
Spark - zpracování v paměti
Apache Spark je univerzální klastrový počítačový systém v paměti. Používá se pro analýzu dat a abstrahuje API v Javě, Scale a Pythonu a poskytuje optimalizovaný modul, který podporuje obecné grafy provádění.
Play - Pro vývoj webových aplikací
Jedná se o vysoce produktivní rámec webových aplikací Java a Scala, který integruje komponenty a API, které potřebujete pro moderní vývoj webových aplikací.
Obarení - pro mapu / zmenšení
k čemu se používá programování sas
Scalding je knihovna Scala, která usnadňuje zadávání úloh Hadoop MapReduce. Scalding je postaveno na Cascading, knihovně Java, která abstrahuje detaily Hadoop na nízké úrovni.
Akka - rámec pro herce
Akka je sada nástrojů a modul runtime pro vytváření vysoce souběžných, distribuovaných a odolných aplikací na JVM. Akka je napsána ve Scale.
Máte na nás dotaz? Uveďte je v sekci komentáře a my se vám ozveme.
převést double na int java
Související příspěvky