Wat is een statische bibliotheek?
Een statische bibliotheek is een computerarchief met een groep gerelateerde bestanden voor eenvoudige koppeling naar programma's. De inhoud van deze bibliotheek is meestal machinecodebestanden die niet leesbaar zijn voor mensen. Deze machinecodebestanden worden normaal gesproken gegenereerd uit codecompilatie of een soortgelijk proces. De meeste besturingssystemen hebben standaardextensies voor statische bibliotheken, dus ze zijn gemakkelijk te identificeren, ongeacht de grootte of inhoud.
De twee verschillende soorten computerbibliotheken zijn statisch en dynamisch. Een statische bibliotheek is flexibeler dan een dynamische bibliotheek omdat het exacte pad niet relevant is voor het uitvoerbare bestand dat het gebruikt. Statische bibliotheken zijn gekoppeld aan een uitvoerbaar bestand en kunnen vervolgens indien nodig worden verwijderd omdat hun inhoud is opgenomen in het uiteindelijke programma. Een dynamische bibliotheek kan niet worden verwijderd omdat de inhoud ervan wordt geladen terwijl het uitvoerbare bestand wordt uitgevoerd, dus de locaties ten opzichte van het uitvoerbare bestand en in het besturingssysteem zijn belangrijk. Met statische koppelingen kan een bibliotheek worden verplaatst of opnieuw worden gebruikt zonder zorgen voor absolute locatiepaden.
In tegenstelling tot een dynamische bibliotheek is een statische bibliotheek meestal niet op zichzelf uitvoerbaar. In C ++ werken statische bibliotheken vaak als grote objectbestanden en kunnen ze op dezelfde manier in uitvoerbare bestanden worden gekoppeld als objectbestanden en vervolgens worden verwijderd zonder het programma te beschadigen. Hoewel het vaak mogelijk is om af te zien van een statische bibliotheek, zijn ze vaak handig in termen van organisatie. Voor zowel gebruikers als ontwikkelaars is het meestal gemakkelijker om een enkel bestand met verwant materiaal te hebben dan om veel kleine bestanden te hebben. Veel ontwikkelaars bouwen statische bibliotheken specifiek voor dit organisatorische voordeel.
Het bouwen van een statische bibliotheek is veel eenvoudiger dan het bouwen van een dynamische bibliotheek. De inhoud van statische bibliotheken is niet aan elkaar gekoppeld omdat van hen niet wordt verwacht dat ze op zichzelf werken, dus een eenvoudige archiver is meestal voldoende om ze te maken. Het maken van een statische bibliotheek die niet goed in zichzelf is gekoppeld, is niet inherent gevaarlijk zolang de bibliotheek is gekoppeld aan andere externe bestanden die mogelijk nodig zijn. Een bibliotheek kan afhankelijk zijn van een externe groep objectbestanden, of de ene bibliotheek kan afhankelijk zijn van een andere. Het gebruik en de organisatie van statische bibliotheken is vaak een persoonlijke keuze van de kant van de programmeur in plaats van een vereiste, hoewel hun inherente mobiliteit hen vaak tot een wenselijke keuze maakt.