برای درک بهتر این موضوع شما باید با روال معمول تولید برنامه ها آشنا باشید. برای اینکه یک نرم افزار تولید شود ابتدا برنامه نویسان اقدام به نوشتن سورس کد آن می کنند. همان طور که می دانید سورس کد همان چیزی است که یک برنامه را به وجود می آورد و در واقع مجموعه ای از دستورالعمل ها است که به کامپیوتر می گوید چه کاری را انجام دهد.معمولا سورس کد مجموعه ای از عبارات به زبان انگلیسی است که توسط انسان قابل درک است اما برای رایانه بی معنی است. بنابراین به نرم افزار دیگری نیاز است تا به عنوان یک واسطه سورس کد را به زبان قابل درک رایانه تبدیل کند. این برنامه اغلب همان کامپایلر ( Compiler ) می باشد. بنابراین برای تولید یک نرم افزار ابتدا یک سورس کد نوشته می شود سپس به کامپایلر داده می شود تا آن را به یک فایل اجرایی که همان نرم افزار نهایی است تبدیل کند.
نرم افزار هایی که شما از آنها استفاده می کنید مانند Mozilla Firefox در واقع تنها همان فایل اجرایی می باشند که صرفا برای رایانه قابل درک است. اگر شما دوست دارید تا تغییری در آن اجرا کنید می بایست به شکل جداگانه سورس کد آن را تهیه کنید و سپس تغییرات خود را در سورس کد اعمال کنید. آنگاه می توانید سورس کد تغییر یافته را به کامپایلر بدهید تا یک Mozilla Firefox تغییر یافته برای شما تولید کند.
به طور مثال می توانید در اینجا کد های Mozilla Firefox را ببینید :
http://hg.mozilla.org/releases/mozilla-1.9.2/file/1283a5da7fa1که شامل فایل های بسیاری که در شاخه های تو در تو قرار گرفته اند می شود.
موفق باشید