Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Так востребован ли сейчас C++, Постоянно одолевают сомнения.. 
:(
    Опции темы
esperant0
Дата 19.10.2007, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 714
Регистрация: 20.5.2005

Репутация: нет
Всего: 14



Цитата(MAKCim @ 19.10.2007,  19:27)
 
определен, притом очень четко  smile 
в основном = по большей части = в большинстве случаев = ...
 

Четко? ЭТо вы математику говорите?

Большинство бывает относительное и абсолютное. Продолжить?


--------------------
 
 Student->Teacher Assistant ->Research assistant->Microsoft Software Development Engineer 

Пользователь получил наказание за то, что проигнорировал замечание которое было написано модератором  а затем стерто и которое он - пользователь не мог видеть. 
PM MAIL   Вверх
MAKCim
Дата 19.10.2007, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 8
Всего: 207



esperant0
продолжайте
по поводу большинства...
имеется в виду абсолютное

Добавлено через 3 минуты и 30 секунд
esperant0
вы бы вместо того, чтобы разводить демогогию, ответили бы по существу и по теме


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
MAKCim
Дата 19.10.2007, 20:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 8
Всего: 207



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


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
WERITAS
Дата 22.10.2007, 20:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


********
**


Профиль
Группа: Участник
Сообщений: 582
Регистрация: 2.5.2005
Где: Москва

Репутация: 0
Всего: 5



Цитата(MAKCim @  19.10.2007,  20:17 Найти цитируемый пост)
я не вижу никаких причин использовать С++ в низкоуровневом программировании

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



--------------------
Арт-менеджер клуба, разрешивший концерт Алексея Глызина, уволен с формулировкой "Мудак"
PM MAIL   Вверх
MAKCim
Дата 22.10.2007, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 8
Всего: 207



WERITAS
назовите хоть одну действительно объективную причину использования С++ в низкоуровневом программировании
Цитата(WERITAS @  22.10.2007,  20:30 Найти цитируемый пост)
Я не владею техникой процедурного программирования, поэтому никогда и низачто не буду писать на чистом С. Если бы Я драйвер писал, Я бы на С++ его делал

1. ООП - это по сути синтаксический сахар, синтаксическая надстройка над функциями (=методы) и структурами (=классы)
непонятно, как можно использовать ООП и не владеть "техникой процедурного программирования"  smile 
2. Вы когда-нибудь занимались разработкой драйверов и прочих схожих вещей?


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Daevaorn
Дата 22.10.2007, 22:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 5
Всего: 70



Цитата(MAKCim @  22.10.2007,  22:17 Найти цитируемый пост)

назовите хоть одну действительно объективную причину использования С++ в низкоуровневом программировании

как мне кажется не очень правильный вопрос. причиной может быть всё то, что ты отнес к "тежеловесным моментом". это дело вкуса и доступных инструментов.
PM MAIL WWW   Вверх
esperant0
Дата 22.10.2007, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 714
Регистрация: 20.5.2005

Репутация: нет
Всего: 14



Цитата(MAKCim @ 22.10.2007,  21:17)
WERITAS
назовите хоть одну действительно объективную причину использования С++ в низкоуровневом программировании
 

Тут есть совокупность множества причин - проссумировав которые скажу, мне УДОБНО.




--------------------
 
 Student->Teacher Assistant ->Research assistant->Microsoft Software Development Engineer 

Пользователь получил наказание за то, что проигнорировал замечание которое было написано модератором  а затем стерто и которое он - пользователь не мог видеть. 
PM MAIL   Вверх
MAKCim
Дата 22.10.2007, 23:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 8
Всего: 207



вот еще, по поводу исключений
не знаю как в VC++ и прочих виндовых компиляторах, но в GCC для реализации исключений
используются функции из libstdc++ (которая, кстати, весит довольно прилично)
если учесть, что драйвера в принципе не могут использовать подгружаемые библиотеки, то единственным вариантом использования исключений остается статическая компоновка libstdc++ вместе с драйвером
а это очень нехило увеличивает его размер  smile 
esperant0
"мне удобно" - это не объективная причина
объективные причины не использовать мною были названы  smile 
Цитата(Daevaorn @  22.10.2007,  22:15 Найти цитируемый пост)
причиной может быть всё то, что ты отнес к "тежеловесным моментом". это дело вкуса и доступных инструментов. 

инструменты...может быть, но мне лично трудно себе представить, что С++ компиялтор есть, а С - нет
вкусы...
усложнение кода и снижение производительности в таких вещах ради вкусов?  smile 
я могу понять выбор между Java, C#, С++ (или еще чем либо) в плане предпочтения по принципу нравится/не нравится в прикладном программировании, но в системном...


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Daevaorn
Дата 22.10.2007, 23:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 5
Всего: 70



Цитата(MAKCim @  23.10.2007,  00:34 Найти цитируемый пост)
инструменты...может быть, но мне лично трудно себе представить, что С++ компиялтор есть, а С - нет

есть и тот и другой на выбор
Цитата(MAKCim @  23.10.2007,  00:34 Найти цитируемый пост)
усложнение кода и снижение производительности в таких вещах ради вкусов? 

для кого-то pattern based development гораздо проще чем процедурщина. хотя конечно гики и там смогут наворотить. да и потом,  кто сказал, что в низкоуровневом-системном программировании нужна максимальная производительно? это лишь одно из многих возможных качеств продукта.
PM MAIL WWW   Вверх
S.A.G.
  Дата 23.10.2007, 00:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


не эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1339
Регистрация: 20.7.2006
Где: in ad equate

Репутация: нет
Всего: 19



Предлагаю разделить тему на то, что я предложил к обсуждению и "C vs C++ в низкоуровневом программировании".

Первое меня интересует, второе - нет.


--------------------
Вот она задачка: спасти себя от себя самого © Cube
Sometimes good people do evil things © A Simple Plan
PM   Вверх
MAKCim
Дата 23.10.2007, 09:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 8
Всего: 207



Цитата(Daevaorn @  22.10.2007,  23:44 Найти цитируемый пост)
есть и тот и другой на выбор

тогда к чему было сказано о доступности инструментов?
я так понял, что С-компилятора может не быть, поэтому придется писать на С++
или я не так понял?
Цитата(Daevaorn @  22.10.2007,  23:44 Найти цитируемый пост)
да и потом,  кто сказал, что в низкоуровневом-системном программировании нужна максимальная производительно?

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

Добавлено через 50 секунд
Цитата(S.A.G. @  23.10.2007,  00:04 Найти цитируемый пост)
Предлагаю разделить тему на то, что я предложил к обсуждению и "C vs C++ в низкоуровневом программировании".

 smile 


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
LSD
Дата 23.10.2007, 17:27 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 9
Всего: 538



Цитата(MAKCim @  23.10.2007,  00:34 Найти цитируемый пост)
"мне удобно" - это не объективная причина
объективные причины не использовать мною были названы

Я что то не увидел ни одной объективной причины, для использования Си. Ассемблер в данной ситуации намного лучше, а на трудоемкость мы положим болт smile


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
S.A.G.
Дата 23.10.2007, 17:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


не эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1339
Регистрация: 20.7.2006
Где: in ad equate

Репутация: нет
Всего: 19



Забрел на один сайтик (спасибо Vingrad-у). В одном из разделов там предлагаются к ознакомлению рейтинги зарплат по различным критериям. Вот на какие направления там разделяют индустрию разработки программного обеспечения (данные по зарплатам брались за 2007 год):
  • Аутсорсинг
  • Разработка ПО (аутсорсинг)
  • Разработка ПО
  • Веб-разработка
  • ИТ
  • Телекоммуникации
  • Банковская сфера
  • Финансы
  • Торговля
  • Embedded
  • Промышленность
  • Продажи
  • Разработка игр
  • Транспорт
  • Дистрибуция
Ссылка

Жду ваших мыслей по теме. smile

LSD, я просил.. smile

Это сообщение отредактировал(а) S.A.G. - 23.10.2007, 17:33


--------------------
Вот она задачка: спасти себя от себя самого © Cube
Sometimes good people do evil things © A Simple Plan
PM   Вверх
MAKCim
Дата 23.10.2007, 21:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 8
Всего: 207



Цитата(LSD @  23.10.2007,  17:27 Найти цитируемый пост)
Я что то не увидел ни одной объективной причины, для использования Си. Ассемблер в данной ситуации намного лучше, а на трудоемкость мы положим болт

нет, не лучше
1. Ассемблер не переносим
2. Ассемблер себя не оправдывает в большом проекте: трудность отладки, повышенная вероятность наличия скрытых ошибок, трудоемкость процесса разработки
ассемблер используется там, где напрямую на С написать не получится либо нужна очень сильная оптимизация
но таких участков кода обычно мало (либо нет совсем)
по поводу объективности
использование преимуществ С++ ведет к раздутости кода и снижениюю производительности, что для приложений системного характера недопустимо (в большинстве случаев)
это не объективные причины?  smile 
если преимущества С++ не использовать, чем он в итоге будет отличаться от С?  smile 

Это сообщение отредактировал(а) MAKCim - 23.10.2007, 21:18


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
LSD
Дата 24.10.2007, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 9
Всего: 538



Цитата(MAKCim @  23.10.2007,  22:14 Найти цитируемый пост)
Ассемблер не переносим

Для истинной кросплатформености надо писать драйвера на Java smile 
Мне вот интерестно какой процент общего кода у драйверов видеокарт для маков (те которые на базе PowerPC) и для Windows (я про сам драйвер, а не всякие там утилиты настройки)? А в пределах одной процессорной архитектуры, асм вполне переносим.

Цитата(MAKCim @  23.10.2007,  22:14 Найти цитируемый пост)
Ассемблер себя не оправдывает в большом проекте: трудность отладки, повышенная вероятность наличия скрытых ошибок, трудоемкость процесса разработки

А про то, что людям может быть удобней писать на С++ и использовать ООП, чтобы как разу уменьшить трудоемкость и количество ошибок, ты как-то сразу забыл smile

Добавлено через 29 секунд
Цитата(S.A.G. @  23.10.2007,  18:29 Найти цитируемый пост)
LSD, я просил..

Модератор придет и разделит тему smile


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила ведения Религиозных войн
Smartov
1. Уважайте собеседника
2. Собеседник != враг
3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez"

С уважением, Smartov.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Религиозные войны | Следующая тема »


 




[ Время генерации скрипта: 0.1213 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.