Abstrakce v Pythonu

Obsah
Abstrakce ve vývoji softwaru je velmi důležitá, protože nám umožňuje definovat části kódu, které fungují samy se sdílenou složitostí, mnohokrát můžeme použít abstraktní funkce, které platí pro tolik případů, že je můžeme použít, kdykoli chceme.
Pokud vidíme programy, ve kterých jsme možná psali Krajta Po tutoriálech vidíme, že se jedná o malé programy s maximálně 15 až 20 řádky, nicméně pokud bychom chtěli napsat mnohem větší program, byl by velký problém, kdybychom nezvládli abstrakci. Pamatujte, že ctností programátora je, že nedělá zbytečnou práci, to znamená, že nepracuje dvakrát totéž nebo se neopakuje.
Podívejme se na následující kód, který vypočítá prvních 10 čísel a Fibonacciho posloupnost:
 fibs = [0, 1] pro i v rozsahu (8): fibs.append (fibs [-2] + fibs [-1]) 

Výsledkem je prvních 10 čísel

Nyní, co se stane, pokud chceme, aby uživatel definoval, že místo 10 čísel je to dynamická veličina, pak náš kód upravíme následovně:
 fibs = [0, 1] num = vstup ('Kolik Fibonacciho čísel chcete?') pro i v rozsahu (num-2): fibs.append (fibs [-2] + fibs [-1]) print fibs 

Zatím vše vypadá normálně, nevidíme žádný technický problém, nicméně je zde problém s filozofií programování, například pokud to chceme udělat v několika částech programu, musíme napsat všechny tyto řádky znovu a znovu, to by bylo čemu říkáme zbytečná práce. To, čemu říkáme abstrakce, je kratší kód, kde je to, co se děje za ním, izolováno, vytvořeno takovým způsobem, že funguje kdekoli, že se staráme pouze o získání toho, co je pro naše podmínky nezbytné, abstraktnější způsob, jak vidět předchozí kódy, by byl tento:
 num = vstup ('Kolik čísel chcete?') print fibs (num) 

Všimněme si, že je to zcela přímé, požádáme o zadání počtu čísel, které chce uživatel, a poté vytiskneme výsledek, přičemž se stane, že jsme definovali funkci fibs někde jinde, což nám umožňuje ji kdykoli vyvolat, čímž se vyhneme potřebě provádět smyčku výpočtu znovu a znovu, aby byl náš program čitelnější a méně složitý.
Čitelnost je vším, když vyvíjíme velký program, důležitá je také správa systémových prostředků a efektivita, ale jak program vylepšit, pokud mu při čtení nerozumíme, například tento kód:
 page = download_page () freqs = compute_frequencies (page) for word, freq in freqs: print word, freq 

Při jeho čtení víme, co dělá a co by mělo vracet, to je abstrakce v nejčistším stavu, jak metody a funkce v tomto bodě fungují, nás nezajímá, nyní, pokud se efektivita a správa zdrojů stanou problematickými, jednoduše pracujeme na funkce a program by nebyl ovlivněn, takže bychom pracovali pouze jednou.
To je vše pro tento tutoriál, zbývá nám materiál na pokračování v myšlení a zlepšení mentality programátorů, abychom mohli abstrahovat náš kód a pracovat mnohem efektivněji.

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave