Permalänk
Medlem

Tunn bok om C++?

Tjena.

Finns det någon bok som tar upp grunderna i C++ och inte är sådär jättetjock (200-300 sidor) som ni kan tipsa om!? Vill lära mig lite men har märkt att jag har fruktansvärt dålig disciplin om det t.ex gäller böcker med 500 sidor eller mer. Pallar helt enkelt inte läsa klart dom. Så tänkte att en tunnare bok kunde vara en bra början för att tagga mig till att läsa vidare sen efteråt. Så har ni nå tips?

Visa signatur

Asus UL30VT: 13,3", Intel Core 2 Duo SU7300 1,3 Ghz, 4 Gb Ram, 512 mb Nvidia Geforce G210M, 500 Gb HDD, Windows 7 Home Premium

Permalänk
Medlem

Kortare än 200-300 sidor? Njaa...

Har inget boktips, men däremot en bra sida:

http://www.cprogramming.com/

Permalänk
Medlem

accelerated c++

Visa signatur

z-fighter

Permalänk

Accelerated C++ är nog inte vad du letar efter, även om det inte är en särskilt tjock bok så tror jag inte att det är en bok som lämpar sig för att lära sig grunderna i C++. Funkar nog bättre som andra bok.

Min första bok var nått skräp av Jesper Ek, den var tunn, och på svenska. Som sagt var det dock skräp, köp/läs den inte.

Många brukar ju dock tipsa om Stephen Prata, hans bok/böcker är säkert bra.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av independence
Många brukar ju dock tipsa om Stephen Prata, hans bok/böcker är säkert bra.

Mjo, och långa. C++ Programmering, vilket jag tror är den mest kända när det gäller C++, är på över 1000 sidor, så vet ej om det är optimalt för trådskaparen. Personligen tycker jag dock boken är bra.

Visa signatur

"A good discussion is like a miniskirt; Short enough to pertain interest and long enough to cover the subject"
何回やっても何回やってもエロゲが終わらない

Permalänk
Citat:

Ursprungligen inskrivet av Xaanin
Mjo, och långa. C++ Programmering, vilket jag tror är den mest kända när det gäller C++, är på över 1000 sidor, så vet ej om det är optimalt för trådskaparen. Personligen tycker jag dock boken är bra.

Hoppas du pratar om den engelska versionen. Den svenska är enligt mig rätt dålig, mest på grund av att allting känns väldigt "dubbat".

Visa signatur
Permalänk
Medlem

Re: Tunn bok om C++?

Citat:

Ursprungligen inskrivet av oxfile
Vill lära mig lite men har märkt att jag har fruktansvärt dålig disciplin om det t.ex gäller böcker med 500 sidor eller mer. Pallar helt enkelt inte läsa klart dom.

Jag skulle vilja säga att man inte "läser ut" en programmeringsbok. Det är inte som att läsa skönliteratur. När jag själv lärde mig C++ läste jag tutorials men jag började inte med att läsa igenom allt utan snarare läste jag lite och sen provade jag mig fram tills dess att jag fastnade vid ett problem och återgick då till tutorialen.

Istället för att leta en bok med få sidor tycker jag du ska leta en som är lättläst och som håller ett lagom tempo. För om du hittar en C++ bok som är på 200 sidor kommer den nog att vara väldigt svårförstådd alternativt inte omfatta så stora delar av språket.

C++ direkt av Jan Skansholm (637 sidor, 359:-) har jag bläddrat lite i och den verkar inte alls dum som en förstabok. Många av mina klasskompisar gillade den oxå.

C++ programmering av Stephen Prata (1168 sidor, 236:-) har jag hört många som gillar, har dock bara bläddrat i denna med =/

C++ Programming Language av Bjarne Stroustrup (928 sidor, 480:-) en bra uppföljnings bok, denna bok är nog näst intill värdelös om man inte programmerat C eller C++ innan. Denna har jag nästan läst pärm till pärm och den är riktigt bra om man sedan tidagare har kunskaper inom C/C++.

Permalänk
Avstängd

Det finns antagligen inga bra tunna böcker, eftersom språket C++ är gigantiskt stort. Specifikationerna är på över 800 A4 sidor. Då kanske du förstår varför alla böcker är tjocka.

Som jämförelse kan man säga att språket Scheme är fullständigt specificerat på 24 sidor. Scheme kan börja programmera ganska omedelbart i. Annars är Java inte alls lika krångligt som C++ så det kan vara en ide annars. Java är ju nästan en identisk kopia av C++ men man har tagit bort alla krångliga saker som finns i C++. Så kan du Java bra, så är det hyfsat lätt att hoppa över till C++ sen. Som jämförelse kan jag säga att jag kunde C++ men aldrig ens sett Java, och ändå kunde jag göra min kompis Java laboration utan större problem. Så lika är språken.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av emilsson
Det finns antagligen inga bra tunna böcker, eftersom språket C++ är gigantiskt stort. Specifikationerna är på över 800 A4 sidor. Då kanske du förstår varför alla böcker är tjocka.

Som jämförelse kan man säga att språket Scheme är fullständigt specificerat på 24 sidor. Scheme kan börja programmera ganska omedelbart i. Annars är Java inte alls lika krångligt som C++ så det kan vara en ide annars. Java är ju nästan en identisk kopia av C++ men man har tagit bort alla krångliga saker som finns i C++. Så kan du Java bra, så är det hyfsat lätt att hoppa över till C++ sen. Som jämförelse kan jag säga att jag kunde C++ men aldrig ens sett Java, och ändå kunde jag göra min kompis Java laboration utan större problem. Så lika är språken.

Hmm...spännande att dom är såpass lika. Vad finns det för schysst java bok eller annat att titta i?

Visa signatur

Asus UL30VT: 13,3", Intel Core 2 Duo SU7300 1,3 Ghz, 4 Gb Ram, 512 mb Nvidia Geforce G210M, 500 Gb HDD, Windows 7 Home Premium

Permalänk
Medlem

Oxfile: du säger inget om tidigare programmeringskunskaper och vad du ska kunna c++ till men såhär ser jag på saken: Såvida du inte behöver direkt hårdvaruaccess så funkar java alldeles utmärkt, du kan göra i stort sett allt som du kan i c++ fast du slipper oroa dig för minnesläckor och andra knepiga saker då det finns ett enormt biblotek med färdiga komponenter.

Ska du lära dig java är Jan Skansholm - Java direkt en helt ok bok. Den är på 700 sidor men det är bara de första säg 140 sidorna du behöve läsa för att förstå grunderna. Därefter kommer mer specifika saker som grafiska komponenter och liknande men de delarna använder du bara som uppslagsverk när du faktiskt vill använda dom.

Ett hett tips är ju att läsa lite grann och sen ge sig på att programera något och sen slå upp det du behöver.

Själv lärde jag mig en del c++ via en tutorial på nätet innan jag lärde mig java, kan säga i efterhand att jag hellre gjort tvärt om. Mycket roligare med grafiska program tidigt istället för att skriva textbaserade i c++.

Visa signatur

In murphy we trust, his law never fails.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Aendy
Oxfile: du säger inget om tidigare programmeringskunskaper och vad du ska kunna c++ till men såhär ser jag på saken:...

Gick Programmering A i gymnasiet, Visual Basic. Det är det enda. Och det jag vill kunna är väl bara att till en början göra små lätta program. Kan inte ge nåt exempel än, men enkelt iallafall. Fast nu när jag surfat lite verkar Ruby, Scheme och Python vara vettiga språk att försöka lära sig till en början. Dock finns det inte mycket svensk litteratur till dom.

Visa signatur

Asus UL30VT: 13,3", Intel Core 2 Duo SU7300 1,3 Ghz, 4 Gb Ram, 512 mb Nvidia Geforce G210M, 500 Gb HDD, Windows 7 Home Premium

Permalänk
Medlem

Då tycker jag du ska satsa på java, lite roligare med t.ex. dialogrutor istället för lite text i en kommando tolk. I så fall rekommenderar jag netbeans kompilator/IDE.

Visa signatur

In murphy we trust, his law never fails.

Permalänk
Medlem

Då tycker jag du ska satsa på c#, lite roligare, lite hårdare.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av independence
Accelerated C++ är nog inte vad du letar efter, även om det inte är en särskilt tjock bok så tror jag inte att det är en bok som lämpar sig för att lära sig grunderna i C++. Funkar nog bättre som andra bok.

IMO är C++ Accelerated den absolut bästa boken för folk som vill komma igång med att lära sig C++. Boken introducerar en till STL från start och lär en genom praktiska exempel med tillhörande förklaringar, dvs den börjar med att lära en att programmera i C++ istället för att börja lista samtliga aritmetiska typer och deras storlekar i bits och annat detaljerat vetande i C++.

Permalänk
Avstängd

Den hära gratis Java boken som kan laddas ned, anses vara mycket bra. Jag tycker oxå det. Som sagt, Java är ganska simpelt men väldigt lika C och C++. Alla de är släkt med varandra.

http://www.mindview.net/Books/TIJ/

C# är oxå väldigt likt Java (Microsoft kopierade Java rakt av och lade till lite grejer och kallade det för C#), men C# innehåller lite mera krångligheter än Java. C# använder dessutom MFC och Win32 API internt, båda är ganska rörigt uppbyggda om du tvingas titta på dem, senare. Man kan lätt bli förvirrad. Dessutom, för att lära sig C# så bör du ha Visual Studio och att bara lära sig det programmet tar skitlång tid om du aldrig sett en utvecklingsmiljö tidigare. Arbetsinsatsen är som att lära sig ett program där Word + Excel är tillsammans ihopbakade till ett enda program, typ. Tänk om du ALDRIG sett Excel eller Word och aldrig sysslat med officeprogram, då kan det bli mycket att lära sig va?

Med java går det bra att köra notepad och java kompilatorn är gratis. Java är enkelt att komma igång med (vilket är meningen med språket). Senare när du blivit varm i kläderna kan du ladda ned en gratis utvecklingsmiljö; Eclipse eller Netbeans. Båda är proffsmiljöer och används av alla java proffs.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av emilsson
Dessutom, för att lära sig C# så bör du ha Visual Studio och att bara lära sig det programmet tar skitlång tid om du aldrig sett en utvecklingsmiljö tidigare. Arbetsinsatsen är som att lära sig ett program där Word + Excel är tillsammans ihopbakade till ett enda program, typ. Tänk om du ALDRIG sett Excel eller Word och aldrig sysslat med officeprogram, då kan det bli mycket att lära sig va?

Med java går det bra att köra notepad och java kompilatorn är gratis. Java är enkelt att komma igång med (vilket är meningen med språket). Senare när du blivit varm i kläderna kan du ladda ned en gratis utvecklingsmiljö; Eclipse eller Netbeans. Båda är proffsmiljöer och används av alla java proffs.

Varför skulle man måsta använda ett tungt IDE för att lära sig C# om det räcker med en enkel editor för Java? Men även om man skulle måsta det så är det enligt mig mycket enklare att programmera C# i Visual C# än Java (eller C# för den delen) i Notepad. Det är liksom inte som att man måste lära sig alla funktioner, debugging, o.s.v. för att kunna starta Visual C# och skriva lite kod. Visual C# finns även gratis, och skulle man inte vilja ha det så finns ändå själva kompilatorn gratis.

Offtopic: Hur kommer det sig att du tror att Java är det enda språket som går att använda till något användbart? Det intryck jag har fått är att du tror att inget annat språk än Java går att använda. Använder man något något lägre nivå-språk så är man på alldeles för låg nivå, och kan därför exempelvis inte skriva bra algoritmer (verkar det som enligt dig). Är det på samma nivå, men i ett annat språk, även om språket är väldigt likt Java, så är det bara ett dåligt språk. Hur kommer det sig?

Edit: Eller just i den här tråden var det inte så mycket anti-andra språk, men jag har minnen av att ha sett Java beskrivet som det Gudomliga språket i andra trådar.

Visa signatur

Vill du ha svar? Citera mig gärna.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av emilsson
C# är oxå väldigt likt Java (Microsoft kopierade Java rakt av och lade till lite grejer och kallade det för C#), men C# innehåller lite mera krångligheter än Java.
Med java går det bra att köra notepad och java kompilatorn är gratis. Java är enkelt att komma igång med (vilket är meningen med språket).

Det hörs att du kan dina saker, ja c# är verkligen sämst!

Permalänk
Avstängd
Citat:

Ursprungligen inskrivet av lajnold
Varför skulle man måsta använda ett tungt IDE för att lära sig C# om det räcker med en enkel editor för Java? Men även om man skulle måsta det så är det enligt mig mycket enklare att programmera C# i Visual C# än Java (eller C# för den delen) i Notepad. Det är liksom inte som att man måste lära sig alla funktioner, debugging, o.s.v. för att kunna starta Visual C# och skriva lite kod. Visual C# finns även gratis, och skulle man inte vilja ha det så finns ändå själva kompilatorn gratis.

Offtopic: Hur kommer det sig att du tror att Java är det enda språket som går att använda till något användbart? Det intryck jag har fått är att du tror att inget annat språk än Java går att använda. Använder man något något lägre nivå-språk så är man på alldeles för låg nivå, och kan därför exempelvis inte skriva bra algoritmer (verkar det som enligt dig). Är det på samma nivå, men i ett annat språk, även om språket är väldigt likt Java, så är det bara ett dåligt språk. Hur kommer det sig?

Edit: Eller just i den här tråden var det inte så mycket anti-andra språk, men jag har minnen av att ha sett Java beskrivet som det Gudomliga språket i andra trådar.

Eftersom du skriver ett lugnt och sansat inlägg riktat mot mig, så ska jag besvara dina frågor så gott jag kan.

Jag menar att om man vill smälla upp fönster, knappar o dyl i C#, så blir det knepigt att göra i notepad. I Java går det alldeles utmärkt att smälla upp fönster o dyl i notepad. Håller du med om att GUIprogrammering i C# inte bör göras i notepad? Håller du med om att GUI programmering i Java kan enkelt göras i Notepad?

Självklart kan man använda andra språk än Java. Som matematiker och dessutom civilingenjör, så tycker jag att Java är mycket elegantare än C#. Inom matematik är det viktigt att en konstruktion (bevis, program, programspråk, etc) är snygg och elegant. Ofta är det så att om något är snyggt och elegant, så är det bättre än något stort och klumpigt, där de trycker in allt möjligt. Så i någon mån, så är Java ett elegant litet språk. Den mesta utvecklingen i Java sker genom att man ändrar i biblioteken. Själva språket ändras inte från år till år.

C# ändras hej vilt, hela tiden. Precis som windows familjen (3.11, W95, NT, 2000, XP, Vista) eller se t.ex. MS Office filformaten. En fil skapad i en office version kan inte öppnas hur som helst i andra office versioner. Jag läste att de som gör filhantering för gratis (OO) OpenOffice hade jävligt svårt att se till att OO skapade MS Office filer korrekt. Att läsa MS Office filer är lätt, det är bara att ignorera olika saker i filen. Men att skapa filerna, det var svårt att lista ut. Det skulle t.ex. vara en bitsträng på "01110101" på nåt ställe och varför? Ja, det visste de inte. De visste bara att den måste vara där, annars kraschar allting.

Det visade sig att inte ens MS själva vet hur filformatet skulle se ut. Det är därför som vissa MS Office inte ens kan skapa andra MS Office versioner. Fatta, MS själva vet inte! Helt enormt.

MS håller på och ändrar hej vilt hela tiden (därför att då måste kunden hela tiden uppgradera och köpa nya licenser och då blir det mycket pengar till MS). Och då blir produkterna inte snygga, eleganta. De blir fulla av lapptäcken och hål och konstigheter.

C# kopierades rakt från Java (säger jag som civilingenjör och alla andra IT-konsulter jag känner säger samma sak), men Java har inga pekare. Då kunde förstås MS inte hålla sig, och lade till pekare. Då sabbar MS själva grundtanken med Java. Java ska vara enkelt och elegant. MS har inte fattat vad konstruktörerna med Java ville, så de sabbar allting. Jag lovar, i början var C# ganska likt Java (därmed ganska elegant språk) men om några år, jag lovar, så kommer C# ha växt som fan och blivit riktigt jobbigt.

Kolla bara på MFC och Win 32 API. Hur fan kan man ens göra något så rörigt och grötigt? Hur tänker folk??? Idioter! En matematiker skulle ALDRIG göra något så klumpigt och fult. Java är mera designat av en matematiker. C# är designat av... MS folk som vill tvinga kunderna uppgradera hela tiden. Det finns inte en koherent tanke bakom C#. Även om C# är modernare och kanske gör en del saker lite bättre än Java, så hjälper inte det. I takt med att tiden går, så kommer C# likna Java mindre och mindre och likna MFC och Win32 i rörighet istället.

Seriöst, jag fattar inte hur man kan skapa något så fult och klumpigt som MFC och win32 API? Att skriva en enkel text på skärmen i Win32 API kräver typ 200 rader kod. Gör samma sak i Java => skitenkelt. Lika enkelt i C#.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av emilsson
Eftersom du skriver ett lugnt och sansat inlägg riktat mot mig, så ska jag besvara dina frågor så gott jag kan.

Jag menar att om man vill smälla upp fönster, knappar o dyl i C#, så blir det knepigt att göra i notepad. I Java går det alldeles utmärkt att smälla upp fönster o dyl i notepad. Håller du med om att GUIprogrammering i C# inte bör göras i notepad? Håller du med om att GUI programmering i Java kan enkelt göras i Notepad?

Självklart kan man använda andra språk än Java. Som matematiker och dessutom civilingenjör, så tycker jag att Java är mycket elegantare än C#. Inom matematik är det viktigt att en konstruktion (bevis, program, programspråk, etc) är snygg och elegant. Ofta är det så att om något är snyggt och elegant, så är det bättre än något stort och klumpigt, där de trycker in allt möjligt. Så i någon mån, så är Java ett elegant litet språk. Den mesta utvecklingen i Java sker genom att man ändrar i biblioteken. Själva språket ändras inte från år till år.

C# ändras hej vilt, hela tiden. Precis som windows familjen (3.11, W95, NT, 2000, XP, Vista) eller se t.ex. MS Office filformaten. En fil skapad i en office version kan inte öppnas hur som helst i andra office versioner. Jag läste att de som gör filhantering för gratis (OO) OpenOffice hade jävligt svårt att se till att OO skapade MS Office filer korrekt. Att läsa MS Office filer är lätt, det är bara att ignorera olika saker i filen. Men att skapa filerna, det var svårt att lista ut. Det skulle t.ex. vara en bitsträng på "01110101" på nåt ställe och varför? Ja, det visste de inte. De visste bara att den måste vara där, annars kraschar allting.

Det visade sig att inte ens MS själva vet hur filformatet skulle se ut. Det är därför som vissa MS Office inte ens kan skapa andra MS Office versioner. Fatta, MS själva vet inte! Helt enormt.

MS håller på och ändrar hej vilt hela tiden (därför att då måste kunden hela tiden uppgradera och köpa nya licenser och då blir det mycket pengar till MS). Och då blir produkterna inte snygga, eleganta. De blir fulla av lapptäcken och hål och konstigheter.

C# kopierades rakt från Java (säger jag som civilingenjör och alla andra IT-konsulter jag känner säger samma sak), men Java har inga pekare. Då kunde förstås MS inte hålla sig, och lade till pekare. Då sabbar MS själva grundtanken med Java. Java ska vara enkelt och elegant. MS har inte fattat vad konstruktörerna med Java ville, så de sabbar allting. Jag lovar, i början var C# ganska likt Java (därmed ganska elegant språk) men om några år, jag lovar, så kommer C# ha växt som fan och blivit riktigt jobbigt.

Kolla bara på MFC och Win 32 API. Hur fan kan man ens göra något så rörigt och grötigt? Hur tänker folk??? Idioter! En matematiker skulle ALDRIG göra något så klumpigt och fult. Java är mera designat av en matematiker. C# är designat av... MS folk som vill tvinga kunderna uppgradera hela tiden. Det finns inte en koherent tanke bakom C#. Även om C# är modernare och kanske gör en del saker lite bättre än Java, så hjälper inte det. I takt med att tiden går, så kommer C# likna Java mindre och mindre och likna MFC och Win32 i rörighet istället.

Seriöst, jag fattar inte hur man kan skapa något så fult och klumpigt som MFC och win32 API? Att skriva en enkel text på skärmen i Win32 API kräver typ 200 rader kod. Gör samma sak i Java => skitenkelt. Lika enkelt i C#.

Åh, som upplagt för en flametråd (inte bara ditt inlägg att tacka för det!).

1. Ja, c#-gui vill man inte skriva i notepad.. Men jag föredrar att ha lite hjälp även om jag skulle göra gui i Java. I vilket fall, Visual Studio funkar väl utmärkt som nybörjare? Välj consoleapp i new project, sen e det bara o fylla i kod i fönstret som kommer upp (och det går att skriva flera klasser i samma fil!) och trycka på F5 så körs programmet. Som du själv skrev, man vill ju komma igång med själva koden så fort som möjligt och då e det väl bra om man inte behöver joxa med kompilering, klassfiler mm?

2. Om vi ska prata bevis, matematik osv vill man väl inte använda sig av ett språk med sidoeffekter, och andra dumma saker? Nej, tacka vet jag Haskell!

3. Java är uppe i sin 6e version. Det finns 3 versioner av .NET (och två av c#). Sun har lagt till nya språkfeatures, dessutom gjorde dom det sent, i 1.5 (dvs då borde väl språket redan ha blivit stabilt?). MS har iof oxå ändrat en del i C#, och kommer att göra mer i C#3.0, men bättre o göra det när språket är ungt.

4. Win32 o MFC har väl inte riktigt med .net o C# att göra? Missar lite din sista poäng. Det är ju som du säger löjligt lätt att visa en text på skärmen i C#, tom enklare än i Java eftersom du drar ut kontrollerna o sätter egenskaper på dom istället för att som i Java importera rätt gui-klasser, skapa fönster med kod osv.

Permalänk
Avstängd
Citat:

Ursprungligen inskrivet av vb
Åh, som upplagt för en flametråd (inte bara ditt inlägg att tacka för det!).

1. Ja, c#-gui vill man inte skriva i notepad.. Men jag föredrar att ha lite hjälp även om jag skulle göra gui i Java. I vilket fall, Visual Studio funkar väl utmärkt som nybörjare? Välj consoleapp i new project, sen e det bara o fylla i kod i fönstret som kommer upp (och det går att skriva flera klasser i samma fil!) och trycka på F5 så körs programmet. Som du själv skrev, man vill ju komma igång med själva koden så fort som möjligt och då e det väl bra om man inte behöver joxa med kompilering, klassfiler mm?

2. Om vi ska prata bevis, matematik osv vill man väl inte använda sig av ett språk med sidoeffekter, och andra dumma saker? Nej, tacka vet jag Haskell!

3. Java är uppe i sin 6e version. Det finns 3 versioner av .NET (och två av c#). Sun har lagt till nya språkfeatures, dessutom gjorde dom det sent, i 1.5 (dvs då borde väl språket redan ha blivit stabilt?). MS har iof oxå ändrat en del i C#, och kommer att göra mer i C#3.0, men bättre o göra det när språket är ungt.

4. Win32 o MFC har väl inte riktigt med .net o C# att göra? Missar lite din sista poäng. Det är ju som du säger löjligt lätt att visa en text på skärmen i C#, tom enklare än i Java eftersom du drar ut kontrollerna o sätter egenskaper på dom istället för att som i Java importera rätt gui-klasser, skapa fönster med kod osv.

1. Jag menar att lära sig en modern IDE är ganska mycket jobb bara det. Med notepad + java så går det bra att börja programmera.

2. Jo det är sant att funktionella språk äger. Men de används inte alls ute i företagen. Då är det Java, C# eller C++ som gäller. Java är elegantast.

3. Jo är det bättre att ändra, men det jag menar är att MS kommer strula till språket. Det kommer krävas nya uppdateringar hela tiden, precis som MS office kräver nya versioner hela tiden. Det kommer komma nya finesser och funktioner hela tiden, så man måste hela tiden uppgradera. Java är inte så.

4. Min sista poäng. MS fick fria händer, och de skapade MFC och Win32. Rörigare saker finns inte. Nu har MS kopierat Java och fått fram C#, och därför är C# ganska elegant och icke-rörigt. Just nu. Men vänta bara, om 5 år kommer C# vara lika rörigt som MFC och Win32.

MS har missat poängen med Java. De kopierar Java rakt av, och kopian är ganska snygg. Ju mer MS fixar med kopian, ju längre bort kommer den från själva grundtanken med Java. Jag lovar att om MS skulle kopiera Haskell så skulle de lägga till objektorientering, pekare o dyl. Men då har MS inte fattat nånting. Ett funktionellt språk SKA inte bete sig som MS skapelse kommer att bli.

Det är som Unix. Unix grundtanke är elegant. Varje kommando kan göra endast en enda sak. Sen sätter man ihop alla små kommandon och åstadkommer storverk. Windows är tvärtom, allt är ihopbuntat till en enda stor monolit, t.ex. ingår IE i windows och MS hävdade förrut att det går inte att ta bort IE ur windows. Hur fan kan en webbrowser ingå i ett OS??? Hur korkat är inte det, ur teknisk synvinkel??? Skälet till att MS bakar ihop allting med hårda beroenden sinsemellan, är att det går inte att byta ut komponenter enkelt, därför är kunden låst och MS tjänar stora pengar på låsningen. Så MS tjänar grova pengar på att tvinga kunden att uppgradera hela tiden, eftersom det hela tiden kommer nya funktioner. Därför blir MS produkter därefter, gigantiska lapptäcken utan en enhetlig tanke bakom. Allt är en enda röra. Jag lovar att om MS skulle kopiera Unix så skulle de lägga till massa konstiga saker, lägga in en webbrowser i kernel, etc. Det skulle spåra ur kraftigt efter några år, då MS fått designa efter eget huvud.

Här är en kille som skriver lite om Windows designfilosofi ur teknisk synvinkel, och det är katastrof!
http://www.vanwensveen.nl/rants/microsoft/IhateMS_2.html

Därför kommer C# spåra ur och bli fulare och grötigare och mera likt MFC och Win32, eftersom nu har MS slutat kopiera Java. MS omformar C# efter eget huvud, och då blir det rörigt. Jag menar, om inte ens MS själva klarar nätt och jämnt bibehålla bakåtkompatibilitet med MS office, vad säger det om MS designers?

(Emacs är likadant, stort och åbäkigt, därför är inte Emacs vidare Unix-aktigt. Däremot är VI unixaktigt. Litet elegant, kan bara göra en sak bra: editera text).

Bottomline: MS anser att då man inte kan lägga till flera finesser, först då är programmet perfekt. Matematiker anser att då man inte kan ta bort flera finesser (men alla funktioner måste finnas kvar), först då är programmet perfekt.

Perfection is achieved, not when there is nothing left to add, but when there is nothing left to take away. Sant som fan! Men inte för MS.

Permalänk
Medlem

vi har skrivit en lite guid med bara grunderna. säg gärna vad ni tycker!
http://www.meistersoft.net/
kolla under fliken guider.

Visa signatur

sär skrivning och sthafvel är det jag är bäst på.

Permalänk
Inaktiv

Ojdå, mycket åsikter i denna tråd. Börjar med att försöka vara on-topic.

oxfile: Då du inte verkar vara helt låst på c++ så kan jag bara stämma in i rekommendationerna att testa andra språk såsom python och ruby, så länge du inte spenderar för mycket tid på att bestämma dig. Språkvalet är sekundärt; det viktigaste är att man faktiskt kodar

Citat:

Ursprungligen inskrivet av emilsson
2. Jo det är sant att funktionella språk äger. Men de används inte alls ute i företagen. Då är det Java, C# eller C++ som gäller. Java är elegantast.

Det där är väldigt subjektivt (såvida inte någon har uppfunnit ett sätt att mäta elegans), så den där sista meningen är rätt fånig.

Citat:

Ursprungligen inskrivet av emilsson
3. Jo är det bättre att ändra, men det jag menar är att MS kommer strula till språket. Det kommer krävas nya uppdateringar hela tiden, precis som MS office kräver nya versioner hela tiden. Det kommer komma nya finesser och funktioner hela tiden, så man måste hela tiden uppgradera. Java är inte så.

Johodå, java är minst lika illa. Hur länge har java haft generics?

Citat:

Ursprungligen inskrivet av emilsson
4. Min sista poäng. MS fick fria händer, och de skapade MFC och Win32. Rörigare saker finns inte. Nu har MS kopierat Java och fått fram C#, och därför är C# ganska elegant och icke-rörigt. Just nu. Men vänta bara, om 5 år kommer C# vara lika rörigt som MFC och Win32.

Win32 är mycket äldre än fem år (började väl leva i och med windows 3.x) så det borde dröja mycket längre än så innan C# blir lika hemskt. Dessutom, samma sak kan väl hända med vilket bibliotek/språk som helst, inklusive java?

(Nej, jag är ingen c#-fanatiker).

Permalänk
Medlem

dakilla: Snabbkollade lite i guiden. Känns kanske väl teoretisk i början innan man faktiskt programerar, men det det är väl mest en fråga om smak. Fortsätt lägga till sånt som klasser och liknande så kan det nog bli bra tror jag.

Visa signatur

In murphy we trust, his law never fails.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av emilsson
1. Jag menar att lära sig en modern IDE är ganska mycket jobb bara det. Med notepad + java så går det bra att börja programmera.

2. Jo det är sant att funktionella språk äger. Men de används inte alls ute i företagen. Då är det Java, C# eller C++ som gäller. Java är elegantast.

3. Jo är det bättre att ändra, men det jag menar är att MS kommer strula till språket. Det kommer krävas nya uppdateringar hela tiden, precis som MS office kräver nya versioner hela tiden. Det kommer komma nya finesser och funktioner hela tiden, så man måste hela tiden uppgradera. Java är inte så.

4. Min sista poäng. MS fick fria händer, och de skapade MFC och Win32. Rörigare saker finns inte. Nu har MS kopierat Java och fått fram C#, och därför är C# ganska elegant och icke-rörigt. Just nu. Men vänta bara, om 5 år kommer C# vara lika rörigt som MFC och Win32.

MS har missat poängen med Java. De kopierar Java rakt av, och kopian är ganska snygg. Ju mer MS fixar med kopian, ju längre bort kommer den från själva grundtanken med Java. Jag lovar att om MS skulle kopiera Haskell så skulle de lägga till objektorientering, pekare o dyl. Men då har MS inte fattat nånting. Ett funktionellt språk SKA inte bete sig som MS skapelse kommer att bli.

Det är som Unix. Unix grundtanke är elegant. Varje kommando kan göra endast en enda sak. Sen sätter man ihop alla små kommandon och åstadkommer storverk. Windows är tvärtom, allt är ihopbuntat till en enda stor monolit, t.ex. ingår IE i windows och MS hävdade förrut att det går inte att ta bort IE ur windows. Hur fan kan en webbrowser ingå i ett OS??? Hur korkat är inte det, ur teknisk synvinkel??? Skälet till att MS bakar ihop allting med hårda beroenden sinsemellan, är att det går inte att byta ut komponenter enkelt, därför är kunden låst och MS tjänar stora pengar på låsningen. Så MS tjänar grova pengar på att tvinga kunden att uppgradera hela tiden, eftersom det hela tiden kommer nya funktioner. Därför blir MS produkter därefter, gigantiska lapptäcken utan en enhetlig tanke bakom. Allt är en enda röra. Jag lovar att om MS skulle kopiera Unix så skulle de lägga till massa konstiga saker, lägga in en webbrowser i kernel, etc. Det skulle spåra ur kraftigt efter några år, då MS fått designa efter eget huvud.

Här är en kille som skriver lite om Windows designfilosofi ur teknisk synvinkel, och det är katastrof!
http://www.vanwensveen.nl/rants/microsoft/IhateMS_2.html

Därför kommer C# spåra ur och bli fulare och grötigare och mera likt MFC och Win32, eftersom nu har MS slutat kopiera Java. MS omformar C# efter eget huvud, och då blir det rörigt. Jag menar, om inte ens MS själva klarar nätt och jämnt bibehålla bakåtkompatibilitet med MS office, vad säger det om MS designers?

(Emacs är likadant, stort och åbäkigt, därför är inte Emacs vidare Unix-aktigt. Däremot är VI unixaktigt. Litet elegant, kan bara göra en sak bra: editera text).

Bottomline: MS anser att då man inte kan lägga till flera finesser, först då är programmet perfekt. Matematiker anser att då man inte kan ta bort flera finesser (men alla funktioner måste finnas kvar), först då är programmet perfekt.

Perfection is achieved, not when there is nothing left to add, but when there is nothing left to take away. Sant som fan! Men inte för MS.

1. Vi har väl olika åsikter här helt enkelt, men jag tror inte att c#+VS är jobbigare än java+notepad för en nybörjare, (och tyckte inte det när jag lekte med visualbasic+VS på den tiden jag var nybörjare)..

3-4.
Ok, så egentligen är det inget fel på C# idag, men baserat på vad du tycker om MS så tror du att det kommer gå åt skogen i framtiden? Jag håller inte med.

(Ett sidospår: Både Win32 och MFC släpptes innan Java, dvs ganska länge sen)

Permalänk
Avstängd
Citat:

Ursprungligen inskrivet av poppeman
Det där är väldigt subjektivt (såvida inte någon har uppfunnit ett sätt att mäta elegans), så den där sista meningen är rätt fånig.

Du tycker den är fånig för att du inte är matematiker eller fysiker. En matematiker pratar hela tiden om att olika konstruktioner är eleganta. Något elegant fungerar ofta bättre än något tillkrystat och klumpigt. Läs mycket matte på universitetsnivå, så kommer du förstå hur jag menar.

Citat:

Ursprungligen inskrivet av poppeman
Johodå, java är minst lika illa. Hur länge har java haft generics?

Läs på lite mera, så förstår du bättre hur jag menar.

Javas skapare: http://www.artima.com/intv/gosling1.html
"The Java language itself has pretty much held constant. We've worked really hard to keep it very, very stable. We're being conservative about the Java language."

Citat:

Ursprungligen inskrivet av poppeman
Win32 är mycket äldre än fem år (började väl leva i och med windows 3.x) så det borde dröja mycket längre än så innan C# blir lika hemskt. Dessutom, samma sak kan väl hända med vilket bibliotek/språk som helst, inklusive java?

Som jag sagt innan, Java är väldigt konservativa. Bara för att en grej är inne och hett, så kommer inte det automatiskt implementeras i Java. Däremot kommer det garanterat i C#. Hur mycket ändras inte MS Word t.ex.? Jämför Word mot TeX. TeX är heeeelt överlägset Word och ändras inte alls. Som jag sagt innan, när MS inte kan lägga till flera funktioner, först då är MS nöjda. En matematiker är minimalist. Han tar bort ALLT onödigt. Precis ALLT, så att bara kärnan är kvar. Helst ska den vara ultraliten. Då är han nöjd. Att ta bort saker tills nästan ingenting återstår, är väldigt svårt och kräver mycket och djupa tankar. Winston Churchill sade; "att göra ett långt tal är jätteenkelt. att göra ett kort, kärnfullt tal kräver mycket arbete". Less is more.

Jag tycker det är jobbigt att diskutera med fjortisar (då menar jag gymnasiestudenter) som inte har en aning. De kör Ubuntu hemma och tror att de kan allt om att drifta stora Unix miljöer. Du har inget vettigt att säga, förutom att det är fånigt att säga att ett matematiskt bevis är vackrare än ett annat. Matematik kan vara vackert. Faktiskt. Men det vet ju inte du. Jag betackar mig för fjortisar i fortsättningen. Jag skriver och förklarar gång på gång, att Java ÄR konservativt, men ändå så kommer det någon Allan och säger "nähädå, java ändras hej vilt". Så måste jag börja googla och ta fram länkar och skriva 3 sidor text innan Allan fattar att jag har rätt. Orkar inte skriva 3 sidor text i fortsättningen för puckade inlägg. Jag HAR ju skrivit flera ggr att Java är konservativt och de är försiktiga med ändringar. Varför måste jag bevisa att jag hela tiden har underlag för de saker jag säger? Är det för att folk är vana vid att inläggen här, är helt ogrundade och okunniga? Skumt. När jag skriver något, så är det faktiskt så som jag säger. Linux ÄR omoget och instabilt. Solaris ÄR tekniskt överlägset. Java ÄR elegant. C# KOMMER spåra ur och bli gigantiskt och fult - alla MS produkter är gigantiska och fula. C# ÄR en kopia av Java. etc.

Tack och hej, leverpastej.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av emilsson
Jag tycker det är jobbigt att diskutera med fjortisar (då menar jag gymnasiestudenter) som inte har en aning. De kör Ubuntu hemma och tror att de kan allt om att drifta stora Unix miljöer. Du har inget vettigt att säga, förutom att det är fånigt att säga att ett matematiskt bevis är vackrare än ett annat. Matematik kan vara vackert. Faktiskt. Men det vet ju inte du. Jag betackar mig för fjortisar i fortsättningen. Jag skriver och förklarar gång på gång, att Java ÄR konservativt, men ändå så kommer det någon Allan och säger "nähädå, java ändras hej vilt". Så måste jag börja googla och ta fram länkar och skriva 3 sidor text innan Allan fattar att jag har rätt. Orkar inte skriva 3 sidor text i fortsättningen för puckade inlägg. Jag HAR ju skrivit flera ggr att Java är konservativt och de är försiktiga med ändringar. Varför måste jag bevisa att jag hela tiden har underlag för de saker jag säger? Är det för att folk är vana vid att inläggen här, är helt ogrundade och okunniga? Skumt. När jag skriver något, så är det faktiskt så som jag säger. Linux ÄR omoget och instabilt. Solaris ÄR tekniskt överlägset. Java ÄR elegant. C# KOMMER spåra ur och bli gigantiskt och fult - alla MS produkter är gigantiska och fula. C# ÄR en kopia av Java. etc.

Tack och hej, leverpastej.

Jag tycker att det verkar bra mycket jobbigare att diskutera med pretansiösa akademiker.

Varför ska normalanvändaren bry sig om det finns "elegant" matematik bakom ett program?
Varför ska programeraren sitta 5h istället för 5min för att få något att funka på samma sätt?
Varför ska man behöva offra prestanda på annat än att köra själva programmet?

Eller jag ser väl inte elegansen.

Permalänk
Inaktiv
Citat:

Ursprungligen inskrivet av emilsson
Läs mycket matte på universitetsnivå, så kommer du förstå hur jag menar.

Duger det med min utbildning? Matlab och maple duger fint för mig när jag ska göra rena matematiska saker. Dock är det lite ironiskt är att både matlab och maple är otroligt bloatade.

Citat:

Ursprungligen inskrivet av emilsson
Läs på lite mera, så förstår du bättre hur jag menar.

Det är väl enklare om du själv förklarar vad du menar. Själv tycker jag att generics är en rätt markant ändring (dock till det bättre, alla tramsiga typecasts som man fick göra innan var en katastrof).

Citat:

Ursprungligen inskrivet av emilsson
// Massor av galenskaper. //

Det tog inte lång tid innan du började med personangrepp.

Citat:

Ursprungligen inskrivet av emilsson
När jag skriver något, så är det faktiskt så som jag säger.

Nu börjar du skrämma mig. Jag ger nog upp nu.

Permalänk
Medlem

Adlibris har åtminstonne en svensk bok om Python, lite tjockare än vad du efterfrågade men den verkar åtminstonne aktuell: http://www.adlibris.se/product.aspx?isbn=9144045204&s=1 Jag kan inte rekommendera den (har inte läst den) men kurslitteratur brukar vara lite vettigare än något "...på 30 dagar"-skräp. Såg annars att de några tunna introduktionsböcker till Python som såg läsvärda ut men de var på engelska.

Permalänk
Avstängd
Citat:

Ursprungligen inskrivet av poppeman
Duger det med min utbildning? Matlab och maple duger fint för mig när jag ska göra rena matematiska saker. Dock är det lite ironiskt är att både matlab och maple är otroligt bloatade.

Det är väl enklare om du själv förklarar vad du menar. Själv tycker jag att generics är en rätt markant ändring (dock till det bättre, alla tramsiga typecasts som man fick göra innan var en katastrof).

Det tog inte lång tid innan du började med personangrepp.

Nu börjar du skrämma mig. Jag ger nog upp nu.

Du har ju inte en aning om matematik. Att du ens nämner matlab och maple tyder ju på att du läser typ första året. Riktig matematik (som man inte läser på linköpings Data program) görs med papper och penna. Bevisa satser. Det är det, matte handlar om. Och det görs inte med matlab och maple. Matlab och Maple är för ingenjörer, inte för matematiker. Att de är bloatade kanske stämmer, jag har ingen åsikt om saken men det vore intressant på vad du stöder dig det uttalandet på. Eller om det bara är taget ur luften, som t.ex. ditt påstående att Java ändras lika mycket i som C# fast värre. Om du läst lite riktig matte (inte ingenjörstjafs som läses på Linköpings D program) så hade du förstått vad jag menar att matematik kan vara vackert. Att inte ens ha en känsla för bevis och matematik och läsa på D programmet är illa. Men det är väl oxå därför som Linköping inte är vidare teoretiskt eller matematiskt inriktat som D programmet på Nada vid KTH där jag läste.

Är det svårt för dig att förstå, att Javas skapare är väldigt konservativa och har sagt att själva språket ska de vara mycket försiktiga att ändra i, och alla eventuella ändringar ska ske i biblioteken.

Vem började med personangrepp egentligen??? Det var en hyfsad ton här, tills du började säga att det är "fånigt" att vissa konstruktioner är elegantare än andra. Ett sånt uttalande kan bara komma från en matematiskt okunnig person. (Att läsa D programmet gör en inte till en matematiker, antagligen är du en sådan person som bara stökar undan mattekurserna utan att försöka lära dig något). Det vore faktiskt kul för EN ENDA gångs skull, om folk kunde hålla en hyfsad ton i en enda tråd utan att börja bete sig som fjortisar (dvs gymnasister) och förolämpa folk.

Permalänk

Tog en titt på din historik här på forumet emilsson och det är inte direkt någon sympatiskt bild man får av dig, trots dina examen som både ingenjör och matematiker. Eftersom du i ett flertal trådar förklarat att du inte är intresserad av att diskutera med gymnasister och amatörer kan man inte låta bli att undra vad du egentligen gör här på forumet. Det finns ju ett flertal resurser och sidor på nätet som är långt bättre lämpade för den som är intresserad av rena tekniska diskussioner på hög nivå.

Personligen tycker jag att det är häpnadsväckande att du som matematiker påstår att syntaxen hos ett visst imperativt programmeringsspråk gör språket mer "elegant" än andra språk.