Reklama
Už sme vás prešli cez internet Najdôležitejšie princípy programovania 10 Základné princípy programovania Každý programátor musí dodržiavaťVždy napíšte kód, ktorý môže udržiavať každý, kto môže na vašom softvéri skončiť. Na tento účel uvádzame niekoľko zásad programovania, ktoré vám pomôžu vyčistiť váš akt. Čítaj viac musíte o tom vedieť, ale existuje ešte jedna trieda programovacích princípov, ktoré sa môžu ukázať ešte výhodnejšie ako tie.
Zatiaľ čo vyššie uvedené princípy vás naučia, ako byť šikovný pomocou vášho kódu vás naučia nasledujúce princípy múdry s vaším kódom. Niektoré z nich sú podivné a mnohé z nich sú vtipné, ale všetky sú rovnako praktické a dôležité. Dajte si pozor!
1. Princíp Bloat
Tento má toľko variácií, že je ťažké vybrať jednu ako hlavnú. Snáď najbežnejšou verziou je zákon o softvérových obaloch, ktorý sa bežne nazýva Zawinského zákon, pomenovaný po Jamie Zawinski a uvedený v Umenie programovania UNIX:
„Každý program sa pokúsi rozšíriť, kým nedokáže čítať poštu. Programy, ktoré sa nemôžu takto rozšíriť, sú nahradené programami, ktoré môžu. “
Hovorí sa o tendencii programov priťahovať čoraz viac funkcií v priebehu času a nevyhnutne sa uberá smerom k zvyšovaniu zložitosti. Možno to viete ako funkcie dotvarovania, čo je pokračujúce pridávanie nových funkcií, ktoré nemajú nič spoločné s hlavným účelom programu. Dotvarovanie funkcií vedie k nadúvaniu a nadúvanie je často nežiaduce.
To sa môže týkať aj výkonu softvéru:
„Softvér sa rozširuje, aby spotreboval všetky dostupné zdroje.“
V 90. rokoch boli pevné disky a procesory a pamäte RAM omnoho reštriktívnejšie ako dnes a programátori tvrdo pracovali, aby sa zmestili čo najviac v rámci obmedzení. Teraz, keď máme väčšie disky a rýchlejšie procesory a viac pamäte RAM, stále sa snažíme rešpektovať limity. Časom je všetko nafúknuté. Je vašou úlohou udržať to pod kontrolou.
2. „Horšia je lepšia“ mentalita
Takmer ako by sme reagovali na Bloatov princíp, máme Horšie je lepšie mentalita, prvý razil Richard P. Gabriel v eseji napísal o kvalite softvéru:
„Softvér, ktorý je obmedzený, ale ľahko použiteľný, môže byť pre používateľov a trh atraktívnejší ako naopak.“
Inými slovami, je múdre zistiť jeden problém Váš softvér sa snaží vyriešiť a potom byť veľmi dobre na jednu vec. Nechaj to jednoduché. Čím viac sa šírite, tým je projekt nezvládnuteľný a tým viac nežiaduci pre používateľov.
Čo sa stane, keď to ignorujete? Skončíte s Princíp softvéru Peter:
„Príliš zložitý projekt sa nakoniec stane príliš komplexným na to, aby ho pochopili aj jeho vlastní vývojári.“
Vychádza z širšieho Peterovho princípu, ktorý uvádza, že keď sú zamestnanci povýšení na základe ich súčasného stavu kompetencie a nie ich očakávaná kompetencia na najbližšom pracovnom mieste, všetci zamestnanci nakoniec skončia na pozícii nekompetentnosť. Vezmite si tento princíp a aplikujte ho na softvér. Uvidíte, prečo môže byť horší softvér často lepší.
3. Eaglesonov zákon
„Akýkoľvek vlastný kód, na ktorý ste sa šesť alebo viac mesiacov nedívali, mohol tiež napísať niekto iný.“
Toto zdanlivo demotivačné príslovie je vlastne niečo, čo je potrebné prijať. Pravda je, že nikto nie je dokonalý. Možno si teraz myslíte, že ste geniálny programátor, ale existuje vždy niečo viac sa môžete naučiť, vždy viac priestoru na rast. Ak sa niekedy obzeráte späť po starom kóde a kríži, pravdepodobne to znamená odvtedy ste sa naučili niečo nové.
Inak povedané: ak sa obzriete späť na starý projekt a nevidíte nič, čo by ste mohli vylepšiť alebo by ste mohli nabudúce urobiť inak, pravdepodobne ste ako programátor stagnovali.
4. Princíp najmenšieho úžasu
„Ak má nevyhnutná funkcia vysoký faktor úžasu, môže byť potrebné prepracovať ju.“
Prvýkrát uverejnené v IBM Systems Journal Už v roku 1984 je táto zásada dnes prekvapivo relevantná - možno viac ako kedykoľvek predtým.
V podstate sa dotýka citlivej rovnováhy medzi inováciou a známosťou: ak ide o softvér príliš odlišné od ostatných svojho druhu a nespĺňa očakávania používateľov pravdepodobne ho neprijmú. Je lepšie usilovať sa o postupné vylepšenia, ktoré sú dosť veľké na to, aby boli pôsobivé, ale dosť malé na to, aby zostali známe.
5. Zákon o kybernetickej entomológii
"Vždy je tu ešte jedna chyba."
Často sa volá Lubarského zákon o kybernetickej entomológii, nie je jasné, kto v skutočnosti je tento Lubarsky. Jeho princíp však platí pre všetkých programátorov: bez ohľadu na to, ako čisto píšete kód, bez ohľadu na to, ako dôkladne si otestujete svoje moduly, bez ohľadu na to, ako často svoje triedy upravujete, vždy sa vyskytne ďalšia chyba.
Svojím spôsobom je to zásada oslobodenia. Aj keď by sme určite mali usilovať v prípade kódu bez chýb je tiež potrebné pamätať na to, že perfekcionizmus je nepriateľom dobra. Vyhľadajte chyby, opravte ich, keď vzniknú a potom pokračujte ďalej.
6. Kernighanov zákon
„Na prvom mieste je ladenie dvakrát také náročné ako písanie kódu. Preto, ak napíšete kód čo najchytrejší, nie ste z definície dosť chytrí, aby ste ho mohli ladiť. “
Brian Kernighan, ten istý, kto je spoluautorom biblia v programovacom jazyku C. Prečo sa programovanie C stále oplatí učiť saC nie je mŕtvy jazyk. Časopis IEEE Spectrum ho v roku 2017 v skutočnosti zaradil medzi špičkový jazyk č. 2. Tu je päť dôvodov. Čítaj viac , je známy pre tento bystrý zákon. Ťažiskom je toto: napíšte dobrý kód, napíš čitateľný kód, napíš prostý code, pokiaľ to tak nie je šikovný kód.
Snaha o napnutie programovacích svalov zložitosťou slonovinovej veže je presným opakom toho, čo to znamená napíšte čistý a lepší kód 10 tipov na písanie Cleaner & Better CodePísanie čistého kódu vyzerá jednoduchšie, ako v skutočnosti je, ale jeho výhody sa oplatia. Takto môžete začať písať čistší kód ešte dnes. Čítaj viac . Čím je kód ťažšie pochopiť, tým ťažšie bude ladenie, keď sa nevyhnutne zlomí.
A ako Robert C. Martin vysvetľuje, že nejde iba o ladenie:
„Pomer času stráveného čítaním a písaním je skutočne vyšší ako 10: 1. Neustále čítame starý kód ako súčasť úsilia o napísanie nového kódu... [Preto] ľahšie čítanie uľahčuje písanie. “
7. Ladenie gumovej kačice
Toto nie je ani tak princíp, ako je to technika, ale je to také užitočné a čudné, že by sme sa mali nechať vynechať.
Prvýkrát to povedal Pragmatický programátor, ladenie gumovej kačice je, keď ladíte nefunkčný softvér vysvetlením kódu na neživý objekt (napr. gumenú kačicu) po jednom riadku. Funguje to preto, že akt vysvetlenia spúšťa rôzne časti mozgu a je pravdepodobnejšie, že zistíte nezrovnalosti a zistíte, kde ste sa pokazili.
Z tohto dôvodu môže byť gumová kačica a prekvapivo šikovný darček pre programátorov Najlepšie Geekové darčeky pre programátorov: 20 nápadov pre programátorov a hlupákovHľadáte darček pre programátora? Tu sú najlepšie darčeky od geeka, od mechanických klávesníc po stojace stoly a ďalšie. Čítaj viac , či si ju kúpite pre seba alebo pre svojho programovacieho kamaráta.
8. Pravidlo deväťdesiatdeväťdesiat
„Prvých 90 percent kódu predstavuje prvých 90 percent času vývoja. Zvyšných 10 percent kódu predstavuje ďalších 90 percent času vývoja. “
Toto drzé malé príslovie od Toma Cargilla sa dostáva do centra pozornosti, prečo môže byť programovanie také frustrujúce: bez ohľadu na to, ako si myslíte, že ste blízko, ste na konci. oveľa ďalej než tie najlepšie odhady. Keď si myslíte, že ste skončili, ste tam len na pol cesty.
Ide ruka v ruke s Hofstadterovým zákonom:
"Vždy to trvá dlhšie, ako ste očakávali, aj keď beriete do úvahy Hofstadterov zákon."
9. Parkinsonov zákon
„Práca sa rozširuje tak, aby sa vyplnil čas, ktorý je k dispozícii na jej dokončenie.“
Tento jeden princíp, ktorý vytvoril Cyril Northcote Parkinson, je širším princípom, ktorý sa absolútne uplatňuje na programovanie a funguje ruka v ruke s vyššie uvedeným pravidlom deväťdesiatdeväťdesiat: ale koľko času musíte dokončiť, je to, ako dlho to bude trvať. trvať. Vo vývoji softvéru je „skoré dokončenie“ mýtus.
Parkinsonov zákon je dôvod, prečo sú správne termíny rozhodujúce, ak chcete softvér dokončiť a odoslať. To je dôvod, prečo moderní profesionálni programátori často odporúčajú agilné princípy projektového riadenia Ako používať agilné princípy projektového riadenia na organizáciu vášho životaAgile, najlepšie známy ako metóda projektového riadenia, je skvelým rámcom pre správu vášho osobného života. Ukážeme vám, ktoré princípy si môžete požičať - vrátane bezplatného stiahnutia pracovného hárka! Čítaj viac a nástroje na riadenie projektov, ako je Asana Trello vs. Asana: Najlepšie bezplatný nástroj na riadenie projektov je ...Výber medzi Trello a Asana je ťažké. Tu porovnávame bezplatné plány a pomôžeme vám rozhodnúť sa, ktorý nástroj riadenia projektov je pre váš tím najlepší. Čítaj viac .
10. Brookov zákon
„Pridanie pracovnej sily do neskorého softvérového projektu to robí neskôr.“
Pri nasledujúcom oneskorení projektu, ktoré je pravdepodobné, pretože väčšina programovacích projektov potrebuje viac času, ako je pridelené, nezabudnite, že pridanie kódovacích programov to nevyrieši rýchlejšie.
V skutočnosti to bude pravdepodobne trvať dlhšie dokončiť. Nielen, že potrebujete nový kódovač vylepšiť, pravdepodobne sa stretnú s existujúcimi kódovačmi. Bude potrebné zdokumentovať viac vecí, bude potrebné viac byrokracie, aby sa všetci udržali na tej istej stránke, a viac trenia vyplynie z celej skúsenosti v čase krízy.
Vpred ako programátor
Teraz, keď tieto princípy poznáte, ste skutočne vhodnejší pre reálny svet programovania, nielen toho, s čím ste sa stretli v škole, na webovom kurze alebo v bootcampe. Tieto princípy vychádzajú z dlhoročných skúseností a porúch.
S touto novo objavenou múdrosťou sa teraz môžete vydať na programová kariéra s vysokým dopytom 10 úloh v oblasti počítačového programovania, ktoré sú práve teraz potrebnéKeďže pristátie v programovej úlohe môže byť v súčasnej krajine náročné, zvážte zameranie sa na jednu z nasledujúcich koncentrácií, aby ste zvýšili svoje šance na úspech. Čítaj viac s realistickejšími očakávaniami. Naučte sa to maximalizujte svoje kariérne príležitosti na programovanie Ako vylepšiť svoje kariérne príležitosti pri programovaníAk dúfate, že začnete, reštartujete alebo inak vylepšíte svoju programovú kariéru, nie je to ľahké. Ak ste na vysokej škole, teraz je čas. Tu je niekoľko tipov, ktoré vás môžu dostať ďaleko. Čítaj viac . A ak sa rozhodnete, že programovanie nie je pre vás, neznepokojujte sa - zvážte jednu z nich namiesto toho nekódujúce technické úlohy Kódovanie nie je pre každého: 9 technických pracovných miest, ktoré môžete získať bez tohto riešeniaNenechajte sa odradiť, ak chcete byť súčasťou technickej oblasti. Existuje veľa pracovných miest pre ľudí bez kódovacích schopností! Čítaj viac .
Ktorý z týchto princípov vám najviac vyhovuje? Poznáte ďalšie divné princípy programovania, ktoré nám chýbali? Dajte nám vedieť v komentároch nižšie!
Joel Lee má titul B.S. v odbore informatiky a viac ako šesť rokov odbornej praxe v písaní. Je šéfredaktorom organizácie MakeUseOf.