Warum bezeichnen Programmierer manchmal "C ++ / STL" als wäre es eine eigene Sprache?

8

Das mag eine triviale Frage sein, aber es ist eine, die mich in letzter Zeit sehr gestört hat. Warum bezeichnen einige Programmierer "C ++ / STL" als wäre es eine andere Sprache? Die STL ist Teil der C ++ - Standardbibliothek - und gehört daher zur Sprache "C ++". Es ist keine separate Komponente und es lebt nicht allein im Rahmen von C ++. Dennoch verhalten sich manche ständig so, als wäre es eine ganz andere Sprache. Warum?

    
Billy ONeal 15.03.2010, 00:59
quelle

6 Antworten

8

Ein Verständnis der STL ist nicht notwendig, um C ++ zu verstehen. Es ist nützlich zu haben, wenn Sie ADTs benötigen, aber Sie können durch Ihre gesamte C ++ - Karriere gehen (könnte gehen?), Ohne es zu brauchen.

    
Ignacio Vazquez-Abrams 15.03.2010, 01:02
quelle
9

Es ist möglich, ein kompetenter und erfahrener C ++ - Programmierer zu sein und niemals die STL zu verwenden. Sie können Boost oder ACE oder seit 10 Jahren ein MFC-Windows-Programmierer sein.

Wenn Sie jemanden mit Erfahrung in der Verwendung der STL haben möchten, fragen Sie jemanden, der C ++ kennt, ist keine Garantie, dass Sie eine bekommen.

Auch für mich ist das Schreiben von Code, der stark von der STL abhängig ist, sehr anders als etwa das Schreiben von MFC-Code. Sie könnten auch verschiedene Sprachen sein. Sie werden sicherlich nicht besonders ähnlich aussehen.

    
Spike 15.03.2010 01:14
quelle
7

Die obigen Antworten sind wirklich gut; Ich werde nur ihren Inhalt in einem breiteren Kontext hinzufügen.

Entwickler könnten sich auf Sprache / API | -Bibliothek beziehen, z.B. C / Win32, Java / Struts, Java / Spring, C # / .net MVC, weil es im Wesentlichen zwei Wissensbasen gibt - Kenntnisse der betreffenden Sprache und Kenntnisse darüber, wie man diese spezifische Bibliothek, API oder das Framework verwendet. Etwas wie Win32 ist ziemlich groß, wie Django sagt, was ich gerade lerne. Django selbst arbeitet auf eine sehr spezifische Art und weiß, dass ich das lerne, nicht Python.

Dasselbe gilt für C ++ / MFC oder C ++ / Boost oder C ++ / STL. Die Sprache ist C ++ - die API / Bibliothek, die Sie verwenden, ist MFC, Boost oder STL.

    
user257111 15.03.2010 01:10
quelle
6

Wahrscheinlich, weil STL etwas zu spät zum C ++ Spiel gekommen ist und viele Leute Code geschrieben haben, der keine STL benutzt. Denken Sie zum Beispiel an frühe Win32-Programmierung mit MFC.

    
Justin Ethier 15.03.2010 01:01
quelle
5

Rate:

Als C ++ zum ersten Mal veröffentlicht wurde, war die STL nicht vorhanden. Es entstand später als optionale Ergänzung und wurde dann in den Standard aufgenommen.

    
Heath Hunnicutt 15.03.2010 01:01
quelle
-1

Beim Schreiben eines Lebenslaufs würden Leute oft C / C ++ als Sprache auflisten, was in vielen Fällen auch bedeutet, dass sie es nicht wissen.

Irgendwelche Wiederaufnahmen würden "Visual C ++" als eine Sprache auflisten und versuchen anzuzeigen, dass sie nicht wissen, was eine Sprache ist.

Dies kommt zusammen mit "großen Kenntnissen von C ++ und PHP" -Anweisungen in den Papierkorb meiner Firma . Nicht weil sie notwendigerweise schlechte Programmierer sind - aber weil die Verstrickungszeit der Interviewzeit es nicht wert ist.

    
Pavel Radzivilovsky 17.08.2010 08:58
quelle

Tags und Links