![]() |
Модераторы: xvr |
![]() ![]() ![]() |
|
fish9370 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 15.4.2007 Где: Москва Репутация: 2 Всего: 1 |
http://thread.gmane.org/gmane.comp.version...643/focus=57918 - здесь я с Линусом согласен С++ и фрейвоки, ускоряют процес разработки, но это происходит за счет качества. Тогда уж лучше писать на Java или C#. Какой смысл от С++? PS boostcoder ты бы все-таки выражения выбирал, когда с людьми общаешься. Ведешь себя как быдло. -------------------- undefined |
|||
|
||||
Alca |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: нет Всего: 50 |
Ну ты даешь ![]() Добавлено через 33 секунды Если скорость не критична, то можно и на жабе ваять |
|||
|
||||
boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 16 Всего: 110 |
||||
|
||||
fish9370 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 15.4.2007 Где: Москва Репутация: 2 Всего: 1 |
на основании этого и не только.. -------------------- undefined |
|||
|
||||
boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 16 Всего: 110 |
||||
|
||||
fish9370 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 15.4.2007 Где: Москва Репутация: 2 Всего: 1 |
-------------------- undefined |
|||
|
||||
boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 16 Всего: 110 |
fish9370, тут предложение поступило..
тебе нужно срочно спрятаться от мира сего, в котором обитают такие как я. дабы не быть травмированной твоей нежной психике и самолюбию. Добавлено через 59 секунд что? видеть как кто-то реально жжет? да. насмотрелся. ты не один такой. |
|||
|
||||
Sahab |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 151 Регистрация: 1.9.2009 Репутация: нет Всего: 3 |
эмокодыры отакэ?
|
|||
|
||||
fish9370 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 15.4.2007 Где: Москва Репутация: 2 Всего: 1 |
boostcoder, ну ты и быдло..
аста ла виста бейби.. PS можете банить меня.. -------------------- undefined |
|||
|
||||
boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 16 Всего: 110 |
не, Модераторы, не надо(да и не за что)! это же весело! |
|||
|
||||
bsa |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 16 Всего: 196 |
Так вот, это я к тому, что код на С++ ничуть не менее качественный, чем аналогичный на другом языке программирования. Просто иногда люди лишь только думают, что пишут на С++. И именно они создают тот самый код, за который все так критикуют С++. |
||||
|
|||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 16 Всего: 196 |
Под limited resource ты понимаешь микроконтроллер? Я пишу код под МК, я попробовал использовать С++ и Си. Код получался абсолютно одинаковым (правда, я не использовал шаблоны и std:: - задача довольно специфичная, поэтому стандартные вещи не нужны), хотя я использовал классы и пр. Но в итоге я выбрал С. Мне показалось, что те преимущества, что мне дает С++, не так значительны, как простота кода. Рассмотрим простой пример безопасного мьютекса. У мьютекса существует два обязательных метода - захватить и освободить. В начала критической секции мы захватываем мьютекс, а в конце освобождаем. Но в случае, если у нас внутри критической секции происходит ветвление и выход из нее в нескольких местах, то необходимо в этих нескольких местах проставить освобождение мьютекса. Когда пишешь код ты можешь и не забыть, но при поддержке года через 2, эту фигульку ты можешь случайно и не заметить. Теперь делаем как умные люди еще класс Locker, конструктор которого захватывает указанный мьютекс, а деструктор освобождает. Теперь нам необходимо только создать в начале критической секции объект класса Locker и передать ему мьютекс. Как только мы выйдем из блока, то объект будет автоматически уничтожен, а мьютекс разлочен. Усложнения на уровне результирующего машинного кода никакого - компилятор просто подставит необходимые библиотечные вызовы для захвата/освобождения мьютекса в местах создания/уничтожения Locker'а. Никакой безопасности внутри этих классов нет! Они дают тебе безопасность за счет того, что ты не должен заморачиваться там, где заморачиваться не должен. час-два на создание, день-два на отладку, месяц-другой на поиск глюков и портирование на другую ОС... Кстати, прежде чем писать свое, рекомендуется изучить чужое, дабы знать подводные камни и не наступать на известные грабли.
|
|||
|
||||
fish9370 |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 15.4.2007 Где: Москва Репутация: 2 Всего: 1 |
я не против, выражения мнения, будь это boostcoder или кто-либо еще, мне не понравилась сама форма. Давай не будем больше об этом. по теме:
впринципе, Линус не говорит, что он не мощный, он даже восхищается библиотекой boost, но он критикует С++ и в частности boost, как раз за сложность. Где взять множество таланливых программистов и как проверить их качество? Если в комерческой организации такая возможность есть, на этапе приема на работу, то как это сделать в открытом проекте? Наверно одной из причин этого является то что в линуксе все еще так популярен C. И не с проста, в крупных проектах на С++ в "code style" (тот же google), ограничивают некоторые возможности С++ (это касается шаблонов, обработки исключений и много чего еще). что касается меня, я долго искал себя пробовал разные языки программирования и к 27 годам я понял, что я никуда не сдвинулся.. и я жалею, что не пришел в линукс раньше и не познакомился с ядром и с великолепным кодом Asterisk (кстати, я считаю, структуру этой программы нужно преподавать в университетах, это поистине шедевр).. и вот уже три года как я наслаждаюсь тем, что делаю и тем, что у меня получается.. мой код перестал глючить и он делает именно то что задуманно.. но я не категоричен, иногда от С++ отказываться нельзя, наверно у него есть своя ниша.. единственное приемущество С++ над С это скорость разработки.. но если это открытый проект и ты никуда не торопишься, лучше это сделать на С. -------------------- undefined |
||||
|
|||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 16 Всего: 196 |
Это не главное преимущество. Если ты владеешь языком, то ты и на С будешь создавать код с не меньшей скоростью. Другое дело, что на С++ ты допустишь меньше глупых ошибок из-за невнимательности. Но, только при том условии, что ты знаешь С++ и владеешь им. В противном случае, ты наделаешь кучу более серьезных ошибок - ошибок проектирования.
|
|||
|
||||
fish9370 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 15.4.2007 Где: Москва Репутация: 2 Всего: 1 |
а можно и мне показать этот участок кода? очень интересно.. -------------------- undefined |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Программирование под Unix/Linux" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |