Clojure
Java

 

Oracle Cloud partner


CLOJURE

De toekomst is data. Omgaan met grote hoeveelheden aan data vraagt om een aangepaste manier van werken. Als integratie partner gaan we reeds meer dan tien jaar om met data. Uit deze ervaring komt ook de liefde voor het functioneel programmeren in Clojure.

Clojure is de programmeertaal voor de JVM die in 2007 werd geïntroduceerd door Rich Hickey. Clojure niet object-georiënteerd is, maar data-georiënteerd. Data wordt gerepresenteerd met immutable hashmaps, in plaats van classes zoals in Java. Als je steeds dezelfde datastructuren hergebruikt, hoef je niet telkens het wiel opnieuw uit te vinden om je data in de gewenste vorm – dus classes - te krijgen. Classes vormen bovendien een taal op zichzelf. Je moet eerst de methods leren kennen, voordat je de datastructuren erachter kunt gebruiken. En omdat de data-structuren immutable zijn, hoef je ook geen rekening te houden met eventuele side-effects bij het aanroepen van methods. Deze datastructuren zijn wel eenvoudig te manipuleren met functies, maar staan daar los van.

"It is better to have 100 functions operate on one data structure than to have 10 functions operate on 10 data structures." -- Alan J. Perlis

Het schrijven van interface- en implementatiecode om je datastructuren te ‘beschermen’ in een taal als Java brengt een overhead met zich mee. Je hebt dus minder Clojure-regels dan Java-regels nodig om precies hetzelfde te bereiken. De voordelen van minder regels code zijn evident. Kleinere programma’s hebben minder bugs, zijn beter te begrijpen en zijn door de eenvoud ook robuuster.

"Clojure shrinks our code base to about one-fifth the size it would be if we had written in Java" -- Anthony Marcar, architect, WalmartLabs

Bij het werken in het Clojure-ecosysteem kun je de kennis van dezelfde programmeertaal hergebruiken in meerdere omgevingen. Voor server side ontwikkeling maak je gebruik van Clojure op de JVM (of in .NET via ClojureCLR). Voor front-end development kun je gebruik maken van ClojureScript, wat compileert naar JavaScript.

Net als Java heeft Clojure toegang tot de Java Virtual Machine (JVM), een platformonafhankelijke omgeving. Doordat Clojure op de JVM werkt, hebben toegang tot de vele, betrouwbare Java standaard bibliotheken en onze eigen DN modules.

DEBREUCK NEIRYNCK bvba
Meensesteenweg 361 - 8800 Roeselare
+32 (0)51 240944   |   info@d-n.be