Citat:
Ursprungligen postat av Droom
Grejen är den att jag har många små matematiska funktioner. Det blir helt enkelt lättare att se vad som händer.
Kör t ex Distance(PointF From, PointF To) (alltså avståndet) och det kan bli rätt mycket kod med några sådana utan dessa små funktioner.
Jag är inte utbildad programmerare... även om jag jobbar som sådan och har vissa kunskaper...
...dock är jag utbildad i matte/fysik (~210 universitetspoäng) och kan förvarna dig om att dessa "små" funktioner kommer bli mycket kostsamma. Jag har t.ex skrivit en fysikmotor på kvantmekanisk nivå.
Några saker man t.ex kan fundera över:
- När det gäller avstånd: räkna inte ut rötter i onödan! Att kvadrera går snabbt, men rotdragning är inte alls lika effektiv. Men tänk på: Det går lika bra att jämföra kvadrater på avstånd som att jämföra avstånden själva.
- Tabulera funktioner! Att interpolera i tabeller kan ofta vara mycket snabbare än att beräkna jobbiga funktioner.
- Ofta stöter man på rent matematiska optimeringsproblem: då lönar det sig ofta att plocka upp en bok i ämnet istället för att hitta på nån egen metod.
- Det finns massor grejer... orkar inte skriva mer...