crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

3 страниц V   1 2 3 >  
Ответить в данную темуНачать новую тему
sergioK
  опции профиля:
сообщение 16.9.2012, 12:48
Сообщение #1


Новичок


Группа: Неактивирован
Сообщений: 7
Регистрация: 16.9.2012
Пользователь №: 3521

Спасибо сказали: 0 раз(а)




Репутация:   0  


Либа собсвенно крос платформенная, это все знают, у меня собсвенно вопрос

Если мне этот крос не нужен, то есть ли смысл в применении буста?
(кроме smart pointers ) т,е есть ли у него минусы/дырки и в чем ?

С С++ знаком но не гуру, последнии 8 лет пишу на яве,
С/С+ пользую now and then .
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 16.9.2012, 15:02
Сообщение #2


фрилансер
******

Группа: Участник
Сообщений: 2943
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


sergioK, собственно, судя по всему, тебе, собственно, буст не нужен )
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
sergioK
  опции профиля:
сообщение 16.9.2012, 16:19
Сообщение #3


Новичок


Группа: Неактивирован
Сообщений: 7
Регистрация: 16.9.2012
Пользователь №: 3521

Спасибо сказали: 0 раз(а)




Репутация:   0  



Хотелось бы услышать менее холиварный вариант ответа,
ты еще на судью не выучился :rolleyes:


Цитата(Алексей1153 @ 16.9.2012, 15:02) *
sergioK, собственно, судя по всему, тебе, собственно, буст не нужен )
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 16.9.2012, 16:44
Сообщение #4


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


sergioK, не вижу ни какого холивара, а про судью язык придержи.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
sergioK
  опции профиля:
сообщение 16.9.2012, 17:04
Сообщение #5


Новичок


Группа: Неактивирован
Сообщений: 7
Регистрация: 16.9.2012
Пользователь №: 3521

Спасибо сказали: 0 раз(а)




Репутация:   0  



Хотелось бы услышать ответ по теме, пока что это второй пост в никуда,



Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 16.9.2012, 21:04
Сообщение #6


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


sergioK, тебе же сказали, лучше не использовать буст только для смарт поинтеров.
Если бы ты как и говоришь 8 лет писал бы серьёзно на Java, то таких вопросов бы не возникало. ;)

А если все же возникает, то вот тебе вопрос на засыпку, зачем собственно в Java smart pointers?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
sergioK
  опции профиля:
сообщение 17.9.2012, 10:38
Сообщение #7


Новичок


Группа: Неактивирован
Сообщений: 7
Регистрация: 16.9.2012
Пользователь №: 3521

Спасибо сказали: 0 раз(а)




Репутация:   0  




На засыпку отвечаю - проверяеться вариант замены яве + ni на буст,

И соотвественно вопрос вопрос о плюсах /минусах буста ответа на который Я не увидел ,
нету довольных/не довольных ? не было ни у кого разных ситуаций ?





Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Влад
  опции профиля:
сообщение 17.9.2012, 11:00
Сообщение #8


Участник
**

Группа: Участник
Сообщений: 146
Регистрация: 20.3.2009
Из: Санкт-Петербург
Пользователь №: 627

Спасибо сказали: 46 раз(а)




Репутация:   8  


В применении буста есть как плюсы, так и минусы, - даже независимо от кроссплатформенности.

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

Теперь добавлю немного дегтя в эту бочку меда: о минусах :-) Во-первых, буст требует определенной культуры программирования на C++, я бы выразился так: нужно "мыслить в стиле C++, а не в стиле С с классами". Хотя это, конечно, зависит от опыта и нарабатывается постепенно. Во-вторых, буст неоднороден - он никогда не писался одним человеком или даже одним коллективом, это довольно пестрое собрание разнородных библиотек от независимых авторов; есть вещи, написанные хорошо, а есть.... Впрочем, если не заглядывать "под капот", а просто использовать, то ничего страшного :-)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 17.9.2012, 11:03
Сообщение #9


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Цитата(sergioK @ 17.9.2012, 11:38) *
проверяеться вариант замены яве + ni на буст
java.nio?

Цитата(sergioK @ 17.9.2012, 11:38) *
И соотвественно вопрос вопрос о плюсах /минусах буста ответа на который Я не увидел ,
нету довольных/не довольных ? не было ни у кого разных ситуаций ?
Единственный минус буста в том, что для работы с ним недостаточно быть просто знакомым с С\С++, порой нужно знать на отлично С++ и STL, иначе использование Boost превратится в шаманство...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 17.9.2012, 11:52
Сообщение #10


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


использую буст много лет (ещё с каких-то там 20-х версий). отличная библиотека для профессиональной разработки на С++.

причём буст - не просто кроссплатформенная библиотека. фактически, это тестовый полигон стандартизации С++. то есть то, что разрабатывается в бусте, потом частично переходит в стандартные библиотеки С++. и эти самые поинтеры, кстати, уже в стандарте. так что ради них не имеет смысла юзать буст. auto_ptr был уже давно, а shared_ptr и weak_ptr добавили в последний стандарт год назад. так что их уже обязаны поддерживать все компиляторы стандарта С++11. и использование буста только усложнит задачу: нужно будет разграничивать поинтеры буста и стандартных библиотек. конечно, буст имеет и другие, куда более продвинутые поинтеры, но для того, кто не занимается С++ профессионально, они вряд ли пригодятся.

а так, буст имеет очень мощные средства, которые хорошо отлажены и очень тщательно оптимизированы. однако, он не рассчитан на новичков. профессионал С++ его оценит. новичок только запутается и наломает дров. я буст применяю в любой, даже самой мелкой тестовой программке. но это требует некоторого опыта работы с ним и отличного знания С++. я в нём использую межпроцессное взаимодействие, работу с регулярными выражениями, потоки (чтобы не заморачиваться с ними под разные системы, у меня кроссплатформа), математические библиотеки, функции работы со временем, контейнеры, работу с файловой системой, сигналы, юнит-тесты. ну и так, по мелочи ещё разные отдельные библиотеки буста иногда.

Сообщение отредактировал Iron Bug - 17.9.2012, 12:06
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 17.9.2012, 13:51
Сообщение #11


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата(Iron Bug @ 17.9.2012, 12:52) *
я в нём использую ... работу с регулярными выражениями, потоки ...
так ведь это теперь тоже в новый стандарт перекачевало. Или компиляторы еще плохо этот функционал поддерживают?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 17.9.2012, 21:09
Сообщение #12


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


Цитата(igor_bogomolov @ 17.9.2012, 16:51) *
Цитата(Iron Bug @ 17.9.2012, 12:52) *
я в нём использую ... работу с регулярными выражениями, потоки ...
так ведь это теперь тоже в новый стандарт перекачевало. Или компиляторы еще плохо этот функционал поддерживают?

я не слышала, чтобы регулярные выражения перекочёвывали в стандарт. там слишком жирная библиотека, на самом деле. и она ещё не утрясена, как следует. насчёт потоков - у венды вроде позикса нет. может, они там что-то и сделали, но я тоже такого факта не припоминаю.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 18.9.2012, 8:49
Сообщение #13


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата(Iron Bug @ 17.9.2012, 22:09) *
я не слышала, чтобы регулярные выражения перекочёвывали в стандарт. там слишком жирная библиотека, на самом деле. и она ещё не утрясена, как следует. насчёт потоков - у венды вроде позикса нет. может, они там что-то и сделали, но я тоже такого факта не припоминаю.
Сам то я на плюсах давно не пишу, плотно в ядро линукса перелез, но стараюсь следить за событиями. И имею сам стандарт.

boost::threads почти в полном объеме перекачевала в новый стандарт. В связи с этим, например, появилось новое ключевое слово thread_local. В stl появились потоко безопасные контейнеры. Глава 30 нового стандарта полностью посвещана потокам (30 Thread support library).

Регулярные выражения описаны в разделе 28 (Regular expressions library). Тут я правда не могу провести никаких паралелей с boost. Не знаю в каком объёме эта библиотека была стандартизирована.
В википедии можно немного про регулярные выражения почитать.

Т.е. в стандарте всё это есть, но вот как дело обстоит с поддержкой этих возможностей в компиляторах, я не знаю.

P.S. Еще раз про потоки в с++11. Сделаю небольшую рекламу. Есть замечательная книга по этому поводу.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 18.9.2012, 10:28
Сообщение #14


фрилансер
******

Группа: Участник
Сообщений: 2943
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


sergioK, окай, как выучусь на судью твоего уровня, обсудим :))
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 18.9.2012, 11:55
Сообщение #15


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Алексей1153, не развивай это направление
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
sergioK
  опции профиля:
сообщение 18.9.2012, 22:11
Сообщение #16


Новичок


Группа: Неактивирован
Сообщений: 7
Регистрация: 16.9.2012
Пользователь №: 3521

Спасибо сказали: 0 раз(а)




Репутация:   0  


Для меня пока главный недостаток - отсуствие вменяемой документации :rolleyes: ,
как собвено компилить ? пока нашел такое,
bjam.exe --toolset=gcc stage, потом говорю Сode Blocks добавить либы к линкеру (могу и руками но лень)
мне бы хотелось сказать бижаму что бы разбил все по папкам т,е, chrono в свою папку , regex в свою , signal в свою
и т,д,( так потом удобней искать/менять )
вопрос как это реально сделать? если реально ?

и еще
как компилить отдельную либу т,е, после bjam.exe --toolset=gcc(ну или другой компилятор)
что потом где его найти (доку читал видимо плохо :huh: ) ?

ну и так на всякий случай - тролей не кормлю, желающим покусаться, могу указать на более интересные сайты ,



Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 19.9.2012, 8:18
Сообщение #17


фрилансер
******

Группа: Участник
Сообщений: 2943
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


sergioK, Я не тролль, если что. Весёлые трёхбуквенные сайты тоже знаю и могу показать:)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Влад
  опции профиля:
сообщение 19.9.2012, 9:08
Сообщение #18


Участник
**

Группа: Участник
Сообщений: 146
Регистрация: 20.3.2009
Из: Санкт-Петербург
Пользователь №: 627

Спасибо сказали: 46 раз(а)




Репутация:   8  


Цитата(sergioK @ 18.9.2012, 23:11) *
Для меня пока главный недостаток - отсуствие вменяемой документации.

Вот тут ты, пожалуй, не прав. Документация у буста очень и очень неплохая - в сравнении с другими бесплатными же проектами. (Давно известно, что при разработке бесплатного/freeware проекта программистам гораздо интереснее писать код, а не документацию к нему :-) А поскольку проект делается just for fun - то и заставить их писать доки невозможно.)

Просто буст рассчитана на более профессиональный контингент, чем программисты, "пишущие мышкой". Поэтому подход в стиле "Все-что-угодно за 21 день" - "Выберите компонент, перетащите его на форму, щелкните мышкой там, теперь тут, нажмите F5 - поздравляем! вы выполнили вашу первую программу!" - не работает.

Читай доки на сайте. Там есть целый раздел "как собрать".

Сообщение отредактировал Влад - 19.9.2012, 9:09
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 19.9.2012, 9:14
Сообщение #19


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата(sergioK @ 18.9.2012, 23:11) *
Для меня пока главный недостаток - отсуствие вменяемой документации :rolleyes: ,

По-моему, ты ошибаешься, как раз boost очень хорошую документацию имеет. Просто разбираться с ним придется не за неделю. Правильно подметили, что это инструмент для экспериментирования разных фишек, которые постепенно переходят в стандарт!

Цитата(igor_bogomolov @ 18.9.2012, 9:49) *
Регулярные выражения описаны в разделе 28 (Regular expressions library). Тут я правда не могу провести никаких паралелей с boost. Не знаю в каком объёме эта библиотека была стандартизирована.

По-моему, регулярки - через чур крупный отдельный раздел, чтобы перкочевывать прямо в язык С++! :) По-моему по-своему отдельный подъязык.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
sergioK
  опции профиля:
сообщение 19.9.2012, 22:28
Сообщение #20


Новичок


Группа: Неактивирован
Сообщений: 7
Регистрация: 16.9.2012
Пользователь №: 3521

Спасибо сказали: 0 раз(а)




Репутация:   0  




Цитата(igor_bogomolov @ 18.9.2012, 9:49) *
Регулярные выражения описаны в разделе 28 (Regular expressions library). Тут я правда не могу провести никаких паралелей с boost. Не знаю в каком объёме эта библиотека была стандартизирована.

По-моему, регулярки - через чур крупный отдельный раздел, чтобы перкочевывать прямо в язык С++! :) По-моему по-своему отдельный подъязык.




Да Я тоже так считаю, но они(RE) почти есть во всех языках есть,
так почему бы им не быть в С++ ?

Vlad , Я ж смайлик поставил, то ирония была ,
Все что ты и AD говорите правильно и очевидно, Я еще в 96году себе определил что 21день это утопия,
То что читать доку это понятно,то что не все сразу тоже хотя и хочеться :rolleyes:
Kонфигурация/сборка не всегда просто и а яве тоже самое и на чем угодно, но это лирика, а по сути никто сам не собирал ??


Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 20.9.2012, 8:34
Сообщение #21


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата(sergioK @ 19.9.2012, 23:28) *
а по сути никто сам не собирал ??
Кого, boost? Собирали много раз. И обсуждали сборку тоже не раз. Поищи по форуму.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 20.9.2012, 9:37
Сообщение #22


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


Цитата(sergioK @ 19.9.2012, 1:11) *
Для меня пока главный недостаток - отсуствие вменяемой документации :rolleyes: ,
как собвено компилить ? пока нашел такое,
bjam.exe --toolset=gcc stage, потом говорю Сode Blocks добавить либы к линкеру (могу и руками но лень)
мне бы хотелось сказать бижаму что бы разбил все по папкам т,е, chrono в свою папку , regex в свою , signal в свою
и т,д,( так потом удобней искать/менять )
вопрос как это реально сделать? если реально ?

и еще
как компилить отдельную либу т,е, после bjam.exe --toolset=gcc(ну или другой компилятор)
что потом где его найти (доку читал видимо плохо :huh: ) ?

ну и так на всякий случай - тролей не кормлю, желающим покусаться, могу указать на более интересные сайты ,

документация у буста очень хорошая и подробная. так что тут возмущения не по делу.

bjam
- инструмент со своим языком описания файлов для сборок Boost Build v2. к нему тоже есть подробнейшая документация. сделать там можно что угодно, но придётся править файлы для сборки библиотек буста.
собственно, совершенно непонятна идея разделения библиотек по папкам. простота хранения всех библиотек в одной папке в том, что потом просто прописываешь единый путь поиска для компилятора и не паришься. как ты собираешься это делать, если у тебя стопицот библиотек будут лежать в разных папках? тем более, что они могут ссылаться друг на друга.
а по вышеуказанной команде все скомпилённые библиотеки bjam помещает в папку stage. и искать их не так уж сложно: они все там. для другого места есть опция --stagedir (см. банальный --help у самого bjam, там всё написано, только запускать его надо в корне бустовских сорцов).
отдельная либа компилится опцией --with-XXX или --without-XXX(кстати, bjam это тоже в собственном хэлпе выдаёт).
а вообще, по всем вопросам сборки нужно смотреть документацию сборки буста:
сборка буста под вендой
сборка буста под никсами

Сообщение отредактировал Iron Bug - 20.9.2012, 9:41
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Влад
  опции профиля:
сообщение 20.9.2012, 10:41
Сообщение #23


Участник
**

Группа: Участник
Сообщений: 146
Регистрация: 20.3.2009
Из: Санкт-Петербург
Пользователь №: 627

Спасибо сказали: 46 раз(а)




Репутация:   8  


Ну почему же? Я, например, собирал буст - и не один раз, начиная с версии чуть ли не 1.30.... Сборка проходила без проблем - правда, честно скажу, времени занимала изрядно... в двух конфигурация - debug и release. Может, конечно, дело в машине - PIV 3 GHz 1 GB.....
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 20.9.2012, 23:52
Сообщение #24


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


Цитата(Влад @ 20.9.2012, 13:41) *
Ну почему же? Я, например, собирал буст - и не один раз, начиная с версии чуть ли не 1.30.... Сборка проходила без проблем - правда, честно скажу, времени занимала изрядно... в двух конфигурация - debug и release. Может, конечно, дело в машине - PIV 3 GHz 1 GB.....

чтобы буст собирался быстрее, ставьте в вызов bjam опцию распараллеливания -jN , где N - количество одновременно запущенных процессов (как правило, количество ядер проца или процов). будет собираться значительно шустрее.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
sergioK
  опции профиля:
сообщение 26.9.2012, 8:32
Сообщение #25


Новичок


Группа: Неактивирован
Сообщений: 7
Регистрация: 16.9.2012
Пользователь №: 3521

Спасибо сказали: 0 раз(а)




Репутация:   0  


Cо сборкой понятно пока то что хотел сделал,
всем спасибо,
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

3 страниц V   1 2 3 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 10.4.2025, 8:48