Scala funkční programování



Scala je funkční programovací jazyk, který také integruje objektově orientované programování. Tento příspěvek pokrývá hlavně jeho funkční programovací funkce.

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