handdator

Visa fullständig version : Hur lär man sig programmera?


isato
2005-02-09, 21:58
hej...
hur lär man sig programera? iaf få en inblick i vad det är??

John M
2005-02-09, 22:01
Vad för språk ska du lära dig? Spelar ingen roll kanske? Dra till biblioteket och låna någon bok. Annars hittar du säkert massor på nätet om du bara söker. :)

Baan
2005-02-09, 22:02
du köper mina javaböcker :P

iNCREDiBLE
2005-02-09, 22:03
hej...
hur lär man sig programera? iaf få en inblick i vad det är??

Att lära sig programmera kräver lika stor möda som när man ska lära sig cykla.

z_bumbi
2005-02-09, 22:05
Att lära sig programmera kräver lika stor möda som när man ska lära sig cykla.

Krocka med # ?

John M
2005-02-09, 22:06
Krocka med # ?

hehe :D

AcidSleeper
2005-02-09, 22:12
Först kolla vilket språk som verkar intressantast för det du vill programmera (du har säkert någon tanke bakom att du vill lära dig), sen låna/köper böcker och läser, läser och läser... kanske gå någon kurs!

kelk
2005-02-09, 22:13
Jag tycker att det är lättast att läsa lite grundregler sedan läsa igenom gamla koder som andra personer har skrivit. :-)

isato
2005-02-09, 22:14
alltså från absoulta grunden...om man inte kan så mycket om datorer


edit: söka på nätet??? vad ska jag söka efter ??

Patriarch K
2005-02-09, 22:14
Här är en skitbra sida där du kan lära dig grunderna och lite mer avancerade saker http://www.gametutorials.com/

Sparrisen
2005-02-09, 22:20
Det allra bästa är såklart att gå en kurs.

Själv får jag läsa programmering på min civilingenjörsutbildning.

isato
2005-02-09, 22:23
villläsa datavetenskap men måste veta om man har någon chans ..... vilka förkunskaper man måste ha och så.....

eller hur svårt det nu är om det finns någon chans att lära sig

Nitrometan
2005-02-09, 22:25
Öva, öva, öva. Precis som med allt annat så krävs det mycket övning för att bli bra.

En linuxburk och gcc - vad mer behöver man? *flex*

Sen finns det mer "hjälpsamma" grafiska miljöer. Har tittat på en del trevliga java-verktyg den senaste tiden. Men det känns nästan som fusk med all den "completition" de kan ställa upp med. :)

M$ Visual Studio är också trevligt men då kostar det ju en del också.

isato
2005-02-09, 22:26
ja öva men hur övar man...alltså så dålig är jag *rolleyes*

Nitrometan
2005-02-09, 22:27
villläsa datavetenskap men måste veta om man har någon chans ..... vilka förkunskaper man måste ha och så.....

eller hur svårt det nu är om det finns någon chans att lära sig

Krävs väl egentligen inga förkunskaper. Men det underlättar.

Svårt? Nä. Inte särskilt. Med lite vilja kan alla lära sig. Men att bli bra är svårt.

Sparrisen
2005-02-09, 22:27
Börja med ADA, det är det lättaste språket och ger god förståelse för programmering i allmänhet.

Garnax
2005-02-09, 22:30
Först vad vill du kunna göra?

Det sättet jag tyckte var enklast när jag började var att få en liten bit kod och sen kolla igenom den. Rätt snabbt fattar man vad olika saker gör.

Det är bra att ha någon att fråga i början innan man kan skriva självständigt och som kan förklara vad som gör vad och varför. En del saker är nämligen inte så logiska som t.ex koden i en vanlig liten miniräknare eller det klassiska hello world programet

En kurs kan vara bra, viadidakt eller liknande tror jag har sådana.

Tror inte det kräver några speciella förkunskaper att gå t.ex programering A på gymnasienivå. Du behöver kunna bas matte sånt du lär dig i grundskolan.

Efter man har läst programering A är man duktig nog att kunna låna böcker på biblioteket och gå över till visual programering och skapa sina egna alster.

Baan
2005-02-09, 22:32
det viktigaste är att praktisera och inte bara förstå kod, det är först när du ska göra något själv och lyckas som du lär dig något. skulle väl rekommendera java själv :D

isato
2005-02-09, 22:33
hur ser en liten bit kod ut då??


Tror inte det kräver några speciella förkunskaper att gå t.ex programering A på gymnasienivå. Du behöver kunna bas matte sånt du lär dig i grundskolan.

jag tänkte på utbildning efter gymnasiet

Efter man har läst programering A är man duktig nog att kunna låna böcker på biblioteket och gå över till visual programering och skapa sina egna alster

jag är klar med gymnasiet

Sparrisen
2005-02-09, 22:41
Ett mycket enkelt program skrivet i ADA. OBS fungerar ej pga saknade paket etc.

----------------


with Ada.Text_IO; use Ada.Text_IO;
with Ada.Float_Text_IO; use Ada.Float_Text_IO;
with Ada.Integer_Text_IO; use Ada.Integer_Text_IO;
with Ada.Numerics.Discrete_Random;

-------------------------------------------------------------------------------
--| Modulnamn: Main2
--|
--| Beskrivning: Procedure som mha underprogram genererar 40 slumpade heltal
--| mellan 1 och 10, lägger in dessa i ett tvådimensionellt fält och
--| skriver ut fältet. Därefter sorteras heltalen i fältet och fältet
--| skrivs ut sorterat.
--|
--| Indata: ---
--| Utdata: ---
--|
--| Förutsättningar: ---
--|
-------------------------------------------------------------------------------

procedure Main2 is

type Rad is array (1 .. 2) of Integer;
type Fält is array (1 .. 20) of Rad;


-- //////////////////////// Generera_Tal ///////////////////////////////

-------------------------------------------------------------------------------
--| Modulnamn: Generera_Tal
--|
--| Beskrivning: Procedure som använder sig av en slumpgenerator för att lagra in
--| 40 stycken heltal (mellan 1 och 10) i ett tvådimensionellt fält.
--|
--| Indata: ---
--| Utdata: Ett tvådimensionellt fält (fält av fält)
--|
--| Förutsättningar: ---
--|
-------------------------------------------------------------------------------


procedure Generera_Tal (Tal : out Fält) is


subtype One_To_Ten is Integer range 1 .. 10;
package One_To_Ten_Random is
new Ada.Numerics.Discrete_Random(Result_Subtype => One_To_Ten);
-- En "Generator" är eKolontt "dolt" värde som styr pseudoslumptalssekvensen.
G : One_To_Ten_Random.Generator;


begin

One_To_Ten_Random.Reset(G);

for I in Fält'Range loop
for J in Rad'Range loop
Tal(I)(J) := One_To_Ten_Random.Random(G);
end loop;
end loop;

end Generera_Tal;

-- ////////////////////// Slut på Generera_Tal /////////////////////////

-- ////////////////////// Skriv_Ut /////////////////////////////////////

-------------------------------------------------------------------------------
--| Modulnamn: Skriv_Ut
--|
--| Beskrivning: Skriver ut fältet i "rader" och "kolonner".
--|
--| Indata: Ett Fält
--| Utdata: ---
--|
--| Förutsättningar: ---
--|
-------------------------------------------------------------------------------

procedure Skriv_Ut (Tal_Som_Ska_Skrivas_Ut : in Fält) is

begin
New_Line;

for I in Fält'Range loop
for J in Rad'Range loop
Put(Tal_Som_Ska_Skrivas_Ut(I)(J), Width => 0);
end loop;
New_Line;
end loop;


end Skriv_Ut;


-- ///////////////////// Slut Skriv_Ut ////////////////////////////////


-- /////////////////////// Sortera_Tal ////////////////////////////////

-------------------------------------------------------------------------------
--| Modulnamn: Sortera_Tal
--|
--| Beskrivning: Sorterar heltalen i fälten med första prioritet på index 1, dvs
--| första talet i talparen. Talen sorteras i stigande ordning.
--|
--| Indata: Ett Fält
--| Utdata: Ett Fält (Sorterat)
--|
--| Förutsättningar: ---
--|
-------------------------------------------------------------------------------

procedure Sortera_Tal (Tal_Som_Ska_Sorteras : in out Fält) is

------------- Byt_Plats -----------------

procedure Byt_Plats (A, B : in out Integer) is

C : Integer;

begin

C := A;
A := B;
B := C;

end Byt_Plats;

------------- Slut Byt_Plats ------------

begin

for I in Fält'First+1 .. Fält'Last loop
for Q in reverse I .. Fält'Last loop

if Tal_Som_Ska_Sorteras(Q)(1) < Tal_Som_Ska_Sorteras(Q-1)(1) then

Byt_Plats(Tal_Som_Ska_Sorteras(Q)(1), Tal_Som_Ska_Sorteras(Q-1)(1));
Byt_Plats(Tal_Som_Ska_Sorteras(Q)(2), Tal_Som_Ska_Sorteras(Q-1)(2));

elsif
Tal_Som_Ska_Sorteras(Q)(1) = Tal_Som_Ska_Sorteras(Q-1)(1) and
Tal_Som_Ska_Sorteras(Q)(2) < Tal_Som_Ska_Sorteras(Q-1)(2) then

Byt_Plats(Tal_Som_Ska_Sorteras(Q)(1), Tal_Som_Ska_Sorteras(Q-1)(1));
Byt_Plats(Tal_Som_Ska_Sorteras(Q)(2), Tal_Som_Ska_Sorteras(Q-1)(2));

end if;

end loop;
end loop;

end Sortera_Tal;

-- //////////////////// Slut Sortera_Tal /////////////////////////////

Heltalen : Fält;

begin


Generera_Tal(Heltalen);
New_Line(2);
Put_Line("De slumpmässigt genererade talen är (osorterade): ");
Skriv_Ut(Heltalen);
Sortera_Tal(Heltalen);
New_Line(2);
Put_Line("De slumpmässigt genererade talen är (sorterade): ");
Skriv_Ut(Heltalen);

end Main2;

Baan
2005-02-09, 22:41
det är en stor fördel att kunna något språk när du läser programmering senare men absolut ingen nödvändigthet, många får höga betyg och klarar sig bra ändå, men det blir inte direkt "piece of cake" som för dom som har erfarenheter tidigare.

men som sagt java är trevligt, objekt-orienterat osv :)

isato
2005-02-09, 22:44
Ett mycket enkelt program skrivet i ADA. OBS fungerar ej pga saknade paket etc.

----------------


with Ada.Text_IO; use Ada.Text_IO;
with Ada.Float_Text_IO; use Ada.Float_Text_IO;
with Ada.Integer_Text_IO; use Ada.Integer_Text_IO;
with Ada.Numerics.Discrete_Random;

-------------------------------------------------------------------------------
--| Modulnamn: Main2
--|
--| Beskrivning: Procedure som mha underprogram genererar 40 slumpade heltal
--| mellan 1 och 10, lägger in dessa i ett tvådimensionellt fält och
--| skriver ut fältet. Därefter sorteras heltalen i fältet och fältet
--| skrivs ut sorterat.
--|
--| Indata: ---
--| Utdata: ---
--|
--| Förutsättningar: ---
--|
-------------------------------------------------------------------------------

procedure Main2 is

type Rad is array (1 .. 2) of Integer;
type Fält is array (1 .. 20) of Rad;


-- //////////////////////// Generera_Tal ///////////////////////////////

-------------------------------------------------------------------------------
--| Modulnamn: Generera_Tal
--|
--| Beskrivning: Procedure som använder sig av en slumpgenerator för att lagra in
--| 40 stycken heltal (mellan 1 och 10) i ett tvådimensionellt fält.
--|
--| Indata: ---
--| Utdata: Ett tvådimensionellt fält (fält av fält)
--|
--| Förutsättningar: ---
--|
-------------------------------------------------------------------------------


procedure Generera_Tal (Tal : out Fält) is


subtype One_To_Ten is Integer range 1 .. 10;
package One_To_Ten_Random is
new Ada.Numerics.Discrete_Random(Result_Subtype => One_To_Ten);
-- En "Generator" är eKolontt "dolt" värde som styr pseudoslumptalssekvensen.
G : One_To_Ten_Random.Generator;


begin

One_To_Ten_Random.Reset(G);

for I in Fält'Range loop
for J in Rad'Range loop
Tal(I)(J) := One_To_Ten_Random.Random(G);
end loop;
end loop;

end Generera_Tal;

-- ////////////////////// Slut på Generera_Tal /////////////////////////

-- ////////////////////// Skriv_Ut /////////////////////////////////////

-------------------------------------------------------------------------------
--| Modulnamn: Skriv_Ut
--|
--| Beskrivning: Skriver ut fältet i "rader" och "kolonner".
--|
--| Indata: Ett Fält
--| Utdata: ---
--|
--| Förutsättningar: ---
--|
-------------------------------------------------------------------------------

procedure Skriv_Ut (Tal_Som_Ska_Skrivas_Ut : in Fält) is

begin
New_Line;

for I in Fält'Range loop
for J in Rad'Range loop
Put(Tal_Som_Ska_Skrivas_Ut(I)(J), Width => 0);
end loop;
New_Line;
end loop;


end Skriv_Ut;


-- ///////////////////// Slut Skriv_Ut ////////////////////////////////


-- /////////////////////// Sortera_Tal ////////////////////////////////

-------------------------------------------------------------------------------
--| Modulnamn: Sortera_Tal
--|
--| Beskrivning: Sorterar heltalen i fälten med första prioritet på index 1, dvs
--| första talet i talparen. Talen sorteras i stigande ordning.
--|
--| Indata: Ett Fält
--| Utdata: Ett Fält (Sorterat)
--|
--| Förutsättningar: ---
--|
-------------------------------------------------------------------------------

procedure Sortera_Tal (Tal_Som_Ska_Sorteras : in out Fält) is

------------- Byt_Plats -----------------

procedure Byt_Plats (A, B : in out Integer) is

C : Integer;

begin

C := A;
A := B;
B := C;

end Byt_Plats;

------------- Slut Byt_Plats ------------

begin

for I in Fält'First+1 .. Fält'Last loop
for Q in reverse I .. Fält'Last loop

if Tal_Som_Ska_Sorteras(Q)(1) < Tal_Som_Ska_Sorteras(Q-1)(1) then

Byt_Plats(Tal_Som_Ska_Sorteras(Q)(1), Tal_Som_Ska_Sorteras(Q-1)(1));
Byt_Plats(Tal_Som_Ska_Sorteras(Q)(2), Tal_Som_Ska_Sorteras(Q-1)(2));

elsif
Tal_Som_Ska_Sorteras(Q)(1) = Tal_Som_Ska_Sorteras(Q-1)(1) and
Tal_Som_Ska_Sorteras(Q)(2) < Tal_Som_Ska_Sorteras(Q-1)(2) then

Byt_Plats(Tal_Som_Ska_Sorteras(Q)(1), Tal_Som_Ska_Sorteras(Q-1)(1));
Byt_Plats(Tal_Som_Ska_Sorteras(Q)(2), Tal_Som_Ska_Sorteras(Q-1)(2));

end if;

end loop;
end loop;

end Sortera_Tal;

-- //////////////////// Slut Sortera_Tal /////////////////////////////

Heltalen : Fält;

begin


Generera_Tal(Heltalen);
New_Line(2);
Put_Line("De slumpmässigt genererade talen är (osorterade): ");
Skriv_Ut(Heltalen);
Sortera_Tal(Heltalen);
New_Line(2);
Put_Line("De slumpmässigt genererade talen är (sorterade): ");
Skriv_Ut(Heltalen);

end Main2;






Tack så mycket för att du tar dig tid!!!! :bow: *yourock*

Garnax
2005-02-09, 22:51
Jo du är färdig med gymnasiet men det betyder inte att du inte kan läsa kurser på gymnasienivå.

Garnax
2005-02-09, 22:55
Här har du en enkel räknare i c++...

#include <iostream.h>
#include<conio.h>


float pris, liter, tot;
void main (){
clrscr();
cout<<"Ange soppa pris ";
cin>>pris;
cout<<"och antal liter av soppa ";
cin>>liter;
tot=pris*liter;
cout<<"kostnad "<<tot<<"kr";
getch();
}

Du ser säkert direkt vad den är gjort att göra.

isato
2005-02-09, 22:57
Här har du en enkel räknare i c++...

#include <iostream.h>
#include<conio.h>


float pris, liter, tot;
void main (){
clrscr();
cout<<"Ange soppa pris ";
cin>>pris;
cout<<"och antal liter av soppa ";
cin>>liter;
tot=pris*liter;
cout<<"kostnad "<<tot<<"kr";
getch();
}

Du ser säkert direkt vad den är gjort att göra.



hahaha nej...rena grekiskan

Garnax
2005-02-09, 23:07
Här har du en enkel räknare i c++...

#include <iostream.h>
#include<conio.h>


float pris, liter, tot;
void main (){
clrscr();
cout<<"Ange soppa pris ";
cin>>pris;
cout<<"och antal liter av soppa ";
cin>>liter;
tot=pris*liter;
cout<<"kostnad "<<tot<<"kr";
getch();
}

Du ser säkert direkt vad den är gjort att göra.

Då förklarar jag lite förenklat

Include filerna inehåller reglerna för t.ex hur man räknar vilket vi gör i detta program. Ska programet göra något annat eller kanske något mer som behöver man andra och fler include filer.

i editorn jag skriver i kan jag skriva något och sen trycka f1 och då berättar editorn för mig vilket include fil som ska vara till...

Sen kommer float, pris,lite och tot ska räknas och till det behövs utrymme i minnet. Hur mycket (och alltså hur stora talen kan bli) avgörs av vilken form man har. float tillåter stora tal och dessutom med decimaler.

sen har vi void main () har startar huvudprogrammet

clrscr(); rensar fönstret innan programmet startar

cout<< skrivs ut på skärmen så du ser det talet du skriver och sedan avslutar med enter fångas av raden efter cin>>

uträkningen förstår du säkert. Här avgör man värdet av tot...som ska vara summan av pris*liter.

cout<<"kostnad "<<tot<<"kr"; här skriver den ut svaret och med <<tot så skriver den ut värdet av tot och sen avslutar med att skriva kronor.


getch(); får programmet att stanna kvar här tills du stänger det själv.

utan denna skulle programmet direkt efter att den räknat ut och skrivit ut svaret stänga ner sig innan du hinner läsa det.

Agent Orange
2005-02-09, 23:58
Om syftet är att underlätta framtida studier så tycker jag att du bör titta på vilka språk som används i den första programmeringskursen på det program/universitet du vill komma in på. Utbildningarna skiljer sig väldigt mycket åt i inriktning, Datavetenskap t.ex. är iaf här i Linköping väldigt teoretiskt orienterat och betonar förståelse väldigt mycket, medans andra program betonar färdighet i olika verktyg (som Java, C++) mer.

Om du t.ex. vill läsa Datavetenskap här så skulle du tjäna väldigt mycket mer på att leka med Scheme eller Lisp än C++. De som har använt t.ex. C++ väldigt mycket men aldrig något annat har snarast en nackdel mot de som aldrig programmerat alls, eftersom du måste tänka på ett helt annat sätt i t.ex. Lisp, och därför hindras av att ha vant dig vid att tänka i C++..

Det bästa vore om du hade tid att lära dig ett språk vardera ur de tre huvudgrupperna: funktionella språk, objektorienterade språk och imperativa språk. Dessa tre grupper ingår alla i den första programmeringskursen för datavetare och datatekniker på mitt universitet. Gissar att det är standard på alla teoretiskt inriktade utbildningar.

Exempel ur dessa grupper:
funktionella språk: scheme, haskell, clean, ml, lisp
objektorienterade: java, python, smalltalk
imperativa: c, pascal, assembler

C++ är en hybrid som innehåller delar av alla de ovanstående grupperna. Jag skulle aldrig råda en nybörjare att börja med c++, speciellt inte någon vars mål inte är praktiskt inriktade utan insiktsinriktade..

Om du förklarar närmare vilken typ av utbildning du är intresserad av att träna dig inför så blir det lättare för oss att hjälpa dig.

isato
2005-02-10, 00:00
Då förklarar jag lite förenklat

Include filerna inehåller reglerna för t.ex hur man räknar vilket vi gör i detta program. Ska programet göra något annat eller kanske något mer som behöver man andra och fler include filer.

i editorn jag skriver i kan jag skriva något och sen trycka f1 och då berättar editorn för mig vilket include fil som ska vara till...

Sen kommer float, pris,lite och tot ska räknas och till det behövs utrymme i minnet. Hur mycket (och alltså hur stora talen kan bli) avgörs av vilken form man har. float tillåter stora tal och dessutom med decimaler.

sen har vi void main () har startar huvudprogrammet

clrscr(); rensar fönstret innan programmet startar

cout<< skrivs ut på skärmen så du ser det talet du skriver och sedan avslutar med enter fångas av raden efter cin>>

uträkningen förstår du säkert. Här avgör man värdet av tot...som ska vara summan av pris*liter.

cout<<"kostnad "<<tot<<"kr"; här skriver den ut svaret och med <<tot så skriver den ut värdet av tot och sen avslutar med att skriva kronor.


getch(); får programmet att stanna kvar här tills du stänger det själv.

utan denna skulle programmet direkt efter att den räknat ut och skrivit ut svaret stänga ner sig innan du hinner läsa det.


stort tack till dig också.... förstår långt ifrån allt.... men mer än jag gjorde innan.........

sånna här "cout<<" hur vet man vad de står för??
alltså utan att du berättar det :D

jakke
2005-02-10, 00:04
Om syftet är att underlätta framtida studier så tycker jag att du bör titta på vilka språk som används i den första programmeringskursen på det program/universitet du vill komma in på. Utbildningarna skiljer sig väldigt mycket åt i inriktning, Datavetenskap t.ex. är iaf här i Linköping väldigt teoretiskt orienterat och betonar förståelse väldigt mycket, medans andra program betonar färdighet i olika verktyg (som Java, C++) mer.

Om du t.ex. vill läsa Datavetenskap här så skulle du tjäna väldigt mycket mer på att leka med Scheme eller Lisp än C++. De som har använt t.ex. C++ väldigt mycket men aldrig något annat har snarast en nackdel mot de som aldrig programmerat alls, eftersom du måste tänka på ett helt annat sätt i t.ex. Lisp, och därför hindras av att ha vant dig vid att tänka i C++..

Det bästa vore om du hade tid att lära dig ett språk ur de tre huvudgrupperna: funktionella språk, objektorienterade språk och imperativa språk. Dessa tre grupper ingår alla i den första programmeringskursen för datavetare och datatekniker på mitt universitet. Tror det är standard på teoretiskt inriktade utbildningar.

Exempel ur dessa grupper:
funktionella språk: scheme, haskell, clean, ml, lisp
objektorienterade: java
imperativa: c, pascal, assembler

C++ är en hybrid som innehåller delar av alla de ovanstående grupperna. Jag skulle aldrig råda en nybörjare att börja med c++, speciellt inte någon vars mål inte är praktiskt inriktade utan insiktsinriktade..

Om du förklarar närmare vilken typ av utbildning du är intresserad av att träna dig inför så blir det lättare för oss att hjälpa dig.
Bra skrivet!
Jag läser IT-p(civiling.) i uppsala och vi läser dom första programmeringskurserna tillsammans med DVP. Vi har läst funktionell programmering i ML.
Jag rekommenderar ingen att använda det språket då det är i princip utdött. Även om ingen av hade någon erfarenhet av funktionell programmering gick det överlag bättre för oss som kodat förr.

Edit: Tycker du ska köpa en bok om det språk du vill lära dig.

isato
2005-02-10, 00:10
Om syftet är att underlätta framtida studier så tycker jag att du bör titta på vilka språk som används i den första programmeringskursen på det program/universitet du vill komma in på. Utbildningarna skiljer sig väldigt mycket åt i inriktning, Datavetenskap t.ex. är iaf här i Linköping väldigt teoretiskt orienterat och betonar förståelse väldigt mycket, medans andra program betonar färdighet i olika verktyg (som Java, C++) mer.

Om du t.ex. vill läsa Datavetenskap här så skulle du tjäna väldigt mycket mer på att leka med Scheme eller Lisp än C++. De som har använt t.ex. C++ väldigt mycket men aldrig något annat har snarast en nackdel mot de som aldrig programmerat alls, eftersom du måste tänka på ett helt annat sätt i t.ex. Lisp, och därför hindras av att ha vant dig vid att tänka i C++..

Det bästa vore om du hade tid att lära dig ett språk vardera ur de tre huvudgrupperna: funktionella språk, objektorienterade språk och imperativa språk. Dessa tre grupper ingår alla i den första programmeringskursen för datavetare och datatekniker på mitt universitet. Gissar att det är standard på alla teoretiskt inriktade utbildningar.

Exempel ur dessa grupper:
funktionella språk: scheme, haskell, clean, ml, lisp
objektorienterade: java, python, smalltalk
imperativa: c, pascal, assembler

C++ är en hybrid som innehåller delar av alla de ovanstående grupperna. Jag skulle aldrig råda en nybörjare att börja med c++, speciellt inte någon vars mål inte är praktiskt inriktade utan insiktsinriktade..

Om du förklarar närmare vilken typ av utbildning du är intresserad av att träna dig inför så blir det lättare för oss att hjälpa dig.



det är ju inte bestämt än vad jag tänker gå..... bara något inom datavetenskap...... inte bestämt än men tack så mycket ändå!!

JAM
2005-02-10, 00:11
Om du t.ex. vill läsa Datavetenskap här så skulle du tjäna väldigt mycket mer på att leka med Scheme eller Lisp än C++. De som har använt t.ex. C++ väldigt mycket men aldrig något annat har snarast en nackdel mot de som aldrig programmerat alls, eftersom du måste tänka på ett helt annat sätt i t.ex. Lisp, och därför hindras av att ha vant dig vid att tänka i C++..Har svårt att tänka mig att han skulle ha någon nackdel av att kunna något, oavsett vad det är.Det bästa vore om du hade tid att lära dig ett språk vardera ur de tre huvudgrupperna: funktionella språk, objektorienterade språk och imperativa språk.Absolut, men det är väl ändå rätt mycket begärt. :)
Jag tycker att han gör det bra om han lär sig Java rätt bra.Dessa tre grupper ingår alla i den första programmeringskursen för datavetare och datatekniker på mitt universitet. Gissar att det är standard på alla teoretiskt inriktade utbildningar.

Exempel ur dessa grupper:
funktionella språk: scheme, haskell, clean, ml, lisp
objektorienterade: java, python, smalltalk
imperativa: c, pascal, assembler
...och logiska som t ex Prolog. :)

isato: Tanka hem e-böcker om Java eller C# från DC. Jag tycker att det är ett bra nybörjarval.

EDIT: Självklart ska du se till att det är lagliga versioner du tar hem...

isato
2005-02-10, 00:12
Har svårt att tänka mig att han skulle ha någon nackdel av att kunna något, oavsett vad det är.Men det är väl ändå rätt mycket begärt? Jag tycker att han gör det bra om han lär sig Java rätt bra.
...och logiska som t ex Prolog. :)

isato: Tanka hem e-böcker om Java eller C# från DC. Jag tycker att det är ett bra nybörjarval.

EDIT: Självklart ska du se till att det är lagliga versioner du tar hem...


vart hittar jag det jag ska tanka hem?? eller hur kanske jag ska säga
vad ska jag söka efter ?

aliquis
2005-02-10, 00:17
Hum. Du behöver inga förkunskaper i programmering om du söker någon högskolelinje, de börjar på en nivå som alla klarar av.

Jag tror ju helt klart en kompis som redan kan koda är vettigast, alternativet är en annan kompis som också vill lära sig.

Sedan vettefan om du ska börja med c osv, det går ju, men vore väl enklare med basic. Trista är väl att om du börjar med det nuförtiden blir det väl visualbasic och då är det ju inte mycket till programmering alls (eftersom du får massa funktionallitet utan att göra ett skit själv).

Tycker du kan börja med exempelvis ruby (eller python, perl, java ...), det är gratis, inte lika avancerat som c, och har dokumentation på webben.

http://www.rubycentral.com/
http://www.ruby-lang.org/en/
http://rubyforge.org/frs/?group_id=167 (installer för windows)
http://www.rubycentral.com/book/ (bok)

Kommer verka mycket mer begripligt än c o grejer.
Förövrigt suger det att läsa på datorn/internet, papper är enklare. Köp en bok =P
Och sedan när du har grunderna tror _jag_ det kanske går lättare att bestämma sig vad man vill försöka göra och kolla upp efterhand istället för att plöja igenom två böcker och sedan sätta sig ner och börja...

JAM
2005-02-10, 00:18
vart hittar jag det jag ska tanka hem?? eller hur kanske jag ska säga
vad ska jag söka efter ?
Godtyckligt fildelningsprogram?

Agent Orange
2005-02-10, 00:18
Har svårt att tänka mig att han skulle ha någon nackdel av att kunna något, oavsett vad det är.
.
Tja.. svårt att veta. Jag har sett exempel på folk som kunde halvmycket C++ etc innan utbildningen, och hade väldigt svårt att vänja sig av med det tänkandet. Men jag vet ju inte vad som var orsaken.

De som har programmerat mycket C++ har nog däremot en fördel, för då har de antagligen stött på saker som utvecklat deras tänkande (typ rekursiva datastrukturer som träd etc och algoritmer på dessa) i deklarativ riktning ändå.


Men det är väl ändå rätt mycket begärt? Jag tycker att han gör det bra om han lär sig Java rätt bra.
...och logiska som t ex Prolog. :)
.
Jag begär inget.. Jag skrev "det bästa vore", och det står jag fast vid. Sen om han har tid eller ork med det är en annan sak.

JAM
2005-02-10, 00:25
De som har programmerat mycket C++ har däremot en klar fördel, för då har de antagligen stött på saker som utvecklat deras tänkande ändå (typ rekursiva datastrukturer som träd etc och algoritmer på dessa).Ja, minst sagt. Just datastrukturer av den typen stöter nog de flesta på som programmerat länge, även i Java etc, men framförallt tycker jag att det är minneshanteringen som dessa erfarna C/C++-programmerare har ett enormt plus av att förstå. Minns när jag började med C++... Det var krånligt att förstå vad pekare och referenser var... och att man själv kunde allokera upp minne, det var ju väldigt konstigt... :)Jag begär inget.. Jag skrev "det bästa vore", och det står jag fast vid. Sen om han har tid eller ork med det är en annan sak.Nä, jag vet. Editerade lite och omformulerade mig. :)

Agent Orange
2005-02-10, 00:30
men framförallt tycker jag att det är minneshanteringen som dessa erfarna C/C++-programmerare har ett enormt plus av att förstå. Minns när jag började med C++... Det var krånligt att förstå vad pekare och referenser var... och att man själv kunde allokera upp minne, det var ju väldigt konstigt... :)Nä, jag vet. Editerade lite och omformulerade mig. :)

Hmm möjligt.. Men risken finns att de tror att det är det programmering handlar om: att hålla reda på syntax och pekare. Med Scheme t.ex. så hamnar fokus mer på problemlösning och att lära sig ett tänkande.

Nu ska jag sova :sleep:

JAM
2005-02-10, 00:41
Hmm möjligt.. Men risken finns att de tror att det är det programmering handlar om: att hålla reda på syntax och pekare. Med Scheme t.ex. så hamnar fokus mer på problemlösning och att lära sig ett tänkande.

Nu ska jag sova :sleep:
Det håller jag med om. Det är mer datortekniska bitar.

Så, isato: Lär dig java! Om du har vägarna förbi huvudstaden kan du få köpa min första javabok för en billig penning. Tar upp ALLT. 1600 sidor, kanonbra.

adde
2005-02-10, 09:41
Bästa sättet att lära sig programmera på är att skaffa sig någon form av behov eller intresse. Kom på ett enkelt program du skulle vilja ha och börja skriva...

Jag är i princip autodidakt (därav min trial-and-error mentalitet), på min tid kunde man inte läsa programmering i gymnasiet men man vart lite fascinerad av datorgrafik... En bra referensmanual och en ide om vad du vill göra är allt som behövs (ja och lite tid såklart :D). Jag kunde "tenta av" programmeringskurserna på civ.ing.

Började knåpa lite med Qbasic (Ja, jag är gammal :D), ASCII-baserat Tetris och packman var väl det första jag knåpade ihop. Sen lärde man sig "sätta datorn i grafikläge" 320x200, 16 färger. Visst, jättekul men ganska begränsande. Dags att lära sig Pascal. Nu började det bli lite rörlig grafik, 3D (oerhört primitivt än så länge). Öppna och skriva PCX(? oj, jag är verkligen gammal) bilder. När minneshanteringen blev för trög (typ mappa bitmappar på ytor osv), ja då var det såklart dags för lite C...

/adde

aliquis
2005-02-10, 10:37
Jag kodar ju aldrig av någon anledning, mest för det är tråkigt själv och för jag alltid tror jag måste göra annat, men får väl skärpa mig. Började med MICROSOFTS! Basic på amigan följt av AMOS, men killen som lärde mig var igge/noice och han skrev ju demos i assembler så jag lånade hans gamla dmz och kopierade hela deras assemblerkurs och försökte lära mig den, men jag var väl inte riktigt mogen för det egentligen. Gick väl bra en bit. Sedan blev det en del qbasic med, och c på gymnasiet men hade ingen c-kompilator på amigan (sas/c var på fyra diskar vill jag minnas...).
Ett tag senare blev det StormC på amigan men inte särskilt mycket gjort ;), sedan kollade jag lite på html o perl o grejer och så hade vi en kurs i visualbasic o så blev det c, lisp, assembler och java på universitetet, men jag kodar fortfarande inget :(.

Vill som sagt lära mig ocaml, ruby o java men har väl inte riktigt råd att köpa böcker och läsa på 700s utskriva a4 eller skärmen suger ju, man skall som sagt börja och kolla upp när man fastnar istället. Inför javakursen köpte jag suns javaböcker men del 1 är för java 1.3 och del 2 är java 1.2 och det är ju lite trist för 1.4 hade precis kommit då och 1.5 finns ju nu. Men duger väl som grund ändå antar jag.

(och nej, jag ser egentligen ingen vits till att lära sig och koda c mer än om man skall kika på något som redan finns.)

Trance
2005-02-10, 17:43
Jag skulle aldrig börja med c++.

Antingen skulle jag börja med c eller c#(alternativt java)

jwzrd
2005-02-10, 17:45
Jag kodar ju aldrig av någon anledning, mest för det är tråkigt själv och för jag alltid tror jag måste göra annat, men får väl skärpa mig. Började med MICROSOFTS! Basic på amigan följt av AMOS, men killen som lärde mig var igge/noice och han skrev ju demos i assembler så jag lånade hans gamla dmz och kopierade hela deras assemblerkurs och försökte lära mig den, men jag var väl inte riktigt mogen för det egentligen. Gick väl bra en bit. Sedan blev det en del qbasic med, och c på gymnasiet men hade ingen c-kompilator på amigan (sas/c var på fyra diskar vill jag minnas...).
Ett tag senare blev det StormC på amigan men inte särskilt mycket gjort ;), sedan kollade jag lite på html o perl o grejer och så hade vi en kurs i visualbasic o så blev det c, lisp, assembler och java på universitetet, men jag kodar fortfarande inget :(.

Vill som sagt lära mig ocaml, ruby o java men har väl inte riktigt råd att köpa böcker och läsa på 700s utskriva a4 eller skärmen suger ju, man skall som sagt börja och kolla upp när man fastnar istället. Inför javakursen köpte jag suns javaböcker men del 1 är för java 1.3 och del 2 är java 1.2 och det är ju lite trist för 1.4 hade precis kommit då och 1.5 finns ju nu. Men duger väl som grund ändå antar jag.

(och nej, jag ser egentligen ingen vits till att lära sig och koda c mer än om man skall kika på något som redan finns.)


Kör java tutorial på java.sun.com/tutorial
(Gäller för alla som vill lära sig java). Den är schysst.

Trance
2005-02-10, 17:49
Kör java tutorial på java.sun.com/tutorial
(Gäller för alla som vill lära sig java). Den är schysst.


Dessutom har vi ju denna:

http://www.javaalmanac.com/

Som är helt enormt bra för när man vill se hur något fungerar. Någon som vet om det finns något liknande för c#?

Baan
2005-02-10, 20:00
min rekommendation av java grundar sig mest på att det är morgondagens teknik man får lära sig, plus att det är väldigt strikt objektorienterat till skillnad från c++ (t ex). Funktionella språk kan vara fint om man tänkte plugga något mer hårdvaruinriktat, själv går jag IT på Chalmers så funktionella språk är tämligen ointressant (och vad jag kan se kommer det inte vara särskilt intressant i framtiden). Om du ska sata på något lågnivå så är inte assembler fel dock inte särskilt mycket praktiskt nytta av den mest en kul grej isf.

Fördelen med att börja lära dig t ex Java nu och inte när du börjar med din första Javakurs eller liknande på högskolan är att om du inte kan något får du kämpa en hel del, kan du en del grunder så kan det bli en slapp kurs. Dom flesta har iofs betydligt svårare på fortsättnignskurserna

Grahn
2005-02-10, 20:03
Java morgondagens teknik? Java kom med en stor skräll för X antal år sedan och är redan passé.

Helt okej språk dock men att kalla det morgondagens teknik är kanppast korrekt. ;)

jwzrd
2005-02-10, 20:03
Man kan koda Java som C++ och nästan vice versa också. Anledningen till att, iallafall jag, tycker man bör börja med java för att sen självklart fortsätta med C++ är för att det helt enkelt finns fler detaljer i C++ som gör det mer komplext (inte komplicerat jag menar).

Möjligt att Ada och tex Smalltalk är ännu simplare än Java, men dom två existerar inte utanför skolans värld nuförtiden, så det känns som bortkastad tid om man inte vet med sig att man kommer att kasta sig över alla programmeringssätt man kan.

Programmering är barnligt kul, så det är bara att talla på alla möjliga språk.

jwzrd
2005-02-10, 20:04
Java morgondagens teknik? Java kom med en stor skräll för X antal år sedan och är redan passé.

Helt okej språk dock men att kalla det morgondagens teknik är kanppast korrekt. ;)

Haha, japp, redan passe :) Har bara funnits i snart 10 år nu.

Baan
2005-02-10, 20:07
Man kan koda Java som C++ och nästan vice versa också. Anledningen till att, iallafall jag, tycker man bör börja med java för att sen självklart fortsätta med C++ är för att det helt enkelt finns fler detaljer i C++ som gör det mer komplext (inte komplicerat jag menar).

Möjligt att Ada och tex Smalltalk är ännu simplare än Java, men dom två existerar inte utanför skolans värld nuförtiden, så det känns som bortkastad tid om man inte vet med sig att man kommer att kasta sig över alla programmeringssätt man kan.

Programmering är barnligt kul, så det är bara att talla på alla möjliga språk.

C++ är om inte annat mycket kraftfullare (vilket är iofs ganska viktigt) , fast man lär sig java på högskolorna mest för att dte är ganska hardcore objektorienterat och tillåter t ex inte vissa grejer man lätt kan få för sig att göra i C++. Som du säger väldigt lika så det är inte svårt gå över till Java från C++, en kompis hade ganska mycket erfarenhet av C++ dock inget av Java och det var inga problem, han whinade lite på syntaxen men han är rätt mesig :)

Själv hade jag mest erfarenheter av Pascal/Delphi och ytterst lite C++ så för mig var övergången betydlgit värre. Objektorienterat tänkande var svårt :/

Piranha
2005-02-10, 20:07
10 Print " Herkulez är en slyna";
20 goto 10

Baan
2005-02-10, 20:08
Java morgondagens teknik? Java kom med en stor skräll för X antal år sedan och är redan passé.

Helt okej språk dock men att kalla det morgondagens teknik är kanppast korrekt. ;)

ca 10 år ja, det är gnaska nytt.. när kom C ? :P

och java är inte så utspritt vad jag hört , på det sättet menar jag morgondagens teknik, att ersätta föråldrare språk, om man nu får säga så :devil:

Agent Orange
2005-02-10, 20:12
min rekommendation av java grundar sig mest på att det är morgondagens teknik man får lära sig, plus att det är väldigt strikt objektorienterat till skillnad från c++ (t ex).

Det mesta i Java uppfanns på 80-talet.. men det kan ju iofs vara morgondagens teknik för det.


Funktionella språk kan vara fint om man tänkte plugga något mer hårdvaruinriktat

Nu pratar du definitivt i nattmössan. Funktionella språk utgår inte ens från vonneumann-arkitekturen (dvs normala datorers uppbyggnad) utan från en matematisk modell. Den modell Lisp t.ex. bygger på (lambdakalkyl) fanns till och med innan det ens fanns datorer. Så att säga att funktionella språk är hårdvaruinriktade är aningen udda. Du kanske tänker på procedurella språk?

Trance
2005-02-10, 20:12
C++ är om inte annat mycket kraftfullare (vilket är iofs ganska viktigt) , fast man lär sig java på högskolorna mest för att dte är ganska hardcore objektorienterat och tillåter t ex inte vissa grejer man lätt kan få för sig att göra i C++. Som du säger väldigt lika så det är inte svårt gå över till Java från C++, en kompis hade ganska mycket erfarenhet av C++ dock inget av Java och det var inga problem, han whinade lite på syntaxen men han är rätt mesig :)

Själv hade jag mest erfarenheter av Pascal/Delphi och ytterst lite C++ så för mig var övergången betydlgit värre. Objektorienterat tänkande var svårt :/

Att det är "mycket" kraftfulla är väl en liten överdrift. Det har väl i vissa sammanhang bättre prestanda, men hur många skriver operativsystem eller liknande?

Dessutom så flödar c++ kod av minnesläckor och annan skit.

Baan
2005-02-10, 20:18
Det mesta i Java uppfanns på 80-talet.. men det kan ju iofs vara morgondagens teknik för det.

"uppfanns", utveckaldes skule jag kalla det, det slog igenom på mitten av 90-talet, kan ju leta lite "java history" om det är nu av någon relevans, men varför jobba sig. Det är ett modernt språk, om det är morgondagens teknik, ja, det får vi lov att se antar jag

Nu pratar du definitivt i nattmössan. Funktionella språk utgår inte ens från vonneumann-arkitekturen (dvs normala datorers uppbyggnad) utan från en matematisk modell. Den modell Lisp t.ex. bygger på (lambdakalkyl) fanns till och med innan det ens fanns datorer. Så att säga att funktionella språk är hårdvaruinriktade är aningen udda. Du kanske tänker på procedurella språk?

Nu har du iofs knarkat loss lite när det gäller vad jag sagt. Jag har aldrig sagt att dom är hårdvaruinriktade, dock kan jag enbart säga att jag har för mig att folk som studerar med hårdvaruinriktat får prova på funktionella språk. Det får t ex inte jag som studerar mer mjukvaruinriktat. Jag kan dock inte svära på att det gäller t ex datorteknik.


Till Trance:

Det är den allmäna inställningen C++ vs. Java men det handlar nog mest om att C++ vart med längre, inte mina egna åsikter är inte tillräckilgt insatt i C++ för att avgöra det.

Agent Orange
2005-02-10, 20:29
Nu har du iofs knarkat loss lite när det gäller vad jag sagt. Jag har aldrig sagt att dom är hårdvaruinriktade, dock kan jag enbart säga att jag har för mig att folk som studerar med hårdvaruinriktat får prova på funktionella språk.


Det finns ingen logik i att lägga fokus på språk som bygger på matematiska modeller (till skillnad från hårdvarumodeller) om de ska lära sig att programmera hårdvarunära. Ju mer teoretiskt inriktad mot mjukvaruutveckling en utbildning är desto mer tenderar de att betona logik och funktionella språk, och omvänt.

Baan
2005-02-10, 20:34
Det finns ingen logik i att lägga fokus på språk som bygger på matematiska modeller (till skillnad från hårdvarumodeller) om de ska lära sig att programmera hårdvarunära. Ju mer teoretiskt inriktad mot mjukvaruutveckling en utbildning är desto mer tenderar de att betona logik och funktionella språk, och omvänt.

tänk på att man inte alltid behöver vara stensäker på allt man inte är så säker på.
http://www.student.chalmers.se/sp/programplan?program_id=86&grade=1

du kan ju kolla på vad första kursen handlar om.

Grahn
2005-02-10, 20:39
HAHAHA alltid samma grej kodare som bråkar om vem som valt bäst språk ;)

programmeringsspråk är som en verktygslåda, ska man i med en skruv är det bättre att använda mejsel än slägga oavsett om släggan är mer kraftfull.


Fast VB folket behöver alltid en känga! :cool:

Agent Orange
2005-02-10, 20:42
tänk på att man inte alltid behöver vara stensäker på allt man inte är så säker på.
http://www.student.chalmers.se/sp/programplan?program_id=86&grade=1

du kan ju kolla på vad första kursen handlar om.

Haha, vad var det i mitt uttalande som var fel då?

Även på mitt universitet så läser de som pluggar till civilingenjör i Datateknik funktionell programmering (och objektorienterad, och imperativ etc). Det är inte för att de är inriktade på hårdvara, utan för att en civilingenjör ska ha en bred kompetens inom både hård- och mjukvara.

Om man istället tittar på de som läser till högskoleingenjör (ett mer praktiskt inriktat program, mindre teoretiskt) så har de flesta nog inte skrivit en enda rad funktionell kod.

På mitt program, Datavetenskap, som är det program här som är mest inriktat mot teoretisk datalogi, så betonas funktionell programmering och logik ännu mer än på Datateknik.

Kan du förklara varför en person som ska utbildas i hårdvarunära programmering skulle lägga större tonvikt vid språk där hårdvaran inte kan ses eller manipuleras än andra?

Baan
2005-02-10, 20:49
Haha, vad var det i mitt uttalande som var fel då?

Även på mitt universitet så läser de som pluggar till civilingenjör i Datateknik funktionell programmering (och objektorienterad, och imperativ etc). Det är inte för att de är inriktade på hårdvara, utan för att en civilingenjör ska ha en bred kompetens inom både hård- och mjukvara.

Om man istället tittar på de som läser till högskoleingenjör (ett mer praktiskt inriktat program, mindre teoretiskt) så har de flesta nog inte skrivit en enda rad funktionell kod.

På mitt program, Datavetenskap, som är det program här som är mest inriktat mot teoretisk datalogi, så betonas funktionell programmering och logik ännu mer än på Datateknik.

Kan du förklara varför en person som ska utbildas i hårdvarunära programmering skulle lägga större tonvikt vid språk där hårdvaran inte kan ses eller manipuleras än andra?

det som var uppenbarliggen fel är att någon anser att dte finns en viss logik på ett ganska hårdvaruinriktat program som datorteknik att håla kurser i just funktionella språk. Uppenbarliggen har någon med förhoppningsvis mer kompetens än dig (eller mig) kommit fram till att det finns en viss logik i det.

Å andra sidan är ju inte datateknik ren hårdvara heller, bara mer inriktat än t ex IT programmet, vet inte hur det ligger till på andra uni:s.

Om du vill ha förklaring på upplägget så hör dig vänligen av till Datas kasnli, jag jobbar inte där, och har inte heller något med Datateknik att göra egentligen.

jakke
2005-02-10, 20:52
Jag går IT i uppsala och om jag vill kan jag bli ganska inriktad på hårdvara. Då är C ett språk man kommer använda. Man kodar inte hårdvara i funktionel programmering.
Just nu kodar jag funktionellt i ML, detta för att vi jobbar mycket med algoritmer och för att vi ska få kännsla för att lösa "problem" på ett effektivt sätt!

Agent Orange
2005-02-10, 20:53
det som var uppenbarliggen fel är att någon anser att dte finns en viss logik på ett ganska hårdvaruinriktat program som datorteknik att håla kurser i just funktionella språk. Uppenbarliggen har någon med förhoppningsvis mer kompetens än dig (eller mig) kommit fram till att det finns en viss logik i det.

Å andra sidan är ju inte datateknik ren hårdvara heller, bara mer inriktat än t ex IT programmet, vet inte hur det ligger till på andra uni:s.

Om du vill ha förklaring på upplägget så hör dig vänligen av till Datas kasnli, jag jobbar inte där, och har inte heller något med Datateknik att göra egentligen.

Jag behöver inte fråga Institutionen för Datavetenskap varför de har valt det här upplägget, eftersom jag själv jobbat där med just introduktionskurser till programmering i några år (inte längre dock).

z_bumbi
2005-02-10, 20:55
10 Print " Herkulez är en slyna";
20 goto 10

Frågan är om den yngre generationen känner igen det här? Det kanske är lite för mycket "bas"kunskaper.

Baan
2005-02-10, 20:57
Jag behöver inte fråga Institutionen för Datavetenskap varför de har valt det här upplägget, eftersom jag själv jobbat där med just introduktionskurser till programmering i några år (inte längre dock). Jag pratar dessutom i telefon just nu med en adjunkt i datalogi som sa, efter att han slutat skratta, att den där killen vet ju inte vad han pratar om..

Fråga du eftersom det är helt meningslöst att ha det på ett hårdvaruinriktat program dock har man det ändå. Notera även att jag har aldrig sagt att det har något med hårdvaran att göra så vi kan skippa idiotiska påpekanden där tycker jag, samtidigt kan du börja läsa vad jag skriver utan att lägga till enga teorier, underlättat om man vill någonsin komma någonvart speciellt i en meningslös diskussion där du måste påpeka något för påpekandets skull i oron att ditt könsorgan blir mindre om du inte gör så.

Agent Orange
2005-02-10, 21:03
Fråga du eftersom det är helt meningslöst att ha det på ett hårdvaruinriktat program dock har man det ändå. Notera även att jag har aldrig sagt att det har något med hårdvaran att göra så vi kan skippa idiotiska påpekanden där tycker jag, samtidigt kan du börja läsa vad jag skriver utan att lägga till enga teorier, underlättat om man vill någonsin komma någonvart speciellt i en meningslös diskussion där du måste påpeka något för påpekandets skull i oron att ditt könsorgan blir mindre om du inte gör så.

Alltså, hårdvaruinriktade program inriktar sig inte på funktionell programmering. Att t.ex. civilingenjörer läser det beror på att de ska ha stor kompentens inom både datalogi och datateknik. Det har med deras datalogiska kompetens att göra, inte med hårdvarudelen av utbildningen.

Men jag föreslår att du tar upp den här frågan med någon datalog på ditt universitet om du vill fortsätta, för jag tror inte vi kommer längre än så här.

Baan
2005-02-10, 21:06
Alltså, hårdvaruinriktade program inriktar sig inte på funktionell programmering. Att t.ex. civilingenjörer läser det beror på att de ska ha stor kompentens inom både datalogi och datavetenskap. Det har med deras datalogiska kompetens att göra, inte med hårdvarudelen av utbildningen.

Men jag föreslår att du tar upp den här frågan med någon datalog på ditt universitet om du vill fortsätta, för jag tror inte vi kommer längre än så här.

jag upprepar, du övertolkar mina svar till något jag inte har sagt. Jag förstår fullständigt att det finns en högre tanke med uppläggen på programmen, och jag har aldrig påstått att data t ex kommer läsa _massor_ med funktionell programmering. Jag påpekade helt enkelt att folk som läser hårdvara (jag anser att dom iaf läser hårdvara när jag jämför med vad jag själv läser även om dom inte behöver bli särskilt mycket "hårdvara" för det) faktiskt läser funktionell programmering. Att du sen övertolkar det till något påstående som att data lägger ner 4,5 år på just funktionell programmering verkar vara någon föräkrlek till quote knappen *grr27*
Det är inger mer med det än så.

för övrigt är det ganska självklart man läser en hel del som kanske inte direkt förknippas med ens bild av programmet, men det är just som du säger för ingenjörkompetensens skull. Förstår dock inte varför jag behöver lära mig om mångfald :confused:

Agent Orange
2005-02-10, 21:13
jag upprepar, du övertolkar mina svar till något jag inte har sagt. Jag förstår fullständigt att det finns en högre tanke med uppläggen på programmen, och jag har aldrig påstått att data t ex kommer läsa _massor_ med funktionell programmering. Jag påpekade helt enkelt att folk som läser hårdvara (jag anser att dom iaf läser hårdvara när jag jämför med vad jag själv läser även om dom inte behöver bli särskilt mycket "hårdvara" för det) faktiskt läser funktionell programmering. Att du sen övertolkar det till något påstående som att data lägger ner 4,5 år på just funktionell programmering verkar vara någon föräkrlek till quote knappen *grr27*
Det är inger mer med det än så.

för övrigt är det ganska självklart man läser en hel del som kanske inte direkt förknippas med ens bild av programmet, men det är just som du säger för ingenjörkompetensens skull. Förstår dock inte varför jag behöver lära mig om mångfald :confused:

Jo, men det är ju för att de läser datalogi som de läser funktionell programmering, inte för att de läser hårdvara (de läser ju båda). Det lät som om du tyckte att det var för att de läser hårdvara som de läser funktionell programmering. Sams? :love:

Baan
2005-02-10, 21:17
Jo, men det är ju för att de läser datalogi som de läser funktionell programmering, inte för att de läser hårdvara (de läser ju båda). Det lät som om du tyckte att det var för att de läser hårdvara som de läser funktionell programmering. Sams? :love:

lät och lät, det var därför jag inte vill ha någon tolkning utan gick tillbaka till det jag skrev exakt men fan, skitsamma. vad gör du själv annars då i den onda universitetsvärlden :D ? (hoppas ni har fler tjejer än vi på chalmers, det är alldelles för homogent här)

Agent Orange
2005-02-10, 21:28
lät och lät, det var därför jag inte vill ha någon tolkning utan gick tillbaka till det jag skrev exakt men fan, skitsamma. vad gör du själv annars då i den onda universitetsvärlden :D ? (hoppas ni har fler tjejer än vi på chalmers, det är alldelles för homogent här)

Jag försöker få ihop min examen.. har jobbat och läst annat ett tag så det har tagit sin tid :)

Nej tjejer har vi knappt några.. Det började bara tre tjejer samtidigt med mig, varav en var lesbisk och varav samtliga hoppade av efter ett år :(

Dem får man träffa på annat håll..

edit:
Jag läste för övrigt att cmu.edu i usa hade satsat hårt på att få tjejer att läsa computer sciene, och lyckats komma upp i 50% eller liknande fantasisiffra. Så om du ska ta ett år utomlands så är cmu nog ett bra ställe :D

Baan
2005-02-10, 21:31
Jag försöker få ihop min examen.. har jobbat och läst annat ett tag så det har tagit sin tid :)

Nej tjejer har vi knappt några.. Det började bara tre tjejer samtidigt med mig, varav en var lesbisk och varav samtliga hoppade av efter ett år :(

De får man träffa på annat håll..

lycka till med det då, kan bli lite kärvt dock, har hört flera historier om folk som haft examensarbetet kvar och så men aldrig riktigt orkat :) en startade ju bland annat eget, kommer dock inte ihåg om man har fixat det än

angående tjejerna , låter ännu sämre än på chalmers, vi har iaf ca 9-10%, visserligen inte.... råsnygga... men tjejer. Man ska ju inte vara petig.

Angåene sista meningen.. så sant... man borde ha blivit humanist och läst litteraturvetenskap :D nä.

Agent Orange
2005-02-10, 21:35
angående tjejerna , låter ännu sämre än på chalmers, vi har iaf ca 9-10%, visserligen inte.... råsnygga... men tjejer. Man ska ju inte vara petig.

:D Det stämmer in på tjejerna här med.. fast datakillarna är kanske inte heller så tjusiga i tjejernas ögon.

Bolio
2005-02-10, 21:55
Alltid kul när ni diskuterar sånt här =)

Baan
2005-02-10, 21:58
Alltid kul när ni diskuterar sånt här =)

jo det är klart, man vill ju inte gärna börja på ett uni där det knappt finns brudar











;)

Bolio
2005-02-10, 22:02
nä, jag menar när ni diskuterar programmering och såna kluriga saker =) alltid kul att höra era åsikter om vilket programmeringsspråk som är bäst =) tihi =)

Baan
2005-02-10, 22:04
nä, jag menar när ni diskuterar programmering och såna kluriga saker =) alltid kul att höra era åsikter om vilket programmeringsspråk som är bäst =) tihi =)

bäst är ju det man kan tjäna mest pengar på. amen.

Bolio
2005-02-10, 22:05
ja, om man nu värdesätter pengar över allt annat

Baan
2005-02-10, 22:13
ja, om man nu värdesätter pengar över allt annat

så sant.... men pengar kan ju köpa så mycket :booty:

Bolio
2005-02-10, 22:19
så sant.... men pengar kan ju köpa så mycket :booty:

fast inte kärlek, hahahahaha

Baan
2005-02-10, 22:23
fast inte kärlek, hahahahaha

trodde inte du skulle sjunka så lågt *slap* ;)

adde
2005-02-11, 09:32
10 Print " Herkulez är en slyna";
20 goto 10

En man i min ålder! *kissass* :thumbup:

/adde

jwzrd
2005-02-11, 09:37
C++ är om inte annat mycket kraftfullare (vilket är iofs ganska viktigt) , fast man lär sig java på högskolorna mest för att dte är ganska hardcore objektorienterat och tillåter t ex inte vissa grejer man lätt kan få för sig att göra i C++. Som du säger väldigt lika så det är inte svårt gå över till Java från C++, en kompis hade ganska mycket erfarenhet av C++ dock inget av Java och det var inga problem, han whinade lite på syntaxen men han är rätt mesig :)

Själv hade jag mest erfarenheter av Pascal/Delphi och ytterst lite C++ så för mig var övergången betydlgit värre. Objektorienterat tänkande var svårt :/

Jag håller inte _helt_ med om att programmering i C++ är kraftfullare än dito i Java bara för att språket som sådant tillåter mer. C++ är kraftfullare än java för någon som behärskar båda språken OCH FRAMFÖRALLT är mycket duktig! Ingen medelmåtta har någon nytta av C++ istället för Java skulle jag nog påstå. Det finns ett värde i att kunna vara mer produktiv med ett språk. Mindre tid spenderas med att skriva texten som sådan, mer tid över för att debugga, stoppa in fler funktioner, optimera osv.

adde
2005-02-11, 09:37
(hoppas ni har fler tjejer än vi på chalmers, det är alldelles för homogent här)

IT har ju väl endå en rätt så stor andel tjejer? (I alla fall dom som är inskrivna 2001, 2002 och 2003).

/adde

jwzrd
2005-02-11, 09:38
Det mesta i Java uppfanns på 80-talet.. men det kan ju iofs vara morgondagens teknik för det.


Nu pratar du definitivt i nattmössan. Funktionella språk utgår inte ens från vonneumann-arkitekturen (dvs normala datorers uppbyggnad) utan från en matematisk modell. Den modell Lisp t.ex. bygger på (lambdakalkyl) fanns till och med innan det ens fanns datorer. Så att säga att funktionella språk är hårdvaruinriktade är aningen udda. Du kanske tänker på procedurella språk?

Baan blandar bara ihop imperativa språk, med funktionella.

Grahn
2005-02-11, 09:40
Jwzrd, tycker dock java har strulat till det på senare tid med alla olika distrubitioner etc. Lättare när allt fanns i ett enda stort paket och alla körde samma.

I början var ju just javas stora fördel över C++ att man i grundpaketet hade så mycket mer verktyg att ta till vilka i C++ var mycket svårare att tillgå.

Iaf tyckte jag det var det bästa med språket.

jwzrd
2005-02-11, 09:42
Jwzrd, tycker dock java har strulat till det på senare tid med alla olika distrubitioner etc. Lättare när allt fanns i ett enda stort paket och alla körde samma.

I början var ju just javas stora fördel över C++ att man i grundpaketet hade så mycket mer verktyg att ta till vilka i C++ var mycket svårare att tillgå.

Iaf tyckte jag det var det bästa med språket.

Alla distributioner? Det finns en! Namngivningen är dock dum. Det finns JDK:n och det finns ett GÄNG andra ramverk att lägga till, tex J2EE (Java 2 Enterprise Edition) som alltså är ett gäng specs inklusive ramverk som sen olika vendors implementerar.

Det förvirrar dock personer som precis börjat, man tankar gärna hem Enterprise Edition eftersom man tror att det är samma som JDK:n (Standard Edition) men med extra grejer.

Grahn
2005-02-11, 09:44
Alla distributioner? Det finns en! Namngivningen är dock dum. Det finns JDK:n och det finns ett GÄNG andra ramverk att lägga till, tex J2EE (Java 2 Enterprise Edition) som alltså är ett gäng specs inklusive ramverk som sen olika vendors implementerar.

Heh termer, i slutändan är det mer förvirrat än vad det var tidigare, tex mailing APIt i javax klasserna måste man lägga in separat etc.

Tycker mest de skulle försökt hålla det enkelt som det var från början.

Rocco
2005-02-11, 09:56
villläsa datavetenskap men måste veta om man har någon chans ..... vilka förkunskaper man måste ha och så.....

eller hur svårt det nu är om det finns någon chans att lära sig

Bra val! En utbildning du kommer att ha stor nytta av och den bästa man kan gå om man vill lära sig programmera på riktigt. Även om man inte blir specialiserad på ett visst språk så får man gedigna kunskaper som gör att man sedan har lätt att lära nya språk.

Har själv läst datavetenskap i Uppsala och lyckats ta examen. Hade inte några som helst förkunskaper innan jag började, men det underlättar om man inte är helt borta på området matematik. Det blir en hel del abstrakt matte.

Passa på att söka nu, det kommer att behövas utbildade programmerare om 4-5 år.

Baan
2005-02-11, 10:07
Baan blandar bara ihop imperativa språk, med funktionella.

nej du får också läsa om vad jag skrivit, blir rätt lack på folk som inte förstår eller vill förstå vad man skrivit så ta å läs om det, jag klargjorde skillnaden i vad jag menade med agent orange och vad han trodde jag menade, orkar inte göra samma sak för dig så du kan väl läsa om mina inlägg så blir det klarare.

angående det först påståendet angående c++ vs. java så är det exakt på en högre nivå som jag talar om. Självklart är det skitsamma om du ska göra små program på en nybörjarnivå

Fettecke
2006-10-15, 00:16
måste återuppliva en snart 2 år gammal tråd.

http://www.tradera.com/auction/auction.aspx?aid=34309563

där finns allt som man behöver för att lära sig programmera (asp iaf.)

aliquis
2006-10-15, 01:32
villläsa datavetenskap men måste veta om man har någon chans ..... vilka förkunskaper man måste ha och så.....

eller hur svårt det nu är om det finns någon chans att lära sigNär jag läste dataingenjör skulle jag inte påstå att det krävdes att man kunde koda något alls för att påbörja utbildningen. Naturligtvis blir det svårare för de som inte har gjort det förr, men det är/var inget krav att ha gjort det.

The_RobRoy
2006-10-15, 02:02
När jag läste dataingenjör skulle jag inte påstå att det krävdes att man kunde koda något alls för att påbörja utbildningen. Naturligtvis blir det svårare för de som inte har gjort det förr, men det är/var inget krav att ha gjort det.

Är du färdigutbildad eller har du hoppat av?

aliquis
2006-10-15, 02:24
Leta upp någon som har DMZ:as Assemblerkurs från runt 1990 eller tidigare, tidningen var fortfarande i A3(?)-format, sedan är det bara att börja ;)

Enklaste är väl om du får hjälp av en polare som kan eller går en kurs, annars kan ju en bok börja.

Visual Basic är säkert enkelt om du vill ha något enklare att börja med, C är ju grymt vanligt men rätt efterblivet, Java tycker jag är bättre än C men du kanske inte har lika stor användning för den kunskapen.

Python och Ruby är annars inte riktigt lika gångbara alternativ som ligger någonstans mellan VB och C/Java i svårighetsgrad.

aliquis
2006-10-15, 02:25
Är du färdigutbildad eller har du hoppat av?Jag är klar, det var rätt länge sedan som jag faktiskt läste det nu ;/

snelhest
2006-10-15, 05:09
skit i java o kör C# eller python. Ignorera Java tills det dör ut.

Trance
2006-10-15, 11:37
måste återuppliva en snart 2 år gammal tråd.

http://www.tradera.com/auction/auction.aspx?aid=34309563

där finns allt som man behöver för att lära sig programmera (asp iaf.)

Heh, asp är iofs rätt dumt att lära sig nu.

DavidN
2006-10-15, 12:06
rolig tråd :)

Kan nog inte påstå att jag själv favoriserar något språk över ett annat globalt.
Allt har sin plats liksom.

I windows applikationsmiljö kan jag t.ex. inte tänka mig mkt annat än C++ och inline (C-style på sina platser kanske :B).

Tycker C/C++ suger generellt sett eftersom det är så svårt för folk att inte skapa retarderad kod.

I ärlighetens namn vet jag nog inte riktigt vad jag skulle välja idag om jag var helt 'fräsch' och fick välja...

Baan
2006-10-15, 12:45
Faktumet kvarstår..

Java über alles.

Heh.

jwzrd
2006-10-15, 14:03
skit i java o kör C# eller python. Ignorera Java tills det dör ut.

Men vi som gillar att tjäna pengar då?

Trance
2006-10-15, 14:17
Men vi som gillar att tjäna pengar då?

Kan inrikta sig på bara c# utan problem, även om det är lättare att bli välbetald om man inriktar sig på båda antar jag.

jwzrd
2006-10-15, 14:24
Kan inrikta sig på bara c# utan problem, även om det är lättare att bli välbetald om man inriktar sig på båda antar jag.

Det är som alltid fråga om att kunna programmera.

Formulerat utifrån ett enpersonsperspektiv är språket inte ens sekundärt. Först kommer programmeringsförmåga, dvs, kan du förstå problem, dela upp dem i dess beståndsdelar och relationer, formulera problemet och sedan formulera lösningen. Här ligger precis hela kompetensen. Sekundärt handlar det om miljön lösningen finns i. Med miljö menar jag inte editorn/IDE:n utan bibliotek, OS, eventuell virtuell maskin som för Java och .NET, typhantering (dynamic typing som för python), etc. Först efter det kommer själva språket.

Sett till helheten spelar möjligheten att få tag i erfarna och kompetenta programmerare en stor roll. Det funkar liksom inte att Plucke skriver ihop ett program i Python som fungerar bra när han släpper det om man sen inte kan få tag i fler Python-kodare.

Intressant det snelhest säger om att Java dör ut sen. Har du sett hur bra det går för .NET? :)

Trance
2006-10-15, 15:22
Det är som alltid fråga om att kunna programmera.

Formulerat utifrån ett enpersonsperspektiv är språket inte ens sekundärt. Först kommer programmeringsförmåga, dvs, kan du förstå problem, dela upp dem i dess beståndsdelar och relationer, formulera problemet och sedan formulera lösningen. Här ligger precis hela kompetensen. Sekundärt handlar det om miljön lösningen finns i. Med miljö menar jag inte editorn/IDE:n utan bibliotek, OS, eventuell virtuell maskin som för Java och .NET, typhantering (dynamic typing som för python), etc. Först efter det kommer själva språket.

Sett till helheten spelar möjligheten att få tag i erfarna och kompetenta programmerare en stor roll. Det funkar liksom inte att Plucke skriver ihop ett program i Python som fungerar bra när han släpper det om man sen inte kan få tag i fler Python-kodare.

Intressant det snelhest säger om att Java dör ut sen. Har du sett hur bra det går för .NET? :)

Ja, men det var inte det jag sade. Jag säger att det går utmärkt att ignorera java och ändå tjäna pengar.

Sedan angående det sista du säger, för mig känns det verkligen tvärt om. C# och .NET är det som går framåt mer än Java, även om fler äldre system är byggda i java såklart.

jakke
2006-10-15, 15:56
+1 på jwzrd.
Dessutom är det ju inte så ofta man får välja vilket språk som det ska skrivas i, om det inte är plucke som vill skriva en egen miniräknare

Trance
2006-10-15, 15:59
+1 på jwzrd.
Dessutom är det ju inte så ofta man får välja vilket språk som det ska skrivas i, om det inte är plucke som vill skriva en egen miniräknare

Hmm? Man kan ju söka sig till vissa jobb som använder det språket du gillar mest.

jakke
2006-10-15, 16:12
Hmm? Man kan ju söka sig till vissa jobb som använder det språket du gillar mest.
Det finns ju ung. 1000 saker som jag skulle kolla innan jag kollar vilka språk dom använder.

Trance
2006-10-15, 16:17
Det finns ju ung. 1000 saker som jag skulle kolla innan jag kollar vilka språk dom använder.

Pff, så jäkla oviktigt är det inte. Hur roligt är det att sätta sig att jobba med assembler, rpg eller (lis(p))())())? ;)

Jag vill helst jobba med C# eller Java, skulle även kunna tänka mig C, helst inte c++ dock av någon anledning. Man söker ju jobb eftersom man vill utveckla sig inom en viss sak och styra sin framtid mot det, sen är det ju riktigt viktigt att hela tiden lära sig nya språk. Skulle jag gilla webbutveckling mer så skulle jag helt klart lära mig Ruby och AJAX riktigt, kanske gör det ändå dock.

Garnax
2006-10-15, 17:40
C/C++ är vad du ska lära dig om du ändå ska lära dig något...

När du kan det kan du 80% java så kan du lära dig det sen.
Dock är det omvända inte sant...

Baan
2006-10-15, 17:43
C/C++ är vad du ska lära dig om du ändå ska lära dig något...

När du kan det kan du 80% java så kan du lära dig det sen.
Dock är det omvända inte sant...

Hmmmmmmmmm konstigt det där, C++ -> java funkar men inte tvärtom? Bah, snack, jag har gått tvärtom (egentligen började jag med andra språk innan men vi skiter i det nu :) ) och får man grepp på skillnaderna så går det även gå java -> c/c++. Pekare t ex blir ju iofs nytt men det går få grepp på.

Dumleman
2006-10-15, 17:50
JAVA ftw! Tänk om man hade börjat med java i gymnaset istället för delphi och C! Java är underbart imho, kan inte hitta några nackdelar förutom att man behöver en jvm :p.

Baan
2006-10-15, 17:56
JAVA ftw! Tänk om man hade börjat med java i gymnaset istället för delphi och C! Java är underbart imho, kan inte hitta några nackdelar förutom att man behöver en jvm :p.

Gillar också Java, fint språk med massa OOB-tänk. Modernt skit. Nackdelar är inte heller lätt att säga utifrån egna erfarenheter, jag vet att det strulade lite när jag höll på med datastrukturer och skulle göra träd av viss typ, var djävla konstiga indirekta saker man fick göra där.

Trance
2006-10-15, 18:07
C/C++ är vad du ska lära dig om du ändå ska lära dig något...

När du kan det kan du 80% java så kan du lära dig det sen.
Dock är det omvända inte sant...

Jag läste en jäkligt bra post om det någonstans. Jag tyckte samma innan men har ändrat mig totalt. Det är som att läsa sanskrit och latin innan du läser svenska och engelska bara för att lära dig grunderna först.

Av någon anledning så har det faktum att man måste allokera och släppa lös minne blivit det ultimata programmeringstestet. För mig är det dumheter. Enligt mig är det bra mycket viktigare att få en känsla hur man strukturerar upp ett program(mer patterns etc i utbildningar), att kunna programmera objektorienterat(om språket är sådant) samt grundläggande kunskap om algoritmer(kunna rekursion etc).

Att kunna syntax är inte samma sak som att kunna programmera bra.

Trance
2006-10-15, 18:15
Gillar också Java, fint språk med massa OOB-tänk. Modernt skit. Nackdelar är inte heller lätt att säga utifrån egna erfarenheter, jag vet att det strulade lite när jag höll på med datastrukturer och skulle göra träd av viss typ, var djävla konstiga indirekta saker man fick göra där.

Inga generics, ingen möjlighet till unsafe kod(pekare etc), inga snygga properties. ;-) Denna kunskap är såklart gammal, jwzrd är ju lite mer uppdaterad på Java än vad jag är och det har nog hänt lite sen jag höll på. Om man ser krasst på det så är det väl bara smaksak det man vill leka med.

Ett tips för alla som lär sig programmera, lär er XML. Helvetes tråkigt men används överallt. En sak som är skönt för mig som .net-programmerare är att 3.0 kommer vara med från början i Vista, så man slipper gnälla på folk att tanka hem det innan de kan köra mitt program. Dock är det ju inte 3.0 på riktigt, snare 2.någonting, men det är en marknadsföringsgrej.

Ni som är sugna på spelutveckling kan även titta på Microsoft XNA(http://en.wikipedia.org/wiki/Microsoft_XNA), det kan nog bli lite häftigt.

Dumleman
2006-10-15, 20:41
Inga generics, ingen möjlighet till unsafe kod(pekare etc), inga snygga properties. ;-) Denna kunskap är såklart gammal,
Generics finns i java5. Vad menar du med snygga properties?

Trance
2006-10-15, 21:07
Kan läsa om properties i c# här:
http://www.c-sharpcorner.com/Language/PropertiesInCSRVS.asp

Baan
2006-10-15, 21:12
Inga generics, ingen möjlighet till unsafe kod(pekare etc), inga snygga properties. ;-) Denna kunskap är såklart gammal, jwzrd är ju lite mer uppdaterad på Java än vad jag är och det har nog hänt lite sen jag höll på. Om man ser krasst på det så är det väl bara smaksak det man vill leka med.



Jag menade just saker jag själv känt ett behov av, pekare hör inte dit. Menar du att du saknat alla dom grejerna? Det är ju just fulprogrammering med pekare och dylikt man vill undvika i java ju...

Trance
2006-10-15, 21:18
Jag menade just saker jag själv känt ett behov av, pekare hör inte dit. Menar du att du saknat alla dom grejerna? Det är ju just fulprogrammering med pekare och dylikt man vill undvika i java ju...

Jag vet, man behöver sällan använda det. Men det finns tillfällen man kan tänka sig att använda det. T.ex. om du har en .dll som är "unmanaged" så kan man använda använda pekare i vissa fall för att slippa den kopiering av data som sker annars. Detta tjänar man rätt mycket prestanda om det nu är viktigt.

Dessa var även c#-saker jag nämnde. Properties är bra och generics är extremt bra, om man orkar använda det. ;)

Baan
2006-10-15, 21:21
Jag vet, man behöver sällan använda det. Men det finns tillfällen man kan tänka sig att använda det. T.ex. om du har en .dll som är "unmanaged" så kan man använda använda pekare i vissa fall för att slippa den kopiering av data som sker annars. Detta tjänar man rätt mycket prestanda om det nu är viktigt.

Dessa var även c#-saker jag nämnde. Properties är bra och generics är extremt bra, om man orkar använda det. ;)

Aight, nåja, kan inte försvara Java här då jag inte haft det behovet. Prestanda är en fråga i sig egentligen, upplever väl själv inte Java som särskilt snabbt. Å andra sidan har jag mest erfarenhet av Java så vore dumt att dissa när man inte jämfört med något annat.

Vad är properties och generics?

jwzrd
2006-10-15, 21:25
Gillar också Java, fint språk med massa OOB-tänk. Modernt skit. Nackdelar är inte heller lätt att säga utifrån egna erfarenheter, jag vet att det strulade lite när jag höll på med datastrukturer och skulle göra träd av viss typ, var djävla konstiga indirekta saker man fick göra där.

Erm, indirekta saker som t ex?

jwzrd
2006-10-15, 21:27
Inga generics, ingen möjlighet till unsafe kod(pekare etc), inga snygga properties. ;-) Denna kunskap är såklart gammal, jwzrd är ju lite mer uppdaterad på Java än vad jag är och det har nog hänt lite sen jag höll på. Om man ser krasst på det så är det väl bara smaksak det man vill leka med.

Ett tips för alla som lär sig programmera, lär er XML. Helvetes tråkigt men används överallt. En sak som är skönt för mig som .net-programmerare är att 3.0 kommer vara med från början i Vista, så man slipper gnälla på folk att tanka hem det innan de kan köra mitt program. Dock är det ju inte 3.0 på riktigt, snare 2.någonting, men det är en marknadsföringsgrej.

Ni som är sugna på spelutveckling kan även titta på Microsoft XNA(http://en.wikipedia.org/wiki/Microsoft_XNA), det kan nog bli lite häftigt.

C++ har inte generics utan templates. Java har generics men inte templates. Java har även metadata via annotations, något som pascal t ex har haft i 20 år men som C++ saknar.

Trance
2006-10-15, 21:29
Aight, nåja, kan inte försvara Java här då jag inte haft det behovet. Prestanda är en fråga i sig egentligen, upplever väl själv inte Java som särskilt snabbt. Å andra sidan har jag mest erfarenhet av Java så vore dumt att dissa när man inte jämfört med något annat.

Vad är properties och generics?

Properties postade jag en länk på innan. Rätt smidigt men inget livsnödvändigt, man brukar ju lösa det ändå.

Generics är som std i c++ (om jag minns min c++ rätt), nu har jag inte använt generics direkt mycket mer än testat det lite för ett tag sedan. Men det handlar om att du kan göra metoder generella så det inte spelar roll vilken datatyp som du skickar med. Jag är kass på att förklara kommer jag på nu och jag kan det för dåligt:
http://en.wikipedia.org/wiki/Generic_programming

Vi använde en liknande lista som i exemplet.

Baan
2006-10-15, 21:31
Erm, indirekta saker som t ex?

Vi höll på med träd som sagt, föreläsaren klagade på att typkastandet (fackterm) var onödigt krångligt, mer än så kommer jag inte ihåg. Tror även det var en ny feature som han menade inte var 100. För mig var det bara göra som man skulle så jag tyckte inte det var så jobbigt.

Trance
2006-10-15, 21:31
C++ har inte generics utan templates. Java har generics men inte templates. Java har även metadata via annotations, något som pascal t ex har haft i 20 år men som C++ saknar.

Jo, jag pratade bara om Java och C# där och blev rättad på punkten att Java hade generics. Hmm, annotations är det som reflection i c# om du vet vad det är?

Baan
2006-10-15, 21:33
Properties postade jag en länk på innan. Rätt smidigt men inget livsnödvändigt, man brukar ju lösa det ändå.

Generics är som std i c++ (om jag minns min c++ rätt), nu har jag inte använt generics direkt mycket mer än testat det lite för ett tag sedan. Men det handlar om att du kan göra metoder generella så det inte spelar roll vilken datatyp som du skickar med. Jag är kass på att förklara kommer jag på nu och jag kan det för dåligt:
http://en.wikipedia.org/wiki/Generic_programming

Vi använde en liknande lista som i exemplet.

Det är inte detta du menar som generics? http://java.sun.com/j2se/1.5.0/docs/guide/language/generics.html

jwzrd
2006-10-15, 21:36
Aight, nåja, kan inte försvara Java här då jag inte haft det behovet. Prestanda är en fråga i sig egentligen, upplever väl själv inte Java som särskilt snabbt. Å andra sidan har jag mest erfarenhet av Java så vore dumt att dissa när man inte jämfört med något annat.

Vad är properties och generics?

Properties är ett sätt att göra så att VB-kiddies inte ska bajsa i brallan av C#. Det är inget häftigare än att du skriver kombinerade set/get-metoder som sedan triggas av fältåtkomst-syntax. Ex:

foo.bar = 10;
int i = foo.bar;

Båda går via en deklaration som ser ut nånting som:
public property int bar () {
set {
this.bar = value;
} get {
return bar;
}
}

Om du utelämnar innehållet i t ex set-klausulen så får du en read only-property.

Det är alltså fråga om syntax suger helt och hållet. Det leder dessutom till dåliga programmeringsvanor eftersom:

foo.bar = 10;
foo.baz = "snorre",
foo.z = snorkel;
foo.execute();

Inte är något annat än procedurell programmering där man skickar runt dumma struct:er snarare än sänder meddelanden till objekt med polymorfa medelandehanterare (arv/överlagring).


Generics är ett sätt att abstrahera ut typerna på parametrar/fält ur metoder/klasser för att öka både möjligheten att återanvända kod, typsäkerhet och även i viss mån programmerarens intentioner.

jwzrd
2006-10-15, 21:37
Properties postade jag en länk på innan. Rätt smidigt men inget livsnödvändigt, man brukar ju lösa det ändå.

Generics är som std i c++ (om jag minns min c++ rätt), nu har jag inte använt generics direkt mycket mer än testat det lite för ett tag sedan. Men det handlar om att du kan göra metoder generella så det inte spelar roll vilken datatyp som du skickar med. Jag är kass på att förklara kommer jag på nu och jag kan det för dåligt:
http://en.wikipedia.org/wiki/Generic_programming

Vi använde en liknande lista som i exemplet.

Nej Generics är inte som std i C++. Std är ett standardbibliotek som i sig använder templates. Generics är en snarlik språkkonstruktion som templates.

jwzrd
2006-10-15, 21:38
Jo, jag pratade bara om Java och C# där och blev rättad på punkten att Java hade generics. Hmm, annotations är det som reflection i c# om du vet vad det är?

Reflection i C# är som reflection i Java. C#/.NET är en skamlös kopia av Java/JVM, remember?

Baan
2006-10-15, 21:38
Ok. Generics har jag ju använt mig av mycket kom jag på, vet inte varför ordet inte fastnat, som god programmeringssed™ dvs.

jwzrd
2006-10-15, 21:39
Vi höll på med träd som sagt, föreläsaren klagade på att typkastandet (fackterm) var onödigt krångligt, mer än så kommer jag inte ihåg. Tror även det var en ny feature som han menade inte var 100. För mig var det bara göra som man skulle så jag tyckte inte det var så jobbigt.

Mao var det FUD från en lärare som inte kunde Java :)

Baan
2006-10-15, 21:42
Mao var det FUD från en lärare som inte kunde Java :)

Hm, kanske, jag vet inte. Fick uppfattningen från hans whine att det inte handlade om personlig preferens utan om att man var lite för snabb med 1.5.0 och inte implementerade det särskilt bra. Har tittat lite i grejer man gjort men jag kan inte beskriva exakt vad han syftade på, tyvärr. Kanske kommer något när jag börjar använda lite java igen snart...

edit: FUD?

Trance
2006-10-15, 21:42
Reflection i C# är som reflection i Java. C#/.NET är en skamlös kopia av Java/JVM, remember?

Helt klart, en hel del kopia av Java samt även c/c++. Det är ju så det funkar. Nu i 3.0 så är de inspirerade av Ruby bland annat. Java har ju vissa likheter med c++ etc. Det är ju vad som driver oss framåt och jag gillar det skarpt. Man får ju bättre programmeringsspråk också.

Dessutom, reflection var ju Java knappast först med.

jwzrd
2006-10-15, 21:43
Hm, kanske, jag vet inte. Fick uppfattningen från hans whine att det inte handlade om personlig preferens utan om att man var lite för snabb med 1.5.0 och inte implementerade det särskilt bra. Har tittat lite i grejer man gjort men jag kan inte beskriva exakt vad han syftade på, tyvärr. Kanske kommer något när jag börjar använda lite java igen snart...

edit: FUD?

FUD = Fear Uncertainty Doubt

jwzrd
2006-10-15, 21:45
Helt klart, en hel del kopia av Java samt även c/c++. Det är ju så det funkar. Nu i 3.0 så är de inspirerade av Ruby bland annat. Java har ju vissa likheter med c++ etc. Det är ju vad som driver oss framåt och jag gillar det skarpt. Man får ju bättre programmeringsspråk också.

Dessutom, reflection var ju Java knappast först med.

Nej, men du hade fel helt enkelt :)

Reflection så som Java har det liknar Objective-C väldigt mycket. Att C#/.NET är en kopia är inte något jag menar för att påstå att Java var först och därmed bäst utan mer i stil med att Msft borde ha gjort det bättre. Nu finns det istället två snarlika platformar där den ena fortfarande är oerhört mycket bättre. Det kunde ha varit tvärtom.

Trance
2006-10-15, 21:46
Ah, annotations är vanliga attribute i c# samt något som heter pragma i c verkar det som. Inte stött på någon gång.

jwzrd
2006-10-15, 21:47
Ah, annotations är vanliga attribute i c# samt något som heter pragma i c verkar det som. Inte stött på någon gång.

Jo, det är som attributes i C#. Det är inte fullt samma sak som pragma i C; pragma i C är instruktioner till kompilatorn, det är bara en liten del av annotations i Java.

Trance
2006-10-15, 21:48
Nej, men du hade fel helt enkelt :)

Reflection så som Java har det liknar Objective-C väldigt mycket. Att C#/.NET är en kopia är inte något jag menar för att påstå att Java var först och därmed bäst utan mer i stil med att Msft borde ha gjort det bättre. Nu finns det istället två snarlika platformar där den ena fortfarande är oerhört mycket bättre. Det kunde ha varit tvärtom.

Jag gissade yep, eftersom jag inte visste vad annotations var. Kunde googlat.

c# och .net är annorlunda än java, det görs aldrig några jättekliv utan små i taget. Hände även när Java lanserades, det råkade bara bli så populärt så det verkar som det är något helt nytt. Sedan att säga att ena är oerhört mycket bättre är väl FUD om något?

jwzrd
2006-10-15, 21:50
Jag gissade yep, eftersom jag inte visste vad annotations var. Kunde googlat.

c# och .net är annorlunda än java, det görs aldrig några jättekliv utan små i taget. Hände även när Java lanserades, det råkade bara bli så populärt så det verkar som det är något helt nytt. Sedan att säga att ena är oerhört mycket bättre är väl FUD om något?

Det är erfarenheter från de som jobbat länge med båda. Om du jämfört .NETs kvalitet och möjligheter just nu så är de jämförbara med vad Java hade vid samma ålder typ.

Trance
2006-10-15, 21:56
Det är erfarenheter från de som jobbat länge med båda. Om du jämfört .NETs kvalitet och möjligheter just nu så är de jämförbara med vad Java hade vid samma ålder typ.

Exemplifiera för att använda pretto-språk?

jwzrd
2006-10-15, 21:57
Exemplifiera för att använda pretto-språk?

Stabilitet. Hur många serversystem som kör på .NET känner du till? Prestandaproblem vilket jag inte vet vad det beror på men som sannolikt handlar om mognad typ. Det tar ett bra tag att få en bra platform.

Trance
2006-10-15, 22:10
Stabilitet. Hur många serversystem som kör på .NET känner du till? Prestandaproblem vilket jag inte vet vad det beror på men som sannolikt handlar om mognad typ. Det tar ett bra tag att få en bra platform.

Ok, har ingen erfarenhet av det. Mer än att jag vet att BizTalk inte är så kasst. Hur som helst så känns det inte som ett argument för att Java är så mycket bättre, vilka som kör flest av en viss typ är ju inte ett argument för att en sak är bättre(windows t.ex. ;) )

pejo
2006-10-16, 17:29
Nej Generics är inte som std i C++. Std är ett standardbibliotek som i sig använder templates. Generics är en snarlik språkkonstruktion som templates.

Skulle bara vilja tillägga att generics är i .NET ej är lika kraftfullt som templates i C++ (på gott och ont). Det finns ju inte heller möjlighet till detta eftersom templates jobbar med precompilern vilket ju inte generics i C# gör.
Intressant att Java också fått generics, jag antar att de liknar det som finns i .NET.

När det gäller inbyggd programmering som jag jobbar med så är det ju fortfarande oftast C (eller kanske till och med assembler) som gäller och jag är lycklig varje gång jag får programmera C++. Jag tror att vi på företaget har gjort några försök med java på inbyggda system men det har ofta visat sig behäftat med prestandaproblem osv.

Något som också vore intressant att kolla lite närmare på är den nya versionen av ADA som jag hört har kommit/kommer. Jag har för mig ADA var rätt trevligt (Nu är det iofs mer än tio år sedan jag programmerade i ADA).

aliquis
2006-10-16, 18:25
Pff, så jäkla oviktigt är det inte. Hur roligt är det att sätta sig att jobba med assembler, rpg eller (lis(p))())())? ;)

Jag vill helst jobba med C# eller Java, skulle även kunna tänka mig C, helst inte c++ dock av någon anledning. Man söker ju jobb eftersom man vill utveckla sig inom en viss sak och styra sin framtid mot det, sen är det ju riktigt viktigt att hela tiden lära sig nya språk. Skulle jag gilla webbutveckling mer så skulle jag helt klart lära mig Ruby och AJAX riktigt, kanske gör det ändå dock.Lisp är iofs grymt, beroende på typ av applikation kan väl assembler vara skoj också, eller, det är antagligen alltid skoj, men inte så praktiskt till större program..

aliquis
2006-10-16, 18:28
C/C++ är vad du ska lära dig om du ändå ska lära dig något...

När du kan det kan du 80% java så kan du lära dig det sen.
Dock är det omvända inte sant...Jag tycker att det alltid är så att alla objektorienterade c/c++-kurser eller c++ kurser verkar vara c med klasser, dvs sällan renodlad C++ överhuvudtaget. C# har jag aldrig studerat men där antar jag att man tar ett steg ifrån C iaf.

Personligen ser jag bara mening med C för att underhålla gamla projekt, det är idiotiskt att koda i C, C ger buggiga programvaror helt i onödan, varför vill man ha det? (Och alltid finns det några idioter som hävdar att det är ju bara ett problem om man inte vet vad man gör, men uppenbarligen är det ju i princip ingen som vet vad han eller hon gör i C... så varför inte låta bli det.)

Baan
2006-10-16, 18:37
Lisp är iofs grymt, beroende på typ av applikation kan väl assembler vara skoj också, eller, det är antagligen alltid skoj, men inte så praktiskt till större program..

Vad menar du med assembler? Maskinnära C eller verkligen assembler till CPUs från franska revolutionen?

jakke
2006-10-16, 19:47
Lisp är iofs grymt, beroende på typ av applikation kan väl assembler vara skoj också, eller, det är antagligen alltid skoj, men inte så praktiskt till större program..
Tro mig, det är INTE kul med assamblar när du sitter där med (bara) ett 100-tal rader och din kod fungerar inte.

Baan
2006-10-16, 20:08
Tro mig, det är INTE kul med assamblar när du sitter där med (bara) ett 100-tal rader och din kod fungerar inte.

Det är väl inte kul med assembler hur man än vänder på det? Skriva flera hundra rader för att i princip inte göra något känns ju lagom givande..

pejo
2006-10-16, 21:06
Det kan väl vara lite kul med assembler ibland. Det är ju inte så att man sitter och gör mängdprogrammering i assembler men ibland blir man tvungen att använda assembler. Det kan exempelvis handla om att man vill använda speciella instruktioner, vill göra vissa optimeringar (exempelvis cache och pipeline optimeringar), eller att man inte har tillgång till c (eller c++) ännu dvs i uppstartssekvensen. Ett exempel på det senare som var när vi från mjukvaran skulle ladda en fpga som skötte grafikrutiner och externt ram-minne.

subliminal
2006-10-16, 21:12
Något som också vore intressant att kolla lite närmare på är den nya versionen av ADA som jag hört har kommit/kommer. Jag har för mig ADA var rätt trevligt (Nu är det iofs mer än tio år sedan jag programmerade i ADA).

Heh, kommer det en ny version av ADA? Kul, jag trodde att det var mer eller mindre var utdött numera. Inte för att jag är speciellt vass på att programmera, men jag vill också minnas att ADA var rätt trevligt.

snelhest
2006-10-21, 22:43
Men vi som gillar att tjäna pengar då?
då lär du dig C# och skaffar soc.bidrag... om du prompt måste jobba så lär dig C# och skaffa en vettig arbetsgivare

snelhest
2006-10-21, 22:51
och om du ska jobba så bör du även lära dig C/C++ och helst så många språk som möjligt för att vara flexibel

vmax500
2007-02-17, 19:49
Håller på med Programvarukonstruktion B nu, och bla vi ska använda Ruby with rails...

Nån här som har kunskaper i RUBY?

Trance
2007-02-17, 20:01
Hehe, vilken rolig gammal tråd. Jwzrd var ju helt vilse där.

Angående Ruby så har jag väl ingen koll mer än folk verkar älska det tillsammans med Rails.

Baan
2007-02-18, 11:54
Någon som lekt med MPD? :P