crossplatform.ru

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

 
Ответить в данную темуНачать новую тему
> Изучение Boost
vo.borodin
  опции профиля:
сообщение 1.11.2014, 22:02
Сообщение #1


Новичок


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

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




Репутация:   0  


Хочу задать один наивный вопрос: с чего начать изучение Boost? Подробнее: сейчас работаю в компании, разрабатывающей облачный софт для электронного документооборота, электронной отчётности и автоматизации производства (конкретно я занят на проекте по автоматизации рабочего процесса в предприятии общественного питания). Используемые технологии - Python, JavaScript, HTML5, PostgreSQL, а также внутренняя программная платформа нашей компании, которая тоже разрабатывается ею. В прикладных проектах C++ тоже используется (конкретно я на нём выполняю задачи), но в моём случае это - создание API для взаимодействия с оборудованием и не связано с созданием каких-либо новых сложных архитектур на C++. Boost используется во внутренней реализации нашей платформы - мы же, прикладные разработчики, его не используем.
По определенным причинам подумываю над тем, чтобы в перспективе сменить работу. В моей предыдущей компании я работал на C++ с использованием Qt - и хочу вернуться к этим технологиям, которые всегда у меня вызывали уважение и ощущение некой предрасположенности к ним. Насчёт Boost: есть некоторый поверхностный уровень знакомства и опыт использования. С чтением документации на английском языке проблем нет. В общем, хотелось бы составить себе некоторую программу изучения четырёх технологий - C++, Qt, Boost, а также STL - с прицелом на будущее профессиональное применение. Безусловно, нужно будет писать какие-то собственные проекты и выполнять упражнения - я хочу примеров таких задач.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 3.11.2014, 12:35
Сообщение #2


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

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

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




Репутация:   12  


boost - это, по сути, песочница для обкатки будущих стандартов С++.
то есть, он не является чем-то законсервированным, в него постоянно добавляются новые библиотеки и дорабатываются старые. при этом некоторые вещи переходят в стандарт и убираются из буста, когда в них уже нет необходимости. некоторые вещи просто отбрасываются.
изучать что угодно в программировании можно лишь при наличии практики в реальной жизни. теоретическое программирование - удел студентов. а студенты ничего не знают :) вряд ли можно изучать такой огромный набор библиотек, как буст, просто так, чисто теоретически. это было бы просто бесполезно. а так как буст постоянно меняется - эти знания без практики будут устаревать. буст очень разнообразен, но библиотеки в нём практически не имеют ничего общего меж собой. я использую буст более десяти лет, но некоторые библиотеки мне ни разу не пригодились. так что лучше просто выбрать задачу, в которой можно применить какую-то из библиотек буста, и начинать его использовать.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
vo.borodin
  опции профиля:
сообщение 5.11.2014, 19:38
Сообщение #3


Новичок


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

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




Репутация:   0  


Цитата(Iron Bug @ 3.11.2014, 15:35) *
изучать что угодно в программировании можно лишь при наличии практики в реальной жизни. теоретическое программирование - удел студентов

Iron Bug, прежде всего, спасибо за ответ. Но я именно об этом и писал в своём первом первом сообщении - я не собираюсь просто читать материалы по Boost, или Qt, или STL словно любовные романы. Ясно, что всё это нужно изучать через решение реальных и приближенных к ним задач. Если у Вас большой опыт разработки на C++, то расскажите, если не трудно, о нём - какие проекты разрабатывали, какие программистские задачи решали в их рамках и с помощью каких библиотек Boost'а. У меня как раз проблема в том, что я уже больше года работаю в компании, о которой рассказывал в своём первом сообщении, и там мы ведём, по сути, веб-разработку; источника задач, подходящих для решения на C++ с использованием Boost и возрастающих по сложности, у меня нет. Одна из компаний, которая интересует меня в качестве потенциального работодателя, занимается созданием софта для конвертации и обработки видео - может, Вы знаете, с какой стороны заехать к этой теме?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 6.11.2014, 11:00
Сообщение #4


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

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

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




Репутация:   12  


я не выделяю понятие "разработка с помощью Boost". просто использую то, что мне нужно в работе и то, что удобно использовать.
я много чего разрабатывала. ПО для банковских сортировщиков Барс, ПО, управляющее машинами на печатных фабриках Гознака, систему обмена данными для Сбербанка и Таможни. плюс дофига более мелких проектов, связанных с автоматизацией. сейчас работаю на Мотив Телеком (местный ОПСОС), пишу ПО для тарификации, работающее на серверах.
из буста я использовала много чего. но в основном thread, interprocess, bind, chrono, program_options, system, intrusive, regex, xpressive и spirit, algorithm, archive, datetime, filesystem, graph, random, signals2, smart_pointer, test. ну и всякие общие вещи из буста, которых до стандарта С++11 не было в стандартных библиотеках.
сочинения на тему "как мы писали АРМ" я писать не умею, да и времени нет на такие мемуары. буст - очень большой набор библиотек и они разные. надо читать про каждую и самому решать, нужно это тебе или нет. на конкретные вопросы по известным мне библиотекам могу ответить. я, по мере возможностей, отвечаю на вопросы в разделе про boost на этом форуме и пишу туда всякие мелкие заметки.

в целом, могу сказать, что буст довольно эффективен, пригоден для приложений, работающих в риалтайме (управление механикой, работа с обслуживанием миллионов запросов, огромные потоки данных). впрочем, замечу, что ACE иногда его обгоняет по скорости, но он гораздо менее удобен в применении и документация к нему фиговая.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
alexy
  опции профиля:
сообщение 11.1.2015, 20:54
Сообщение #5


Студент
*

Группа: Участник
Сообщений: 44
Регистрация: 4.8.2010
Пользователь №: 1931

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




Репутация:   0  


Цитата(vo.borodin @ 5.11.2014, 19:38) *
и там мы ведём, по сути, веб-разработку; источника задач, подходящих для решения на C++ с использованием Boost и возрастающих по сложности, у меня нет

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

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


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




RSS Текстовая версия Сейчас: 22.11.2024, 0:40