Sökes: Programmeringsspråk att lära sig!

Permalänk
Medlem

"Många rekommenderar säkert C som är "basen" enligt många, men många menar också att detta språk är bloated."
C bloated? Uh...

Och f.ö. kan du ju skriva javaprogrammet på bara en rad också
class Hello { public static void main (String[] args) { System.out.println ("Hello, world."); } }

Visa signatur

I just love the fact that there is a global integer variable named 'i'. Just think, you will never need to declare your loop variable again!
To avoid collisions where a loop that uses 'i' calls another function that loops with 'i', be sure to stack 'i' and restore it when your function exits.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Bombur
*snip*

Intressant om man vill skriva bara "text så funkar inte detta print '"text" utan man måste i stället skriva: *snip*

ja, det torde ju vara helt jäkla uppenbart att print '"text" inte funkar. du börjar ju strängen med enkelfnutt och försöker avsluta den med dubbelfnutt!

Visa signatur

The power of GNU compiles you!
"Often statistics are used as a drunken man uses lampposts -- for support rather than illumination."

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Myris
"Många rekommenderar säkert C som är "basen" enligt många, men många menar också att detta språk är bloated."
C bloated? Uh...

Och f.ö. kan du ju skriva javaprogrammet på bara en rad också
class Hello { public static void main (String[] args) { System.out.println ("Hello, world."); } }

Ändå krångligare. Man brukar ej skriva sådär.

Citat:

Ursprungligen inskrivet av kode
ja, det torde ju vara helt jäkla uppenbart att print '"text" inte funkar. du börjar ju strängen med enkelfnutt och försöker avsluta den med dubbelfnutt!

Ja, men det var jättemycket du tillförde tråden genom att gnälla. Skrev fel föressten, menade print ""text'.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Bombur
Ja, men det var jättemycket du tillförde tråden genom att gnälla. Skrev fel föressten, menade print ""text'.

... och det fungerar inte heller, av samma uppenbara skäl. eller iaf ett snarliggande; du har tomma strängen, en variabel som förmodligen inte finns (inte i sig fel i ett dynamiskt typat språk, förvisso), och påbörjar en ny sträng som du inte avslutar.

Visa signatur

The power of GNU compiles you!
"Often statistics are used as a drunken man uses lampposts -- for support rather than illumination."

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av kode
... och det fungerar inte heller, av samma uppenbara skäl. eller iaf ett snarliggande; du har tomma strängen, en variabel som förmodligen inte finns (inte i sig fel i ett dynamiskt typat språk, förvisso), och påbörjar en ny sträng som du inte avslutar.

Jag vet att det inte funkar, men det var jag tänkte skriva. Aja missförstånd. Strunt samma.

superchu: dårå? Om du inte vet det så - frågar man inte, lär man sig inte. Är man tyst och inte frågar lär man sig mindre. Detta forum är till för att fråga, speciellt gör man det i början då man är en nybörjare.

Det du skrivit har redan framgått tidigare i tråden.

Sen kan väl vem som helst börja programmera? Snickare Lars 45 kan göra det om han vill. Dom flesta frågar väl i början om man inte är en fegis. För du tror säkert man visar sig "svag" om man frågar så simpla saker i början.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av superchu
Bombur: Det intressanta är ju att du inte klarade av det. Trots att det framgått
så tydligt i tråden,

Klarade inte av vad? Jag klarade visst av det. Jag förstod att det var så direkt när jag sett alternativen. Jag skrev en errorkod bara för att visa (för mig) och andra att detta inte funkade och i stället dom andra sätten.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av superchu
Ganska självklart att print ""text' inte fungerar. Men tack för upplysningen iaf!

Ja det är ganska självklart, men ville bara skriva det.

Permalänk
Medlem

Jag vet inte om det här har framgått, men:

Citat:

Ursprungligen inskrivet av Bombur

>>> print "\"text\" File "<stdin>", line 1 print "\"text\" ^ SyntaxError: EOL while scanning single-quoted string

Notera att jag skrev "\"text\"", inte "\"text\". \" kallas för att escapa citattecken så de kan skrivas ut om man har dem mellan dubbla citattecken.

Citat:

Intressant om man vill skriva bara "text så funkar inte detta print '"text" utan man måste i stället skriva:

print '"print'

Eller "\"text" givetvis..

"\"text\"" # "text" "\"text" # "text '"text' # "text '\"text\"' # \"text\" '\\'text' # 'text

Edit: fan för swec och \

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Akira
Jag vet inte om det här har framgått, men:

Notera att jag skrev "\"text\"", inte "\"text\". \" kallas för att escapa citattecken så de kan skrivas ut om man har dem mellan dubbla citattecken.

Eller "\"text" givetvis..

"\"text\"" # "text" "\"text" # "text '"text' # "text '\"text\"' # \"text\" '\\'text' # 'text

Edit: fan för swec och \

Aha, okey. My apologies.

Permalänk
Medlem

Bara så du vet, det är inte så att du aldrig kommer kunna lära dig ett annat språk efter att börjat med något, elelr att du kommer glömma det första när du börjat lära dig det andra eller tredje. Ju fler du kan desto lättare blir det att lära sig fler, och desto bättre kommer du bli på programmering.

Sen är jag rätt säker på (rätta mig om jag har fel) att enda skillnaden på enkelfnuttar och dubbelfnuttar är att man ska slippa \.

Dvs
print "That apple's color is not as pretty as my banana"
eller
print 'He said "hello".'

Trippelfnuttar kan användas om man har en lång sträng men inte vill dela upp den:

print """Trippelfnuttar kan
användas om man
har en lång sträng men inte vill
dela upp den."""

Visa signatur

Min hemsida: http://www.srekel.net
Pocket Task Force: http://ptf.srekel.net
Kaka e gott! http://kaka.srekel.net

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Bombur
Jag har valt Python och redan skrivit mitt första program, så klart, Hello World! Underbart enkelt och avancerat programmeringsspråk! Älskar det!!

Kolla vad lätt man skriver Hello World i Python jämfört med tex C++ och Java:

Python:

print "Hello, World!"

LOC (Lines Of Code): 1

C++:

#include <iostream.h> void main () { cout << "Hello, world." << endl; }

LOC: 5

Java:

class Hello { public static void main (String[] args) { System.out.println ("Hello, world."); } }

LOC: 4

Vinnare: Python (1 LOC), Java (4 LOC), C++ (5 LOC)
Summarium: Python är helt klart mest logiskt och enklast. Roligt är det också!

PS. I början fatta jag inte varför alla tyckte Textmate är så bra, men oj oj, älskar Textmate, kunna köra script så lätt!

Föressten någon som vet hur man navigerar (till desktop tex) i Mac OS X terminalen? Alltså navigera tillbaka till desktop från en folder.

Fråga: Jag har skrivit ett script:

print 1+1 print"is what 1 plus 1 is"

där "is what 1 plus 1 is" hamnar på raden under. Jag funderar på hur jag kan få dom på samma rad. Jag provade bara klistra över den men då blev det syntax error. Några förslag?

Hur kör man Python Shell (Python Prompt) i Mac OS X terminalen eller Texmate eller i huvudtaget?

Python må kanske vara bra, men känns konstigt att säga att det är bättre än dom andra språken för att det blir mindre kod när man skriver ett hello world program :).

I lisp blir det t.ex. också en rad:

(princ "hello world")

Hur enkel utmatning är i språket speglar ju knappast hur logiskt och enkelt det är

Visa signatur

Intel Core i7 920, Gigabyte GA-EX58-UD5, 6x2 GB Corsair XMS3 Twin3X DDR3 1333 MHz, XFX GeForce GTX 280 1 GB, Gigabyte GeForce 8600 GT 512 MB, Corsair TX650 650W
NileCity 105,6 Playlist

Permalänk
Medlem

Först: Tips på språk att lära sig koda i - Python och Ruby. Lite eller väldigt enkel syntax, man lär sig lösa problem.

Sedan: När du lärt dig problemlösning kan du börja titta på olika språk med olika paradigmer och olika användningsomräden. Tips här är C, lisp/scheme, haskell. Eller varför inte Io?

Visa signatur

void@qnet
teeworlds, stålverk80, evil schemer, c, c++
Languages shape the way we think, or don't.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av raaaz
Python må kanske vara bra, men känns konstigt att säga att det är bättre än dom andra språken för att det blir mindre kod när man skriver ett hello world program :).

I lisp blir det t.ex. också en rad:

(princ "hello world")

Hur enkel utmatning är i språket speglar ju knappast hur logiskt och enkelt det är

Det är ofta bra att ta Hello World som exempel då det visar hur språket fungerar. Högst logiskt hur man gör ett print statement..

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Bombur
Det är ofta bra att ta Hello World som exempel då det visar hur språket fungerar. Högst logiskt hur man gör ett print statement..

Det visar ju väldigt sällan hur språket fungerar, snarare hur just utmatning fungerar i språket.
Vet man att hello world i lisp skrivs

(princ "hello world")

har man fortfarande ingen aning om hur själva språket fungerar. I annat fall borde man direkt utifrån den raden veta hur lisp fungerar och det gör man nog inte iallafall skulle inte jag få ut det.

EDIT: kan ju förövrigt rekommendera att du provar på lisp då man lär sig väldigt mkt när man får programmera funktionellt med rekursion istället för imperativt som man oftast gör annars.

Visa signatur

Intel Core i7 920, Gigabyte GA-EX58-UD5, 6x2 GB Corsair XMS3 Twin3X DDR3 1333 MHz, XFX GeForce GTX 280 1 GB, Gigabyte GeForce 8600 GT 512 MB, Corsair TX650 650W
NileCity 105,6 Playlist

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Bombur
Det är ofta bra att ta Hello World som exempel då det visar hur språket fungerar. Högst logiskt hur man gör ett print statement..

Du kan ju inte allvarligt tro att hello world speglar språket så jäkla mycket. Hur kommer det sig att du vet så mycket utan att kunna ett enda språk egentligen?

Visa signatur

Brass knuckles and a 2x4

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Bombur
Det är ofta bra att ta Hello World som exempel då det visar hur språket fungerar. Högst logiskt hur man gör ett print statement..

Visst, men det visar bara en liten del av språken och vad som skiljer dom åt. Lite som att jämföra bilar genom att mäta hur jobbigt det är att gå in genom bildörren, sätta sig och vrida om nyckeln i tändningen.

Ok, det var kanske ingen jättebra jämförelse.. men programspråk har ganska många dimensioner som måste jämföras mot varandra för att man ska lista ut vilket som passar bäst för den uppgift man ska lösa.

Visa signatur

Min hemsida: http://www.srekel.net
Pocket Task Force: http://ptf.srekel.net
Kaka e gott! http://kaka.srekel.net

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av jonasc
Du kan ju inte allvarligt tro att hello world speglar språket så jäkla mycket. Hur kommer det sig att du vet så mycket utan att kunna ett enda språk egentligen?

I am the almighty.
Jag har läst och lärt mig. Aja var så jävla naiv och tyck att Hello World är ett dåligt exempel.
Är det inte sjukt hur krångligt vissa språk är som kräver många fler kommandon än Python för ett simpelt Hello World script? Just det.

Permalänk
Citat:

Ursprungligen inskrivet av Bombur
I am the almighty.
Jag har läst och lärt mig. Aja var så jävla naiv och tyck att Hello World är ett dåligt exempel.
Är det inte sjukt hur krångligt vissa språk är som kräver många fler kommandon än Python för ett simpelt Hello World script? Just det.

Ja, men du kanske ska tänka på varför de kräver fler kommandon?

Det handlar inte enbart om hur koden ser ut, eller hur lite det är att skriva.

Visa signatur

/Mvh Stefan

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Guru Meditation
Ja, men du kanske ska tänka på varför de kräver fler kommandon?

Det handlar inte enbart om hur koden ser ut, eller hur lite det är att skriva.

Jorå, det är helt enkelt för att vissa programmeringsspråk är skrivna på helt andra sätt, som du säger, men egentligen inte designat för koden i fråga.

Permalänk
Citat:

Ursprungligen inskrivet av Bombur
Jorå, det är helt enkelt för att vissa programmeringsspråk är skrivna på helt andra sätt, som du säger, men egentligen inte designat för koden i fråga.

Ett språk är aldrig designat för ett stycke kod tror jag. Såvida det inte finns ett "Hello Word++"-språk vars enda uppgift är att skriva ut "Hello World".

Däremot om man tar skillnaden mellan t.ex. interpreterande språk och kompilerande språk. Med ett interpreterande språk behöver du tolken på systemet du ska köra "programmet" på .. Därför behöver du oftast heller inte ha med massa includes, libraries och andra tillbehör, dessa finns redan i tolken.

I ett kompilerande språk blir däremot de exekverbara filerna fristående, därför behöver du ha med allt som behövs för att köra programmet. Av den anledningen behöver du också specificera vad du vill ska följa med i filen. Om man tar t.ex. hello world i c++ så måste du inkludera stdio.h för att skriva ut till skärmen. Men det skulle vara onödigt att behöva ha med stöd för allt annat (databaser, grafik m.m) bara för den uppgiften. Därför är det ju att föredra att bara inkludera det men behöver, istället för att få bloatade filer som innehåller det du behöver samt allt annat.

Sen kan syntaxen skilja sig något, men oftast är det av en anledning. Scriptspråk och högnivåspråk tenderar att ha enklare syntax, men är kanske inte lika kraftfulla som lågnivåspråk. Det finns två sidor på varje mynt. Är ett språk bra för att det är lätt syntax, eller är det bra för att det är optimerat, snabbt och effektivt (d.v.s. "lättläst" för datorn)?

Visa signatur

/Mvh Stefan

Permalänk
Medlem

BASIC kräver också bara en rad kod för att skriva ut hello world,
det gör ju knappast BASIC automatiskt bättre och snabbare än C/C++

Det bästa sättet att jämföra 2 språk är att man tänker vad man ska använda det till och hittar två likvärdiga applikationer skrivna i båda programmen och jämför.

Säg att du ska göra en texteditor, att du hitta en texteditor i båda språken och jämföra hur pass olika dom skiljer. Eller för den delen, bara ta de rader kod som krävs för att läsa/skriva till filer.

Man måste jämföra språk i tillämpning, d.v.s. ena språket kan ju vara mycket bättre på att göra småprogram med medans det andra lämpar sig för större projekt.

Personligen anser jag att t.ex. Visual Basic är perfekt om man snabbt vill göra applikationer i Windows-miljö. Lättlärt och man kan göra rätt mycket i det, så man kommer snabbt igång med sitt projekt.

Alla språk har sina fördelar, gäller ju bara att sätta det i perspektiv till vad man faktiskt vill göra med språket i sig.

Visa signatur

Kör väl en klassisk signatur:
9900K @ 5GHz/128GB 3200MHz DDR4/3x1TB NVME/6800XT på Aorus Z390 Elite
Samsung C34F791, Svive 34C801, Xiaomi 34", Logitech MX Master 3 + G512...
Behöver för jobb, ej gamer.

Permalänk

Hehe, jag är från den gamla skolan. Allt utom asm, c och c++ är inte riktig programmering

Tyvärr kan jag inte något av dem själv

Visa signatur

/Mvh Stefan

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Bombur
I am the almighty.
Jag har läst och lärt mig. Aja var så jävla naiv och tyck att Hello World är ett dåligt exempel.
Är det inte sjukt hur krångligt vissa språk är som kräver många fler kommandon än Python för ett simpelt Hello World script? Just det.

Skillnaden är att när du skriver program för output i c++ och java så är det inga "script" utan kompilerade program, och därför är också ditt resonemang felaktigt.
Hur pass mycket man måste skriva i ett språk för att få något att hända spelar egentligen inte någon speciell roll av flera skäl. Dels brukar IDE's ta hand om mycket, dels sitter du och aktivt knackar på tangentbordet kanske 10-20% av tiden du skapar ett icke-trivialt program. Det som spelar roll är på vilken nivå språket ligger och ifall du har libs till hand som kan göra saker åt dig så du slipper skriva dem själv - i högnivåspråk finns det oftast mycket sånt.

För att inte tala om faktumet att 3-4 rader inte är något att tala om ifall du faktiskt ska skriva något mer avancerat än hello world.

Som många sagt, det spelar ingen roll vad du lär dig, bara att du lär dig. Att lära sig ett språk är ingen stor insats - att lära sig programmera är. Sen är det bara att fortsätta plocka upp nya språk. Python är bra att börja med.

Visa signatur

hmm

Permalänk
Medlem

Att skriva ett par rader för att komma igång med ett nytt program är inte så konstigt. Jag kan inte python, men jag skulle gissa att det egentligen behövs ett par rader till det med, men att kompliatorn inkluderar dom automatiskt. Dvs du har inte koll på vad den gör.
När du skriver ett program på runt 1000 rader eller mer bryr man sig inte så mycket om man fick stoppa in ett par extra i början för att få lite kontroll över hur saker hanteras.

Permalänk
Citat:

Ursprungligen inskrivet av Sun Tzu
Bombur Eftersom du verkar ha väldigt bråttomt att lära dig programmera så föreslår jag att du läser igenom "Teach Yourself Programming in Ten Years"

Mycket bra länk!

Visa signatur

Hör ropen skalla: Mer CO-OP åt oss alla!
Fanboys är kapitalismens svar på religiösa fundamentalister.
Upplysning für alle: www.thesciencenetwork.org www.transhumanism.org