Programiranje: Psihologija računalnikov

Vsi smo tesno povezani s programiranjem, najsi bo to kot uporabnik, kot skrbnik, kot programer sam, toda na koncu je to nekaj, kar bo z leti bolj povezano z našim življenjem.

V tem članku (začetek majhne serije, ki jo nameravam ustvariti), Želim z vami deliti nekaj konceptov o tem, kaj sem odkrival o programiranju v preteklih letih. Ne pretvarjam se, da sem preveč tehničen, kasneje bom razložil, zakaj. Ampak to, kar nameravam, je, da jim omogočim, da svet vidijo z mojimi očmi, in če jim je všeč, kako izgleda, naj se malo poglobijo vanj 🙂

Najprej bom napadel najpreprostejšo točko, preden bom šel v podrobnosti.

Zakaj ne grem na tehnično delovno mesto?

No, za tiste, ki so prebrali moj prispevek o tem najboljši ukaz linux, boste malo vedeli o vzroku tega poudarka. Tehnologija se vedno spreminja in če danes kaj napišem, če je objava dobro sprejeta, bom vedno morala posodobiti informacije. V najpogostejših jezikih danes so edina zanesljiva sprememba. S tem mislim (in programerji mi lahko dokažejo prav) okviri vedno rastejo in se spreminjajo iz svojih jeder, to pa zato, ker se pojavijo napake, nekatere lahko štejemo za preproste hrošči, drugi pa lahko postanejo ranljivosti. To je razlog, zakaj bi mi danes pisanje prispevka o določenem jeziku zagotovilo morda nekaj mesecev uporabnosti, v najboljših primerih eno ali dve leti, vendar to ni ideja

Elektrika je pomembna

Tisti, ki ste malo raziskali spodnje programske jezike programske opreme, boste vedeli, da vse izvira iz elektrike. V preteklosti se je programiranje izvajalo na strojni ravni, kar pomeni, da so lahko stare ure, kalkulatorji in številne druge naprave svojo usodo izpolnile s programiranjem strojna oprema.

Problem

Spreminjanje programiranja strojne opreme je drago in zapleteno 🙂 (vsaj tako so mi rekli 🙂 ). Zato so se pojavili procesorji, ki dejansko abstrahirajo to strojno plast, da bi dobili nekaj ukazov, da lahko naredimo vse, kar je bilo mogoče s strojno opremo, šele zdaj v strojni plasti. Programska oprema.

Procesorji

Današnji procesorji imajo omejeno število funkcij, imenovanih navodila v mnogih knjigah. Ti vam omogočajo izvajanje najosnovnejših funkcij, ki jih lahko izvaja strojna oprema, in prenos podatkov prek pomnilnika računalnika.

Registri

Registri so prostor, v katerem procesor shranjuje informacije, da lahko izvaja delo na jedru, odvisno od arhitekture, ki so lahko drugačne velikosti in vrstnega reda, vendar je na preprost način njihova funkcija shranjevanje podatkov, ki sporočajo procesorju eno od naslednjih vrst dela: premikanje podatkov, aritmetika in logika ter nadzor nad pretok. Vse je mogoče povzeti v teh vrstah funkcionalnosti.

Binario

Procesorji delujejo na binarni ravni, kar pomeni, da samo razumejo 0sy 1da 🙂. Nenavadno dejstvo tukaj 😀se spomnite dovoljenj GNU / Linux? no,ste se kdaj vprašali, kako procesor dejansko prepozna ta dovoljenja? Preprosto 🙂 binarno. Na najnižji ravni bo procesor dovoljenja razumel kot zaporedje 0s in 1s, in to je razlog, zakaj ima osmik, ki ga tvorimo, vrednosti za izvedbo, 2 za branje in 4 za pisanje. Tisti, ki znajo brati binarne datoteke, bodo razumeli, da:

111100101111

Skupini dajo dovoljenja za branje, pisanje in izvajanje drugi med izvajanjem predstave in branja za skupino Skupina in samo za lastnike datotek. Za najbolj radovedne zadnje tri enote aktivirajo setguid, setuid in sticky bit. Če ne veste, kaj je to binarno gradivo, lahko to razložim v drugem prispevku, če tega ne veste o setuid, setgid in lepljivem bitu, vam ga prepustim 😉, po potrebi pa ga lahko razložim tudi drugje.

Ko radovednost pokliče ...

No, če ste mi sledili tukaj, bi vas morala radovednost začeti spraševati po mnogih stvareh, prva, na katero želim odgovoriti (in morda edina, ki mi jo ta objava omogoča, ker že veliko pišem), je: Če so klici enaki, zakaj so programi tako različni?

Psihologija

Programiranje je umetnost učenja branja misli this Ta odsek želim začeti s citatom, ki sem ga že davno prebral, je dejal Edsger Dijkstra:

Če je odpravljanje napak postopek odpravljanja napak, mora biti njihovo uvajanje programiranje

In ne najdem boljšega načina, da bi vse to razložil 🙂 zakaj je programiranje umetnost navajanja napak? v tem trenutku se bo spraševalo več ljudi. Odgovor je preprost, kajti naš um je človeški in ljudje delamo napake - to je v naši naravi in ​​bo, dokler človek obstaja na planetu.

Računalniki se ne motijo

Mi smo tisti, ki delamo napake, ekipe se bodo vedno omejile na reprodukcijo tega, kar jim povemo, ničesar ne prevzamejo, ničesar ne razlagajo, ničesar ne ugovarjajo, samo berejo in delujejo. Tako sem v drugi knjigi C kdaj prebral nekaj takega:

C je nesramen jezik, z njim lahko naredite veliko, vendar vam nikoli ne bo preprečilo, da si ne boste ustrelili v nogo, če želite to narediti, ali tako veste.

To je precej radovedna resnica. 🙂 Ker je pri delu na tako nizki ravni možno, da so številne izvedene operacije lahko uničujoče, kar se pri jezikih nekoliko višje ravni ne zgodi, ker so plasti za preprečevanje napak starejše.

Vse je psihologija

Vsak jezik, ogrodje, programer spoštuje in sledi nekakšni filozofiji, in če je ne, nima zelo obetavne prihodnosti. Tisti, ki delamo na Unixu in izpeljanih finančnih instrumentih, bomo verjetno poznali staro besedno zvezo:

Naredite eno stvar in to zelo dobro.

To filozofijo sledijo nekateri projekti, kot je jedro, precej majhne funkcije, ki naredijo samo eno stvar, vendar to storijo po svojih najboljših močeh.

Če gremo v druge jezike, bo imel vsak svojo funkcijo in cilj, nekateri bolj permisivni in drugi bolj restriktivni, vendar vsi sledijo svojemu načinu razmišljanja.

Naučite se brati misli

Med programerji je dokaj pogost rek, da obstaja isti način reševanja istega problema. To je res, vendar je v tem vidiku nekaj globljega. Branje izvorne kode omogoča branje misli - ne le katere koli misli, temveč misli programerja (ali programerjev), ki jo je napisal. Je nekakšen virtualni in globok dnevnik - omogoča vam, da poglobljeno poznate um razvijalca, v primeru obsežnih projektov pa vidite, kako je sčasoma raslo njihovo logično in kritično razmišljanje. Nekaj ​​izjemnega in kar močno hrani misli najmlajših, saj lahko poznate najboljše poti ljudi, ki so jih morali odkriti 🙂

Da bi bili dosledni

Mnogi programerji in strokovnjaki pravijo, da se moramo rešiti svojega comfort zone, in čeprav je res, je tudi več kot potrebno vzdrževati določene procese in formate. To je enostavno razložiti, naš um se ponavlja in spoštuje strukture, če vsak dan pišete kodo na enak način, v kratkem času nehate razmišljati o obliki in se boste lahko osredotočili nanjo. sklad. To vam omogoča, da vidite Logika programa namesto sintaksa jezika. In to je razlog, zakaj menim, da je učenje pojmi bo vedno bolj pomembno kot učenje obrazci. To je osebno mnenje, vendar upam, da boste po branju vsega tega razumeli, zakaj tako mislim 🙂 povedal tudi nekdo, ki je moral programirati na C, Java, Javascript, Python, Ruby, PHP in drugi 🙂 vedeti koncepti olajšajo pisanje kode.

V povzetku

No, to je prvi korak v nizu, za katerega upam, da vam bo pomagal drugače razmišljati o umetnosti programiranja, celo vas vabim, da se poglobite v koncepte, ki vam omogočajo izvajanje kode, ki ste jo napisali morda več stokrat, vendar niso nehali razmišljati o tem, kaj v resnici počne. In za tiste, ki še niso začeli programirati, bi pa želeli, da bi lahko malo razvrstili tisto, kar je zares pomembno vedeti 🙂 Lep pozdrav


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.

  1.   Javier G. Delgado je dejal

    Zelo vesten članek, ki govori (v tem primeru) o programiranju morda v novem jeziku, ki poglobljeno programira, podpiram naslednje.

    1.    ChrisADR je dejal

      Pozdravljeni, Javier, najlepša hvala. Mislim, da je to zelo pomembno, ker so me vedno želeli naučiti samo reproducirati kodo, znamenite Ctrl + C ... Ctrl + V 🙂, vendar se nisem nikoli pustil vleči zaradi tega, tudi če je to najpreprostejši problem na svetu, ga raje napišem kot kopiram od nekoga drugega, se mi zdi, da je to moja stvaritev.
      pozdrav

  2.   splav je dejal

    Ko sem že čakal na naslednje poglavje, sem že zdavnaj nehal s programiranjem in mislim, da v kakšnem kasnejšem poglavju najdem vzrok za svojo odločitev, res, saj si v tem poglavju slečem klobuk.

  3.   ChrisADR je dejal

    Pozdravljeni Balua 🙂
    No, nekaj bom pa našel za naslednjega. Nekoliko je zapleteno naročiti vse tako, da je nit mogoče spremljati iz katere koli objave, vendar bom to (in še nekaj drugih, ki so me vprašale) poskušal imeti kmalu. Hvala za vaš komentar. Na zdravje

  4.   drugače je dejal

    Biser članka! Upam, da naslednji ...