5 Inhoud Inhoud Over dit boek 7 1 Eclipse IDE (Integrated Development Environment) 9 2 Functionele specificatie 13 3 Implementatie grafische gebruikersinterface 31 4 De klassen en methoden 57 5 Technische implementatie 71
7 Over dit boek Het bouwen van een programma begint met een aantal afspraken tussen de opdrachtgever en het bedrijf dat de opdracht uitvoert. Dit boek gaat ervan uit dat een applicatie wordt gebouwd voor een bank. Voordat programmeurs beginnen met het programmeerwerk, moeten ze precies weten wat afgesproken is met de organisatie voor wie de opdracht wordt uitgevoerd. Dat wordt allemaal beschreven in de functionele specificatie. Daarna wordt er gewerkt aan een technische specificatie van de opdracht. Er wordt van programmeurs verwacht dat ze deze twee specificaties begrijpen, maar onervaren programmeurs hoeven deze specificaties meestal niet zelf te maken. De taak van de programmeurs is het schrijven van de benodigde code om deze specificaties te implementeren. In dit boek wordt stap voor stap een bankapplicatie gebouwd. De belangrijke punten worden uitgelegd om je een idee te geven waaraan je moet denken als je dit soort opdrachten krijgt. Er wordt een aantal specifieke opdrachten aangeboden zodat je leert om nieuwe functionaliteiten te bouwen. In de praktijk wordt programmeurs vaak gevraagd om nieuwe functionaliteiten te bouwen op basis van wat al gebouwd is. Het is belangrijk om te weten dat dit boek niet bestemd is voor beginners: studenten moeten minimaal het boek Java quizmaster voor beginners bestudeerd hebben. Veel beginnende programmeurs denken dat ze van een bankapplicatie alleen leren wat nodig is voor banken, maar dat is niet waar. Bij het programmeren worden veel functionaliteiten herhaald en je leert om die te gebruiken in andere programma s. Bij elke nieuwe opdracht komen er ook nieuwe uitdagingen. Op die manier bouw je langzamerhand ervaring op en door elke nieuwe uitdaging groeit je vaardigheid. Bij deze applicatie heb ik gekozen voor drie zeer gebruikelijke functionaliteiten waar je heel vaak mee te maken kunt krijgen, namelijk het toevoegen, wijzigen en verwijderen van gegevens. In deze applicatie gaat het om de gegevens van klanten, maar technisch gezien maakt het niet uit of het de gegevens zijn van klanten, studenten, werknemers, projecten of artikelen. Java behandelt alles als een object, daarom maakt het niet veel uit of de gegevens van mensen of andere objecten zijn. Als Java-programmeur moet je leren werken met de Java API-documentatie. In dit boek wordt regelmatig gevraagd om deze API-documentatie te openen en te zoeken naar specifieke methoden en klassen. Er wordt van studenten verwacht dat ze leren omgaan met deze rijke Java-bron. Deze bron maakt de wereld van programmeurs makkelijker en veel sneller, want in principe hoef je niet alles zelf te bouwen als dat al geprogrammeerd is.
8 5 Over dit boek De Java IDE (Integrated Development Environment) die in deze cursus wordt gebruikt is Eclipse, daarom beginnen we met een korte introductie in Eclipse zodat je daarmee leert omgaan. Dat helpt je ook om de broncode die bij dit boek hoort op te zetten in Eclipse. Voordat we beginnen met het schrijven van code, wordt het eerst in een soort functionele specificatie uitgelegd wat de klant (bank) van je verwacht. We besteden hier geen aandacht aan de lay-out van de applicatie, want dat is in principe de taak van de ontwerper. Sar Maroof
9 1 Eclipse IDE (Integrated Development Environment) Voor dit project gebruiken we Eclipse 3.8.1 met ingebouwde JDK 1.7 (Java Development Kit) of nieuwer. Je kunt Eclipse gratis downloaden via internet. Je kunt ook Java en Eclipse apart downloaden voor je platform. Om te zien welke Java-versie je Eclipse gebruikt, kun je kiezen voor Windows Preferences. Er wordt een venster geopend. Klik op Java Compiler en je ziet aan de rechterkant de versie van JDK. Deze moet versie 1.7 of nieuwer zijn. Maak een nieuw project Bij het installeren van Eclipse wordt er standaard een workspace-map aangemaakt waarin al je projecten komen te staan. Als je Eclipse start, zie je het volgende scherm. Klik op File New Java Project. Voer de naam van het project in: boek_nl_bank en klik op Finish.
10 1 Eclipse IDE (Integrated Development Environment) Klik in het volgende scherm op Yes. Bij het starten van Eclipse zie je een scherm zoals hieronder staat. Je ziet bovenaan de linkerkant van je scherm de tab Package Explorer. De Navigator-tab staat er standaard niet bij, maar het is handig om deze te gebruiken.
1 Eclipse IDE (Integrated Development Environment) 11 Klik op Window Show view en klik op Navigator. De Navigator-tab wordt zichtbaar naast de tab Package Explorer. De broncode van dit boek opzetten Op www.sarmaroof.com en www.brinkman-uitgeverij.nl vind je de broncode voor dit boek. Pak eerst het zip-bestand uit en daarna kopieer de hele map bankapplicatie_boek van de broncode naar de map src die automatisch wordt gemaakt binnen je project boek_nl_bank. Als je teruggaat naar Eclipse is de code nog niet zichtbaar. Klik met de rechtermuisknop op de map src en klik op refresh om de code zichtbaar te maken. Er is een.jar-bestand in de lib-map van de broncode dat nog niet geïmporteerd is, daarom krijg je waarschijnlijk fouten in de code. Selecteer de tab Package Explorer om het lib-bestand te importeren. Open binnen Eclipse de map banapplicatie_boek.lib en klik met de rechtermuisknop op het bestand jcalendar-1.4.jar. Kies Build Path Add to Build Path. Na deze stap verdwijnen de fouten en daardoor kun je de broncode compileren en uitvoeren.