Unix-filosofia

Unix-filosofia  on joukko ohjelmistokehityksen kulttuurisia normeja ja filosofisia lähestymistapoja, jotka perustuvat Unix - käyttöjärjestelmän johtavien kehittäjien kokemukseen .

McIlroy: Neljännes vuosisataa Unixia

Doug McIlroy , Unix-putkien keksijä ja yksi Unix-perinteen perustajista, tiivisti filosofian seuraavasti:

"Unix-filosofia sanoo: Kirjoita ohjelmia , jotka tekevät yhden asian ja tekevät sen hyvin. Kirjoita ohjelmia, jotka toimivat yhdessä. Kirjoita ohjelmia, jotka tukevat tekstivirtoja, koska se on yleinen käyttöliittymä."

Yleensä nämä lausunnot liittyvät yhteen asiaan: "Tee yksi asia, mutta tee se hyvin."

Näistä kolmesta periaatteesta vain kolmas koskee Unixia, vaikka Unix-kehittäjät korostavat muita todennäköisemmin kaikkia kolmea periaatetta.

Mike Guntzarz: Unix-filosofia

Vuonna 1994 Mike Gancarz yhdisti  kokemuksensa Unixista (hän ​​on X Window System -kehitystiimin jäsen ) kommentteihinsa keskusteluista, joita hän kävi muiden ohjelmoijien ja muiden alojen ihmisten kanssa, riippuen Unixista tavalla tai toisella, luodakseen Unix-filosofia , joka tiivistyy yhdeksään perusperiaatteeseen:

  1. Kauniisti pieni.
  2. Anna jokaisen ohjelman tehdä yksi asia, mutta hyvin.
  3. Rakenna prototyyppiohjelma mahdollisimman varhain.
  4. Suosi siirrettävyyttä tehokkuuden sijaan.
  5. Tallenna tiedot pelkkää tekstiä oleviin tiedostoihin.
  6. Hyödynnä olemassa olevia ohjelmistoratkaisuja.
  7. Käytä komentosarjakieliä vähentääksesi työvoimakustannuksia ja parantaaksesi siirrettävyyttä.
  8. Vältä käyttöliittymiä, jotka rajoittavat käyttäjän kykyä olla vuorovaikutuksessa järjestelmän kanssa.
  9. Tee jokaisesta ohjelmasta "suodatin".

Vähemmän tärkeitä 10 periaatetta ei ole yleisesti hyväksytty osaksi Unix-filosofiaa, ja joissakin tapauksissa niistä on käyty kiivasta keskustelua ( monoliittinen ydin vs. mikroydin ):

  1. Anna käyttäjän muokata ympäristöä.
  2. Pidä käyttöjärjestelmän ytimet pieninä ja kevyinä.
  3. Käytä pieniä kirjaimia ja pidä otsikot lyhyinä.
  4. Älä tallenna ohjelmatekstejä tulosteena ("Pelasta puut!").
  5. Älä kerro käyttäjälle itsestäänselvyyksiä ("Hiljaisuus on kultaa").
  6. Jaa monimutkaiset tehtävät yksinkertaisiin rinnakkaisiin tehtäviin ("Think Parallel").
  7. Kokonaisuuden yhdistetyt osat ovat enemmän kuin pelkkä summa.
  8. Etsitkö 90 prosentin ratkaisua .
  9. Jos on mahdollista olla lisäämättä uusia toimintoja, älä lisää niitä (" Mitä huonompi, sen parempi ").
  10. Ajattele hierarkkisesti.

Raymond: Unix-ohjelmoinnin taito

Eric Raymond ( eng.  Eric S. Raymond ), kirjassa The Art of Unix Programming, tiivisti Unixin filosofian yleisesti käytetyksi suunnittelufilosofiaksi "Pidä se yksinkertainen, typerys" ( KISS-periaate ). Sitten hän kuvaili, kuinka tämä yleinen filosofia soveltuu Unix-kulttuurinormeina. Tämä huolimatta siitä, että seuraavasta nykyisestä Unix-filosofiasta on helppo löytää useita rikkomuksia:

Useimmat näistä sopimuksista hyväksytään Unix-yhteisön ulkopuolella – vaikka niitä ei olisikaan silloin, kun niitä sovellettiin ensimmäisen kerran Unixissa, niistä on sittemmin tullut sellaisia. Lisäksi monet säännöt eivät ole ainutlaatuisia tai alkuperäisiä Unix-yhteisölle. Unix-ohjelmoinnin kannattajat kuitenkin yleensä hyväksyvät näiden ideoiden yhdistelmän Unix-tyylin perustaksi.

Lainaukset

Kritiikki

UNIX-HATERS-käsikirja

UNIX-filosofiaa kritisoitiin UNIX-HATERS Handbookissa , joka julkaistiin 1990-luvun alussa.

Mutta samaan aikaan tässä kirjassa kritisoidut lähestymistavat, joka alkoi *NIX:stä, ovat hyvin perusteltuja Microsoft Windowsissa ja Apple Mac OS :ssä .

Muistiinpanot

Linkit