IDG.se – Nordens största IT-nätverk
IDG Pro
Coronaviruset
Digitalisering
Säkerhet
Analytics
Systemutveckling
IOT
AI
Cloud
Lagring
Mobilitet
Karriär
Outsourcing
Meny

100 Senaste
Läsarfavoriter
Jobb
Event
Nyhetsbrev

IT för proffs
IDG Pro
Coronaviruset
Digitalisering
Säkerhet
Analytics
Systemutveckling
IOT
AI
Cloud
Lagring
Mobilitet
Karriär
Outsourcing
Het teknik

Android
Drönare
Iphone
Tesla
VR
Windows 10

Kultur & politik

GDPR
Bitcoin
Facebook
Fildelning
Integritet
Pirate Bay
Spel

IDG Sverige

Annonsera
Annonsera Jobb
Bli partner på event
Marketing Services
Cookieinställningar
Kontakt
Jobba här
Om IDG
Sök i IDG-nätverket

IDG Medlem
Här har vi samlat allt som gäller ditt medlemskap
Stäng
Computer Sweden
  • Kategorier/Mer
  • Bransch
  • Event
  • Whitepapers
  • Nyhetsbrev
Lars Danielsson
Lars Danielsson
Lars Danielsson
Reporter
TeknikTypesafe
2014-04-05 07:49

Sju coola funktionella begrepp

Funktionell programmering väcker mycket intresse, men också en hel del förvirring. Här förklaras sju centrala begrepp inom området.

Facebook 0
Twitter 0
Reddit
LinkedIn 0
Totalt 0
1/7 Första klassens funktion.

Begreppet "first-class function" innebär att en funktion är ett värde som kan skickas runt i ett program, utöver att den kan anropas. Språk som Haskell, F# och Scala hanterar första klassens funktioner, liksom en del skriptspråk som Javascript och Python.

Bild: Oddbodz
2/7 Higher-order function.

En funktion som kan ta emot en annan funktion som en parameter och/eller returnerar en annan funktion. Ett exempel är en funktion som tar emot en lista på värden och en annan funktion som parametrar, och returnerar en ny lista med värden som påverkats av funktionen som togs emot som parameter.
3/7 Anonym funktion.

En funktion som inte är kopplad till en identifierare, alltså inte har något namn.
4/7 Immutable.

Data som inte kan förändras efter att de skapats, och kan behandlas som fakta eftersom de inte förändras. Om man vill ändra värdet på en variabel som pekar på sådana data måste variabeln ”pekas om” till andra data. Textsträngar i Java och Javascript är exempel.

Bild: ceridwen
5/7 Closure.

En ”closure” skapas genom att lyfta in externa beteenden och variabler i en exekverbar bit program. Den exekverbara programbiten kan sedan skickas vidare i nya anrop. Möjligheten att utnyttja kod som inte explicit refereras ger flexibilitet.

Bild: Wikipedia
6/7 Currying.

Currying är att istället för att ha en parameterlista med ett visst antal parametrar till en funktion, så används en funktion som bara kan ta en parameter, men som kan returnera en funktion som tar emot nästa parameter istället.
7/7 Lambda.

Anonyma funktioner och closures kallas för lambdauttryck i språket Java, från och med version 8.

Stort tack till Viktor Klang, chefsarkitekt på Typesafe, för hjälp med förklaringarna. Typesafe utvecklar bland annat ramverk och mellanprogram för språken Java och Scala.

Missa inte:
Sju coola virtuella maskiner.
Tio coola verktyg för mobilutveckling.
Sju coola alternativ till sql.
Fem grundläggande slingor för nybörjare.
Sju coola tankesystem för programmering
Sju coola optimeringsidéer
Sju heta titlar för dataanalys
Sju coola arkitekturer
Sju coola klienter
Sju coola utvecklingsmetoder
Sju utvecklingsverktyg för Javascript
Sju utmaningar för moderna databaser
Sju coola nya programmeringsspråk
Sju coola ramverk för Javascript – just nu

Typesafe Scala Viktor Klang
Lars Danielsson
Lars Danielsson
Reporter
Lars Danielsson
Facebook 0
Twitter 0
Reddit
LinkedIn 0
Totalt 0
Facebook 0
Twitter 0
Reddit
LinkedIn 0
Totalt 0

Senaste nytt

  • 2021-02-25 12:06TechWorld Mikael Markander VMware skickar ut kritisk uppdatering för servrar
  • 2021-02-25 11:01Computer Sweden Joakim Arstad Djurberg Advania köper sig norrut – slukar Umeåbaserade Hi5
  • 2021-02-25 10:12Computer Sweden Viktor Eriksson Robothunden Spot försågs med vapen – kritiseras av tillverkaren
  • 2021-02-25 07:37TechWorld Viktor Eriksson Google sponsrar databas som ska hålla koll på covid-mutationer
100 Senaste
Nyttiga länkar

  • Redaktionen
  • Om personuppgifter & cookies
  • Annonsera
  • Annonsera jobb

Om CS

Computer Sweden är Sveriges största nyhetskälla inom it och affärer. Vi publicerar dagligen nyheter som du kan ta del av via sajt, mobil, nyhetsbrev och event.

Chefredaktör & ansvarig utgivare: Marcus Jerräng

Kontakta oss

Computer Sweden
Magnus Ladulåsgatan 65
106 78 Stockholm
Tel. 08-453 60 00
E-post: cs@idg.se

Besöksadress: Magnus Ladulåsgatan 65 106 78 Stockholm Tel: 08-453 60 00

IDG.se

Nordens största it-nätverk

Alla sajter

IDG Sverige

  • Annonsera
  • Kundservice
  • Om IDG

Sajter om it & teknik

  • CIO SwedenIt-strategi, affärsnytta och kundrelationer.
  • Computer SwedenDagliga nyheter om it, telekom och affärer.
  • IDG.seDe viktigaste nyheterna från IDGs nyhetssajter.
  • M3Sveriges prylsajt.
  • MacWorldAllt om Mac, OS X, Iphone och Ipad.
  • PC för AllaSveriges största och mest lästa datortidning.
  • SmartworldDin guide till det smarta hemmet.
  • TechWorldFör it-avdelningar, it-chefer och it-proffs.
  • Topp100Sveriges bästa sajter och nättjänster.

Tjänster

  • Nyhetsbrev
  • Whitepapers & Webcasts
  • Aktuella event
  • Expert Network
  • IDG Opinion

Karriär & ledarskap

  • IDG Jobb
  • Academy from IDG
  • Webbdagarna Academy

Event

  • CIO Swedens event
  • Computer Swedens event
  • It i vården-dagen
  • Next Generation Threats
  • Webbdagarna
Stäng
page 1 page 2 page 3 page 4 page 5