Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / В какую сторону движется C++? / 25 сообщений из 712, страница 1 из 29
10.05.2016, 05:07
    #39232026
SashaMercury
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
Здравствуйте.
В какую сторону в настоящее время развивается язык С++? Почему он движется туда, куда он движется, и хорошо ли это? У меня нет качественного понимания процессов связанных с развитием в области IT и конкретно языка С++. Потому хотелось бы узнать мнение Сообщества по данным вопросам. Кроме того, как вы думаете, что можно ожидать от С++ через 10 лет? Через 50 лет?
...
Рейтинг: 0 / 0
10.05.2016, 07:55
    #39232049
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
SashaMercuryПочему он движется туда, куда он движетсяНе хочет отставать (в плане развития) от других ЯП (Java/C#/и др.): перенимает новые языковые конструкции и т.д.SashaMercuryи хорошо ли это?В погоне за универсальностью язык усложняется. (имхо)
Си (без плюсов) - проще и эффективнее.Дополнительная информация Интервью с Бьерном Страуструпом о языке C++
C++17
30 Years of C++
SashaMercuryЧерез 50 лет? https://ru.wikipedia.org/wiki/Ходжа_Насреддин Насреддин рассказывает, что как-то раз поспорил с эмиром бухарским, что научит своего ишака богословию так, что ишак будет знать его не хуже самого эмира. На это нужен кошелёк золота и двадцать лет времени. Если он не выполнит условия спора — голова с плеч. Насреддин не боится неминуемой казни: — «Ведь за двадцать лет, — говорит он, — кто-нибудь из нас троих обязательно умрёт — или эмир, или ишак, или я. А тогда поди разбирайся, кто лучше знал богословие!»
...
Рейтинг: 0 / 0
10.05.2016, 08:21
    #39232056
CEMb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
Usman, ну, с++ может и остаться, и ТС имеет все шансы через 50 лет на нём работать :)

btw,
Я (отстал от жизни) сейчас читаю Скотта Мейерса, "эффективный и современный с++", язык таки меняется сильно, и это радует. Жаль, что сейчас нету ни времени ни возможностей полностью писать на 11/14 версиях :(
...
Рейтинг: 0 / 0
10.05.2016, 09:17
    #39232087
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
UsmanСи (без плюсов) - проще и эффективнее.



Мужчинко, ты на С-то писал когда-нибудь?
Проще-то он проще, да, намного проще, а вот с эффективностью ...
С эффективностью -- труба, на нём что-то написать упаришься, нужно 100 библиотек, нужно поверх 100 библиотек 20 своих велосипедов, и только тогда начинает что-то делаться эффективно. Если надо это перенести куда-то -- опять 100 библиотек 20 своих велосипедов...
...
Рейтинг: 0 / 0
10.05.2016, 09:23
    #39232092
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
В какую сторону в настоящее время развивается язык С++?

Ну как бы лучше всего почитать FAQ Страустрапа. Там написано.
Мне сейчас сформулировать сложно в двух словах.
Большое направление -- это упрощение программирования на языке в местах, где это возможно.


Почему он движется туда, куда он движется, и хорошо ли это?

Ну, это вообще философский вопрос. Мне кажется, что хорошо, что он вообще движется.


Кроме того, как вы думаете, что можно ожидать от С++ через 10 лет? Через 50 лет?

Будет развиваться. Через 10 лет будет 14-ый стандарт принят точно, погляди, что там.
...
Рейтинг: 0 / 0
10.05.2016, 09:27
    #39232096
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
MasterZivМужчинкоMasterZivты на С-то писал когда-нибудь?Конечно! А также: C#/C++/C/C--/Asm/Машинных кодах.MasterZivС эффективностью -- труба, на нём что-то написать упаришься...Mr. ЗИВ, по-моему вы спутали эффективность (быстродействие программ написанных на Си/
качество бинарного кода/и т.д.) с синтаксическими/языковыми надстройками упрощающие кодинг (а-ля сахар).
...
Рейтинг: 0 / 0
10.05.2016, 12:02
    #39232248
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
SashaMercuryВ какую сторону в настоящее время развивается язык С++?

По-моему, он мутирует в сторону декларативного языка. Со всеми автоматически генерируемыми
методами и оптимизациями программа начинает работать совсем не так как написана. Это всё
равно пока она написана корректно, но говонокод уже начинает выкидывать неожиданные фокусы.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
10.05.2016, 13:10
    #39232342
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
UsmanMr. ЗИВ, по-моему вы спутали эффективность (быстродействие программ написанных на Си/
качество бинарного кода/и т.д.) с синтаксическими/языковыми надстройками упрощающие кодинг (а-ля сахар).

Я под эффективностью имел в виду естественно эффективность разработки на языке, т.е. кол-во усилий, затрачиваемых на
кодирование удельного объёма функционала.

Т.е. скорость разработки приложений.
...
Рейтинг: 0 / 0
10.05.2016, 13:50
    #39232400
egorych
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
Usman,
и чем же эффективность программ, написанных на Си отличается от программ, написанных на С++?
...
Рейтинг: 0 / 0
10.05.2016, 14:30
    #39232430
CEMb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
...
Рейтинг: 0 / 0
10.05.2016, 14:55
    #39232467
YesSql
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
egorychUsman,
и чем же эффективность программ, написанных на Си отличается от программ, написанных на С++?
Когда смотришь на Си код то при определенных навыках можно представть какой ассемблер будет сгенерирован. Попробуй это сделать с Спп кодом.
Это к тому что на Си можно работать в режиме ассемблера. Куда уж эффективее.
...
Рейтинг: 0 / 0
10.05.2016, 15:03
    #39232481
egorych
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
YesSqlegorychUsman,
и чем же эффективность программ, написанных на Си отличается от программ, написанных на С++?
Когда смотришь на Си код то при определенных навыках можно представть какой ассемблер будет сгенерирован. Попробуй это сделать с Спп кодом.
Это к тому что на Си можно работать в режиме ассемблера. Куда уж эффективее.удивительная логика.
Забыли уже, что С++ - надмножество над Си? Отличия между чистым Си и Си-в-составе-С++ есть, но они минимальны, и касаются скорее синтаксического сахара, нежели чем базовых конструкций. Ну и ключевое слово asm ещё никто не отменял. Так что, если очень хочется, то нет запретов ключевые моменты писать на Си, или совсем даже на ассемблере, а поддерживающий код, которого большинство в любой программе - на С++. Мысль настолько не нова, что даже удивительно её повторять из года в год.
...
Рейтинг: 0 / 0
10.05.2016, 15:13
    #39232492
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
Я думаю что господин Бьярне вырубит топором остатки ассемблера из С++.
...
Рейтинг: 0 / 0
10.05.2016, 15:21
    #39232498
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
maytonЯ думаю что господин Бьярне вырубит топором остатки ассемблера из С++.
и получится Java
...
Рейтинг: 0 / 0
10.05.2016, 15:25
    #39232508
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
ИзопропилmaytonЯ думаю что господин Бьярне вырубит топором остатки ассемблера из С++.
и получится Java
Я не знаю что получится. Но какие-то определенные шаги в направлении memory management будут
делаться ИМХО.
...
Рейтинг: 0 / 0
10.05.2016, 15:30
    #39232512
YesSql
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
egorychYesSqlпропущено...

Когда смотришь на Си код то при определенных навыках можно представть какой ассемблер будет сгенерирован. Попробуй это сделать с Спп кодом.
Это к тому что на Си можно работать в режиме ассемблера. Куда уж эффективее.удивительная логика.
Забыли уже, что С++ - надмножество над Си? Отличия между чистым Си и Си-в-составе-С++ есть, но они минимальны, и касаются скорее синтаксического сахара, нежели чем базовых конструкций. Ну и ключевое слово asm ещё никто не отменял. Так что, если очень хочется, то нет запретов ключевые моменты писать на Си, или совсем даже на ассемблере, а поддерживающий код, которого большинство в любой программе - на С++. Мысль настолько не нова, что даже удивительно её повторять из года в год.

Если для тебя Спп это Си с классами сахаром - значит ты Сишник, и твой вопрос к Usman бессмысленен.
Я не имел ввиду вставку маленького кусочка на ассемблере. Я имел ввиду стиль кодирования.
...
Рейтинг: 0 / 0
10.05.2016, 15:47
    #39232534
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
YesSqlПопробуй это сделать с Спп кодом.
а в чём проблема "увидеть" код?

в таблицах виртуальных методов ничего сложного нет(в т ч с множественным наследованием)
обработка исключений тож ничего особенного в машинных командах не представляет

чё там ещё? кривобокие лямбды?
...
Рейтинг: 0 / 0
10.05.2016, 15:56
    #39232551
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
Изопропилчё там ещё?
Например, автоматически создаваемые и уничтожаемые объекты. Они создают непредсказуемый
оверхэд.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
10.05.2016, 15:57
    #39232553
Reciprocated
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
UsmanSashaMercuryПочему он движется туда, куда он движетсяНе хочет отставать (в плане развития) от других ЯП (Java/C#/и др.): перенимает новые языковые конструкции и т.д.SashaMercuryи хорошо ли это?В погоне за универсальностью язык усложняется. (имхо)
Си (без плюсов) - проще и эффективнее.Дополнительная информация Интервью с Бьерном Страуструпом о языке C++
C++17
30 Years of C++
SashaMercuryЧерез 50 лет? https://ru.wikipedia.org/wiki/Ходжа_Насреддин Насреддин рассказывает, что как-то раз поспорил с эмиром бухарским, что научит своего ишака богословию так, что ишак будет знать его не хуже самого эмира. На это нужен кошелёк золота и двадцать лет времени. Если он не выполнит условия спора — голова с плеч. Насреддин не боится неминуемой казни: — «Ведь за двадцать лет, — говорит он, — кто-нибудь из нас троих обязательно умрёт — или эмир, или ишак, или я. А тогда поди разбирайся, кто лучше знал богословие!»
c не может физически быть эффективнее c++, когда он компилируется в тот же код.
...
Рейтинг: 0 / 0
10.05.2016, 16:21
    #39232583
YesSql
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
ИзопропилYesSqlПопробуй это сделать с Спп кодом.
а в чём проблема "увидеть" код?

в таблицах виртуальных методов ничего сложного нет(в т ч с множественным наследованием)
обработка исключений тож ничего особенного в машинных командах не представляет

чё там ещё? кривобокие лямбды?

вот сдесь я бы не стал делать никаких предположений насчет ассемблерного кода
Код: plaintext
1.
2.
3.
4.
5.
template <typename T> 
T sum(const T &first const T &second) 
{ 
       return first+second;
}
...
Рейтинг: 0 / 0
10.05.2016, 16:37
    #39232615
egorych
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
YesSqlЕсли для тебя Спп это Си с классами сахаром - значит ты Сишник, и твой вопрос к Usman бессмысленен.
Я не имел ввиду вставку маленького кусочка на ассемблере. Я имел ввиду стиль кодирования.а Usman имеет ввиду производительность и качество бинарников ( что бы это не значило ). Неплохо бы определиться, о чём мы говорим.
Что касается меня, то я действительно начинал с Си, однако я не скучаю по стилю кодирования Си. Слишком много требуется писать рутинного говнокода.
...
Рейтинг: 0 / 0
10.05.2016, 17:04
    #39232658
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
Несколько тезисов в пользу Си:
- Си и Си++ - два разных языка (!)
- Более низкоуровневый - на выходе получаем качественный исполняемый код (это и имелось в виду, когда говорил про бинарный)
- Объем исполняемого кода меньше
- Синтаксис максимально простой (в некотором смысле даже примитивный)
- По поводу эффективности:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
size_t
strlen (const char *str)
{
  int cnt;

  asm("cld\n"			/* Search forward.  */
      /* Some old versions of gas need `repne' instead of `repnz'.  */
      "repnz\n"			/* Look for a zero byte.  */
      "scasb" /* %0, %1, %3 */ :
      "=c" (cnt) : "D" (str), "0" (-1), "a" (0));

  return -2 - cnt;
}

Reciprocatedc не может физически быть эффективнее c++, когда он компилируется в тот же код.может
...
Рейтинг: 0 / 0
10.05.2016, 17:43
    #39232699
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
Есть где-то пример со struct, который в С собирается а в С++ нет. Это скромное
маленькое исключение ставит точку в родословной и заявляет о том что это два разных
проекта и проводить обобщения уже нет смысла. Уже не-compatible.
...
Рейтинг: 0 / 0
11.05.2016, 00:26
    #39232914
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
UsmanБолее низкоуровневый - на выходе получаем качественный исполняемый код (это и имелось в виду, когда говорил про бинарный)
Выделенное не мешало бы доказать )))
Потому что есть обратная тенденция, чем более язык низкоуровневый, тем хуже качество программы - больше багов (большой порог вхождения, более громоздкий код, больше дублирования служебного кода).

Возвращаясь к теме.
С++ идет в правильном направлении.
1) Добавление высокоуровневых конструкций, при сохранении низкоуровневых (auto, &&, инициализация ...)
2) Наличие критически важных библиотек "из коробки"(смартуказатели, многопоточность и т.п.)
3) Кроссплатформенность, диалог и синхронизация фич между вендорами компиляторов
4) Поддержка функционального программирования (без фанатизма)
5) Поддержка модулей (в будущем)

Скорость кода важна в очень ограниченном круге классов приложений. Их можно пересчитать по пальцам.
В остальных 99.9% программ, важна эффективность разработки, а это значит что язык должен быть удобным и поддерживать все современные подходы в программировании.
С++ развивается именно в этом направлении.
При этом естественно на С++ можно писать такой же быстрый код как и в С: не использовать STL, включить noexcept и вуаля - у вас чистая С функция, предсказуемая, как и хотели. Обычно это требуется только в небольшой части кода. Но заставлять программистов всю программу писать на С - это уже БДСМ какой-то )))
...
Рейтинг: 0 / 0
11.05.2016, 02:03
    #39232926
Зимаргл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В какую сторону движется C++?
egorychUsman,
и чем же эффективность программ, написанных на Си отличается от программ, написанных на С++?
На 2%, если верить тестам Степанова. Это меньше статистической погрешности

Но использование монстрообразных бустов может немного и попортить статистику. Хотя тут неоднозначно.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / В какую сторону движется C++? / 25 сообщений из 712, страница 1 из 29
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]