Апстракција у Питхону

Преглед садржаја
Апстракција у развоју софтвера је веома важна јер нам омогућава да дефинишемо делове кода који раде сами са заједничком сложеношћу, много пута можемо користити апстрактне функције које се односе на толико случајева да их можемо користити кад год желимо.
Ако видимо програме у којима смо можда писали Питхон Пратећи водиче, видимо да су то мали програми са највише 15 до 20 редова, међутим, ако бисмо хтели да напишемо много већи програм, био би велики проблем ако се не бавимо апстракцијом. Запамтите да је врлина програмера у томе што не ради непотребан посао, односно не ради исту ствар два пута или се понавља.
Погледајмо следећи код, он израчунава првих 10 бројева а Фибоначијев низ:
 влакна = [0, 1] за и у опсегу (8): фибс.аппенд (влакна [-2] + влакна [-1]) 

Ово ефективно резултира првих 10 бројева

Шта се дешава ако желимо да корисник дефинише да уместо 10 бројева то је динамичка величина, тада поново условљавамо наш код на следећи начин:
 фибс = [0, 1] нум = инпут ('Колико Фибоначијевих бројева желите?') за и у опсегу (нум-2): фибс.аппенд (фибс [-2] + фибс [-1]) принт фибс 

Засад све изгледа нормално, не видимо никакав технички проблем, међутим постоји проблем филозофије програмирања, на примјер ако желимо то учинити у неколико дијелова програма, морамо све ове редове писати изнова и изнова, то би било оно што називамо непотребним радом. Оно што називамо апстракцијом је краћи код где је оно што се дешава иза изоловано, направљено тако да функционише било где, да бринемо само о томе да добијемо оно што је неопходно за наше услове, апстрактнији начин гледања на претходне кодове би био следећи:
 нум = инпут ('Колико бројева желите?') принт фибс (нум) 

Напоменимо да је то потпуно директно, тражимо унос колико бројева корисник жели, затим одштампамо резултат, што се дешава да смо негде другде дефинисали функцију фибс која нам омогућава да је позовемо кад год желимо, избегавајући потребу да увек изнова радимо петљу израчунавања, чинећи наш програм читљивијим и мање сложеним.
Читљивост је све што развијамо велики програм, важно је и управљање системским ресурсима и ефикасношћу, али како побољшати програм ако га не разумемо док га читамо, на пример овај код:
 паге = довнлоад_паге () фрекс = цомпуте_фрекуенциес (страница) за ворд, фрек у фрекс: принт ворд, фрек 

Читајући га знамо шта ради и шта би требао вратити, ово је апстракција у свом најчишћем стању, како нас методе и функције у овом тренутку не занимају, сада ако ефикасност и управљање ресурсима постану проблематични, једноставно радимо на функцију и програм не би био погођен, па бисмо радили само једном.
Ово је све за овај водич, остало нам је материјала за наставак размишљања и побољшање менталитета програмера, тако да можемо апстраховати наш код и радити много ефикасније.

Ви ће помоћи развој сајта, дељење страницу са пријатељима

wave wave wave wave wave