Lästips inför helgen: Think Complexity

För dig som är nyfiken på programspråket Python finns en bra bok kallad Python for Software Design, mer känd under namnet How to Think Like a Computer Scientist.

Boken Python for Software Design.

Tillsammans med Mark Pilgrims Dive Into Python och Dive Into Python3 [1] är den boken nog den bästa Pythonboken på nätet. (Dive Into Python är boken som verkligen fick mig att fastna för Python. Jag läste den över en natt och blev otroligt inspirerad av att börja använda Python. Något jag inte ångrat.)

Författaren till Python for Software Design, har nu gjort en till bok tillgänglig på nätet – Think Complexity.

Think Complexity

Den nya boken handlar inte om Python i sig, utan om algoritmer och datastrukturer. Sökträd, databaser, grafer m.m. och det viktigaste – hur olika algoritmer skalar med storleken på problemet dom används för att lösa. Detta brukar kallas för beräkningsmässig komplexitet, eller bara komplexitet.

Jag har hunnit läsa delar av boken och tycker att den är väl värd att lösa. Samtidigt är det intressant att se hur datastrukturer och algoritmer som arbetar på strukturerna fortfarande är viktiga. Moderna språk som Ruby och Python inkluderar kraftfulla datastrukturer som hashtabeller, listor, databaser som fundamentala datatyper. Och det finns, hävdar jag (det är i alla fall min observation) en tendens att utvecklarna använder de verktyg som finns till buds istället för att fundera igenom vad applikationen/problemet kräver. I de flesta fall blir det dessutom tillräckligt bra och går fort (fortare) att få till en lösning med de inbyggda typerna.

Men genom att känna till andra strukturer – vilka problem dom är bra för att lösa och även hur man kan implementera strukturerna kan verktygslådan utökas. I fallet med Python kan det även vara bra att veta att många datastrukturer finns i Pythons extensiva standardbibliotek. Använder du Python och inte grävt runt i biblioteket har du gjort dig själv en otjänst, det finns otroligt mycket bra att lyfta in i din applikation med ett enkelt import-kommando.

Läs, lär och ha en trevlig helg!
(JoachimS)

Fotnot [1]: Mark Pilgrim har skrivit flera bra böcker i sin Dive Into-serie, bland annat om HTML5 – böcker Mark dessutom gjorde tillgängliga på nätet. I oktober förra året valde Mark plötsligt att ta bort sig själv och sina alster från nätet. Många undrade vad som hänt och ringde även polisen som lyckades hitta Mark välbehållen. Han hade helt enkelt bestämt sig för att han haft nog med Internet. Det finns ett antal speglingar av böckerna, vilket gör att dom ändå går att läsa. Och detta är i linje med de licensvillkor Mark hade satt på sina verk varför jag väljer att peka på dom.

Kommentera

E-postadressen publiceras inte. Obligatoriska fält är märkta *