Functioneel Programmeren

In de cursus Functioneel Programmeren van SpiralTrain worden de basisprincipes van functioneel programmeren besproken en geïllustreerd met voorbeelden. Functioneel programmeren is naast object georiënteerd programmeren een belangrijke stroming in de ontwikkeling van de informatica. Het legt de nadruk op het gebruik van functies en immutabiliteit, wat leidt tot meer voorspelbare en onderhoudbare code.

Regio:
1 dag
Inschrijven
€ 850
€ 850
€ 723
15% korting
PRG200
  • Inhoud
  • Training
  • Modules
  • Algemeen
    Algemeen
  • Reviews
  • Certificaat
  • Functioneel Programmeren : Inhoud

    Intro cursus Functioneel Programmeren

    De cursus cursus Functioneel Programmeren start met een bespreking van de achtergronden van functioneel programmeren in de lambda calculus. In dit programmeerparadigma wordt een programma opgebouwd uit functies die operaties uitvoeren op de argumenten. Dit biedt ontwikkelaars een krachtige manier om code te structureren en te begrijpen.

    Functionele Kenmerken

    Moderne talen zoals Java, Python, Scala en JavaScript zijn uitgerust met functionele kenmerken maar zijn er niet volledig op gebaseerd. Deze talen bieden een hybride benadering, waardoor ze de voordelen van functioneel programmeren combineren met andere paradigma's.

    Pure Functionele Talen

    Programmeertalen die volledig zijn gebaseerd op het functionele paradigma zijn onder andere Erlang, F♯, Lisp en ML. Deze talen zijn ontworpen om de principes van functioneel programmeren te omarmen, waardoor ze unieke voordelen bieden voor bepaalde soorten toepassingen.

    Neveneffecten

    In de cursus cursus Functioneel Programmeren wordt ook besproken hoe functies in puur functionele programmeertalen geen neveneffecten veroorzaken. Dit zijn effecten die invloed hebben op meer dan alleen het resultaat van de functie, zoals het wijzigen van een globale variabele. Variabelen die dienen als accumulator, counter of controlevariabele horen niet thuis in een functionele taal.

    Map en Reduce

    Daarnaast wordt aandacht besteed aan belangrijke functionele concepten zoals immutable data, closures en de map en reduce algoritmes. Deze technieken zijn essentieel voor het effectief toepassen van functioneel programmeren in de praktijk.

    Functies en Stijl

    In de cursus Functioneel Programmeren komen ook de verschillende soorten functies aan bod, zoals first-class functies, higher-order functies en lambda functies. Dit helpt studenten om inzicht te krijgen in de veelzijdigheid van functioneel programmeren.

    Andere Functionele Concepten

    Tenslotte behandelt de cursus andere functionele begrippen zoals Generators, Iterators, Fold Expressions, Memoization en Monads. Deze concepten zijn cruciaal voor het beheersen van functioneel programmeren en worden vaak gebruikt in de ontwikkeling van complexe softwaretoepassingen. Voor meer informatie over functioneel programmeren, kun je de officiële Scala-website raadplegen.
    Bekijk ook onze cursus Carbon Programmeren voor meer mogelijkheden in programmeren.

  • Functioneel Programmeren : Training

    Doelgroep Cursus Functioneel Programmeren

    De cursus Functioneel programmeren is bedoeld voor personen die de principes van functioneel programmeren willen leren en die deze kennis in talen met functionele aspecten willen toepassen.

    Voorkennis Cursus Functioneel Programmeren

    Om deel te nemen aan deze cursus dient men te beschikken over basis programmeer vaardigheden en is ervaring met software ontwikkeling vereist.

    Uitvoering Training Functioneel Programmeren

    De theorie wordt besproken aan de hand van presentaties. Demo's worden gebruikt om de concepten te verduidelijken. Voorbeelden in verschillende talen worden gebruikt om de concepten te illustreren. De theorie wordt afgewisseld met oefeningen.

    Certificering Functioneel Programmeren

    De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Functioneel Programmeren.

    Cursus Functioneel Programmeren
  • Functioneel Programmeren : Modules

    Module 1 : Intro Functional Programming

    Module 2 : Functions and Style

    Module 3 : Map and Reduce

    What is Functional Programming?
    Paradigm Origins
    Lambda Calculus
    Absence of side effects
    Immutable Data and Keeping State
    Maintenance Benefits
    Functional Languages
    Erlang an Clojure
    Haskell and JavaScript
    Support in Python and Java
    Functional Style
    Imperative Programming
    Declarative Programming
    First Class Functions
    Functions as Parameters
    Functions as Return Values
    Pure Functions
    Anonymous Functions
    Higher Order Functions
    Recursion
    Replace Iteration
    Map Parameters
    Function and Collection
    Anonymous Functions
    Lambda's
    Reduce to Single Value
    Reduce Parameters
    Benefits Map and Reduce
    Filter and Find Function
    All and Any Function

    Module 4 : Pipelines

    Module 5 : Other Functional Concepts

    Combining Functions
    Parallelism
    Composition
    Efficiency Issues
    Referential Transparency
    Tail Call Optimization
    Currying
    Lazy Evaluation
    Determinism
    Generators and Iterators
    Fold Expressions
    Memoization
    Monads
    Strict Evaluation
    Type Systems
    Non-strict Evaluation
    Evil of Shared State
    Thread Safeness
  • Functioneel Programmeren : Algemeen

    Lees de algemene cursus informatie
  • Functioneel Programmeren : Reviews

  • Functioneel Programmeren : Certificaat