Kas yra atvirojo kodo C kompiliatorius?

Atvirojo kodo C kompiliatorius yra programinės įrangos dalis, skirta žmogui skaitomą programavimo kodą paversti dvejetainiu kodu, kurį gali vykdyti tam tikra kompiuterinė sistema. C programavimo kalba ir kompiliatoriai siekia, kad jie būtų nepriklausomi nuo platformos, o tai leidžia programuoti vieną kartą ir paleisti bet kur. Tai pasiekiama paimant žmogui skaitomus šaltinio failus ir perkompiliuojant juos su kiekvienos sistemos, kurioje kodas gali būti paleistas, kompiliatoriumi. Atvirojo kodo C kompiliatorių kūrimas lėmė tvirtą profesionalaus lygio kompiliatorių pasirinkimą, kurie beveik nuolat tobulinami.

Atvirojo kodo C kompiliatorius nuo komerciškai prieinamos programinės įrangos skiriasi tuo, kad jį kuria ir prižiūri kūrėjų bendruomenė, kuri veikia nemokamai. Beveik kiekvienas bendruomenės narys gali pabandyti pateikti patobulinimų rekomendacijas. Be to, kompiliatoriaus šaltinio kodas yra nemokamas visiems, norintiems sukurti kompiliatoriaus variantą arba išstudijuoti kodą.

Viena iš atvirojo kodo C kompiliatoriaus ypatybių yra ta, kad kūrėjų bendruomenės nariai dažnai yra skirtingų techninių žinių. Daugelis žmonių vienu metu naudoja daugybę operacinių sistemų. Ši įvairovė padeda nuolat atnaujinti sukurtus C kompiliatorius, todėl visose platformose našumas yra nuoseklus. Skirtingai nuo ne atvirojo kodo kompiliatorių, kurie dažnai taikomi vienai konkrečiai operacinei sistemai, atvirojo kodo C kompiliatoriai nuo pat pradžių yra skirti įvairioms sistemoms.

Kitas atvirojo kodo C kompiliatoriaus aspektas yra tas, kad bendruomenė dažnai yra labai didelė. Be tų, kurie iš tikrųjų rašo kompiliatoriaus kodą, taip pat yra bandytojų ir galutinių vartotojų, kurie pateikia klaidų ataskaitas ir patobulinimų užklausas. Ši nuolatinė veikla leidžia patobulinti vieną kompiliatorių ir vienu metu pridėti keletą funkcijų.

Tačiau ne visi atvirojo kodo projektai yra baigti. Yra projektų, kurie buvo stipriai pradėti ir kuriuos priėmė programuotojų bendruomenė, tačiau jie buvo apleisti ir niekada nebuvo užbaigti. Taip pat kartais iškyla problema, kai tikrasis programos kūrimas viršija dokumentacijos ir testavimo pastangas. Kartais tai yra vystymosi bendruomenės, kuri išaugo per didelė, kad ją būtų galima veiksmingai valdyti, rezultatas.

Viena stipri motyvacija, susijusi su atvirojo kodo C kompiliatoriaus kūrimu, yra tai, kad jis labai dažnai naudojamas kaip platforma kitai atvirojo kodo programinei įrangai rašyti. Tokiu būdu visa atvirojo kodo bendruomenė yra labai suinteresuota, kad būtų sukurtas stabilus kompiliatorius, skirtas individualiam naudojimui. Nors patys kompiliatoriai gali turėti skirtingas funkcijas ir gebėjimus, jie paprastai atitinka išleistus C kalbos standartus.