Allmänna frågor om programmering

Här diskuteras programmering och utveckling
kaapu
Inlägg: 96
Blev medlem: 29 okt 2006, 20:10

Allmänna frågor om programmering

Inlägg av kaapu »

Igår upptäckte jag mitt första programmeringsspråk (python) och har sedan dess lekt runt lite med det. Men nu har det dykt upp lite frågor i skallen på mig som jag gärna skulle vilja ha svar på.  :)

1) Varför borde man lära sig att programmera? Jag menar, vad har man för nytta av det?
Som jag har förstått tar det en väldigt lång tid innan man blir så pass duktig på programmering att man kan göra vettiga program. Tänker inte på småprogram som tex räknar ut bmi etc, utan mer på olika program som kan spela upp musik, kanske webbläsare mm.

2) Det sägs att Linux koden är mycket bättre skriven än Microsofts Windows. Menar man att det är färre rader kod (hur många i så fall?) eller vad är det egentligen man syftar på?

3) Om man har många fria rader i koden (hoppat över rader för att göra det bättre strukturerat) använder programmet då mer resurser av datorn?
Längre kod = Mer dator resurser.      eller?

4)En liten python fråga. Nu när jag skrivit ett finurligt litet program som räknar ut BMI vill jag gärna dela med mig av det. Hur ska jag göra för att mina vänner som använder windows ska kunna ta del av programmet.
Ett alternativ är ju att be dem att installera python på datorn och sedan köra det, men det känns lite för maffigt. Kan man inte bara på ett enkelt sätt göra python filen till en kanske .exe fil?


Kommer säkert komma många fler sådana här frågor. Men till dess är nöjer jag mig med att få svar på dessa.

Tack för mig  :D
Användarvisningsbild
DeepThought
Inlägg: 2769
Blev medlem: 19 dec 2006, 11:07
OS: Arch Linux
Ort: Göteborg

SV: Allmänna frågor om programmering

Inlägg av DeepThought »

Jag kan lite snabbt svara på fråga 3 (och lite på 4, blir det):

Nej, generellt sett så spelar det ingen som helst roll om du har mycket "luft" i din kod. Detta är för att koden du skriver inte kan läsas av datorn utan att först "översättas" till dator-läslig kod. Det är det som sker när du "kompilerar" programmet. Under den processen så läser kompilatorn ditt program och översätter det till maskinläslig kod, och då tar den inte med något alls som inte behövs. Egentligen är den enda skillnaden mellan mycket och litet "luft" i koden hur pass lätt det är för dig att läsa den (ok, du kanske förlorar någon tanig liten byte i hårddiskutrymme för att den extra informationen som finns i din kod tar lite mer plats i källkodsformat, men generellt sätt så brukar man inte bry sig om det ;) eller ja, jag tror faktiskt inte att det är någon annan än obskyra C-programmerare som bryr sig).

Längden på koden spelar inte så stor roll, det handlar mest om hur man har skrivit den. Jag kan ta ett exepel när vi satt och skrev meningslösa program som testade Goldbach-hypotesen för tal upp till ett visst givet tal som användaren matade in. Det första försöket var ca 60 rader kod och tog ungefär en och en halv minut att köra för alla tal upp till 100 miljoner, när vi skrivit om det en del tog det drygt 100 rader kod, men tiden var nere på under 15 sekunder för 100 miljoner. (Nej, Java är inte snabbt :()

Vad gäller den 4e frågan så kan du göra om din kod till maskinläslig kod som går att köra utan att man behöver ha python installerat, men ärligt talat så har jag ingen aning om hur man gör.

Äh, jag är ändå igång, svarar lite på fråga ett också:
Det är roligt! En av de anledningar jag kan se. Om du tänkt läsa någon teknisk utbildning är det också guld värt att kunna lite programmering. En annan aspekt är ju att man lär sig en hel del om datorer, och hur de är uppbyggda, vilket kan vara intressant.
WE WILL ALWAYS BE SO MUCH MORE HUMAN THAN WE WISH TO BE...
Lars
Inlägg: 6191
Blev medlem: 14 jan 2007, 19:31
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Ort: Stockholm

SV: Allmänna frågor om programmering

Inlägg av Lars »

Som sagt, programmering är roligt, det är väl anledning nog? Det är ganska nyttigt också, man lär att tänka logiskt, att metodiskt lösa problem o.s.v., hjärngymnastik helt enkelt, lite grand som matematik (som också är roligt). Sedan kan man tjäna pengar på det också, och det är ju ingen nackdel. Men när man börjar är det viktigast att ha kul.

Om man vill sprida sina färdiga Python-program till Windows-användare kan man använda py2exe, jag tror att t.ex. den officiella bittorrent-klienten använder py2exe.
Användarvisningsbild
Urban Anjar
Inlägg: 7306
Blev medlem: 05 nov 2006, 22:59
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Ort: Vickleby
Kontakt:

SV: Allmänna frågor om programmering

Inlägg av Urban Anjar »

Nyttiga program behöver inte vara tokstora eller superavancerade. Du når rätt snart upp till den nivå där du kan göra enkla men praktiska skript som fixar saker i din dator eller som spottar ut snygga webbsidor.

Att däremot sno ihop ett ordbehandlingsprogram, en vettig webbläsare eller ett avancerat spel är inget för nybörjaren. Det som gärna drar iväg och blir svårt är när man ska ha en massa grafiskt lull-lull.

Vem har förresten sagt att korsord eller sudoko är nyttigt och produktivt. Folk vill helt enkelt göra något som är kul och lagom knepigt, då ligger programmering bra till för en del av oss.

Förr i tiden när datorer var fruktansvärt dyra (och klena när det gällde minne) och programmerare billiga, fanns det anledning att ta bort minsta blankrad och radbrytning ur koden, kanske för att överhuvudtaget få in programmet i datorns minne (been there , done that). Nu är det tvärt om och det värdesätts att koden är lättläst, kommenterad och begriplig, så att du eller någon annan lätt kan fixa buggarna eller anpassa programmet för nya behov lite lätt och smidigt, också efter ett år eller flera.
Ubuntu från början: http://ubuntufranborjan.wordpress.com/
Vill påminna om den här lilla filmen http://video.google.com/videoplay?docid ... 522818645#
Skriv svar

Återgå till "Programmering och webbdesign"