"OpenCms 7 Development" af Dan Liliedahl er den første bog der forsøger at præsentere de mange muligheder de omfattende OpenCms API'er giver.
Og det gør forfatteren vel og mærke uden at tilføje endnu en mursten på min allerede hårdt prøve boghylde.
På trods af det, så dækker bogen en imponerede række emner som en OpenCms udvikler bør kende, eller i det mindste kende til. Eksemplet der bruges i bogen er et blog web-site, og dækker emner som bruger registrering, søgning, RSS feeds m.m. Det er et tilpas kompliceret eksempel der formår at præsentere læseren for en lang række af OpenCms's API'er.
Nok så vigtigt sørger forfatteren for at give et godt forslag til hvordan man kan sætte et udviklingsmiljø op. Med de effektive IDE'er der er tiltængelige i dag er det en stor fordel at kunne bruge dem når der skal udvikles skabeloner og moduler til OpenCms. Forfatteren tager udgangspunkt i Eclipse, men ideer og teknikker kan bruges sammen med andre IDE'er.
Om du skal udvikle en skabelon eller specifik funktionalitet, så er første skridt at lave et OpenCms modul. Denne del er godt beskrevet, inklusiv en gennemgang af de forskellige anvendelsesmuligheder for modulerne. Den første del beskrive hvordan man laver et skabelon-modul, hvilket er meget passende eftersom det typisk er det første man, som OpenCms udvikler, skal lave. De næste skridt viser hvordan man kan integrere den avancerede søgefunktion i sin hjemmeside. Og endelig vises hvordan man håndterer bruger registrering til f.eks. kommentarer til en blog, tilmelding til nyhedsbreve m.v.
I nogle scenarier er alt der er brug for et skabelon-modul, men der kan også være brug for mere specifik funktionalitet som man bør lave som et eller flere separate moduler. Eksemplet i bogen viser hvordan RSS læser og feeds kan implementeres i et separat modul (og dermed let genbruges på andre hjemmesider). Det er endnu et eksempel på brugen af OpenCms's XML håndtering, i form af tilpassede formularer og data strukturer. Bogen inkluderer endda et eksempel på udvikling af nye widgets til den indbyggede XML formular editor. Det er langt fra i alle tilfælde man har brug for at tilføje nye widgets, men det er en effektiv måde at tilpasse redigeringsforløbet sådan at en redaktør f.eks. har adgang til en liste af produkter udtrukket fra en anden database.
Og som prikken over i'et, så vises et eksempel på hvordan man tilføjer et nyt værktøj til OpenCms administrations-del. Igen, ikke noget der er brug for til alle hjemmesider, men for visse funktioner er kan det lette arbejdsgangen hvis der er et specifikt værktøj til at håndtere administrationen.
"OpenCms 7 Development" er absolut et godt sted at starte hvis du vil mestre OpenCms-udvikling. Den dækker et bredt spektre af API'er og ved at bruge et realistisk eksempel giver den en god ide om hvordan det er at arbejde med OpenCms set fra en udviklers synspunkt.
Anmelder-eksemplar doneret af Packt Publishing.