Gå til innhold

ProgrammeringsBaren! Småprat, om det du elsker!


Anbefalte innlegg

Videoannonse
Annonse

Hva er læringsverdien i å lese "bra" kode? Jeg tenker på kremen av kode. Trekker litt linjer ved at folk som vil bli forfattere fanger opp inspirasjon/teknikker ved å lese ting fra forfattere som Huxley, Hamsun, T. S Elliot etc ...

 

Og hvor finner man slik kode, som ikke er alt for STORT. Jeg kan sitte endel timer, men ikke flere år. :) Noen som kjenner til noe fett? Begynner å bli litt lei av typisk lærebok eksempel kode på en side eller to.

Endret av mushin
  • Liker 1
Lenke til kommentar

Partall:

if (i%2==0){ return true }

else {return false} //oddetall

 

Gjennomsnitt er jo bare og legge sammen de aktuelle verdiene, så hvis det er verdier i et array f.eks kan du bare bruke en for-løkke som legger til alle verdiene og deler på antall verdier.

 

F.eks.

int sum = 0;

for (int i=0; i<SIZE_OF_ARRAY; i++){

sum += array;

}

double gjennomsnitt = sum/SIZE_OF_ARRAY

Lenke til kommentar

Hva er læringsverdien i å lese "bra" kode?

Et godt spørsmål. Og svaret er: Det gir STOR verdi å lese "bra" kode!

 

Problemet er, som du nok har skjønt, å finne den. Heldigvis gir det også verdi å lese "sånn passe bra" kode. Å se hva andre gjør er nyttig sålenge man tenker kritisk.

 

Jeg pleier å surfe rundt på github og lese litt på prosjekter som ser interessante ut. Hvis du søker på github etter språket ditt, f.eks. Python, får du opp en liste over de mest populære open source prosjektene som bruker språket. Det er et bra sted å begynne.

 

Å bare lese koden kan ofte være litt vanskelig. Bedre er det om du cloner repoen (github har god dokumentasjon på hva du trenger å gjøre), og så skjører koden på din egen maskin. Deretter kan du forsøke å gjøre små endringer. Dette øker graden av læring og forståelse ganske betraktelig.

Endret av torbjørn marø
Lenke til kommentar

Å bare lese koden kan ofte være litt vanskelig. Bedre er det om du cloner repoen (github har god dokumentasjon på hva du trenger å gjøre), og så skjører koden på din egen maskin. Deretter kan du forsøke å gjøre små endringer. Dette øker graden av læring og forståelse ganske betraktelig.

Spesielt nyttig for meg ihvertfall er å ta ut enkelte komponenter og forsøke å bruke dem individuelt før en etterpå går direkte inn i koden til dem.

Lenke til kommentar
Gjest Slettet+9871234

Partall:

if (i%2==0){ return true }

else {return false} //oddetall

 

Partall er også alle heltall der det minst signifikante bitet ikke er satt:

 

return !(i & 1);

 

Hvilken rutine er mest robust for eksempel for enormt store tall?

 

Vi kan jo begrense svaret til C.

Lenke til kommentar
Gjest Slettet+9871234

Testet begge eksemplene i gcc, assembleroutput på begge ble identisk.

Det skulle vært interessant å se om C rutinene produserte identisk ASM kode:

 

http://www.oopschool.com/phpBB3/viewtopic.php?f=5&t=159

 

Jeg har imidlertid ikke tid til å se på dette nå. Jeg sitter og leser en bok om jQuery og WordPress 3.0. Titter innom her når jeg tar en pause.

 

Redigert:

Testet begge eksemplene i gcc, assembleroutput på begge ble identisk.

Slik er det når man er opptatt av å høre sin egen stemme :ermm: . Jeg overså ditt svar. :thumbup:

 

Redigert skrivefeil etter svar.

Endret av Slettet+9871234
Lenke til kommentar

Partall:

if (i%2==0){ return true }

else {return false} //oddetall

 

Kompilatoren forenkler vel helt sikkert dette uansett, men blir ikke dette akkurat det samme som bare return (i % 2 == 0);?

 

Ja, men jeg tenkte at det kunne være greit å vise hva som ligger bak :)

Lenke til kommentar

Hva er læringsverdien i å lese "bra" kode?

Et godt spørsmål. Og svaret er: Det gir STOR verdi å lese "bra" kode!

 

Problemet er, som du nok har skjønt, å finne den. Heldigvis gir det også verdi å lese "sånn passe bra" kode. Å se hva andre gjør er nyttig sålenge man tenker kritisk.

 

Jeg pleier å surfe rundt på github og lese litt på prosjekter som ser interessante ut. Hvis du søker på github etter språket ditt, f.eks. Python, får du opp en liste over de mest populære open source prosjektene som bruker språket. Det er et bra sted å begynne.

 

Å bare lese koden kan ofte være litt vanskelig. Bedre er det om du cloner repoen (github har god dokumentasjon på hva du trenger å gjøre), og så skjører koden på din egen maskin. Deretter kan du forsøke å gjøre små endringer. Dette øker graden av læring og forståelse ganske betraktelig.

 

Fett. Skal sjekke ut! Leste at det å lese koden til et txt-baset spill som heter Zork også er turn-on for visse programmere. Kodet i en LISP variant dog, og jeg kan ikke LISP. :p

 

Er LISP et språk som er verdt å lære seg? Udatert? Browset gjennom et par sider i Structure and Intepretation of Computer Programs, den bruker vell LISP for å illustrere eksempeler om jeg husker rett. Boken ressonerte veeeldig med meg.

Lenke til kommentar

Hva er læringsverdien i å lese "bra" kode?

Et godt spørsmål. Og svaret er: Det gir STOR verdi å lese "bra" kode!

 

Problemet er, som du nok har skjønt, å finne den. Heldigvis gir det også verdi å lese "sånn passe bra" kode. Å se hva andre gjør er nyttig sålenge man tenker kritisk.

 

Jeg pleier å surfe rundt på github og lese litt på prosjekter som ser interessante ut. Hvis du søker på github etter språket ditt, f.eks. Python, får du opp en liste over de mest populære open source prosjektene som bruker språket. Det er et bra sted å begynne.

 

Å bare lese koden kan ofte være litt vanskelig. Bedre er det om du cloner repoen (github har god dokumentasjon på hva du trenger å gjøre), og så skjører koden på din egen maskin. Deretter kan du forsøke å gjøre små endringer. Dette øker graden av læring og forståelse ganske betraktelig.

 

Fett. Skal sjekke ut! Leste at det å lese koden til et txt-baset spill som heter Zork også er turn-on for visse programmere. Kodet i en LISP variant dog, og jeg kan ikke LISP. :p

 

Er LISP et språk som er verdt å lære seg? Udatert? Browset gjennom et par sider i Structure and Intepretation of Computer Programs, den bruker vell LISP for å illustrere eksempeler om jeg husker rett. Boken ressonerte veeeldig med meg.

 

Jeg skulle til å anbefale deg denne i går! Men var ikke sikker på om det var noe sånt du var ute etter (pga. tiden du har tilgjengelig.)

Jeg har i alle fall lært utrolig mye av SICP, og det meste har egentlig med hvordan man tenker å gjøre, ikke så mye med Scheme / Lisp i seg selv. Jeg vil nesten si at den boka har endret hvordan jeg tenker når jeg programmerer. Den tar for seg mange forskjellige paradigmer og måter å legge opp koden på, som objektorientering (ja, det går an å tenke objektorientert i et språk som i utgangspunktet mangler dette, i alle fall i Lisp), lazy evaluation, streams, bare for å nevne noe. Det er hele tiden et fokus på abstraksjon og organisering av programmene.

 

Når det gjelder Scheme som språk, så er dette egentlig nokså enkelt å lære seg. (Andre Lisper som Common Lisp er verre å komme i gang med pga. språkets størrelse.) Syntaksen til Scheme er kanskje den enkleste man kan finne. Alle uttrykk består av lister der første element forventes å evaluere til en prosedyre. En liste evalueres ved å evaluere hvert element og deretter kalle første element med resten av elementene som argumenter. Dette, i tillegg til spesialoperatorene som LET, COND, IF, LAMBDA osv. som har noe annerledes oppførsel, er egentlig alt man trenger å kunne, i alle fall i starten.

 

MIT har forresten lagt ut forelesningene de hadde i dette faget i 1986

. De er utrolig interessante å følge med på (men dessverre elendig lyd i noen av dem :().

 

Hmm, kanskje vi skulle hatt en Lisp-tråd her? :p

Endret av Jaffe
Lenke til kommentar

Er LISP et språk som er verdt å lære seg? Udatert? Browset gjennom et par sider i Structure and Intepretation of Computer Programs, den bruker vell LISP for å illustrere eksempeler om jeg husker rett. Boken ressonerte veeeldig med meg.

Tar du en titt på bloggen min så ser du fort hva jeg mener om den saken. Du kan jo begynne med er lisp bedre enn andre programmeringsspråk?, og så lisp for dummies for en enkel intro til syntaksen.

 

Lisp er det nest eldste programmeirngsspråket som fortsatt er i bruk, kun slått av Fortran. Og nå, etter så mange år, kan det se ut som om Lisp kan få en storhetstid; interessen for Clojure, som er en helt ny Lisp på JVM-plattformen, er nemlig raskt økende. Jeg er i alle fall helfrelst!

Lenke til kommentar

Takk for respons Jaffe. Ja, var et eller annet som bare snakket til meg i den boka, ble fasinert under lesingen, og det er godt tegn! :)

 

torbjørn marø: Overbevisende "argument", fikk lyst til å slenge meg på en LISP dialekt og leke litt. Fet blogg foresten, skal leses.

 

 

Edit: Snublet over

. ;D Endret av mushin
Lenke til kommentar

Har hatt spillprosjekt i Java på skolen, og jeg valgte å lage en Tetris-klone. Da den var ferdig hadde jeg en objektorientert struktur som gjorde at jeg bare kunne arve hovedklassen og overskrive noen få funksjoner, så fikk jeg nye moduser.

 

Så laget en modus der de plasserte brikkene looper igjennom alle fargene før de blir usynlige, noe som gjør at man må huske hvor alt er plassert.

 

Hadde vært gøy om noen ville prøvd og kommentert. :)

http://folk.ntnu.no/matskrug/Hexatris.jar

 

Vanskeligste var å få til gode kontroller.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...