Bir belge biçimi olarak sizin için yararlı olsalar da, başlık dosyalarını çevreleyen sistem olağanüstü derecede verimsizdir.
C, her derleme geçişinin tek bir modül oluşturacağı şekilde tasarlanmıştır; her kaynak dosya, derleyicinin ayrı bir çalışmasında derlenir. Diğer yandan, üstbilgi dosyaları, bunlara başvuran kaynak dosyaların her biri için bu derleme adımına enjekte edilir.
Bu, başlık dosyanız 300 kaynak dosyasına dahil edilirse, programınız oluşturulurken 300 ayrı kez ayrıştırılır ve derlenir. Tekrar tekrar aynı sonuçla aynı şey. Bu büyük bir zaman kaybıdır ve C ve C ++ programlarının oluşturulmasının bu kadar uzun sürmesinin temel nedenlerinden biridir.
Tüm modern diller kasıtlı olarak bu saçma sapan verimden kaçınırlar. Bunun yerine, genellikle derlenmiş dillerde gerekli meta veriler derleme dosyasının içinde depolanır ve derlenen dosyanın derlenmiş dosyanın ne içerdiğini açıklayan bir tür hızlı arama başvurusu olarak işlev görmesini sağlar. Bir üstbilgi dosyasının tüm avantajları, sizin tarafınızdan ek bir çalışma olmadan otomatik olarak oluşturulur.
Alternatif olarak, yorumlanan dillerde, yüklenen her modül bellekte kalır. Bazı kitaplıklara başvuruda bulunmak ya da bunlara yer vermek ya da bunlara gereksinim duymak, program sona erene kadar yerleşik kalan ilgili kaynak kodunu okur ve derler. Ayrıca başka bir yere gereksinim duyarsanız, zaten yüklendiği için ek bir iş yoktur.
Her iki durumda da, dilin araçlarını kullanarak bu adımda oluşturulan verilere "göz atabilirsiniz". Genellikle IDE bir tür sınıf tarayıcısına sahip olacaktır. Dilin bir REPL'si varsa, genellikle yüklü nesnelerin belge özetini oluşturmak için de kullanılabilir.