|
|||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||
Avoin lähdekoodi (engl. open source, äännetään IPAn mukaan [əupən sɔ:s][1]) tarkoittaa ohjelmia, jonka lisenssi täyttää Open Source Initiativen määrittelemät vaatimukset (katso jäljempänä). Avoin lähdekoodi yhdistetään puhekielessä esimerkiksi Linuxiin, joka on yksi avoimen lähdekoodin ohjelmistoista. Tosiasiassa Linux on myös vapaa ohjelmisto GNU/Linux-lisenssillä ja se on tullut sillä kuuluisaksi.
muokkaa Suljetun ja avoimen lähdekoodin eroAvoimen lähdekoodin ohjelman käyttäjä näkee ohjelmakoodin. Ohjelmiston lisensseistä riippuen hän voi itse korjata ohjelmavirheitä ja lisätä uusia ominaisuuksia tai ehdottaa tekijälle korjauksia/lisäyksiä. Avointen lähdekoodien ohjelmien avoimen tuotantoympäristön ansiosta kuka tahansa voi tehdä tuollaisen muutoksen. Tästä seuraa se, että korjaukset tulevat nopeasti. Parhaissa tapauksissa viie on vain tunteja, jos sitäkään. Tämä on tärkeää esim. tietoturvahaavoittuvuuden korjauksissa. Suljetun lähdekoodin ohjelmistossa käyttäjä ei näe ohjelmiston lähdekoodia. Mikäli ohjelmaan tulee vika, ohjelman käyttäjä joutuu raportoimaan siitä ohjelman tekijälle. Toinen vaihtoehto on, että hän sopeutuu vikaan ja yrittää minimoida haittavaikutuksia. Ohjelman tekijä korjaa raportoidun ohjelmavirheen ja julkistaa virheenkorjausversion ohjelmasta. Avoimen lähdekoodin ohjelmien kehitys perustuu enimmäkseen vapaaehtoiseen kehitystyöhön. Lisäksi eri yritykset tekevät muutoksia avoimen lähdekoodin ohjelmiin. Avointa lähdekoodia kehitetään jatkuvasti. Sitä ei nähdä sanan perinteisessä mielessä valmiina vaan prosessina. Ehkä tästä johtuen joissakin avoimen lähdekoodin ohjelmissa esim. käyttöoppaiden kehitys jää puolitiehen. Osa avoimien ohjelmien käyttäjistä osallistuu myös itse ohjelmien kehittämiseen ja niissä olevien virheiden poistamiseen. Tämä kehitys voi tapahtua jo ennen ohjelman julkistusta. muokkaa Avoimen lähdekoodin kehittäjäyhteisöAvoimen lähdekoodin ohjelmien kehitys perustuu julkiseen kehitysympäristöön. Ympäristöön kuuluu tyypillisesti versionhallinnalla varustettu lähdekoodin talletuspaikka (palvelin). Kehitysympäristöön kuuluu myös keskustelualueita ja virheenilmoitusjärjestelmä (johon voi kirjata myös toiveita). Kehitysyhteisöön voi kuulua kotoistusryhmiä, jotka kääntävät (translate) ohjelman eri kielille. [2] Kotoistukseen kuuluu ohjelman kansainvälistäminen (internationalisointi) ja sitten kotoistus (lokalisointi). Kotoistukseen kuuluu tietokoneohjelman käyttämän kielen lisäksi idiomit, tekstin vierityssuunta, päivämäärän esitysmuoto, valuutta, desimaalierotin ja värit. Kotoistus sisältää myös käyttöoppaat ja lisenssit. Kehittäjäyhteisöön voi kuulua laaturyhmä, joka huolehtii ohjelman laadusta. Ulkonäöllisiin seikkoihin kiinnittää huomion siihen keskittyvä ryhmä. Avoimen lähdekoodin kehitysyhteisöihin voi liittyä kuka tahansa. Jäsenet voivat kertoa mielipiteensä uusista ominaisuuksista, testata ohjelmistojen toimivuutta, tarkistaa lähdekoodia, korjata virheitä ja kirjoittaa uutta lähdekoodia. Kilpailu kehittäjien välillä on kovaa. Etuna on se, että koodia kehitetään kunnianhimoisesti. Kovan kilpailun haittavaikutuksia ovat yhteisön sisäiset erimielisyydet teknisistä yksityiskohdista, termeistä, toteutuksesta, projektien organisoinnista ja tavoitteista. Kiistoista tunnetuin koskee termejä avoin lähdekoodi vai vapaa ohjelmisto. muokkaa Avoin lähdekoodi vai vapaa ohjelmistoLinuxin keksijä, suomalainen Linus Torvalds suosii termiä "avoin lähdekoodi". Se sopii hänen mukaansa paremmin yritysten käyttöön kuin "vapaa ohjelmisto" (free software). Englanninkielinen sana free tarkoittaa nimittäin sekä ilmaista että vapaata, eivätkä yritykset halua antaa asiakkailleen sitä vääristynyttä kuvaa, että kyse olisi ilmaisesta tuotteesta. Vapaan ohjelmiston määritelmän kehitti alun perin GNU-projektin ja Free Software Foundationin johtaja Richard Stallman. Stallman on arvostellut avoimen lähdekoodin liikettä pragmaattisuudesta ja vapaiden ja "puolivapaiden" ohjelmien rajan hämärtämisestä. Ristiriidat eivät ole kuitenkaan olleet yhteensovittamattomia, vaikka termeissä on nyanssieroja. Asiaan perehtymättömän näkökulmasta kyseessä on kilpailevien leirien kukkotappelu tunnustuksesta, maineesta ja kunniasta. Käytännössä kaikki vapaat ohjelmistot ovat myös avoimen lähdekoodin ohjelmistoja, ja avoimen lähdekoodin ohjelmistot vapaita, eli termit viittaavat samaan kohteeseen, vaikka painotus eroaakin. muokkaa Avoimen lähdekoodin määritelmän pääkohdatAvoimella lähdekoodilla voidaan tarkoittaa ohjelmistoa, jonka lisenssi täyttää seuraavat Open Source Initiativen (OSI) määrittelemät vaatimukset. OSI on organisaatio, jonka tarkoitus on edistää avoimen lähdekoodin ohjelmistojen käyttöä.
Tekijänoikeudet säilyvät koodin kirjoittajilla. Näiden kriteerien pohjalta esimerkiksi seuraavilla lisensseillä varustettuja ohjelmistoja voidaan pitää avoimen lähdekoodin ohjelmistoina: GNU GPL:n ja BSD-lisenssit, Apache-ryhmä, IBM:n (IBM Public License), Intelin (Intel Open Source License), Applen (Apple Public Source License), Nokian (Nokia Open Source License), Sun Microsystemsin (Sun Industry Standards Source License ja Sun Public License) ja Mozillan (MPL 1.0 ja 1.1) lisenssit. muokkaa MonilisensointiJotkin ohjelmistot, kuten MySQL, ovat saatavilla vapaasti GNU GPL:n alaisena ja lisäksi maksullisena versiona niille, jotka haluavat sisällyttää koodin osaksi omaa suljetun lähdekoodin tuotettaan. Tällöin tulee korostetusti esille, että vapaa ohjelmisto ei ole ilmainen siinä mielessä, että sen saisi omia itselleen, vaan muokattu koodi tulee antaa muiden käyttöön. Näin varmistetaan se, että kehittäjät saavat nauttia muiden työstä ja ohjelmiston kehittäminen jatkuu. muokkaa Katso myösmuokkaa Viitteet
muokkaa Aiheesta muualla |
| All Right Reserved © 2007, Designed by Stylish Blog. |