Hejsan, jag tänkter börja lära mig att programera men vet inte vilket språk som är "bäst"!?
- Vad är skillnaden?
- Vilket är enklast?
- Vilka fungerar till vilka os!?
Vore tacksamm för lite vägledning ;)
Svårt att säga vilket språk som är bäst men jag tycker att du kanske borde kika lite på Java.
Det är rätt så enkelt att komma igång med.
fördelar:
- koden är plattformsoberoende(dvs om plattformen stödjer Java), dvs du kan köra samma kod på alla plattformar, utan att behöva kompilera om koden.
- till skillnad från t ex C++ så slipper du pekare
- mycket hjälp finns att hitta ute på nätet. Java.cun.com har t ex en massa exempel och tutorials samt en API reference där du kan slå upp varje klass och se vilka metoder de innehåller osv. - du kan enkelt skapa nätverks-baserade lösningar(applets) som du kan lägga ut på din hemsida
Sen om du vill lära dig C++ så är steget mycket lättare att ta, om du redan kan Java och OOP(objektorienterad programmering).
nackdelar:
- lite jobbigare att skapa klickbara program (inga .exe filer här inte, eller motsvarande på andra plattformar) Nån kanske kan förklara denna del lite bättre än jag.
- alla datorer måste ha en Java Runtime Environment(JRE)installerad.
du kan ladda ned Java SDK(innehåller nåde JRE och utvecklingsverktygen) från
på samma sida(lite längre ned) så kan du även ladda ned API reference. ett måste om du seriöst tänker programmera Java.
Den kan du även ladda ned till din dator.
Du bör starta med strukturerad programmering för att sedan övergå till objektorienterad programmering. Objekt och klasser är svåra för en nybörjare.
Jag håller inte med. All programmering är mer eller mindre svårt för en nybörjare, men jag tycker ändå att det är bättre att från början lära sig att tänka objektorienterat. Det har man nytta av ju mer man förkovrar sig i den underbara programmeringsvärlden :).
Nuförtiden så används t.ex OO-språk till de flesta nybörjarkurser i programmering på högskolorna (i vart fall KTH).
Sen ser jag inte vitsen med att börja med visuell programmering, jag tycker man skall skala bort allt speciallir från programmeringen och inrikta sig på det grundläggande, dvs fimpa allt vad fönsterprogrammering, mobiltelefoner, webb och annat heter, sånt är tekniker, det man skall lära sig först är teorin.
Tyärr, håller inte med. Frågan var bla. vilket är enklast.
I Visual Basic kan man "leka" runt lite, och snabbt göra grafiska program. Enkelt, och ganska grundläggande. Kan fungera som en inkörsport. Därefter kan man gå djupare i ett "riktigt" språk, och sedan OO. Eftersom objektorienteringen hör till designfasen, är det svårt för en nybörjare att greppa klasser.
Ofta används aldrig OO i grundkurserna, utan man använder klasser utan att reflektera över varför.
Jag själv har gått den "hårda" vägen Pascal->Modula2->Fortran->C->C++ (->Java)
När jag satte mig med VisualBasic för första gången tyckte jag det var för enkelt, och fuskigt på något sätt..
Du bör starta med strukturerad programmering för att sedan övergå till objektorienterad programmering. Objekt och klasser är svåra för en nybörjare.
Jag håller inte med. All programmering är mer eller mindre svårt för en nybörjare, men jag tycker ändå att det är bättre att från början lära sig att tänka objektorienterat. Det har man nytta av ju mer man förkovrar sig i den underbara programmeringsvärlden :).
Nuförtiden så används t.ex OO-språk till de flesta nybörjarkurser i programmering på högskolorna (i vart fall KTH).
Sen ser jag inte vitsen med att börja med visuell programmering, jag tycker man skall skala bort allt speciallir från programmeringen och inrikta sig på det grundläggande, dvs fimpa allt vad fönsterprogrammering, mobiltelefoner, webb och annat heter, sånt är tekniker, det man skall lära sig först är teorin.
Håller med! För övrigt anser jag att inget språk är bäst, utan välj det som klarar uppgiften effektivast.
Håller med! För övrigt anser jag att inget språk är bäst, utan välj det som klarar uppgiften effektivast
Indirekt betyder ju det att man väljer det språk man är bäst på. Fullärd kan man aldrig säga att man är direkt..... Att lösa ett problem handlar ju till rätt liten del om vilket språk man använder.
Ofta används aldrig OO i grundkurserna, utan man använder klasser utan att reflektera över varför.
Där tror jag tvärtom att det visst är så. Ofta är grundkurserna uppbyggda för att lära ut grundläggande förståelse för klasser och arv.
Det är ju inte för inte som de flesta grundkurser börjar med arvsövningar av typen "Bil är ett Fordon, bil har attributen antal hjul, färg etc.". Man börjar inte med att sätta newbies framför en visuell RAD-miljö och låter dom bygga fönsterapplikationer, i vart fall inte på högskolan.
Det finns ju flera här på wF som pluggar på högskolan just nu, ni får gärna berätta hur era grundkurser i programmering såg ut.
Jag läste C i första programmeringskursen här på Datalogiprogrammet. Eftersom jag kunde det redan innan så är det väl lite svårt att säga hur jag tycker kursen var.
Jag vet däremot att PeW som går klassen under mig läste Java som förstakurs. Jag tror det är - som tidigare sagts - rätt bra att börja med Java direkt. Kan vara ett helvete att försöka sluta programmera "c-style" om man är van med det...
Jag vet däremot att PeW som går klassen under mig läste Java som förstakurs. Jag tror det är - som tidigare sagts - rätt bra att börja med Java direkt. Kan vara ett helvete att försöka sluta programmera "c-style" om man är van med det...
Huvet på spiken. Jag instämmer till fullo med dig, jag har sett många fall av gamla C-kodare som stöter på problem när de börjar med Java, men helt missbrukar objektorienteringen.
Börjar man istället med Java har man inte det (ganska så ofta, men inte alltid) onaturliga funktionsbaserade tänkandet. Jag tror man vinner mycket på att läsa och förstå objektorientering som ett förstahandsval. Java är ett klart lämpligt språk att börja med. Alternativet C++ gör att man stöter på andra problem, säkerligen intressanta, men man kan inte fokusera på programmeringsmodellen lika mycket med C++, eftersom det är så mycket annat som måste på plats innan man blir produktiv i C++. Jag läste C och C++ i tidernas begynnelse, och visst har jag nytta av att kunna detta, men tröskeln är mycket högre för att komma igång. Som alternativ till Java ser jag nog främst C#/VB.Net och objektorienterad Pascal (Delphi).
Det finns andra snygga mer eller mindre objektorienterade språk, men man har trots allt ganska mycket att vinna på att välja något av de "stora" språk jag listade. Man begränsar sin arbetsmarknad något om man endast listar Eiffel och Smalltalk i sin CV, hur bra objektorienterade språk de än är.
Jag vet däremot att PeW som går klassen under mig läste Java som förstakurs. Jag tror det är - som tidigare sagts - rätt bra att börja med Java direkt. Kan vara ett helvete att försöka sluta programmera "c-style" om man är van med det...
Kan vara ett helvete att sluta tänka OOP oxå när man hamnar på en C/assembler kurs :e
Men visst har du så rätt. Java är ett utmärkt språk för nybörjare och det är faktiskt lättare att ställa om från OOP till c-style än tvärtom. Vi har nu läst 10p Java, 5p C++, 3p C och 2p Intel-assembler, samt mycket om strukturer m.m . Har inget ont alls att säga om året som gått och kan bara säga att det gett mig en hel del, trots att jag redan "kunde" :p ;) Ser fram emot nästa kurs (OS) :bire
Går på SU-DSV och vi hade Pascal som första kurs, kanske inte riktigt OOP och inte riktigt modernt heller. Tror nog Java är bättre att börja med idag, Pascal var bra som ett skolspråk förut.
Ni har säkert rätt, men jag fasthåller att om man enkelt vill lära sig programmering, så är det extra tyngd på bördan om man måste lära sig OO. Väljer man ett strukturerat språk utan OO, tex C, så kan man lägga krutet på just programmeringen.
Fast med ex. Java och C# så är man direkt i OO, där klarar man sig inte utan kunskaper om detta.
Hursomhelst, så är det nog läraren som styr mycket.
Fast jag rekommenderar ett kompilerat språk, så att dina polare kan testa vad du gjort!
OO är ju en struktureringsteknink egentligen och har ju inte så mycket att göra med själva språket. Förstår man inte grunderna i programmering så blir man inte en bättre programmerare bara för man använder OO. I Java går det ju säkert bra då man inte behöver bry sig i minneshantering och sånt....
Man behöver ju inte gå in på OOP direkt bara för att man börjar med Java. Man kan ju lära sig ganska mycket grundläggande programmering (funktioner, loopar osv) med Java utan att beröra OOP begreppet.
Fördelen med Java/C# är ju också att de är moderna språk som används och som kommer att användas i framtiden.
Man behöver ju inte gå in på OOP direkt bara för att man börjar med Java. Man kan ju lära sig ganska mycket grundläggande programmering (funktioner, loopar osv) med Java utan att beröra OOP begreppet.
Då är nog basic eller pascal precis lika bra. I Java så mer eller mindre tvingas man in i en OO-värld.
Men om man hoppar över från Pascal eller Basic till Java för OOP så måste man lära sig en helt ny syntax också, då kan det vara lättare (tror jag) att redan ha jobbat i Java.
Jag ser ingen nakdel med att börja med Java som första språk.
Kanske ska svara på en fråga från topic startaren också :)
Vilka fungerar till vilka os!?
Java - Alla os, samma kod på alla os, olika JVM (program som kör ditt program)
C++ - Alla os, grunden är samma på alla OS men du kan inte köra ett windows c++ program i linux, måste kompilera om koden och ofta också skriva om den om du har OS specifika funktioner.
Visual Basic - Windows
C# - Windows (kanske portas till andra OS senare)
Delphi - Windows
Pascal - Dos, Linux (mfl?)
Men om man hoppar över från Pascal eller Basic till Java för OOP så måste man lära sig en helt ny syntax också, då kan det vara lättare (tror jag) att redan ha jobbat i Java.
Jag ser ingen nakdel med att börja med Java som första språk.
Finns det "unmanaged Java" ? I så fall är det ett bra alternativ. Det är en väldig nackdel att inte läsa sig minneshantering ordentligt från början. I Java så behöver man ju inte bry sig om sånt.
Finns det "unmanaged Java" ? I så fall är det ett bra alternativ. Det är en väldig nackdel att inte läsa sig minneshantering ordentligt från början.
Det finns fortfarande en viss grad av minneshantering involverad, annars skulle programmen bara vräka ur sig null pointer exceptions få fort du ville använda ett objekt. Minneshanteringen är förenklad, och det är ruskigt bra.
När man vill lära sig något annat språk som C++ behöver man lära sig mängder med nya saker ändå. Lägger man till den lilla skillnaden "du kan köra new som i Java, men måste använda delete sen när du inte behöver den mer" så lär sig utvecklaren det jävligt fort. VB-programmerare som gått till C++ däremot...
Java är väldigt likt språken i C-famlijen: BCPL, B, C, C++ och nu senast C#. Om du vill lära dig något av de andra språken så är övergången hyfsat smärtfri eftersom grundsyntaxen är identisk.
Det finns fortfarande en viss grad av minneshantering involverad, annars skulle programmen bara vräka ur sig null pointer exceptions få fort du ville använda ett objekt. Minneshanteringen är förenklad, och det är ruskigt bra.
Och sedan då du börjar med C++ eller object-Pascal och då har du inte det stödet längre. Jag tycker man ska måsta brottas med sådana problem för att kunna förstå. Sen då man väl förstår och kan koda "miljövänligt" så är det ju inget som hindrar att man byter utvecklingsmiljö.
153 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe