Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Что легче C++? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Разбиение проекта CodeBlocks на файлы http://www.cyberforum.ru/cpp/thread1346082.html
В общем, такая проблема. Писал класс строки, вроде все работало, но вот когда начал пытаться разбить проект на файлы, вылез лог с ошибкой:...
C++ Программное обеспечение (ПО) для калибровки Подскажите, или поделитесь источниками где можно почитать о разработке ПО для калибровки (аппаратных средств, программного обеспечения), желательно с примерами кодов (поисковики неохотно делятся... http://www.cyberforum.ru/cpp/thread1345910.html
Воспроизведение музыки с ВКонтакте средствами BASS C++
Доброе время суток. Пытаюсь воспроизвести музыку из контакта, но что то не выходит if (!BASS_Init (-1, 44100, 0 , NULL, NULL)) { HSTREAM stream; char url =...
Как и на чем написать и скомпилировать программу, чтоб загружалась через bootmgr и выводить "hello world"? C++
Ну что-то типа совсем простой ОС, если это можно так назвать.
C++ Данные из оперативной памяти http://www.cyberforum.ru/cpp/thread1344454.html
Подскажите пожалуйста, как нам перехватить данные любого приложения, которые "уходят" в оперативную память. То есть нам надо поймать их до того как они там окажутся?! Не предотвратить их уход туда, а...
C++ Компилятор G++ Здравствуйте, уважаемые программисты! У меня возникла такая проблема. Я всегда писал код на С++ без использования каких-либо IDLE (писал в блокноте Notepad++, а компилировал через cmd компилятором... подробнее

Показать сообщение отдельно
0x10
2463 / 1635 / 238
Регистрация: 24.11.2012
Сообщений: 4,023
06.01.2015, 10:23
Небольшой дисклеймер:
— Мне не хочется обсуждать сложность языка. Потому что всегда приходит кто-нибудь и начинает спорить на основании своего субъективного мнения. Спор все равно ни к чему не приводит.
— Я не знаю историю болезни конкретного проекта, почему были приняты те или иные технические решения и какие меры помогли бы избежать проблем. Для этого нужно белее глубокое погружение в конкретные реалии.
— Я не претендую на полноту ответа.

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

Цитата Сообщение от Tester64 Посмотреть сообщение
Зачем учить классы и наследование, если в Qt можно накидать кнопок и связав их получить прогу под любую платформу даже с базами данных.
Затем, что предоставляемые библиотекой инструменты находятся на другом уровне абстракции и не делают никаких предположений о доменной модели приложения.

Цитата Сообщение от Tester64 Посмотреть сообщение
Мне надо написать сокет клиент-сервер на С++. Когда задал вопрос - меня засыпали названиями фремворков!
А я еще накину: можно не опускаться до уровня сокетов, а взять готовый сервер (nginx) и посадить за него FastCGI-приложение. Писать сравнительный анализ существующих инструментов — долгое и бесполезное занятие. Выбор инструмента определяется множеством факторов:
— Требования и ограничения платформы. Важна ли мне кроссплатформенность или моя целевая платформа априори известна? Или платформа очень специфическая и не каждый инструмент подходит?
— Поддержка технологий инструментом. Например, если мне нужен http-сервер, то очевидно, что библиотека, предоставляющая легковесную обертку над сокетами мне не подойдет.
— Состояние проекта. Проект должен быть как минимум живым.
— Удобство использования. Субъективная вещь.
И многое другое. Определить все требования может только круг лиц, близкий к заказчику и исполнителям. Вполне ожидаемо, что в ответах фигурирует просто множество инструментов. Выбор — за исполнителем.

Цитата Сообщение от Tester64 Посмотреть сообщение
Если повысить качество хостинга, можно будет расширить и на 100-300 пользователей
Как я уже говорил, я не знаю специфики конкретных проектов и задач, но эти числа выглядят забавно на фоне того, что мы у себя разрабатываем системы, обслуживающие десятки миллионов пользователей и обрабатывающие сотни запросов в секунду. Ну это так, помериться.

Цитата Сообщение от Tester64 Посмотреть сообщение
Про С++ я пока даже надежных "точек входа" не нахожу...
Точка входа в язык — несколько проверенных книжек. Точка входа в технологию — как правило, лежит за пределами языка. Поиск библиотек под цели — в гугле. Если очень хочется какого-нибудь списка, можно посмотреть сюда: https://github.com/fffaraz/awesome-cpp Там и про сети есть раздел.

Цитата Сообщение от Tester64 Посмотреть сообщение
Результат (ЕХЕ) стал больше, но самое страшное - он теперь требовал таскать с собой какие-то библиотеки.
Деплой приложения — важный этап разработки, о котором нужно задумываться и в обязательном порядке прорабатывать. У приложения могут быть зависимости, могут быть сценарии установки как на чистую систему, так и обновление существующей. Если приложение кроссплатформенное, то под каждую платформу лучше выбирать наиболее родной для нее способ развертывания. А если мы говорим о сервер-сайде, то тут еще появляется пачка инструметов автоматизации (Ansible, Salt), к которым может захотеться написать плагины. Или Docker, который может упростить некоторые сценарии и реорганизовать рабочий процесс. И делать это все нужно уже сейчас. Это несравнимо с деятельностью вроде "накидать кнопок на форму и все заработает". Если кластер развалится от кривого деплоя, плохо будет всем.

Если бы мне вывалили весь список инструментов и технологий, которые используются в нашем продакшене, а потом мне заявили бы, что на понимание разницы между std::string и char некоторые тратят недели — я бы точно застрелился. К счастью, не все так драматично.

Не могу еще найти цитату, но было высказывание "ну оно же работает!".
Внутреннее качество продуктов никто не отменял. Пока над проектом работает один разработчик, он еще может ориентироваться во многих неочевидных вещах. Если же речь идет о командной разработке, то писать надо более качественно, иначе проект рискует загнуться.

Я согласен с тем, что у плюсов хватает своих травм. Но многие из обозначенных проблем обусловлены банальным отсутствием знаний или навыков. Серебряной пули нет. Но и наш мир несовершенен, и борьба с этим несовершенством — как раз одна из наших задач.
7
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru