Dideli programavimo žodžiai ar frazės

Kišeninė apsaugaDirbdamas su kai kuriais išskirtiniais programuotojais, dažnai susiduriu su susitikimais su architektais, vadovais ir kūrėjais, kurie (manau) mėgsta išmesti keletą didelių žodžių ar frazių, norėdami išgąsdinti produktų vadybininkus ar jų klientus.

Tai vienas tų dalykų, kuriuos mėgsta daryti programuotojai. Čia yra dešimt jų, kurių aprašymas labai paprastas (tai neabejotinai sukels kūrėjų įniršį visur, nes aš jų mirtį nulaužiu. mano paprastos automobilio metaforos):

  1. Abstrakcija - tam reikalingas sunkus procesas ar funkcija ir iš esmės logiškai suskaidomas pagal hierarchiją (A priklauso B, B priklauso C ir kt.) Arba pagal ypatybę ar funkciją (spalva, dydis, svoris ir kt.). Abstrakcija palengvina objektyvų programavimą, logiškai organizuojant funkcionalumą. Savo automobiliui sukonstruoti rėmą, variklį ir kėbulą atskirai.
  2. Nuvertėjimas - tai reiškia, kad sistemoje yra senas kodas, kuris gali likti, tačiau jį reikia palaipsniui panaikinti. Kai kodas nebenaudojamas, programuotojai nenurodo kodo ir nenaudoja naujesnio kodo, kol visos nuorodos nebėra senos, tuo metu jis turėtų būti pašalintas. Kartais, jei tai nebegaliojanti funkcija, galite kurį laiką ją išsaugoti įspėdami vartotojus, kad ji nebeliks. Gaunu naują stereo sistemą su naujais laidais, bet palieku senus laidus ir jų nenaudoju.
  3. Kapsuliavimas - tai yra jūsų programavimo funkcijų organizavimas tėvų viduje, kai ši funkcija nepasiekiama jokiose kitose sistemos dalyse. Jei turite milijonus funkcijų, norite, kad jos būtų efektyviai organizuotos ir veikiančios tose srityse, kuriose jie veikia, o ne kad jos būtų prieinamos visame pasaulyje. Aš įdėjau variklio atraminę mechaniką į variklio skyrių ... Aš nededu alyvos filtro į galinę sėdynę.
  4. Paveldėjimo - tai galimybė perimti kito bendro kodo (klasės) gabalo savybes, kad nereikėtų jo perrašyti, norint jį pakartotinai naudoti naujam funkcionalumui. Paveldėjimas yra dar viena gera objektyvaus vystymosi praktika. Mano automobilio kėdute galima vežti vaiką ar suaugusįjį - kas joje sėdi.
  5. Normalizavimas - tai būdas organizuoti duomenų efektyvumą duomenų bazėje, kuriant nuorodas. Pavyzdžiui, jei turėčiau visą dieną fiksuoti šviesoforus ... raudoną, geltoną ir žalią. Užuot parašius kiekvieną įrašą raudona, geltona ir žalia spalvomis, aš parašau 1, 2 ir 3, tada darau kitą lentelę, kurioje 1 = raudona, 2 = geltona ir 3 = žalia. Taip raudoną, geltoną ir žalią įrašau tik vieną kartą. Kiekviena mano automobilio durelė turi tą pačią durų rankeną. Viena rankena, naudojama 4 skirtingose ​​vietose, o ne 4 skirtingose ​​rankenose.
  6. Orientuotas į objektą - šiuolaikinėmis programavimo kalbomis tai yra projektavimo metodas, leidžiantis rašyti konkretų kodą dalimis, pagal funkcionalumą, tada juos pakartotinai naudoti. Pavyzdžiui, jei norėčiau patikrinti, ar yra teisingai sukonstruotas el. Pašto adresas. Galėčiau vieną kartą sukurti funkciją ir tada naudoti ją visur, kur man reikia. Mano automobilyje yra 18 colių ratlankiai, kuriuos gali naudoti kiti to paties ar kitų gamintojų automobiliai.
  7. Polimorfizmas - Šį sunku paaiškinti, bet iš esmės tai yra galimybė sukurti kodą, kurį galima dinamiškai naudoti kitose situacijose. Kitaip tariant, jis gali paveldėti unikalų ir dinamišką funkcionalumą paprasčiausiai pagal tai, kaip jis nurodomas. Tai yra labai efektyvi plėtros priemonė. Aš galiu naudoti savo automobilio elektros lizdą, kad galėčiau įkrauti telefoną ar tiekti sultis į padangų siurblį.
  8. Rekursija - tai metodas, kai kodas nurodo save. Kartais tai yra efektyvu ir apgalvota, tačiau kitais atvejais tai gali sukelti jūsų programų sukontroliavimą. Spusteliu ieškoti savo stereofoninės įrangos ir ji peršoka radijo stotis. Tai niekada nebaigia, tik tęsiasi.
  9. Refaktoriai - tai yra kodo perrašymo procesas, siekiant palengvinti jo sekimą ar tvarkymą, bet nebūtinai pridėti papildomų funkcijų. Aš atstatau savo variklį.
  10. Į serverį orientuota architektūra (SOA) - Paimkite į objektą orientuotą programavimą ir pritaikykite jį didelėms sistemoms, kuriose galite turėti visas sistemas, kurios atlieka tam tikras funkcijas. Galbūt turite santykių su klientais valdymo sistemą, kalbančią apie el. Prekybos sistemą, kuri kalba su siuntimo sistema ir t. T. Traukiu priekabą su savo automobiliu, kad galėčiau gabenti daiktus iš vienos vietos į kitą. Joms sujungti naudoju „trailor“ prikabinimo įtaisą (XML).

Suprantu, kad mano metaforos ne visada buvo tikslios. Vis dėlto tikiuosi, kad jie šiek tiek padėjo!

Keletas patarimų, kai išgirsite šiuos žodžius per kitą susitikimą su kūrėju ... nebėkite atgal į savo vietą ir ieškokite jų ', jie stebės. Neišsipliesk, jie puls. Štai ką daryti ... apmąstykite langą taip, tarsi būtumėte giliai pagalvojęs, o tada žvilgsniu atsigręžkite atgal arba subraižykite smakrą. Palaukite, kol jie pateiks daugiau informacijos apie deklaraciją.

... Jie stebi.

8 komentarai

  1. 1

    LOL tu tikrai prikalei Doug 🙂 Ar bandai mus išstumti iš verslo? Velniškai gerai žinai, kad mes suprantame, jog tos sąvokos nėra suprantamos ir todėl einame su klientais. Dabar turime išsiaiškinti, kaip juos papūsti derinant tuos buzzwords sukurti vieną milžinišką frazę, kuri gali būti tokia:

    Gerai, jūs žinote, kad funkciją, kurią bandote įdėti, galima nutraukti keliems objektams, kurie apima funkcionalumą ir bendrauja per paslaugas orientuotą architektą.

  2. 5

    Būdamas programinės įrangos kūrėjas galiu įvertinti šį įrašą. Vis dėlto mums ne viskas taip blogai 😉 Niekada nepamirščiau žmonių su tokia techno čiurlenimu 🙂

    Leisk man pabandyti sugalvoti dar keletą žodžių tau.

Ką manote?

Ši svetainė naudoja "Akismet", kad sumažintų šlamštą. Sužinokite, kaip apdorojamas jūsų komentaras.