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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Почему все любят С++? 
:(
    Опции темы
S.A.P.
Дата 12.7.2005, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 1
Всего: 71



Vadim999 ты ето... рекламу в подписи то подправь smile .
PM MAIL   Вверх
Се ля ви
Дата 12.7.2005, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java/SOAрхитектор
****


Профиль
Группа: Модератор
Сообщений: 2016
Регистрация: 5.6.2004
Где: place without tim e and space

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



Цитата(Mayk @ 11.7.2005, 20:49)
В паскале очень длинный, запутанный, я б даже сказал, дурацкий синтаксис.

у меня он после Си++ вызывает ассоциацию такую - он просто деревянный. Видели какую-нибудь деревянную избу? Вот если её сравнить со зданием эры Hi-Tech, то это и будет похоже на сравнение С++ и Object Pascal . Не, это кароче не серьёзно.

Кроме того, не забываем, что Дельфи как самостоятельный проект позорно слили, подложив его под dotNET в последней версии - Паскаль, годный для сердцевины Enterprise-приложений, теперь существует лишь как диалект MSIL`а, более привычный для приверженцев Дельфи и на этом поле у меня боооольшие сомнения, что он долго выдержит конкуренцию с C#`м и не скатится на уровень Visual Basic`а...

А вообще-то, если рассматривать классические Паскаль и Си, то Си - вообще считается языком среднего, а не высокого уровня - и именно в этом его уникальность. Т.е. он более низкоуровневый, чем Паскаль. Если не прибегать к ассемблерным вставкам, а использовать чистые возможности языка, то на Си можно работать с аппаратурой на гораздо более низком уровне - насколько я знаю, на нём даже драйвера без применения асма иногда пишут. Да и код в итоге получается компактнее и екзешник аналогичный меньше ресурсов ест - т.е. гораздо более широкие возможности оптимизации.


--------------------
  )
 (
[_])
проф. блог

Кролики думали, что занимаются любовью, а на самом деле их просто разводили...
PM MAIL WWW Skype GTalk   Вверх
S.A.P.
Дата 12.7.2005, 17:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 1
Всего: 71



Цитата
Если не прибегать к ассемблерным вставкам, а использовать чистые возможности языка, то на Си можно работать с аппаратурой на гораздо более низком уровне - насколько я знаю, на нём даже драйвера без применения асма иногда пишут


Се ля ви щас тебе покажут какой - нибудь DDK для дельфи smile


Споры бесспыслены smile .

PM MAIL   Вверх
Void
Дата 12.7.2005, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 11
Всего: 173



Цитата(vladgri @ 12.7.2005, 13:48)
Единственный аргумент это отсутствие типизации.

Немаловажный, однако. Хотя, конечно, это гораздо лучше, чем ничего.
Цитата(vladgri @ 12.7.2005, 13:48)
Ни в одном форуме отрицательно не высказывался ни о каком языке програмирования.
Мне кажется все они имеют право на существование. Если какой либо из ЯП, помог реализовать
свои мысли хотябы одному програмисту, то это хороший ЯП.

Это совсем не к вам относилось smile Вам наоборот большое спасибо за интересные ссылки.
Цитата(vladgri @ 12.7.2005, 13:48)
Попытки реализации STL в Delphi есть.

Интересно... Не имею возможности плотно с ними познакомится, но складывается впечатление, что авторы действительно выжали из языка что могли smile
Цитата
It was made to fill in the void that some Object Pascal programmers who have had the pleasure of using C++'s STL may feel after they return to their mother language.

А что, есть такие? smile
Цитата(Perchilla @ 12.7.2005, 14:43)
Вон в последних дельфях и прегрузка операций появилась и шаблоны можно организовать.

В смысле, дженерики?
Цитата(Perchilla @ 12.7.2005, 19:25)
Споры бесспыслены smile .

Отнюдь, в них хоть и не рождается истина, но зато пробуждается любознательность. Если в итоге хоть один человек повнимательнее присмотрится к C++ или какому-нибудь другому языку - флеймили не зря smile


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
S.A.P.
Дата 12.7.2005, 19:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 1
Всего: 71



Цитата(Void @ 12.7.2005, 19:35)
В смысле, дженерики?
где то видел пример: пишутся модули с шаблонами как в C++, а перед компиляцией все прогоняется перлом, приводя в нормальный вид. Фигня конечно, но зато у дельфистов есть аргумент: мол вот у нас тоже шаблоны есть smile .

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


Опытный
**


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

Репутация: 7
Всего: 62



Цитата(Void @ 12.7.2005, 21:35)
Если в итоге хоть один человек повнимательнее присмотрится к C++

Я присматриваюсь smile Лично для меня счет пока что не в пользу С++ только из-за отсутствия хорошей графической библиотеки а-ля VCL. Из всех библиотек, которые смотрел (Qt, wxWidgets, WTL, MFC, Fox, ATL и еще несколько мелких), больше всего понравились Qt и wxWidgets. Однако Qt поставляется по строгой лицензии (шаровары с ней не попишешь), а у wxWidgets нет хорошего бесплатного (!) редактора форм. Сейчас качаю VCF, посмотрим, ху из зыс...

Давайте будем спорить о графических либах для С++ - глядишь что-нить реально хорошее отыщется, польза будет! smile

З.Ы. О бесплатности и возможности писать коммерческий софт: очень важно, чтобы библиотека была бесплатная (ну нету у меня пары килобаксов на Qt! smile), с хорошим редактором форм и, конечно, содержала побольше готовых классов и графических контролов.
Примечание о VCL: насколько мне помнится, лицензия на пробную версию Дельфи разрешает писать шароварный софт. Так что можно условно считать VCL бесплатной - раз в месяц переустановить Дельфи это не проблема.

PM MAIL   Вверх
vladgri
Дата 13.7.2005, 06:11 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











To rsm
Цитата
а у wxWidgets нет хорошего бесплатного (!) редактора форм.

Посмотри
wxFormBuilder
и (мне больше нравиться)
wxWindows Dialog Designer:
  Вверх
Void
Дата 13.7.2005, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 11
Всего: 173



Цитата(Perchilla @ 12.7.2005, 21:51)
где то видел пример: пишутся модули с шаблонами как в C++, а перед компиляцией все прогоняется перлом, приводя в нормальный вид. Фигня конечно, но зато у дельфистов есть аргумент: мол вот у нас тоже шаблоны есть smile .

Вообще, сам факт, что какая-то фича вводится в язык отдельным препроцессором, меня совершенно не коробит. Я бы с удовольствием признал наличие в такой custom Delphi шаблонов, если бы не одна проблема - диагностика ошибок в шаблонном коде. Она достаточно хреновая и в нынешних плюсах, а тут не будет вообще никакой. А значит практическая ценность подобных наворотов - околонулевая. Сделать же нормальную диагностику, не интегрировавшись с компилятором - нереально.
Цитата(rsm @ 13.7.2005, 00:04)
Примечание о VCL: насколько мне помнится, лицензия на пробную версию Дельфи разрешает писать шароварный софт. Так что можно условно считать VCL бесплатной - раз в месяц переустановить Дельфи это не проблема.

А законна ли такая переустановка сама по себе? smile Вообще, сколько я знаю, цены на Professional и Enterprise версии Delphi и Builder просто запредельные - не дешевле той же Qt. А Personal имеет серьезные ограничения на коммерческое использование. В то же время VS Express раздают бесплатно, и без лицезионных ограничений...

А GUI для C++ - действительно больной вопрос... Я не испытывал в такой библиотеке очень уж острой необходимости, но пока все что я видел не очень впечатляет. (Qt еще не пробовал. Сейчас докачиваю Qt4 opensource edition, но без VS я вряд ли проживу. Наверное, придется забить и доставать ломаную коммерческую версию smile ).


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
vladgri
Дата 13.7.2005, 13:21 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата (Void @ 13.7.2005, 12:21)
Цитата
Вообще, сам факт, что какая-то фича вводится в язык отдельным препроцессором, меня совершенно не коробит. Я бы с удовольствием признал наличие в такой custom Delphi шаблонов, если бы не одна проблема - диагностика ошибок в шаблонном коде. Она достаточно хреновая и в нынешних плюсах, а тут не будет вообще никакой. А значит практическая ценность подобных наворотов - околонулевая. Сделать же нормальную диагностику, не интегрировавшись с компилятором - нереально.


Ну почему же так жестко ?
Отладка шаблона производится на тестовом примере, причем в Pascal большинство ошибок
(в основном синтаксических) определяется на этапе компиляции. К примеру при испытании
Delphi language Preprocessor`а я написал и оладил темплейт Auto_Object smile с типизацией smile за 10 минут.

  Вверх
CosmoMan
Дата 13.7.2005, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Я программировал сначала на QБейсике, потом на С++ и после него перещел на pascal
и Delphi.

На мой взгляд нельзя говорить о том, что Delphi не идет ни в какое сравнение с С++.
Проблема заключается в том, что в C++ реализовано намного больше возможностей для программирования.
При этом С++ обладает очень запутанным синтаксисом и логикой программирования. Изучать
его очень долго и трудно, а для начинающих написание приложений в нем превращается в
настоящее мучение: указатели на указаеть указателем погоняет. Непонятные
ошибки непонятно откудо появляеются.

Delphi же обладает более понятным интерфейсом и упрощенной алгоритмической логикой.
При этом он конечно очень проигрывает по гибкости C++, однако его намного быстрее можно изучить
и писать программы быстро и легко.

Самый логичный язык - это С++. С точки зрения логики алгоритма это самый лутший язык в своем роде.
Читаемость - это сложный вопросс. Ибо если ты в нем программируеш достаточно давно, то
после этого читаемость ObjectPascal окажется более запутанной.
Но сначало нужно понять Delphi. Я считаю, что термин "ГУРУ" трудно отнести к программисту
в Delphi. Даже достигнув совершенства в Delphi, ты всё равно поймеш, что программисты на С++
круче, т.к. они программируют на С++.
Итак, Delphi - это язык программирования для программистов, которые хотят создавать
прикладные программы не вдаваясь в тонкости архитектуры ОС , компьютера,
пердставления данных и компилятора. Они стеснены узкими рамками компилятора.
Вот почему многие операционыые сисетмы написаны на С++ (UNIX). Программируя на С++
ты ощущаеш близость к коду и ты подчти ни чем не ограничен. Это как программирование на
ассемблере. НО это все можно достигнуть лиш годами практики программирования на С++.

Delphi для профессиональных порграммистов, С++ для ГУРУ.
Заранее приношу извенения, если когото обидел. Но это моё мнение.
Лично я программирую в Delphi 7 и он мне нравится. В С++ я разбирался очень долго
и это дело бросил до поры до времени.
smile
PM MAIL   Вверх
batigoal
Дата 13.7.2005, 17:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 4
Всего: 151



Цитата(CosmoMan @ 13.7.2005, 17:15)
Самый логичный язык - это С++. С точки зрения логики алгоритма это самый лутший язык в своем роде.

А вот с этим я не согласен (в пользу Java).


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
TP@MB@Y
Дата 13.7.2005, 18:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 1
Всего: 4



Цитата(Void @ 12.7.2005, 08:19)
C++ - это своеобразный констуктор "сделай все сам". Шаблоны (+ иногда препроцессор) позволяют вводить в язык сущности, которые он изначально не поддерживает, причем с высокой эффективностью в рантайме (но, увы, как правило, ценой времени компиляции). Конечно, с LISP C++ в этой области не тягатся, но большинство мейнстримных языков (и Delphi в том числе) вообще не обладают такими способностями. Пример - создание анонимных функций (лямбда-функций). С помощью STL и библиотеки Boost.Lambda мы можем написать так:
Код
std::transform(in.begin(), in.end(), std::back_inserter(out), _1 + x);

Эта строчка вставит элементы из контейнера in в конец контейнера out, прибавив к каждому из них x. Этот пример также демонстрирует использование замыкания (closure) - ведь x берется из контекста вызова. Можно такое сделать в Delphi? Сомневаюсь smile

Void

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

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

smile
PM   Вверх
Void
Дата 13.7.2005, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 11
Всего: 173



Цитата(vladgri @ 13.7.2005, 15:21)
Ну почему же так жестко ?
Отладка шаблона производится на тестовом примере, причем в Pascal большинство ошибок
(в основном синтаксических) определяется на этапе компиляции. К примеру при испытании
Delphi language Preprocessor`а я написал и оладил темплейт Auto_Object smile с типизацией smile за 10 минут.

Что ж, очень рад smile Но ведь есть еще ошибки неправильного использования шаблона. Обращаясь к той же STL - допустим, передали мы в std::sort bidirectional iterator вместо random-access. В нынешнем C++ (без констрейнтов) мы получим несколько маловнятных сообщений, но они в конце-концов приведут нас к источнику ошибки - точке инстанциирования шаблона. Что будет делать препроцессор? И есть еще одна проблема - надо убедить дельфистов, что шаблоны им нужны smile

TP@MB@Y
Цитата(TP @ 13.7.2005, 20:24)
Хм... Навороченность языка С++ действительно делает его очень мощным. НО smile Все эти "навороты" тоже программировались, чтобы они были доступны в использовании. Понимаете? И начем же они программировались? А это уже не важно, потому как точно не на С++ (так как С++ - это и есть эти навороты). И вы хотите сказать что все эти "умные" операторы и функции нельзя реализовать на другом языке? Звучит глупо.

Во-первых, показанные здесь "навороты" реализуются библиотеками, написанными на чистом C++. C++ сам по себе, как язык - ничего этого не дает. Я хочу лишь сказать что шаблоны вместе с перегрузкой операторов позволяют сделать код более высокоуровневым, и понятным, повысить повторное использование кода, повысить его надежность.
Цитата(TP @ 13.7.2005, 20:24)
Вот например для меня разобраться в чужом коде на асемблере намного сложнее, чем написать эту программу самому (попутно изучив проблемы поставленой задачи и ее реализации). Тоже самое с "умными" операторами С++: если мне понадобиться в реализации моей задачи что-то похожее, то проще будет написать самому, чем искать в хелпах и разбираться и подгонять под уже существующую "сущность".

Возможно, вы так и поступите. Но для меня и миллионов других C++-программистов легче будет воспользоваться именно хорошо известными и широко распространенными библиотеками (Boost), и конечно же стандартной библиотекой (которая сейчас имеет тенденцию к серьезному расширению). К тому же в Delphi вы, надо полагать, не задумываясь пользуетесь теми сотнями компонентов, которые входят в стандартную поставку, пользуетесь справкой - так почему же вы не признаете code reuse в C++? Синтаксис вам кажется "заумным" - но это лишь от непривычки. Нет, у всего есть предел, в C++ тоже можно наворотить чудовищные и малопонятные конструкции там где можно обойтись локальным велосипедом. Но, поверьте, приведенный код к этому случаю не относится smile


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
rsm
Дата 13.7.2005, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 7
Всего: 62



Цитата(vladgri @ 13.7.2005, 08:11)
Посмотри wxFormBuilder и (мне больше нравиться) wxWindows Dialog Designer

Первая программа весьма интересная, посмотрю ее подробнее. А вторую уже видел - сплошное глюкалово smile

Цитата(Void @ 13.7.2005, 14:21)
А законна ли такая переустановка сама по себе?

А кто докажет, что я ставлю Дельфи второй раз? smile

Цитата(Void @ 13.7.2005, 14:21)
В то же время VS Express раздают бесплатно, и без лицезионных ограничений...

Это который VC++ 2003 Toolkit? Или что-то другое? Если другое, напиши пожалуйста УРЛ.
Добавлено позже
Ага, кажись сам нашел. 500 Мб... Мне это никогда не скачать smile Будем юзать VC++ 2003 Toolkit.

Цитата(Void @ 13.7.2005, 14:21)
А GUI для C++ - действительно больной вопрос...

Мда, вот так всегда - столь мощный язык и так незаслуженно пролетает аки фанера над Парижем smile

Это сообщение отредактировал(а) rsm - 13.7.2005, 20:43
PM MAIL   Вверх
Void
Дата 13.7.2005, 21:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 11
Всего: 173



Цитата(rsm @ 13.7.2005, 22:28)
Ага, кажись сам нашел. 500 Мб... Мне это никогда не скачать smile Будем юзать VC++ 2003 Toolkit.

Это потому что туда впихнули невпихуемое: MSDN Express и еще что-то...
Народ раздобыл нормальные ссылки:
VC++ (65 Мб).
При установке будет немножко ругаться, но работать будет, вроде лечится распаковкой бутстрапера того же VC++ в каталог установки.
Вот обсуждение.

Цитата(rsm @ 13.7.2005, 22:28)
Мда, вот так всегда - столь мощный язык и так незаслуженно пролетает аки фанера над Парижем

Что ничуть не мешает создавать на C++ самые навороченные GUI smile


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила ведения Религиозных войн
Smartov
1. Уважайте собеседника
2. Собеседник != враг
3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez"

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

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


 




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


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

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