Абстракция в Python

Съдържание
Абстракцията в разработката на софтуер е доста важна, тъй като ни позволява да дефинираме парчета код, които работят самостоятелно със споделена сложност, много пъти можем да използваме абстрактни функции, които се прилагат за толкова много случаи, че можем да ги използваме, когато пожелаем.
Ако видим програмите, в които може да сме написали Python Следвайки уроците, виждаме, че това са малки програми с максимум 15 до 20 реда, но ако искаме да напишем много по -голяма програма, би бил голям проблем, ако не се справим с абстракцията. Не забравяйте, че добродетелта на програмиста е, че той не върши ненужна работа, тоест не работи едно и също нещо два пъти или се повтаря.
Нека видим следния код, той изчислява първите 10 числа на a Последователност на Фибоначи:
 fibs = [0, 1] за i в обхвата (8): fibs.append (fibs [-2] + fibs [-1]) 

Това ефективно води до първите 10 числа

Какво се случва, ако искаме потребителят да дефинира, че вместо да е 10 числа, това е динамично количество, тогава ние отново обуславяме нашия код, както следва:
 fibs = [0, 1] num = input ('Колко числа на Фибоначи искате?') за i в диапазона (num-2): fibs.append (fibs [-2] + fibs [-1]) print fibs 

Засега всичко изглежда нормално, не виждаме никакви технически проблеми, но има проблем с философията на програмирането, например, ако искаме да направим това в няколко части на програма, трябва да запишем всички тези редове отново и отново, това би било това, което наричаме ненужна работа. Това, което наричаме абстракция, е по -кратък код, където това, което се случва зад, е изолирано, направено по такъв начин, че да работи навсякъде, че се тревожим само за това, което е необходимо за нашите условия, по -абстрактен начин да видим предишните кодове би бил следният:
 num = input ('Колко числа искате?') print fibs (num) 

Нека отбележим, че е напълно директно, искаме въвеждане на колко числа потребителят иска, след което отпечатваме резултат, което се случва, че сме дефинирали функция fibs някъде другаде, която ни позволява да я извикваме, когато пожелаем, избягвайки необходимостта да правим цикъла на изчисление отново и отново, правейки нашата програма по -четлива и по -малко сложна.
Читаемостта е всичко, когато разработваме голяма програма, управлението на системните ресурси и ефективността също са важни, но как да подобрим програма, ако не я разбираме, когато я четем, например този код:
 page = download_page () freqs = compute_frequencies (страница) за word, freq в freqs: print word, freq 

Когато го четем, ние знаем какво прави и какво трябва да върне, това е абстракция в най -чистото си състояние, как методите и функциите работят на този етап не ни интересува, сега ако ефективността и управлението на ресурсите станат проблематични, ние просто работим за функция и програмата няма да бъде засегната, така че ще работим само веднъж.
Това е всичко за този урок, остава ни материал, за да продължим да мислим и да подобрим манталитета си на програмиста, така че да можем да абстрахираме кода си и да работим много по -ефективно.

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave