Hoofdstuk 2. Sessies en projecten: De basis elementen van KDevelop

In deze sectie behandelen we sommige begrippen van hoe KDevelop de wereld ziet en hoe het werk structureert. We zullen met name de begrippen sessies en projecten uitleggen en hoe u de projecten opzet die u wilt bewerken in KDevelop.

Terminologie

KDevelop heeft de begrippen sessies en projecten. Een sessie bevat alle projecten die iets met elkaar gemeen hebben. Voor de voorbeelden die hierna komen nemen we aan dat u de ontwikkelaar bent van zowel een bibliotheek als het programma dat daarvan gebruik maakt. U kunt daarbij voor de eerste denken aan de core KDE bibliotheken en voor het laatste aan KDevelop. Ander voorbeeld: laten we aannemen dat u een Linux® kernel hacker bent en u werkt ook aan een device driver voor Linux® die nog niet is opgenomen in de kernel-tree.

Laten we de laatste als voorbeeld nemen, u heeft een sessie in KDevelop met daarin twee projecten: de Linux® kernel en de device driver. U zal deze in een enkele sessie willen hebben (en niet twee sessies met elk een enkel project) omdat het handig is om de kernel functies en data structures in KDevelop te zien wanneer u broncode voor de driver aan het schrijven bent — bijvoorbeeld omdat dan kernel functies en variabele-namen automatisch aangevuld krijgt, maar ook omdat u dan de documentatie van de kernelfunctie te zien krijgt tijdens het hacken aan de device driver.

Stelt u zich voor dat u ook een KDE ontwikkelaar bent. Dan is het verstandig om een tweede sessie te hebben die KDE als project heeft. U zou in principe maar één sessie hoeven te hebben voor dit alles , maar daar is niet echt een reden voor: in uw KDE werk, hoeft u geen toegang te hebben tot kernel of device driver functies; en u wilt geen KDE class-namen automatisch aangevuld hebben tijdens het werk aan de Linux®-kernel. Tenslotte, het compileren van een van de KDE libraries is onafhankelijk van het hercompileren van de Linux® kernel (maar het is wel verstandig om de Linux® kernel te hercompileren als u de device driver compileert omdat een of meer van de header-bestanden gewijzigd kunnen zijn).

Tenslotte, een ander gebruik van sessies is als u zowel aan de huidige ontwikkelversie van een project als aan een branch werkt: u wilt in dat geval niet dat KDevelop in de war komt met de klassen die bij de hoofdtak horen en die bij de branch horen, Het is daarom verstandig om twee sessies te hebben, met dezelfde verzameling projecten maar uit andere mappen (overeenkomend met verschillende ontwikkel-branches).