Популярность boost и STL
От: rg_software  
Дата: 24.10.07 12:05
Оценка:
Очень интересно мнение форумчан, насколько широко люди, программирующие на С++, используют boost & STL? Речь идет о самом широком срезе -- студенты, программисты, хобби-девелоперы...

Иными словами, насколько актуально, например, обучать этому людей? Или уже все, кто пишет на плюсах, эти штуки знают?

Особенно интересует STL, т.к. буст, по моему (практически твёрдому убеждению) точно используют недостаточно широко. Спасибо!
Re: Популярность boost и STL
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 24.10.07 12:19
Оценка:
Здравствуйте, rg_software, Вы писали:

_>Очень интересно мнение форумчан, насколько широко люди, программирующие на С++, используют boost & STL? Речь идет о самом широком срезе -- студенты, программисты, хобби-девелоперы...


Программирую на C++ с 1992-93 гг. STL начал использовать где-то в 96-м или 97-м. С тех пор использую его постоянно, если платформа/компилятор обеспечивают его поддержку.

Boost не использую. Но не столько из-за сложности/качества Boost-а, а из-за некоторых организационных факторов.

_>Иными словами, насколько актуально, например, обучать этому людей? Или уже все, кто пишет на плюсах, эти штуки знают?


По моему мнению, обучать этому нужно, поскольку STL -- это часть языка.

Обучать ли Boost-у? Если собираетесь использовать его в своих проектах, то однозначно -- да.
В остальных случаях достаточно хотя бы поверхностно ознакомиться с тем, что в Boost есть. Для того, чтобы не изобретать заново то, что в Boost уже сделано.

Если есть цель освоить C++ в совершенстве (т.е. до мельчайших деталей стандарта языка), то может иметь смысл разобраться с тем, как некоторые Boost-овские библиотеки устроены.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re: Популярность boost и STL
От: Аноним  
Дата: 24.10.07 12:20
Оценка: +1 :))) :))) :))) :)
Здравствуйте, rg_software, Вы писали:

_>Иными словами, насколько актуально, например, обучать этому людей? Или уже все, кто пишет на плюсах, эти штуки знают?

Актуально обучать где? В школе\вузе\фиоме?

_>Особенно интересует STL, т.к. буст, по моему (практически твёрдому убеждению) точно используют недостаточно широко. Спасибо!

Сейчас прибежит Егор и объяснит тебе, что ты не прав. Потом Егору объяснят, что он не прав. И начнется очерередная СВ "СТЛ vs велосипеды"
Re[2]: Популярность boost и STL
От: rg_software  
Дата: 24.10.07 12:27
Оценка: +1
А>Актуально обучать где? В школе\вузе\фиоме?
Скажем так, "массовая аудитория, интересующаяся современным С++"

А>Сейчас прибежит Егор и объяснит тебе, что ты не прав. Потом Егору объяснят, что он не прав. И начнется очерередная СВ "СТЛ vs велосипеды"


Нет-нет, ни в коем случае, никаких войн. Я спрашиваю лишь о текущем состоянии дел; вопрос о том, насколько хороши библиотеки -- не ставится.

Я понимаю, что те, кто читает RSDN, наверняка эти либы используют (или не используют, но в курсе их существования). Но при этом, сдается мне, широк пласт народа, до сих пор рассматривающий С++ на уровне С, и дальше не лезущий.
Re[3]: Популярность boost и STL
От: dip_2000 Россия  
Дата: 24.10.07 12:40
Оценка:
Здравствуйте, rg_software, Вы писали:

_>Я понимаю, что те, кто читает RSDN, наверняка эти либы используют (или не используют, но в курсе их существования). Но при этом, сдается мне, широк пласт народа, до сих пор рассматривающий С++ на уровне С, и дальше не лезущий.

тогда уже нужно начинать с "используете ли вы шаблоны, и на сколько активно?"
Re[4]: Популярность boost и STL
От: Аноним  
Дата: 24.10.07 12:45
Оценка:
Здравствуйте, dip_2000, Вы писали:

_>тогда уже нужно начинать с "используете ли вы шаблоны, и на сколько активно?"

Спорно. СТЛ я использую чаще, чем пишу свои шаблоны
Re: Популярность boost и STL
От: jazzer Россия Skype: enerjazzer
Дата: 24.10.07 12:46
Оценка:
Здравствуйте, rg_software, Вы писали:

_>Очень интересно мнение форумчан, насколько широко люди, программирующие на С++, используют boost & STL? Речь идет о самом широком срезе -- студенты, программисты, хобби-девелоперы...


О широких срезах ничего сказать не могу, у нас на работе обе библиотеки активно используют (и я в своих личных разработках тоже).

_>Иными словами, насколько актуально, например, обучать этому людей? Или уже все, кто пишет на плюсах, эти штуки знают?

_>Особенно интересует STL, т.к. буст, по моему (практически твёрдому убеждению) точно используют недостаточно широко. Спасибо!

STL — это уже Стандарт, boost — это будущий стандарт.
Так что, очевидно, обучать надо, по крайней мере, тем вещам, которые уже вошли в следующий Стандарт.
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re[5]: Популярность boost и STL
От: rg_software  
Дата: 24.10.07 12:47
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, dip_2000, Вы писали:


_>>тогда уже нужно начинать с "используете ли вы шаблоны, и на сколько активно?"

А>Спорно. СТЛ я использую чаще, чем пишу свои шаблоны

Согласен. Не будем отвлекаться. Есть большая разница между разработкой собственных шаблонов и использованием std::sort(), например.

Так что возвращаемся к бусту и стл
Re[3]: Популярность boost и STL
От: jazzer Россия Skype: enerjazzer
Дата: 24.10.07 12:49
Оценка:
Здравствуйте, rg_software, Вы писали:

_>Нет-нет, ни в коем случае, никаких войн. Я спрашиваю лишь о текущем состоянии дел; вопрос о том, насколько хороши библиотеки -- не ставится.


Встречный вопрос — а тебе зачем?
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re: Популярность boost и STL
От: dip_2000 Россия  
Дата: 24.10.07 12:49
Оценка: -1 :)
Здравствуйте, rg_software, Вы писали:

_>Очень интересно мнение форумчан, насколько широко люди, программирующие на С++, используют boost & STL? Речь идет о самом широком срезе -- студенты, программисты, хобби-девелоперы...ну за всех говорить не будем, за себя, да еще за часть фирмы может быть...


_>Иными словами, насколько актуально, например, обучать этому людей? Или уже все, кто пишет на плюсах, эти штуки знают?

Знают, о наличии, и некоторых бызовых возможностях, все выше джуниоров, наверное.... но... см ниже...

_>Особенно интересует STL, т.к. буст, по моему (практически твёрдому убеждению) точно используют недостаточно широко. Спасибо!

За себя крайне активно использую STL, Boost coding standards запрещают но и то, часть пришлось включить в проект(например boost::bind). Учим потихоньку самостоятельно, но тяжко без боевого использования
Если говорить о фирме... то тут все как во многих местах — stl используется, но недолюбливается, исключения используются, тк нужно "идти в ногу со временем", но при этом не используется RAII Как это можно совмещать не понятно. Люди при этом уверены, что утечек не будет.

Re: Популярность boost и STL
От: Roman Odaisky Украина  
Дата: 24.10.07 13:06
Оценка:
Здравствуйте, rg_software, Вы писали:

_>Очень интересно мнение форумчан, насколько широко люди, программирующие на С++, используют boost & STL? Речь идет о самом широком срезе -- студенты, программисты, хобби-девелоперы...


Лично я использую и то, и другое.

_>Иными словами, насколько актуально, например, обучать этому людей? Или уже все, кто пишет на плюсах, эти штуки знают?

_>Особенно интересует STL, т.к. буст, по моему (практически твёрдому убеждению) точно используют недостаточно широко.

Как-то странно поставлен вопрос. Если вы пишете парсер, то Boost.Spirit знать нужно. Если вы не пишете парсер, то Boost.Spirit знать не нужно.

Касательно STL я считаю, что хороший программер на C++ должен понимать основные концепции STL (итераторы, strict weak ordering, и т. п.), для того, чтобы понимать код, написанный другими, и представлять себе, что в STL есть и чего в STL нет, для того, чтобы самому писать код без ненужных велосипедов. На этом форуме кто-то причислял к недостаткам STL то, что она, ввиду своей стандартности и универсальности, содержит непредсказуемые вещи, например, std::next_permutation — не зная, не догадаешься, что такое в STL есть. Так что список алгоритмов следует помнить, тем более, что он невелик
Автор: Roman Odaisky
Дата: 17.09.07
Вопрос: Какие алгоритмы STL вы использовали?
(из-за ограничения в 30 вариантов пришлось убрать тривиальные swap, min-max и т. п.)
.

Касательно библиотек Boost я считаю, что хороший программер на C++ должен знать, что они существуют.
До последнего не верил в пирамиду Лебедева.
Re: Популярность boost и STL
От: zaufi Земля  
Дата: 24.10.07 13:20
Оценка:
Здравствуйте, rg_software, Вы писали:

_>Очень интересно мнение форумчан, насколько широко люди, программирующие на С++, используют boost & STL? Речь идет о самом широком срезе -- студенты, программисты, хобби-девелоперы...


_>Иными словами, насколько актуально, например, обучать этому людей? Или уже все, кто пишет на плюсах, эти штуки знают?


_>Особенно интересует STL, т.к. буст, по моему (практически твёрдому убеждению) точно используют недостаточно широко. Спасибо!


boost использовался на последних моих 3х местах работы (начиная с 2004 года)... причем на текущем месте он тут уже был до меня и в оч солидных объемах

вобщем я довольно давно не встречал вживую С++ программеров кто бы не знал по кр мере про буст
Re: Популярность boost и STL
От: Erop Россия  
Дата: 24.10.07 13:22
Оценка: -1 :))) :)
Здравствуйте, rg_software, Вы писали:

_>Особенно интересует STL, т.к. буст, по моему (практически твёрдому убеждению) точно используют недостаточно широко. Спасибо!


STL я использую, если нет лучших вариантов. Но обычно они есть...
boost стараюсь не использовать, но при использовании STL этого иногда трудно избежать

_>Иными словами, насколько актуально, например, обучать этому людей? Или уже все, кто пишет на плюсах, эти штуки знают?

Обучать наверняка стоит, в том числе и разбирать плюсы и минусы. В том числе нужно предупредить людей, что использование STL вероятно заставит их смотреть в сторону boost, а у него есть свои особенности и сложности.
При этом в любом случае стоит разобрать базовые концепции и STL и кое-чего из boost'а
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[4]: Популярность boost и STL
От: rg_software  
Дата: 24.10.07 13:48
Оценка:
Здравствуйте, jazzer, Вы писали:

J>Здравствуйте, rg_software, Вы писали:


_>>Нет-нет, ни в коем случае, никаких войн. Я спрашиваю лишь о текущем состоянии дел; вопрос о том, насколько хороши библиотеки -- не ставится.


J>Встречный вопрос — а тебе зачем?


Скажем так -- предложили разработать небольшой тренинг (пусть будет 3-5 часов) по С++ для "интересующейся аудитории". Времени немного, то есть это НЕ учебный курс. Предполагается, что аудитория С++ владеет.
С другой стороны, рассказать о какой-либо изолированной интересной находке -- слишком узко, да и не каждая из них всем нужна.

Я решил, что лучше всего показать на примерах использование Boost & STL, чтобы люди увидели, как легко решаются типовые задачи при условии применения правильного инструментария.

Вопрос для меня -- в расстановке акцентов. Скорее буст, скорее стл или повсюду понемногу.
Если стл знают все, то можно сразу перейти к бусту. Если на это рассчитывать не приходится, буду рассказывать и про стл тоже.

Вот... посоветуйте!
Re: Популярность boost и STL
От: tilarids Украина tilarids.blogspot.com
Дата: 24.10.07 13:50
Оценка: :)
Здравствуйте, rg_software, Вы писали:

_>Очень интересно мнение форумчан, насколько широко люди, программирующие на С++, используют boost & STL? Речь идет о самом широком срезе -- студенты, программисты, хобби-девелоперы...

_>[skipped]
_>Особенно интересует STL, т.к. буст, по моему (практически твёрдому убеждению) точно используют недостаточно широко. Спасибо!

Как уже написал — STL в реальной работе используется повсеместно, Boost — практически не используется, ибо слишком громоздок. Точнее, не используются громоздкие вещи Boost`а — используются вырезки из буста.

По широким срезам сказать могу весьма точно, так как сам по совместительству студент. Какой STL? Используется паттерн "Copy-Paste". За рамки C выходят редкие студенты, за рамки бесшаблонного С++ не выходят даже многие преподаватели.

Заработать денег на обучении STL можно, но смысла в этом я не вижу.
<вырезано, дабы сохранить место на сервере>
Re[5]: Популярность boost и STL
От: jazzer Россия Skype: enerjazzer
Дата: 24.10.07 13:58
Оценка: :)
Здравствуйте, rg_software, Вы писали:

_>Скажем так -- предложили разработать небольшой тренинг (пусть будет 3-5 часов) по С++ для "интересующейся аудитории". Времени немного, то есть это НЕ учебный курс. Предполагается, что аудитория С++ владеет.

_>С другой стороны, рассказать о какой-либо изолированной интересной находке -- слишком узко, да и не каждая из них всем нужна.

_>Я решил, что лучше всего показать на примерах использование Boost & STL, чтобы люди увидели, как легко решаются типовые задачи при условии применения правильного инструментария.


_>Вопрос для меня -- в расстановке акцентов. Скорее буст, скорее стл или повсюду понемногу.

_>Если стл знают все, то можно сразу перейти к бусту. Если на это рассчитывать не приходится, буду рассказывать и про стл тоже.

_>Вот... посоветуйте!


Я бы разработал два тренинга: один по STL и другой по Boost. (Заодно и денег вдвое больше срубишь )

Но!
Вызывают очень большие сомнения "3-5 часов" — имхо, ничего толкового не выйдет, если аудитория уже не в курсе.
За 3-5 часов можно дать только какой-то один аспект, скажем, "контейнеры СТЛ", или "алгоритмы СТЛ", или "что еще есть в СТЛ (байндеры и прочая)".

К нам вот приезжал Саттер, целую неделю по 8 часов читал лекции по своим книгам + немножко Майерса — так те, кто читал, откровенно скучали, а те, кто не читал — в основном были далеки от этой проблематики и мало чего поняли. Т.е. что-то они поняли и протащились, но как это использовать в реальной работе — у них не появилось не малейшего понятия.

Т.е, скажем, если человек понятия не имеет об exception safety — ему все эти разговоры просто мимо, он еще не в теме. Ему только 2-3 часа надо объяснять, что это такое, чтоб понял и проникся.

В результате это было полезно тем, кто прочитал книгу, но давно — просто освежить в памяти.


Если нужно краткое введение в наиболее часто использующиеся библиотеки буста — есть соответствующая книга, не знаю, есть ли она на русском.
jazzer (Skype: enerjazzer) Ночная тема для RSDN
Автор: jazzer
Дата: 26.11.09

You will always get what you always got
  If you always do  what you always did
Re: Популярность boost и STL
От: LaptevVV Россия  
Дата: 24.10.07 14:33
Оценка:
Здравствуйте, rg_software, Вы писали:

_>Очень интересно мнение форумчан, насколько широко люди, программирующие на С++, используют boost & STL? Речь идет о самом широком срезе -- студенты, программисты, хобби-девелоперы...

_>Иными словами, насколько актуально, например, обучать этому людей? Или уже все, кто пишет на плюсах, эти штуки знают?
_>Особенно интересует STL, т.к. буст, по моему (практически твёрдому убеждению) точно используют недостаточно широко. Спасибо!
STL — изучать по-любому, так как это входит в стандарт... Буст — ознакомление и общий обзор — весьма полезно... Если использование в проектах — тогда изучать детально...
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[5]: Популярность boost и STL
От: Sergey Россия  
Дата: 24.10.07 14:54
Оценка: -1
> Скажем так -- предложили разработать небольшой тренинг (пусть будет 3-5 часов) по С++ для "интересующейся аудитории". Времени немного, то есть это НЕ учебный курс. Предполагается, что аудитория С++ владеет.
> С другой стороны, рассказать о какой-либо изолированной интересной находке -- слишком узко, да и не каждая из них всем нужна.
>
> Я решил, что лучше всего показать на примерах использование Boost & STL, чтобы люди увидели, как легко решаются типовые задачи при условии применения правильного инструментария.
>
> Вопрос для меня -- в расстановке акцентов. Скорее буст, скорее стл или повсюду понемногу.
> Если стл знают все, то можно сразу перейти к бусту. Если на это рассчитывать не приходится, буду рассказывать и про стл тоже.

Мне кажется, нет смысла про STL рассказывать. Если человек, "владеющий C++", не удосужился ознакомится с STL, то скорее всего он и ваш тренинг мимо ушей пропустит. Ну а про буст, IMHO, было бы полезно рассказать очень поверхностно и обзорно — один-два примера из каждой либы, чтобы люди примерно представляли что там есть. Кому надо — почитают потом документацию, кому не надо — тоже скучать будут меньше, чем если вы зароетесь в тонкости какой-нибудь одной библиотеки.
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[6]: Популярность boost и STL
От: Roman Odaisky Украина  
Дата: 24.10.07 15:14
Оценка: +1
Здравствуйте, Sergey, Вы писали:

>> Скажем так -- предложили разработать небольшой тренинг (пусть будет 3-5 часов) по С++ для "интересующейся аудитории". Времени немного, то есть это НЕ учебный курс. Предполагается, что аудитория С++ владеет.


S>Мне кажется, нет смысла про STL рассказывать. Если человек, "владеющий C++", не удосужился ознакомится с STL, то скорее всего он и ваш тренинг мимо ушей пропустит. Ну а про буст, IMHO, было бы полезно рассказать очень поверхностно и обзорно — один-два примера из каждой либы, чтобы люди примерно представляли что там есть. Кому надо — почитают потом документацию, кому не надо — тоже скучать будут меньше, чем если вы зароетесь в тонкости какой-нибудь одной библиотеки.


Я бы рассказал про итераторы, всё равно большинство людей их до конца, похоже, не осилило. Например, почему std::reverse(str.begin(), str.end()) — неверный ответ на вопрос «как развернуть строку». По этому поводу есть две поучительные
Автор: Odi$$ey
Дата: 14.03.03
картинки
Автор: Roman Odaisky
Дата: 26.03.07
.

Про Boost, +1, было бы полезно рассказать про каждую библиотеку понемножку, и упомянуть преимущества и недостатки Boost вообще (хорошая лицензия, единообразное проектирование, требовательность к компилятору, танцы с bcp). Про STL, кстати, такой обзор тоже явно не был бы лишним.
До последнего не верил в пирамиду Лебедева.
Re[7]: Популярность boost и STL
От: rg_software  
Дата: 24.10.07 15:37
Оценка: :)
RO>Я бы рассказал про итераторы, всё равно большинство людей их до конца, похоже, не осилило. Например, почему std::reverse(str.begin(), str.end()) — неверный ответ на вопрос «как развернуть строку». По этому поводу есть две поучительные
Автор: Odi$$ey
Дата: 14.03.03
картинки
Автор: Roman Odaisky
Дата: 26.03.07
.

Кстати, почему так строку не развернуть? В инете этот вариант часто предлагают.

RO>Про Boost, +1, было бы полезно рассказать про каждую библиотеку понемножку, и упомянуть преимущества и недостатки Boost вообще (хорошая лицензия, единообразное проектирование, требовательность к компилятору, танцы с bcp). Про STL, кстати, такой обзор тоже явно не был бы лишним.


Верно. Я, конечно, буст уважаю, но 74 библиотеки? Разве что несколько выбранных наугад.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.