Avatar billede lordsaxo Nybegynder
14. august 2005 - 10:17 Der er 28 kommentarer og
2 løsninger

C++ eller C#, i Programmering C?

Hej alle eksperter.

Her på 2. år i HTX har jeg valgt programmering. Min eneste tidligere erfaring er web-programmering, i form af PHP.
Jeg har tidligere leget en lille smule med C++, men det er ikke meget.

I programmering lærer man (på min skole) som standard Delphi. Personligt er jeg ikke så vild med Delphi, og vil hellere igang med noget c++/c# eller lign.
Derfor fik jeg så overtalt min lærer til at jeg må skaffe mit eget materiale, og køre c++/c# istedet for Delphi.

Nu har jeg undersøgt en smule omkring begge sprog, og jeg står og skal til at vælge...

Det problem jeg ser i C# er at jeg ikke kan få et program at kode i på min skole - hvis jeg derimod køber studie versionen af VS .NET og installerer det på den bærbare, og altid tager den bærbare med til programmering, skulle dette ikke være noget problem.

Med C++ bruger jeg Dev-C++, som er gratis, og derfor kan jeg både installerer det på min skole, og herhjemme...

Et andet problem er at jeg skal lave windows programmering. Jeg skal helst kunne lære at lave windows programmer som f.eks. tekst-editor, lommeregner, og den slags. Men alt det C++ jeg har læst om indtil videre, har handlet om programmering af programmer til kommandoprompt (Eller hvad man nu kalder det - er lige stået op ;)).

Derfor ville jeg også gerne høre, fra nogle som har erfaring med det, hvor svært det er at lære at lave de grafiske windows-programmer, som f.eks. en lommeregner, tekstbehandlingsprogram, osv., i både C++ og C#?

Derudover ville jeg også meget gerne modtage forslag til bøger. Både på engelsk og dansk.

Jeg håber at få en masse svar, og gerne nogle gode argumenter, hvorfor jeg lige netop bør vælge C++ eller C#.
Men husk, jeg har kun et år til at lære sproget, og skal i slutningen af året lave et eksamensprojekt på 20 timer (excl. hjemmearbejde).

På Forhånd Tak.
Avatar billede nielle Nybegynder
14. august 2005 - 10:30 #1
Et alternativ til at investere ca. 1000 kr. i Visual Studio C# . Net kunne være den helt gratis editor SharpDevelop:

http://sourceforge.net/projects/sharpdevelop

Hvis du vil lave Windows applikationer så er det måske lige hårdt at gå i gang med C++; GUI programmering via C++ er noget meget langhårdet noget, og dine Delphi-kammerater vil helt givet får det langt nemmere end dig hvis du vælger C++ vejen (bevares, så lære du det godt nok også meget bedre end dem ;^). GUI-mæssigt kan Delphi sammenlignes med Visual Studio C# og SharpDevelop.
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 10:33 #2
men tilgængæld vil du ikke kunne lave programmer til fx linux i c# som er afhængigt af windows
Hvert sprog har sin fordel men jeg ville starte med c++ og så kan du lære c# bagefter hvis du har lyst.
De fleste programmører lærer nemlig mere end et sprog for så kan de nemlig vælge sprog efter hvilket program de skal lave.
Avatar billede nielle Nybegynder
14. august 2005 - 10:36 #3
Man kan sagtens lave programmet i C# som kan køre uændret på tværs af Windows, Linuc og Mac (OS X). Det kræver bare en smule omtanke:

http://www.mono-project.com/Main_Page

I den sammenhæng er der faktisk ikke den store forskel på programmer skrevet i C++.
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 10:38 #4
ja det ved jeg men det er ikke særlig benyttet
men start med c++ og når du føler at du kan skrive fornuftige programmer ville jeg gå over til c# da det nok er en smule mere fremtidigt !
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 10:44 #5
det er i hvert fald meget nemmere at skrive c++ programmer til linux end i c#
desuden er det heller ikke særlig svært at lære c# hvis du er inde i c++
Avatar billede arne_v Ekspert
14. august 2005 - 10:44 #6
lige netop med hensyn til GUI har MS .NET versus Mono .NET faktisk nogle ret
store forskelle/pointer ...
Avatar billede nielle Nybegynder
14. august 2005 - 10:48 #7
Korrekt, men man kan faktisk også køre mono på Windows og fungere det begge steder.
Avatar billede nielle Nybegynder
14. august 2005 - 10:49 #8
"... meget nemmere at skrive c++ programmer til linux ...". Kan du uddybe?
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 10:49 #9
men på den anden side hvis du skriver at du SKAL lave windows programmering så start i C# !
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 10:50 #10
ja for hvis man skal skrive C# programmer på linux så skal man først til at installere mono !
Avatar billede lordsaxo Nybegynder
14. august 2005 - 11:10 #11
Visualdeveloper, ved godt de fleste programmører lærer flere sprog (hvilket jeg også har tænkt mig...), men da jeg har programmering i år, og forhåbentlig skal op til eksamen, bliver jeg nød til at vælge et sprog, som jeg kan lære så meget som muligt af, på dette år.

Som alle andre går jeg efter en god karakter, og dette kan jeg ikke, hvis jeg ikke har sat mig godt nok ind i et enkelt sprog.
Det vigtigste er nok at jeg kan lave noget windows GUI. Og det lyder som om C# er vejen frem?

Nogle som kan foreslå nogle bøger, som også tager sig af GUI programmering, evt. med eksempler på tekstbehandlings programmer, eller lommeregnere?
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 11:12 #12
JA SÅ ER C# helt sikkert vejen frem for windows GUI er ikke lige sådan at gå til ;)
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 11:14 #13
Microsoft Visual C# .NET Step by Step
Windows Forms Programming in C#

(kan findes på amazon.com)
Avatar billede nielle Nybegynder
14. august 2005 - 11:15 #14
Ja, og hvis du vil programmere C# på Windows så skal man installere .NET. Nu er det faktisk hverken særligt svært at installere hverken .NET eller Mono, men det er nu lidt irrelevant i diskussionen om hvorvidt det er sværere at programmere i C# end i C++.

For nu lige at vende tilbage til det oprindelige spørgsmål, så har lordsaxo ikke sagt noget om at h(a/u) ønskede at kunne programmere til Linux.

Det er fuldstændigt korrekt at man lære faget meget mere grundigt hvis man starter med C++ frem for C# (ja, rent faktisk burde man starte helt ved C eller måske Assembler). Nu drejer det sig imidlertid om et fag på 2. år på HTX og ikke om Datalogi. De andre i klassen bruger Delphi, og derfor bør lordsaxo's valg falde på noget som er sammenligneligt. Ellers ender det bare med at h(a/u)n har vildt meget mere hjemmearbejde end kammeraterne. I den sammenhæng er det faktisk kun C# som opfylder kravene.

... altså efter min mening.
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 11:15 #15
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 11:16 #16
jeg er helt enig med dig jeg tænkte ikke lige på at men jo også skulle installere .NET framework!
Avatar billede nielle Nybegynder
14. august 2005 - 11:17 #17
Jeg vil da gerne anbefale:

Grundlæggende C#
Niels Hilmar Madsen & Michell Cronberg
ISBN87-7843-619-2

Godt nok er der nogle bommerter i den, men den er da i det mindste på dansk.
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 11:20 #19
ellers kør ned på biblioteket og så hvad de har !
Avatar billede nielle Nybegynder
14. august 2005 - 11:21 #20
Hvis fokus derimod ligger på at lære Windows GUI programmering, så vil jeg også anbefale:

.NET Windows Applications
Jesse Liverty & Dean Hurwitz
O'Reilly
ISBN 0-596-00321-8
Avatar billede arne_v Ekspert
14. august 2005 - 11:24 #21
Hvis engelsk er OK så har Wrox udgivet en del .NET bøger hvoraf flere har
et særdeles godt ry
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 11:25 #22
eller

Professional Windows GUI Programming Using C#
Jay Glynn, Csaba Torok, Richard Conway, Wahid Choudhury, Zach Greenvoss, Shripad Kulkarni, Neil Whitlow
ISBN: 1861007663

http://www.amazon.com/exec/obidos/tg/detail/-/1861007663/002-3155057-2104045?v=glance
Avatar billede bertelbrander Novice
14. august 2005 - 11:27 #23
Du kunne også bruge Borland C++ Builder. Den ligner Delphi meget og er let at lære at lave Windows GUI programmer i.
Avatar billede nielle Nybegynder
14. august 2005 - 11:29 #24
Jep, det lyder faktisk også som en god løsning. :^)
Avatar billede visualdeveloper Nybegynder
14. august 2005 - 11:55 #25
har du nu fået svar nok ???
Avatar billede amma Nybegynder
14. august 2005 - 16:25 #26
Hvis du spørger mig, begår du en kæmpe brøler ved at vælge et andet sprog, end i bruger på skolen. Tro mig, der er ingen grund til at være besværlig på den måde. Brug dog Delphi, du kan sagtens bruge erfaringerne derfra over i C++/C#.
Avatar billede borrisholt Novice
16. august 2005 - 13:26 #27
Hvis Delphi er skolen officielle sprog så brug det. Du kan altid kaste dig over C++ senere.

Og som bertelbrander siger skal det være C++ så brug C++ Cuilderen. Den ligner Delphi rigtrig meget og kan i øvrigt kompilere Delphi kode.

Og mht. GUI, så er Borland  sq foran.

Det siges det skulle være nemt at gå fra Delphi til C#, og alt andet lige så er det jo en og samme mand det står bag dem begge.

Cross-platform er næppe et issue du behøver at tænke på i skole sammenhæng. Koncentrer du dig hellere om at lære et sprog så kan resten komme senere.

Jens B
Avatar billede lordsaxo Nybegynder
17. august 2005 - 18:41 #28
Amma og Borrisholt... Jeg ser ingen grund til at vælge et sprog, som overhovedet ikke interesserer mig...
Fint nok at bruge et år på Delphi, men jeg vil nok hurtigt blive useriøs, hvis jeg laver noget jeg syntes er gabende kedeligt. Og der siger Delphi mig bare ikke noget - thats it, og det er min holdning. Så vidt der er mulighed for det, vil jeg hellere vælge et andet sprog.

Visualdeveloper, ja, det syntes jeg at jeg har fået. Tak fordi i har været så hurtige til at svare.

Nielle, lægger du lige et svar, så jeg kan dele pointene med Visualdeveloper?
Avatar billede nielle Nybegynder
17. august 2005 - 19:38 #29
Svar :^)

Personligt syens jeg at Delphi, og Pascal generelt, er et af de suverænt bedste sprog at lære at programmere i.
Avatar billede lordsaxo Nybegynder
17. august 2005 - 21:51 #30
Tja - det har vi jo alle forskellige holdninger til. ;)
Men tak for svarene!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester