Почему программисты иногда ссылаются на «C ++ / STL», как будто это отдельный язык? - PullRequest
8 голосов
/ 15 марта 2010

Это может показаться тривиальным вопросом, но в последнее время он меня сильно беспокоил. Почему некоторые программисты ссылаются на «C ++ / STL», как будто это другой язык? STL является частью стандартной библиотеки C ++ и, следовательно, является частью языка «C ++». Это не отдельный компонент, и он не живет один в области вещей C ++. И все же некоторые постоянно ведут себя так, будто это совсем другой язык. Почему?

Ответы [ 6 ]

9 голосов
/ 15 марта 2010

Возможно быть компетентным и опытным программистом C ++ и никогда не использовать STL. Возможно, вы используете Boost или ACE или были программистом MFC для Windows в течение 10 лет.

Если вы хотите, чтобы кто-то имел опыт использования STL, запрос о том, кто знает C ++, не гарантирует, что вы его получите.

Кроме того, на мой взгляд, написание кода, сильно зависящего от STL, очень отличается от написания, скажем, кода MFC. Это могут быть разные языки. Они, конечно, не будут особенно похожи.

8 голосов
/ 15 марта 2010

Понимание STL не обязательно для понимания C ++. Это полезно, когда вам нужны ADT, но вы можете пройти (могли бы пройти) всю свою карьеру в C ++, не нуждаясь в этом.

7 голосов
/ 15 марта 2010

Приведенные выше ответы действительно хороши; Я только собираюсь добавить к их содержанию в более широком контексте.

Разработчики могут ссылаться на язык / API | библиотеки, например. C / Win32, Java / Struts, Java / Spring, C # /. Net MVC, потому что в сущности есть две базы знаний - знание рассматриваемого языка и знание того, как использовать эту конкретную библиотеку, API или инфраструктуру. Что-то вроде Win32 довольно большое, как, скажем, Django, которое я сейчас изучаю. Сам Django работает очень специфично, и я знаю, что это то, что я изучаю, а не Python.

То же самое относится к C ++ / MFC или C ++ / Boost или C ++ / STL. Язык C ++ - используемый вами API / библиотека - MFC, Boost или STL.

6 голосов
/ 15 марта 2010

Возможно, потому что STL немного опоздал с игрой на C ++, и многие люди написали код, который не использует STL. Например, подумайте о раннем программировании на win32 с помощью MFC.

5 голосов
/ 15 марта 2010

Guess:

Когда C ++ был впервые выпущен, STL не существовало. Позднее он появился как дополнительное дополнение, а затем был включен в стандарт.

0 голосов
/ 17 августа 2010

При написании резюме люди часто перечисляют C / C ++ как язык, что во многих случаях означает, что они тоже не знают.

Когда-нибудь резюме будет перечислять Visual C ++ как язык, пытаясь указать, что они не знают, что такое язык.

Это, вместе с "отличным знанием C ++ и PHP", попадает в корзину в моей фирме Не потому, что они обязательно плохие программисты, а потому, что тратить время на собеседование не стоит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...