Malaking Mga Salita o Parirala sa Programming

Pocket ProtectorNagtatrabaho kasama ang ilang mga pambihirang programmer, madalas akong napupunta sa mga pagpupulong kasama ang mga arkitekto, lead at developer na (sa palagay ko) ay mahilig magtapon ng ilang malalaking salita o parirala doon upang subukan at takutin ang ano sa mga Product Manager o kanilang mga kliyente.

Isa ito sa mga bagay na nais gawin ng mga programmer. Narito ang sampu sa kanila na may isang napaka-simpleng paglalarawan (na walang alinlangan na igagalit ang galit ng mga developer sa lahat ng dako habang tinatapik ko ang kanilang terminolohiya hanggang sa mamatay ang aking mga simpleng talinghaga sa kotse):

  1. Abstraction - kumukuha ito ng isang mahirap na proseso o pag-andar at karaniwang binabagsak ito nang lohikal… alinman sa pamamagitan ng hierarchy (Ang A ay kabilang sa B, B ay kabilang sa C, atbp.) O sa pamamagitan ng tampok o pag-andar (kulay, laki, bigat, atbp.). Ginagawa ng Abstraction na mas madali ang pag-program na nakatuon sa object sa pamamagitan ng pag-oorganisa ng pagpapaandar nang lohikal. Upang maitayo ang aking kotse, bumubuo ako ng isang frame, isang engine, at isang katawan nang hiwalay.
  2. Deprecation - nangangahulugan ito na mayroong ilang mga lumang code sa system na maaaring manatili ngunit kailangan ng phased out. Kapag ang code ay hindi na ginagamit, ang mga programmer ay hindi sanggunian ang code o gumamit ng mas bagong code hanggang ang lahat ng mga sanggunian ay nawala sa luma, sa oras na dapat itong alisin. Minsan, kung ito ay isang tampok na mawawala, mapapanatili mo ito sandali sa isang babala sa iyong mga gumagamit na mawawala ito. Nakakakuha ako ng isang bagong stereo system na may mga bagong kable ngunit iniiwan ko ang dating mga kable at hindi ito ginagamit.
  3. Encapsulation - ito ang proseso ng pag-aayos ng iyong mga pagpapaandar sa programa sa loob ng isang magulang kapag ang pag-andar ay hindi maabot sa anumang iba pang mga bahagi ng system. Kung mayroon kang milyun-milyong mga pag-andar, nais mong magkaroon sila ng mahusay na kaayusan at paggana sa loob ng mga lugar na pinapatakbo nila kaysa sa pagkakaroon ng mga ito ng magagamit sa buong mundo. Inilagay ko ang mga mekanika ng pagsuporta sa makina sa kompartimento ng engine ... Hindi ko inilalagay ang filter ng langis sa likurang upuan.
  4. Pamana - ito ang kakayahang kunin ang mga pag-aari ng isa pang piraso ng karaniwang code (isang klase) upang magamit muli ito para sa bagong pagpapaandar nang hindi na kinakailangang muling isulat ito. Ang mana ay isa pang mahusay na kasanayan sa pag-unlad na nakatuon sa object. Ang aking upuan sa kotse ay maaaring magamit upang magdala ng isang bata o isang may sapat na gulang - sinumang umupo dito.
  5. Normalisasyon - ito ang pamamaraan ng pag-aayos ng higit na kahusayan ng data sa isang database sa pamamagitan ng pagbuo ng mga sanggunian. Ang isang halimbawa ay kung kailangan kong mag-record ng mga ilaw ng trapiko buong araw… pula, dilaw at berde. Sa halip na isulat ang bawat tala na may pula, dilaw, at berde - Sumusulat ako ng 1, 2, at 3 at pagkatapos ay gumawa ng isa pang mesa kung saan ang 1 = pula, 2 = dilaw at 3 = berde. Sa ganitong paraan ay nagre-record lamang ako ng pula, dilaw at berde nang isang beses. Ang bawat pintuan ng aking sasakyan ay may parehong hawakan ng pinto. Isang hawakan, ginamit sa 4 na magkakaibang lokasyon sa halip na 4 na magkakaibang mga hawakan.
  6. Nauugnay sa Bagay - sa mga modernong wika sa pagprograma, ito ay isang pamamaraan ng disenyo na nagbibigay-daan sa iyo upang sumulat ng tukoy na code sa mga piraso, sa pamamagitan ng pag-andar, at pagkatapos ay muling gamitin ang mga ito. Ang isang halimbawa ay kung nais kong suriin para sa isang wastong itinayo na email address. Maaari kong buuin ang pagpapaandar nang isang beses, at pagkatapos ay gamitin ito kung saan man kailangan ko sa aking aplikasyon. Ang aking sasakyan ay may 18 ″ rims na maaaring magamit sa ibang mga kotse ng pareho o ibang mga tagagawa.
  7. Polymorphism - Ang isang ito ay matigas na ipaliwanag, ngunit karaniwang ito ay ang kakayahang bumuo ng code na maaaring magamit nang pabagu-bago para sa iba pang mga sitwasyon. Sa madaling salita, maaari itong magmana ng natatangi at pabago-bagong pag-andar sa pamamagitan lamang ng paraan ng pagsangguni. Ito ay isang napakahusay na paraan ng pag-unlad. Maaari kong gamitin ang outlet ng kuryente ng aking sasakyan upang singilin ang aking telepono o upang magbigay ng juice sa aking gulong bomba.
  8. Recursion - ito ay isang pamamaraan kung saan mismong ang mga sanggunian ng code. Minsan, ito ay mabisa at sinasadya, ngunit sa iba pang mga oras maaari nitong mapalakas ang pag-spiral ng iyong mga application nang wala sa kontrol. Nag-click ako sa maghanap sa aking kotse stereo at ito loop sa pamamagitan ng mga istasyon ng radyo. Hindi ito natatapos, tuloy-tuloy lang.
  9. Refactoring - ito ang proseso ng muling pagsulat ng code upang mas madaling sundin o maayos nang maayos ngunit hindi kinakailangang magdagdag ng anumang karagdagang pagpapaandar. Binubuo ko ulit ang aking makina.
  10. Server oriented Architecture (SOA) - kumuha ng object oriented na programa at ilapat ito sa malalaking system kung saan maaari kang magkaroon ng buong mga system na gumagawa ng ilang mga pagpapaandar. Maaari kang magkaroon ng isang sistema ng pamamahala ng relasyon sa customer na nagsasalita sa isang sistema ng ecommerce na nagsasalita sa isang sistema ng pagpapadala, atbp. Naghuhugot ako ng isang trailer kasama ang aking sasakyan upang maipadala ang mga item mula sa isang lugar patungo sa isa pa. Gumagamit ako ng isang trailor hitch (XML) upang ikonekta ang mga ito.

Napagtanto kong ang aking mga talinghaga ay hindi laging perpekto sa target. Inaasahan kong nakatulong sila nang kaunti, bagaman!

Ang ilang payo kapag naririnig mo ang mga salitang ito sa iyong susunod na pagpupulong kasama ang isang developer ... huwag tumakbo pabalik sa iyong upuan at tingnan ang mga ito Wikipedia, manonood na sila. Huwag mag-flinch, umatake sila. Narito kung ano ang gagawin ... pag-isipan ang window na parang nasa malalim kang pag-iisip at pagkatapos ay tumingin pabalik sa isang mausisa na hitsura o gasgas ang iyong baba. Hintaying sundin nila ang kanilang deklarasyon na may karagdagang impormasyon.

... Nanonood sila.

8 Comments

  1. 1

    LOL talagang ipinako mo ito Doug 🙂 Sinusubukan mo ba kaming mailayo sa negosyo? Alam mo na sumpain namin ang bangko sa mga konseptong iyon na hindi naiintindihan at samakatuwid ay ang aming paraan sa mga kliyente. Ngayon ay kailangan namin upang malaman ang isang paraan upang pumutok ang mga ito sa isang paraan sa pamamagitan ng pagsasama-sama ang mga buzzword na iyon upang lumikha ng isang higanteng parirala na maaaring ganito:

    Alam mo bang ang tampok na sinusubukan mong ilagay ay maaaring ma-abstract sa maraming mga bagay na encapsulate ang pag-andar at makipag-usap sa pamamagitan ng isang architecutre na nakatuon sa serbisyo.

  2. 5

    Bilang isang tagabuo ng software maaari kong pahalagahan ang post na ito. Kami ay hindi lahat na masama bagaman 😉 Hindi ko kailanman malalaman ang mga taong may tulad na tekob na teknolohiya 🙂

    Hayaan mo akong subukan at mag-isip ng ilang mga salita para sa iyo ....

Ano sa tingin ninyo?

Ang site na ito ay gumagamit ng Akismet upang mabawasan ang spam. Alamin kung paano naproseso ang data ng iyong komento.