O mea sese sili ona maasiasi i laʻu galuega faʻapolokalame (e oʻo mai i le taimi nei)

O mea sese sili ona maasiasi i laʻu galuega faʻapolokalame (e oʻo mai i le taimi nei)
E pei ona latou fai mai, afai e te le maasiasi i lau tulafono tuai, o lona uiga e te le o tuputupu ae o se tagata fai polokalame - ma ou te ioe i lenei manatu. Na amata ona ou polokalame mo le fiafia i le silia ma le 40 tausaga talu ai, ma faŹ»apolofesa 30 tausaga talu ai, o lea e tele aŹ»u mea sese. tele. I le avea ai ma se polofesa faasaienisi komepiuta, ou te aoaoina au tamaiti aoga ia aoao mai mea sese—o latou mea sese, o a'u, ma isi. Ou te manatu ua oo i le taimi e talanoa ai e uiga i aŹ»u mea sese ina ia aua neŹ»i aveesea loŹ»u tauagafau. Ou te faŹ»amoemoe o le a latou aoga i se tasi.

Tulaga lona tolu - Microsoft C compiler

Na talitonu loʻu faiaoga aʻoga e le mafai ona taʻua Romeo ma Juliet o se faʻalavelave ona o tagata e leai se taʻusalaina mataʻutia - sa latou amio valea, e pei ona tatau ai i talavou. Ou te leʻi ioe ia te ia i lena taimi, ae o lea ua ou vaai i se fua o le mafaufau i lona manatu, aemaise lava i le sootaga ma polokalame.

E oo ane i le taimi na uma ai loʻu tausaga lona lua i le MIT, sa ou talavou ma leai se poto masani, i le olaga ma le polokalame. I le taumafanafana, sa ou galue i Microsoft, i luga o le C compiler team I le taimi muamua sa ou faia mea masani e pei o profiling support, ona tuuina mai lea ia te aʻu e galue i le vaega sili ona malie o le compiler (e pei ona ou manatu) - backend optimization. Aemaise lava, e tatau ona ou faʻaleleia le x86 code mo faʻamatalaga lala.

Na ou naunau e tusi le numera sili ona lelei o le masini mo tulaga uma e mafai, na ou togi ai aʻu i totonu o le vaitaele. Afai na maualuga le tufatufaina o tau, na ou ulufale i totonu laulau suiga. Afai ei ai se latou vaeluaga masani, na ou faʻaaogaina e faʻapipiʻi ai le laulau (ae pe a fai e mafai ona fai le vaevaega e faʻaaoga ai sina suiga). Ina ua avea uma tulaga taua ma malosiaga o le lua, sa ou faia se isi faʻalelei. Afai o se seti o tau e leʻi faʻamalieina oʻu tulaga, ou te vaevaeina i ni nai faʻataʻitaʻiga faʻapitoa ma faʻaaogaina le code ua uma ona faʻaogaina.

O se miti taufaafefe. I le tele o tausaga mulimuli ane, na taʻu mai ai ia te aʻu o le tagata fai polokalame na tuufaasolo mai i laʻu code na ita ia te aʻu.

O mea sese sili ona maasiasi i laʻu galuega faʻapolokalame (e oʻo mai i le taimi nei)

Le lesona na aʻoaʻoina

E pei ona tusia e David Patterson ma John Hennessy i le Computer Architecture and Computer Systems Design, o se tasi o mataupu autu o le tusiata ma le mamanu o le masani ona faʻaogaina mea i se taimi vave e mafai ai.

O le fa'avavevaveina o mataupu masani o le a fa'aleleia atili ai le fa'atinoga nai lo le fa'ata'ita'iina o mataupu e le masani ai. O le mea e ofo ai, o mataupu masani e masani ona faigofie nai lo mea e seasea. O lenei fautuaga fa'atatau e fa'apea e te iloa po'o fea le mataupu e ta'ua e masani ai - ma e na'o se fa'agasologa o su'ega ma fua fa'atatau.

I laʻu puipuiga, sa ou taumafai e iloa pe o le a le foliga o faʻamatalaga lala i le faʻataʻitaʻiga (e pei o le tele o lala sa i ai ma le faʻafefea ona tufatufaina atu pea), ae i le 1988 e leʻi maua lenei faʻamatalaga. Ae ui i lea, e le tatau ona ou faʻaopoopoina mataupu faʻapitoa i soʻo se taimi e le mafai ai e le tagata faʻapipiʻi o loʻo i ai nei ona gaosia le code sili ona lelei mo le faʻataʻitaʻiga faʻapitoa na ou sau ai.

Sa ou manaʻomia le valaʻau i se tagata poto poto masani ma, faʻatasi ma ia, mafaufau pe o a mataupu masani ma faʻatautaia faapitoa. Ou te tusia ni tulafono laiti, ae o se mea lelei. E pei ona tusia e le faavae o le Stack Overflow Jeff Atwood, o le fili sili ona leaga o le fai polokalame o le fai polokalame lava ia:

Ou te iloa o loʻo ia te oe ni faʻamoemoega sili, e pei o i tatou uma. Matou te fatuina polokalame ma fiafia e tusi code. O le ala lena na faia ai i tatou. Matou te manatu o soʻo se faʻafitauli e mafai ona foia i le lipine faʻapipiʻi, se tootoo fai fale ma se pine o le code. E ui lava ina tiga le coders e taʻutino atu, o le code sili o le code lea e le o iai. O laina fou taʻitasi e manaʻomia le faʻapipiʻiina ma le lagolago, e manaʻomia ona malamalama. A e fa'aopoopoina le code fou, e tatau ona e faia ma le musu ma le 'ino'ino ona o isi filifiliga uma ua uma. O le tele o tagata fai polokalame latou te tusia le tele o code, ma avea ai ma o tatou fili.

Afai na ou tusia se tulafono faigofie e aofia ai mataupu masani, semanu e sili atu ona faigofie le faʻafouina pe a manaʻomia. Sa ou tuua i tua se gaogaosa e leai se tasi na manao e taulimaina.

O mea sese sili ona maasiasi i laʻu galuega faʻapolokalame (e oʻo mai i le taimi nei)

Tulaga lona lua: faʻasalalauga i luga o fesoʻotaʻiga lautele

A o ou galue i Google i luga o faasalalauga faʻasalalau lautele (manatua Myspace?), Sa ou tusia se mea faapenei i le C++:

for (int i = 0; i < user->interests->length(); i++) {
  for (int j = 0; j < user->interests(i)->keywords.length(); j++) {
      keywords->add(user->interests(i)->keywords(i)) {
  }
}

E mafai ona vave iloa e le au fai polokalame le mea sese: o le finauga mulimuli e tatau ona j, ae le o le i. E leʻi faʻaalia e le suʻega iunite le mea sese, ma e leʻi faʻaalia foi e laʻu tagata suʻesuʻe. Na faia le faʻalauiloaina, ma i se tasi po na alu ai laʻu code i le 'auʻaunaga ma faʻaumatia uma komepiuta i totonu o le nofoaga autu o faʻamatalaga.

E leai se mea leaga na tupu. E leai se mea na gau mo soʻo se tasi, aua aʻo leʻi faʻalauiloaina le lalolagi na faʻataʻitaʻiina le code i totonu o le tasi nofoaga autu. Se'i vagana ua taofi e inisinia SRE le ta'alo piliati mo sina taimi ae fai sina ta'avale. O le taeao na sosoo ai na ou maua ai se imeli ma se faʻalavelave faʻafuaseʻi, faʻasaʻo le code ma faʻaopoopo suʻega iunite e maua ai le mea sese. Talu ai na ou mulimuli i le protocol - a leai o laʻu code o le a le mafai ona tamoe - e leai se isi faʻafitauli.

O mea sese sili ona maasiasi i laʻu galuega faʻapolokalame (e oʻo mai i le taimi nei)

Le lesona na aʻoaʻoina

E toʻatele e mautinoa o se mea sese tele o le a mautinoa lava le faʻateʻaina o le tagata solitulafono, ae e le o le mea lea: muamua, o tagata fai polokalame uma e faia mea sese, ma lona lua, e seasea ona latou faia le mea sese tutusa faalua.

O le mea moni, e iai laʻu uo fai polokalame o se inisinia atamai ma na tuli ona o le faia o se mea sese. Ina ua maeʻa, sa faʻafaigaluegaina o ia i Google (ma e leʻi umi ae siitia) - na ia tautala faamaoni e uiga i le mea sese na ia faia i se faatalanoaga, ma e leʻi manatu e oti.

O le mea lena ta'u atu e uiga ia Thomas Watson, le ulu lauiloa o le IBM:

O se poloaiga a le malo e tusa ma le miliona tala na faalauiloaina. IBM Corporation - po'o le, Thomas Watson Sr. patino - na matua mana'o lava e maua. Ae paga lea, na le mafai e le sui faŹ»atau ona faia lenei mea ma na leiloa e le IBM le ofo. O le aso na sosoo ai, na sau ai lenei tagata faigaluega i le ofisa o Mr. Watson ma tuu se teutusi i luga o lana kesi. E le’i toe fia tilotilo i ai Mr. Watson – o lo’o fa’atali se tagata faigaluega ma na ia iloa o se tusi fa’amavae.

Na fesili Watson po o le a le mea na tupu.

Na saunoa auiliili le sui faatau e uiga i le faagasologa o le tauofoga. Sa ia ta’ua mea sese na semanu e alofia. Mulimuli ane, sa ia fai mai, ā€œMr. Watson, faafetai mo le tuuina mai ia te au e faamatala atu. Ou te iloa le tele na matou manaomia ai lenei poloaiga. Ou te iloa lona tāua,ā€ ma sauni loa e alu.

Na alu atu Watson ia te ia i le faitotoa, tilotilo atu ia te ia i ona mata ma toe faafoi atu le teutusi ma upu: ā€œE faapefea ona ou tuu oe e alu? Na o le tasi le miliona tala na ou teuina i lau aŹ»oga.

E iai laʻu mitiafu o loʻo faʻapea mai: "Afai e te aʻoaʻoina moni mai mea sese, o lona uiga o aʻu o se matai." O le mea moni, pe a oʻo mai i mea sese, o aʻu o se fomaʻi o le saienisi.

Tulaga muamua: App Inventor API

O mea sese mataʻutia e aʻafia ai le tele o tagata faʻaoga, avea ma malamalama lautele, umi se taimi e faʻasaʻo ai, ma e faia e i latou e le mafai ona faia. O la'u mea sese tele e fetaui ma nei tulaga uma.

O le leaga o le lelei

Sa ou faitau tala na saunia e Richard Gabriel e uiga i lenei faiga i le nineties o se tamaititi faauu, ma ou te fiafia tele i ai ou te fesili atu i au tamaiti aoga. Afai e te le manatua lelei, toe faafou lou mafaufau, e laʻititi. O lenei tala e faʻatusatusaina le manaʻo e "faʻasaʻo" ma le "sili atu le leaga e sili atu" auala i le tele o auala, e aofia ai le faigofie.

Fa'afefea ona i ai: o le mamanu e tatau ona faigofie i le faʻatinoga ma le atinaʻe. Fa'afaigofie ole fa'aoga e sili atu le taua nai lo le faigofie ole fa'atinoga.

Le leaga, sili atu: o le mamanu e tatau ona faigofie i le faʻatinoga ma le faʻaogaina. Faigofie o le faʻatinoga e sili atu le taua nai lo le faigofie o le faʻaoga.

Sei galo ia i tatou lena mea mo sina minute. Ae paga lea, na galo ia te au mo le tele o tausaga.

Polokalama Komepiuta

A o galue i Google, sa avea au ma se vaega o le au Polokalama Komepiuta, o se siosiomaga atina'e toso-ma-tu'u i luga ole laiga mo tagata amata Android-tagata atiaŹ»e. O le 2009 lea, ma sa matou faanatinati e faŹ»alauiloa le lomiga alpha i le taimi atofaina ina ia mafai ona matou faia ni mafutaga faaleaoaoga mo faiaŹ»oga i le taumafanafana, o ē o le a mafai ona faŹ»aaogaina le siosiomaga i totonu o latou potuaoga i le tautoulu. Sa ou ofo e faŹ»atino ni sprites, e manatua ai loŹ»u taimi i le tusiaina o taŹ»aloga i luga o le TI-99/4. Mo i latou e le masani ai, o se sprite o se mea faitino faŹ»ataŹ»itaŹ»i e lua-vaega e mafai ona gaoioi ma fegalegaleai ma isi elemene o polokalama faakomepiuta. O faŹ»ataŹ»itaŹ»iga o sprites e aofia ai vaŹ»alele, paneta lapopoŹ»a, polo, ma foe.

Na matou faʻatinoina le mea e faʻatatau i le App Inventor i Java, o lea e naʻo le tele o mea i totonu. Talu ai o polo ma sprites e tutusa lava le amio, na ou faia ai se vasega sprite faʻapitoa ma meatotino (fanua) X, Y, Saosaoa (saosaoa) ma Ulutala (faʻatonuga). E tutusa lava a latou metotia mo le suʻeina o feteʻenaʻiga, fiti mai le pito o le lau, ma isi.

O le eseesega tele i le va o le polo ma le sprite o le mea tonu lava e tosoina - o se li'o tumu po'o se raster. Talu ai na ou faʻatinoina muamua sprites, e talafeagai le faʻamaonia o le x- ma le y-faamaopoopo o le tulimanu agavale pito i luga o le mea na tu ai le ata.

O mea sese sili ona maasiasi i laʻu galuega faʻapolokalame (e oʻo mai i le taimi nei)
O le taimi lava na galue ai sprites, na ou filifili ai e mafai ona ou faʻaogaina mea polo i ni tulafono laiti. Na pau lava le faafitauli o loʻo ou uia le auala sili ona faigofie (mai le vaaiga a le tagata faʻatinoina), faʻaalia le x- ma y-faʻamaopoopo o le tulimanu agavale pito i luga o le faʻasologa o le polo.

O mea sese sili ona maasiasi i laʻu galuega faʻapolokalame (e oʻo mai i le taimi nei)
O le mea moni, sa tatau ona faʻaalia le x- ma le y-faamaopoopo o le ogatotonu o le liʻo, e pei ona aʻoaʻoina i soʻo se tusi o le matematika ma soʻo se isi lava punaoa e taʻua ai liʻo.

O mea sese sili ona maasiasi i laʻu galuega faʻapolokalame (e oʻo mai i le taimi nei)
E le pei o aŹ»u mea sese ua mavae, e le gata na aŹ»afia ai aŹ»u uo, ae faŹ»apea foŹ»i ma le faitau miliona o tagata faŹ»aoga App Inventor. O le to'atele oi latou o tamaiti pe fou fo'i i polokalame. Sa tatau ona latou faia le tele o laasaga le talafeagai pe a galulue i talosaga taŹ»itasi o loŹ»o i ai le polo. Afai ou te manatua isi aŹ»u mea sese i le ata, o le mea lea e faŹ»afefe ai aŹ»u e oŹ»o lava i le asō.

Na iu lava ina ou faapipiiina lenei pusa talu ai nei, sefulu tausaga mulimuli ane. "Patched", ae le o le "fixed", aua e pei ona fai mai Joshua Bloch, API e faavavau. Le mafai ona faia ni suiga e ono a'afia ai polokalame o iai, na matou fa'aopoopoina le meatotino OriginAtCenter fa'atasi ai ma le tau sese i polokalama tuai ma fa'amaoni i polokalama uma i le lumana'i. E mafai e tagata faʻaoga ona fai se fesili talafeagai: o ai na mafaufau e tuʻu le amataga i se isi mea nai lo le ogatotonu. O ai? I se tasi tagata fai polokalame sa paie e fai se API masani i le sefulu tausaga talu ai.

Lesona A'oa'oina

A e galue i APIs (lea e toetoe lava a fai polokalame uma i nisi taimi), e tatau ona e mulimuli i fautuaga sili o loʻo faʻamatalaina i le vitio a Joshua Bloch "Fa'afefea ona fai se API lelei ma pe aisea e taua tele ai"poʻo i lenei lisi puupuu:

  • E mafai e se API ona aumaia ia te oe le manuia tele ma le afaina tele.. O se API lelei e faŹ»atupuina tagata faŹ»atau. O le leaga e avea ma au miti taufaafefe e faavavau.
  • API lautele, pei o taimane, e tumau e faavavau. Tuuina atu mea uma: o le a le toe i ai lava se isi avanoa e fai ai mea uma sa'o.
  • O otootoga API e tatau ona pupuu - tasi le itulau ma saini vasega ma metotia ma faŹ»amatalaga, e le sili atu i se laina. Ole mea lea ole a fa'ataga ai oe e faigofie ona toe fa'atulagaina le API pe a le atoatoa ile taimi muamua.
  • Fa'amatala tulaga fa'aogaaŹ»o leŹ»i faŹ»atinoina le API poŹ»o le galue foi i lona faŹ»amatalaga. O le auala lea e te aloese ai mai le faŹ»atinoina ma le faŹ»amaonia o se API e le faŹ»aogaina atoatoa.

Afai na ou tusia se faʻamatalaga puupuu ma se tusitusiga faʻapitoa, e foliga mai o le a ou iloa le mea sese ma faʻasaʻo. Afai e leai, e mautinoa lava e faia e se tasi o aʻu paaga. So'o se fa'ai'uga e o'o tele i'uga e mana'omia ona mafaufau i ai mo le itiiti ifo i le aso (e fa'atatau e le gata i polokalame).

O le ulutala o le tala a Richard Gabriel, "Leaga e Sili Atu," e faasino i le lelei e alu i le muamua i le maketi-e tusa lava pe i ai se oloa le atoatoa-ae faʻaalu e se tasi le faʻavavau e tulituliloa le lelei atoatoa. I le mafaufau i le sprite code, ua ou iloa ai ou te le'i tau tusia nisi code ina ia sa'o. Po o le a lava se tala a se tasi, sa ou matua sese lava.

iʻuga

E faia e le au fai polokalame ni mea sese i aso uma, pe o le tusiaina o le code buggy pe le manaʻo e faʻataʻitaʻi se mea e faʻaleleia ai lo latou tomai ma le gaosiga. Ioe, e mafai ona avea oe ma se fai polokalame e aunoa ma le faia o ni mea sese matuia e pei ona ou faia. Ae e le mafai ona avea ma se fai polokalame lelei e aunoa ma le iloaina o au mea sese ma aʻoaʻo mai ai.

Ou te feiloaʻi i taimi uma tamaiti aʻoga e lagona le tele naua o latou mea sese ma o le mea lea e le vavae ese ai mo polokalame. Ou te iloa le taatele o le ma'i pepelo i le IT. Ou te faʻamoemoe o le a e aʻoaʻoina lesona na ou lisiina - ae ia manatua le mea autu: e tofu i tatou ma mea sese - maasiasi, malie, leaga. O le a ou ofo ma le fiafia pe afai i le lumanaʻi e le lava aʻu mea e faʻaauau ai le tusiga.

puna: www.habr.com

FaŹ»atau talimalo faŹ»atuatuaina mo nofoaga ma DDoS puipuiga, VPS VDS servers šŸ”„ Fa'atau le 'upega tafa'ilagi talimalo fa'atuatuaina ma le puipuiga DDoS, 'au'aunaga VPS VDS | ProHoster