Форум программистов, компьютерный форум, киберфорум
Священные войны
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.66/184: Рейтинг темы: голосов - 184, средняя оценка - 4.66
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484

Rust vs C++

26.06.2020, 16:10. Показов 47360. Ответов 660
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Кто-то писал на Rust? Стоит ли начинать учить? Насколько Rust хуже/лучше С++?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.06.2020, 16:10
Ответы с готовыми решениями:

[Rust] Обсуждение возможностей и предстоящей роли языка Rust
Psilon, чем он тебя так привлек? И почему именно "убийца плюсов"? Если напишешь развернутый ответ, обещаю вынести в отдельную тему и...

[Rust] Как привязывать WinAPI-функции к коду на Rust?
Может кто-нить дать код, КАК привязывать вин апишные функции к растовскому коду (на примере MesageBox). ...

Расскажите о своём опыте программирования на Rust
Доброе утро! Расскажите, пожалуйста, о своём опыте программирования на Rust. Можно в сравнении с C# или Delphi. Спасибо.

660
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
26.06.2020, 20:51
Студворк — интернет-сервис помощи студентам
ReYalp, С++ - универсальный язык. Т.е. в принципе годен для абсолютно всего, во всяком случае там где нет ограничений архитектуры вычислителя - к примеру на GPU юзаются свои диалекты (HLSL и GLSL) которые адаптированы к местным ограничениям. Мало того что просто годен, так в общем то и годен гораздо более чем что бы то ни было другое.
0
 Аватар для Super-Hacker
342 / 114 / 37
Регистрация: 26.11.2019
Сообщений: 735
26.06.2020, 21:03
ReYalp, Он подходит для разработки всего(с наличием соответствующих библиотек), да и большая часть всех языков сейчас СИ-подобные

Добавлено через 2 минуты
ReYalp, С++ подходит для разработки всего, но повторюсь, чистый С++ это лишь вычисления, т.е. основные аспекты это разработка ядер ОС, разработка структур данных, работа с вычислениями. Однако для плюсов найдутся библиотеки для разработки всего
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
26.06.2020, 21:06
Цитата Сообщение от Super-Hacker Посмотреть сообщение
да и большая часть всех языков сейчас СИ-подобные
Хоть один назовите. То что у шарпов и жаб тоже { } не делает их С-подобными. Это всего лишь С-подобный синтаксис. А синтаксис облик языка как таковой не определяет. Его определяет в первую очередь семантика. А семантика у жабы и шарпа симула - подобная, а не разу не С-подобная.
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
26.06.2020, 21:07
ReYalp,
я и хочу узнать для разработки чего С++ не подходит
Смотря какой смысл вкладывать в "не подходит". С точки зрения возможностей, в целом С++ никак не ограничивает разработчика. Тем не менее, кому то в конкретной ситуации С++ может не подойти. Например, вам нужно запустить какой нибудь интернет магазин. Бекэнд для него можно запилить и на С++, но как правило так никто не делает. Обычно берут готовые CMS или в крайнем случае пишут с нуля но на языке, который заточен под веб разработку из коробки. В этом смысле можно сказать, что С++ для этой задачи не подходит. Но это вовсе не означает, что этого нельзя сделать на С++.
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
26.06.2020, 21:10
Цитата Сообщение от Super-Hacker Посмотреть сообщение
Он подходит для разработки всего(с наличием соответствующих библиотек)
При этом в первую очередь он прекрасно подходит для разработки библиотек для самого себя. А еще лучше для универсальной разработки путем создания библиотеки решающей любую задачу из того же класса что и конкретная целевая задача.

Добавлено через 1 минуту
Цитата Сообщение от Undisputed Посмотреть сообщение
который заточен под веб разработку из коробки
А что значит заточен под веб-разработку из каропки? Имеет консольный ввод-вывод или что еще?

Добавлено через 1 минуту
Цитата Сообщение от Undisputed Посмотреть сообщение
В этом смысле можно сказать, что С++ для этой задачи не подходит.
Скорее стоит сказать по другому - языков подходящих лучше чем С++ для этих задач никогда не было и нет. Другое дело что это тот сектор которому квалифицированных программистов практически не достается, поэтому берут плюсы и лепят на них всякие пыхи для самых маленьких.
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
26.06.2020, 21:11
Fulcrum_013,
Например есть языки с встроенной поддержкой протокола HTTP и всяких смежных для веба фишек (например, Парсинг различных форматов обмена данных, поддержка веб служб вроде SOAP, функции для обеспечения безопасности веб приложений и т.д)
0
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
26.06.2020, 21:24  [ТС]
Undisputed, так а в чем проблема использовать (либо написать самому) библиотеку для работы с HTTP и тд?
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
26.06.2020, 21:36
ReYalp,
Библиотеку даже писать не нужно, есть готовые. Проблема в том что все это требует дополнительных телодвижений. Например:

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

К тому же в большом проекте одной либой HTTP не обойтись. Там всплывёт куча вещей, которые есть из коробки в определённом языке на котором у тому же код пишется гораздо проще чем на С++ (например, не нужно думать об освобождении ресурсов). К тому же С++ например не имеет большого набора CMS. Значит, магазин скорее всего придётся писать с нуля. А это ещё + к бюджету (для кого то плюс, для кого то минус ) и к срокам
0
 Аватар для Super-Hacker
342 / 114 / 37
Регистрация: 26.11.2019
Сообщений: 735
26.06.2020, 21:37
ReYalp, Обычно такую библиотеку пишет не один человек, да и официальные использовать лучше
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
26.06.2020, 22:41
Цитата Сообщение от Undisputed Посмотреть сообщение
на С++ сложнее писать код чем для аналогичной задачи на каком нибудь скриптовом языке
А вот это уже глупости абсолютные. Код на С++ гораздо проще писать чем на любом скриптовом языке. Причем чем сложнее задача тем больше разрыв в сложности написания кода. Не говоря уже про отлаживать.

Добавлено через 1 минуту
Цитата Сообщение от Undisputed Посмотреть сообщение
работы в целом будет значительно больше, а значит дороже
Опять глупости. С++ обычно используется в очень масштабных и сложных задачах именно потому что позволяет решать их гораздо проще за счет высокоразвитых средств построения сверхвысокоуровневых абстракций, коих скриптовые языки лишены напрочь.
0
Неэпический
 Аватар для Croessmah
18150 / 10732 / 2067
Регистрация: 27.09.2012
Сообщений: 27,047
Записей в блоге: 1
26.06.2020, 22:43
Цитата Сообщение от alexu_007 Посмотреть сообщение
Одинаковый цикл на С++ или на Rust - какой выполнится быстрее?
Здесь есть то, что вам нужно:
1
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
26.06.2020, 22:46
Fulcrum_013,
ок
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
26.06.2020, 22:48
Цитата Сообщение от Undisputed Посмотреть сообщение
например, не нужно думать об освобождении ресурсов
Опять глупости. GC не умеет управлять ни ресурсами ни объектами - т.е абсолютно бесполезен с тех пор как появилось ООП.

Автоматику же управления жизненным циклом, позволяющую иметь и кастомизируемую автоматику управления ресурсами, и автоматику управления взаимосвязями имеют только нативные языки. И наиболее развиты эти средства опять же в плюсах.

Добавлено через 15 секунд
Цитата Сообщение от Undisputed Посмотреть сообщение
например, не нужно думать об освобождении ресурсов
Опять глупости. GC не умеет управлять ни ресурсами ни объектами - т.е абсолютно бесполезен с тех пор как появилось ООП. У предка плюсов - симулы GC был. При проектировании плюсов GC выбросили как давно устаревшую и абсолютно бесполезную тормозилку.
При использовании же языков GC управление взаимосвязями и ресурсами придется осуществлять полностью вручную. При этом в графах ссылок характерных для паттернов ООП произвести уборку даже памяти GC способен только в случае если задача управления взаимосвязями полностью решена, иначе он ничего мусором не посчитает, ну и как результат начинает течь вся эта скриптомазня косвенными утечками.

Автоматику же управления жизненным циклом, позволяющую иметь и кастомизируемую автоматику управления ресурсами, и автоматику управления взаимосвязями имеют только нативные языки. И наиболее развиты эти средства опять же в плюсах.
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
26.06.2020, 22:55
Fulcrum_013,
И ещё раз ок.

Только на этот раз подчеркну, что речь шла о разработке интернет магазина.

Примеры уровня hello world и с++ специфичные задачи сюда не входят. Надеюсь это понято.
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
26.06.2020, 23:02
Есть видео недавно
Кликните здесь для просмотра всего текста

смотрел вроде как чем хороши потенциальые альтернативы С++, так это тулзами типа пакетных менеджеров и прочего.
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
26.06.2020, 23:04
Цитата Сообщение от Undisputed Посмотреть сообщение
К тому же в большом проекте одной либой HTTP не обойтись.
Ну в том то и дело. Откуда создателям языка знать какой набор билиотек вам понадобится для вашей конкретной задачи. Мало того откуда им знать оптимизация по какому именно принципу, какие именно требования по надежности (к примеру для некоторых задач существует требование не использовать динамическое перераспределение памяти от слова совсем), какой именно интерфейс и т.д. будет удобен в конкретной вашей задаче и т.д.
Вынесение всего этого в либы как раз и обеспечивает возможность гибкого выбора либы из набора существующих, широкие возможности по их кастомизации, или быстрой разработки своей либы в случае если ничего подходящего не нашлось.
Это в результате гораздо быстрее, надежнее и производительней чем натягивание неподходящей искоропочной совы на неподходящий искоропочный глобус.

Добавлено через 1 минуту
Цитата Сообщение от Undisputed Посмотреть сообщение
Примеры уровня hello world и с++ специфичные задачи сюда не входят.
Ну интернет-магазин это вообще то уровень сложности аккурат чуток ниже хеллоуверда. А с++ специфичные абсолютно любые задачи.
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
26.06.2020, 23:11
Цитата Сообщение от Undisputed Посмотреть сообщение
например, не нужно думать об освобождении ресурсов
Нужно как же не нужно? Просто на один ресурс меньше. Память лишь частный случай ресурса.
Кроме того можно на это посмотреть иначе - как потерю контроля над ресурсом, ведь управлять gc как правило/в некоторых языках нет возможности нельзя прям сказать освободи память с этого объекта прямо сейчас.

Добавлено через 4 минуты
Цитата Сообщение от Undisputed Посмотреть сообщение
К тому же в большом проекте одной либой HTTP не обойтись. Там всплывёт куча вещей, которые есть из коробки в определённом языке на котором у тому же код пишется гораздо проще чем на С++ (например, не нужно думать об освобождении ресурсов). К тому же С++ например не имеет большого набора CMS. Значит, магазин скорее всего придётся писать с нуля. А это ещё + к бюджету (для кого то плюс, для кого то минус ) и к срокам
Магазин может и да будет большая сложность написать, но с другой стороны это возможно.
А вот если нужно написать браузер то Вы его точно не напишите на скриптовом языке или к примеру на Java. Т.е. вообще не реализуемо. Все зависит от задачи.
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
26.06.2020, 23:18
Fulcrum_013,
Откуда создателям языка знать какой набор билиотек вам понадобится для вашей конкретной задачи
А я и не выставлял к создателям какого либо языка подобных требований. Просто есть задачи, которые типичны для веб разработки, и инструменты для решения этих типичных задач есть в языках, которые заточены под веб разработку и это факт. С чем вы спорите мне не ясно (неужели с фактами?)...

Ну интернет-магазин это вообще то уровень сложности чуток ниже хеллоуверда.
Конечно...
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
26.06.2020, 23:27
Цитата Сообщение от Undisputed Посмотреть сообщение
А я и не выставлял к создателям какого либо языка подобных требований.
Ну и как они тогда могут положить в коробку именно то что вам надо?
Цитата Сообщение от Undisputed Посмотреть сообщение
которые заточены под веб разработку
Заточены изкоропки это примерно так - в каропке есть сова, есть глобус на который можно ее натянуть, и набор квадратных колес для лисопетов которые при этом натягивании придется изобрестить. Либо абсолютно все что может иметь более одного варианта реализации, начиная с массивов и строк, вынесено на уровень библиотек, либо будет именно так. Третьего не дано.

Добавлено через 6 минут
Цитата Сообщение от Undisputed Посмотреть сообщение
Конечно...
Единственная объективная сложность - из HTML формат описания гуя как из дерьма пуля. Но на плюсах это полечить на порядки проще чем на жесе. Все же остальные сложности привнесены исключительно этими "заточенными под веб" языками.
0
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
26.06.2020, 23:28
Avazart,
Нужно как же не нужно? Просто на один ресурс меньше. Память лишь частный случай ресурса.
Согласен, если ресурс это например файл, то придётся явно закрывать если программа работает, а файл больше не нужен.

Магазин может и да будет большая сложность написать, но с другой стороны это возможно.
А вот если нужно написать браузер то Вы его точно не напишите на скриптовом языке или к примеру на Java. Т.е. вообще не реализуемо. Все зависит от задачи.
Ну вот я приблизительно это и сказал ещё в своём самом первом сообщении в этой теме
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.06.2020, 23:28

[Rust] Time
Подскажите как узнать время в Rust. //Rust extern crate time; fn main() { let now = time::get_time(); ...

Rust+assembler
Как связать язык rust и ассемблер не используя ассемблерные вставки(неудобно использовать их в RUSTе)?

Frontend Для RUST
Нужна помощь! Есть класс Participant, в этом классе есть функция new. impl Participant { /// Create a new `Participant`. ...

Просадки FPS в Rust
Всем привет нужна помощь! У меня ноут HP, установлен процессор i5-8300H 2,3 ггц, 6 ядерный 8 поточный, так же установлена видеокарта Nvidia...

Rust ошибка E0623
при компиляции появляется ошибка E0623 в документации этот номер пропущен. в чём может быть проблема? ошибка: error: lifetime...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml, в чате форсили функторы модулей как суперфичу. Пытаясь отдуплить концепт, наткнулся на тутор с простым примером. А главный принцип обучения от. . .
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru