www.wikidata.uk-ua.nina.az
Filosofiya Unix zasnovana Kenom Tompsonom ye naborom kulturnih norm i filosofskih pidhodiv do minimalistichnoyi modulnoyi rozrobki programnogo zabezpechennya Vona gruntuyetsya na dosvidi providnih rozrobnikiv operacijnoyi sistemi Unix Pershi rozrobniki Unix vidigrali vazhlivu rol u vnesenni koncepcij modulnosti ta bagatorazovogo vikoristannya u praktiku rozrobki programnogo zabezpechennya porodivshi ruh programnih instrumentiv Zgodom providni rozrobniki Unix i program sho pracyuvali na nij vstanovili nabir norm dlya rozrobki programnogo zabezpechennya Ci normi stali nastilki zh vazhlivimi ta vplivovimi yak i sama tehnologiya Unix ta otrimali nazvu filosofiya Unix Ken Tompson i Dennis Richi klyuchovi prihilniki filosofiyi UnixFilosofiya Unix nagoloshuye na stvorenni prostogo korotkogo yasnogo modulnogo ta rozshiryuvanogo kodu yakij mozhe legko pidtrimuvatisya ta pereprofilyuvatisya inshimi rozrobnikami a ne tilki jogo tvorcyami Filosofiya Unix viddaye perevagu kompozicijnosti na protivagu monolitnomu dizajnu Zmist 1 Pohodzhennya 2 Seredovishe programuvannya UNIX 3 Rozrobka program u seredovishi UNIX 4 Dug Makilroj pro programuvannya Unix 5 Robit odnu rich i robit yiyi dobre 6 17 pravil Unix Erika Rejmonda 7 Majk Gankarc Filosofiya UNIX 8 Chim girshe tim krashe 9 Kritika 10 Dodatkova literatura 11 Primitki 12 Posilannya 13 PosilannyaPohodzhennya RedaguvatiFilosofiyu Unix zadokumentuvav Duglas Makilroj 1 u zhurnali Bell System Technical 1978 roku yaka skladalas z 4 punktiv 2 Zrobit tak shob kozhna programa dobre vikonuvala odnu spravu Shob vikonati novu robotu stvoryujte novi programi a ne uskladnyujte stari dodayuchi novij funkcional Ochikujte sho vihid kozhnoyi programi stane vhidnim signalom dlya inshoyi poki nevidomoyi programi Ne zaharashujte vihidni dani storonnoyu informaciyeyu Unikajte suvoro stovpchastih abo dvijkovih formativ vvedennya Ne napolyagajte na interaktivnomu vvedenni Proektujte ta stvoryujte programne zabezpechennya navit operacijni sistemi yaki potribno viprobuvati zavchasno v ideali protyagom kilkoh tizhniv Ne soromtesya vidalyati nezgrabni chastini ta vidnovlyuvati yih Ne vikoristovujte nekvalifikovanu dopomogu shob polegshiti vikonannya zavdannya krashe skoristajtes instrumentami navit yaksho vi vidalite deyaki z nih pislya togo yak zakinchite yih vikoristannya Piznishe Piterom H Salusom uzagalniv ci punkti u svoyij knizi A Quarter Century of Unix 1994 1 Pishit programi yaki roblyat odnu spravu i roblyat yiyi dobre Pishit programi z mozhlivistyu spilnoyi roboti nad nimi Pishit programi dlya obrobki tekstovih potokiv tomu sho ce universalnij interfejs U svoyij statti 1974 roku yaka bula vidznachena chislennimi nagorodami 3 Richi ta Tompson cituyut taki mirkuvannya shodo dizajnu 4 Sprostit napisannya testuvannya ta zapusk program Zaminit paketnu obrobku na interaktivne vikoristannya Ekonomnist ta elegantnist dizajnu cherez obmezhennya rozmiriv poryatunok cherez strazhdannya Samodostatnya sistema vse programne zabezpechennya Unix pidtrimuyetsya pid Unix Vsya filosofiya UNIX shozhe u tomu shob trimatisya podali vid asemblera Majkl Shon MahoniSeredovishe programuvannya UNIX RedaguvatiU svoyij peredmovi do knigi 1984 roku Seredovishe programuvannya UNIX Brajan Kernigan i Rob Pajk obidva z Bell Labs dayut korotkij opis dizajnu Unix i filosofiyi Unix 5 nbsp Rob Pajk spivavtor The UNIX Programming EnvironmentNezvazhayuchi na te sho sistema UNIX predstavlyaye ryad innovacijnih program ta metodiv zhodna programa chi ideya ne robit yiyi efektivnoyu Natomist te sho robit yiyi efektivnoyu ce pidhid do programuvannya filosofiya vikoristannya komp yutera Hocha cyu filosofiyu ne mozhna zapisati v odnomu rechenni v yiyi osnovi lezhit ideya pro te sho sila sistemi bilshoyu miroyu zalezhit vid vidnosin mizh programami nizh vid samih program Bagato program UNIX roblyat dosit trivialni rechi vlasnimi silami ale u poyednanni z inshimi programami stayut zagalnimi ta korisnimi instrumentami Avtori pishut sho meta ciyeyi knigi povidomiti pro filosofiyu programuvannya UNIX 5 Rozrobka program u seredovishi UNIX Redaguvati nbsp Brayan Kernigan dovgo pisav pro filosofiyu UnixU zhovtni 1984 roku Brayan Kernigan i Rob Pajk opublikuvali stattyu pid nazvoyu Proektuvannya program u seredovishi UNIX U cij statti voni kritikuyut zbilshennya programnih opcij i funkcij yaki ye v deyakih novih sistemah Unix takih yak 4 2BSD i System V i poyasnyuyut filosofiyu programnih zasobiv Unix kozhen z yakih vikonuye odnu zagalnu funkciyu 6 Bilshist mozhlivostej operacijnoyi sistemi UNIX obumovleni stilem rozrobki program yakij robit programi prostimi u vikoristanni i sho vazhlivishe legko poyednuyutsya z inshimi programami Cej stil buv nazvanij vikoristannyam programnih instrumentiv i vin bilshoyu miroyu zalezhit vid togo yak programi vpisuyutsya v seredovishe programuvannya i yak mozhut buti vikoristani z inshimi programami nizh vid togo yak voni rozrobleni vseredini Cej stil buv zasnovanij na vikoristanni instrumentiv vikoristannya program okremo abo v kombinaciyi dlya vikonannya roboti zamist togo shob robiti ce vruchnu za dopomogoyu monolitnih samodostatnih pidsistem abo specializovanih odnorazovih program Avtori porivnyuyut taki instrumenti Unix yak cat z bilshimi paketami program yaki vikoristovuyutsya inshimi sistemami 6 Dizajn cat tipovij bilshist program UNIX vin realizuye odnu prostu ale zagalnu funkciyu yaka mozhe buti vikoristana u bagatoh riznih dodatkah Inshi komandi vikoristovuyut inshi funkciyi Napriklad isnuyut okremi komandi dlya zavdan fajlovoyi sistemi taki yak perejmenuvannya fajliv vidalennya abo viznachennya yih rozmiru Inshi sistemi natomist poyednuyut yih u odnu komandu fajlova sistema z vnutrishnoyu strukturoyu ta vlasnoyu movoyu komand Prikladom mozhe buti programa kopiyuvannya fajliv PIP yaka vikoristovuyetsya v takih operacijnih sistemah yak CP M abo RSX 11 Takij pidhid ne obov yazkovo girshij chi krashij ale vin bezperechno superechit filosofiyi UNIX Dug Makilroj pro programuvannya Unix Redaguvati nbsp Duglas Makilroj livoruch z Dennisom RichiMakilroj todishnij kerivnik doslidnickogo centru Bell Labs Computing Sciences i vinahidnik konveyera 7 uzagalniv filosofiyu Unix takim chinom 1 Ce filosofiya Unix Pishit programi yaki vikonuyut odnu robotu ta roblyat yiyi dobre Pishit programi dlya mozhlivosti spilnoyi roboti nad nimi Pishit programi dlya roboti zi standartnimi potokami tomu sho ce universalnij interfejs Krim cih tverdzhen vin takozh nagolosiv na prostoti ta minimalizmi v programuvanni Unix 1 Ponyattya hitromudri i krasivi skladnosti ce majzhe oksimoron Unix programisti zmagayutsya odin z odnim za zvannya prostogo i krasivogo cej moment mayetsya na uvazi u cih pravilah ale jogo varto ozvuchiti Makilroj takozh kritikuvav suchasnij Linux za nayavnist programnogo rozduvannya zauvazhuyuchi sho zakohani shanuvalniki nagoduvali Linux smakolikami do nevtishnogo stanu ozhirinnya 8 Vin porivnyuye ce z poperednim pidhodom vikoristanim u Bell Labs pri rozrobci ta pereglyadi Research Unix 9 Vse bulo malenkim i moye serce zavmiraye koli bachu rozmiri Linux sogodni Storinka manual page teper nagaduye nevelikij tom z tisyacheyu opcij Mi sidili i dumali Sho mi mozhemo vidaliti Chomu cej funkcional znahoditsya tam Chasto ce vidbuvayetsya tomu sho v bazovomu dizajni ye yakijs nedolik Zamist togo shob dodavati opciyu podumajte pro te sho zmusilo vas dodati cyu opciyu Robit odnu rich i robit yiyi dobre RedaguvatiYak stverdzhuye Makilroj i yak pravilo prijnyato v Unix spilnoti vid program Unix zavzhdi ochikuyetsya dotrimannya koncepciyi DOTADIW Do One Thing And Do It Well V Interneti malo informaciyi pro abreviaturu DOTADIW ale vona dokladno obgovoryuvalas pid chas rozrobki novih operacijnih sistem osoblivo u spilnoti Linux Patrik Folkerding kerivnik proektu Slackware Linux vikoristav cej princip proektuvannya v kritici arhitekturi systemd zayavivshi sho sproba kontrolyuvati sluzhbi rozetki pristroyi montuvannya tosho vse v mezhah odnogo demona stikayetsya z koncepciyeyu Unix Robit odnu rich i robit yiyi dobre 10 17 pravil Unix Erika Rejmonda RedaguvatiU svoyij knizi Mistectvo programuvannya Unix yaka bula vpershe opublikovana v 2003 roci 11 Erik S Rejmond amerikanskij programist i prihilnik vidkritih kodiv pidsumovuye filosofiyu Unix yak princip KISS keep it simple stupid 12 Vin navodit ryad pravil proektuvannya 1 Stvoryujte modulni programi Pishit chitabelni programi Vikoristovujte kompoziciyu Pishit prosti programi Pishit neveliki programi Pishit prozori programi Pishit nadijni programi Za potrebi uskladnyujte dani a ne programu Zvazhajte na ochikuvani znannya potencijnih koristuvachiv Unikajte nepotribnogo vivedennya Pishit programi yaki dayut zbij tak shob yih bulo legko diagnostuvati Cinujte chas rozrobnika a ne chas komp yutera Pishit abstraktni programi yaki generuyut kod zamist napisannya kodu vruchnu Pishit gnuchki ta vidkriti programi Zrobit rozshiryuvanimi programu ta yiyi protokoli Majk Gankarc Filosofiya UNIX RedaguvatiU 1994 roci Majk Gankarc chlen komandi yaka rozrobila sistemu X Window spiravsya na svij vlasnij dosvid roboti z Unix a takozh na diskusiyi z kolegami programistami ta lyudmi v inshih sferah yaki zalezhali vid Unix shob stvoriti filosofiyu UNIX yaka pidsumovuye ce v dev yati najvazhlivishih principah Chim menshe tim krashe Kozhna programa maye dobre vikonuvati lishe odnu robotu Stvorit prototip yakomoga shvidshe Viberit portativnist a ne efektivnist Zberigajte dani v ploskih tekstovih fajlah Vikoristovujte perevagi programnogo zabezpechennya na svoyu korist Vikoristovujte skripti seredovisha shob zbilshiti portativnist Unikajte nekontrolovanih interfejsiv koristuvacha Zrobit kozhnu programu filtrom Chim girshe tim krashe RedaguvatiRichard P Gabriel pripuskaye sho klyuchovoyu perevagoyu Unix bulo te sho vin vtiliv filosofiyu proektuvannya yaku vin nazvav chim girshe tim krashe v yakij prostota interfejsu ta realizaciyi vazhlivishi za bud yaki inshi atributi sistemi vklyuchayuchi korektnist poslidovnist i povnotu Gabriel stverdzhuye sho cej stil dizajnu maye klyuchovi evolyucijni perevagi hocha vin stavit pid sumniv yakist deyakih rezultativ Napriklad na pochatku Unix vikoristovuvav monolitne yadro ce oznachaye sho procesi koristuvacha zdijsnyuvali sistemni vikliki u steku koristuvacha Yaksho signal buv dostavlenij procesu koli vin buv zablokovanij pid chas trivalogo vvedennya vivedennya v yadri sho robiti Chi slid vidklasti signal mozhlivo na trivalij chas mozhlivo na neviznachenij termin poki vvedennya vivedennya ne bude zaversheno Obrobnik signaliv ne mozhe buti vikonanij koli proces perebuvav u rezhimi yadra z konfidencijnimi danimi yadra v steku Chi povinne yadro skasuvati sistemnij viklik i zberegti jogo dlya povtornogo vidtvorennya ta perezapusku piznishe pripuskayuchi sho obrobnik signalu zavershitsya uspishno U cih vipadkah Ken Tompson i Dennis Richi viddavali perevagu prostoti a ne doskonalosti Sistema Unix inodi povertalasya ranishe pislya sistemnogo vikliku z povidomlennyam pro te sho vona nichogo ne zrobila Perervanij sistemnij viklik abo pomilka nomer 4 EINTR u suchasnih sistemah Zvichajno viklik buv perervanij shob viklikati obrobnika signaliv Ce moglo statisya lishe dlya kilkoh trivalih sistemnih viklikiv takih yak read write open i select Pozitivnim ye te sho ce zrobilo sistemu vvedennya vivodu v razi prostishoyu dlya rozrobki ta rozuminnya Bilshist koristuvackih program zhodnim chinom vid cogo ne postrazhdali b oskilki voni ne obroblyali inshih signaliv okrim SIGINT i vidrazu b zupinili vikonannya yaksho b hoch odin buv pidnyatij kudi Dlya kilkoh inshih program takih yak programni seredovisha abo tekstovi redaktori yaki reaguyut na natiskannya klavish keruvannya zavdannyam mozhna bulo b dodati neveliki obgortki do sistemnih viklikiv shob negajno povtoriti viklik yaksho vinikla pomilka EINTR Takim chinom problemu bulo virisheno prostim sposobom Kritika RedaguvatiU statti 1981 roku pid nazvoyu Pravda pro Unix interfejs koristuvacha zhahlivij 13 opublikovanij v Datamation Don Norman kritikuvav filosofiyu dizajnu Unix za vidsutnist interfejsu koristuvacha Pishuchi zi svogo dosvidu v kognitivnij nauci ta z tochki zoru todishnoyi filosofiyi kognitivnoyi inzheneriyi vin zoseredivsya na tomu yak kincevi koristuvachi rozumiyut i formuyut osobistu kognitivnu model sistem abo u vipadku z Unix ne mozhut yiyi zrozumiti i yak rezultat stayut prichinoyu katastrofichnih pomilok napriklad vtrata godinnoyi roboti Dodatkova literatura RedaguvatiKognitivna inzheneriya Arhitektura Unix Minimalizm obchislennya Rozrobka programnogo zabezpechennya Princip KISS Hakerska etika Spisok filosofij rozrobki programnogo zabezpechennya Vse ye fajlom Girshe tim krashePrimitki Redaguvati a b v g d Raymond Eric S 2004 Basics of the Unix Philosophy The Art of Unix Programming Addison Wesley Professional ISBN 0 13 142901 9 Procitovano 1 listopada 2016 Doug McIlroy E N Pinson B A Tague 8 lipnya 1978 Unix Time Sharing System Foreword The Bell System Technical Journal Bell Laboratories 1902 1903 ACM Dennis M Richie Arhiv originalu za 26 sichnya 2021 Procitovano 26 serpnya 2021 ACM Programming Systems and Languages Paper Award Dennis Ritchie Ken Thompson 1974 The UNIX time sharing system Communications of the ACM 17 7 365 375 doi 10 1145 361011 361061 a b Kernighan Brian W Pike Rob The UNIX Programming Environment 1984 viii a b Rob Pike Brian W Kernighan October 1984 Program Design in the UNIX Environment Dennis Ritchie 1984 The Evolution of the UNIX Time Sharing System AT amp T Bell Laboratories Technical Journal 63 8 1577 1593 doi 10 1002 j 1538 7305 1984 tb00054 x Douglas McIlroy Remarks for Japan Prize award ceremony for Dennis Ritchie May 19 2011 Murray Hill NJ Procitovano 19 chervnya 2014 Bill McGonigle Ancestry of Linux How the Fun Began 2005 Procitovano 19 chervnya 2014 Interview with Patrick Volkerding of Slackware linuxquestions org 7 chervnya 2012 Procitovano 24 zhovtnya 2015 Raymond Eric 19 veresnya 2003 The Art of Unix Programming Addison Wesley ISBN 0 13 142901 9 Procitovano 9 lyutogo 2009 Raymond Eric 19 veresnya 2003 The Unix Philosophy in One Lesson The Art of Unix Programming Addison Wesley ISBN 0 13 142901 9 Procitovano 9 lyutogo 2009 Norman Don 1981 The truth about Unix The user interface is horrid Datamation 27 12 Posilannya RedaguvatiSeredovishe programuvannya Unix Brajan Kernigan i Rob Pajk 1984 Rozrobka programi v seredovishi UNIX stattya Pajka i Kernigana yaka pereduvala knizi Notatki shodo programuvannya na C Rob Pajk 21 veresnya 1989 roku Chvert stolittya Unix Piter H Salus Addison Vesli 31 travnya 1994 r ISBN 0 201 54777 5 Filosofiya z Mistectvo programuvannya Unix Erik S Rejmond Addison Vesli 17 veresnya 2003 r ISBN 0 13 142901 9 Ostatochnij zvit proektu Multics Kernel Design vid M D Shredera D D Klarka Dzh H Zalcera ta D H Uellsa 1977 r Filosofiya UNIX Majk Gankarc ISBN 1 55558 123 4Posilannya RedaguvatiOsnovi filosofiyi Unix Catb org Filosofiya Unix Korotkij vstup The Linux Information Project LINFO Chomu filosofiya Unix vse she maye znachennya Otrimano z https uk wikipedia org w index php title Filosofiya Unix amp oldid 37527567