Just nu i M3-nätverket
Gå till innehåll

"#include <>"


Codler

Rekommendera Poster

så har du ju klart minskat dina förutsättningar att bygga ut dem till avancerade versioner.

Inte bara det, du har förmodligen inte heller fått kunskaperna som gör att du förstår varför de fungerar som de gör.

Den som inte förstår hur en hashtabell-fungerar kommer förmodligen inte att fatta när det är korkat att använda en och när det är praktiskt.

Samma sak med iteratorer, den som inte fattar den mest grundläggande "magin" bakom dem kommer aldrig att förstå varför vissa iteratorer kan flippa ur fullständigt om man börjar radera saker från det man itererar över.

 

Jag tror att det var mycket bättre att min datalärare på gymnasiet spenderade en hel dubbellektion åt att medels löjliga plastburkar i olika storlek på katedern förklara skillnader mellan olika sorteringsalgoritmer än det hade varit om han nöjt sig med att säga att "man kan sortera genom att ropa qsort(), då behöver man bara en funktion som kan jämföra två värden".

 

Länk till kommentar
Dela på andra webbplatser

Jag märker att jag har blivit rätt missförstådd nu.

 

Det är väl i princip alltid bättre om man både känner till hur man använder standardbiblioteken (och liknande) OCH hur dessa fungerar "under huven".

 

Men jag tycker det finns utrymme även för de som INTE kan allt om hur saker och ting ser ut under huven.

 

Tid, resurser, intresse och annat måste styra vad man lär sig och i vilken ordning.

 

Vissa algoritmer är alldeles för komplicerade för att man ska kunna sätta sig in i dem, man måste helt enkelt kunna lita på att andra har gjort sitt jobb och på ett tillräckligt sätt beskrivit hur de ska användas.

 

Kunskap om hur t ex hashtabeller byggs upp i princip kanske inte alls är till så mycket hjälp eftersom den standardkomponent du använder är "tweakad" på en hel del sätt och får delvis andra egenskaper än den standardalgoritm man titta på i skolan.

 

Men visst, att förstå de grundläggande fallen underlättar när man ska förstå de mer avancerade.

 

Vad jag inte förstår är varför man INTE ska lära sig standardbibliotek. Varför måste det ena utesluta det andra? De är ju en så pass integrerad del av helheten.

 

Länk till kommentar
Dela på andra webbplatser

Kunskap om hur t ex hashtabeller byggs upp i princip kanske inte alls är till så mycket hjälp eftersom den standardkomponent du använder är "tweakad" på en hel del sätt och får delvis andra egenskaper än den standardalgoritm man titta på i skolan.

Det är ju sant, men skall du då en dag bygga en tillämpning där effektiviteten i tabellagringen är extremt viktig så måste du ju då kunna implementera denna tabell själv, så att du vet att den fungerar så effektivt som teorin säger.

 

Men som jag sade tidigare, antingen kan man välja att gå snabba vägen och mer vara en klossbyggare (inget ont i det, men man är ju begränsad till de minsta delarna som då är rätt stora) eller så kan man specialisera sig och i mina ögon öka sitt värde på marknaden.

 

Vad jag inte förstår är varför man INTE ska lära sig standardbibliotek. Varför måste det ena utesluta det andra? De är ju en så pass integrerad del av helheten.

Det var väl mer en fråga om NÄR och inte OM man skulle använda dem som jag var inne på.

 

Länk till kommentar
Dela på andra webbplatser

Men som jag sade tidigare, antingen kan man välja att gå snabba vägen och mer vara en klossbyggare (inget ont i det, men man är ju begränsad till de minsta delarna som då är rätt stora) eller så kan man specialisera sig och i mina ögon öka sitt värde på marknaden.

 

Exakt, håller med.

 

Det sista är ju också en fråga om hur pass kapabel man är själv, de som _kan_ gå hela vägen tror jag väldigt ofta också ser till att göra det. Det är ett gift ändå, programmering.

 

Det var väl mer en fråga om NÄR och inte OM man skulle använda dem som jag var inne på.

 

OK, då är jag med.

 

Länk till kommentar
Dela på andra webbplatser

jag har inte kommit så djupt inom c++ än. jag har bara fått lära mig grunderna än så länge.

har fått lära mig, um få se nu.. if-satser, switch-satser, for-satser, sist var funktioner. och något mera tror jag..

kursen är "programmering A". och den är avklarat nu, jag kommer att ha programmering b och c.

 

 

vad är standardbibliotek egenkligen?

 

 

Länk till kommentar
Dela på andra webbplatser

Ett (kod)bibliotek är en samling funktioner, klasser och annat man kan använda i sina program för att t ex sortera, rita saker på bildskärmen, läsa filer, ...

 

För C++ heter det kort och gott "standard library". Finessen med ett standardbibliotek är att man kan lita på att det fungerar på samma sätt oberoende av vilken kompilator man har. Man kan också vara rätt säker på att det verkligen finns.

 

Länk till kommentar
Dela på andra webbplatser

  • 2 veckor senare...

den c++ som jag har fått lära mig skiljer ifrån dom c++ som ni brukar koda i nu för tiden.

 

tex om jag säger att jag kan c++ men det visade sig att det inte fungerar pga att eran c++ kod ser annorlunda ut och kanske t.o.m. tvivlar på det så tänkte jag, det måste väl heta något specielt den c++ jag programmerar i så att det kan förklaras på ett lätt sätt så man inte tvivlar..

 

ett kod ex:

//eforum.idg.se/viewmsg.asp?EntriesId=890885#891281

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

Se om jag är online:

http://www.xfire.com/profile/darkluna/

// Codler

 

Länk till kommentar
Dela på andra webbplatser

Det här kanske kan låta "malligt" nu men det är inte menat så. Min åsikt då:

 

Om du bara har en introduktionskurs i bagaget så spelar det ingen roll eftersom du ändå inte kan säga att du kan C++ då.

 

Om du använder C++ mycket så det "sitter" så blir det nog svårt att göra utan att lära sig nya saker så då kan du ju med gott samvete säga att du kan just C++.

 

Men som kommit fram i tråden, själva C++ är ju bara en del i ett större sammnhang.

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...