|
2.2, Аноним (2), 23:22, 19/05/2022 [^] [^^] [^^^] [ответить]
|
+3 +/– |
в целом, поработав с безопасным растом и небезопасными плюсами, пришел к выводу, что в расте гораздо безопаснее. Да и в целом, раст — это синоним слову безопасность. Ну и память — с памятью работать стало безопаснее. Потому что используется безопасный раст. Безопасность достигается при помощи безопасных конструкций безопасного языка и безопасной работы с безопасной памятью, чтобы безопасные программы были еще безопаснее.
|
|
|
3.12, Аноним (12), 23:41, 19/05/2022 [^] [^^] [^^^] [ответить]
|
+/– |
unsafe это про отсутсвие UB и про формальные гарантии компилятора (типа ссылки указывают на живые объекты, не будет разыменован нулевой указатель, етц)
|
|
|
2.5, Rev (?), 23:28, 19/05/2022 [^] [^^] [^^^] [ответить]
|
+1 +/– |
Как день и ночь. На расте всё надёжнее и проще, чем на плюсах.
|
|
|
3.6, Кир (?), 23:32, 19/05/2022 [^] [^^] [^^^] [ответить]
|
–1 +/– |
Ты забыл 10 раз повторить, что безопаснее. Незачёт.
|
|
|
2.8, Аноним (12), 23:36, 19/05/2022 [^] [^^] [^^^] [ответить]
|
+1 +/– |
по началу писать гораздо сложнее, пока осознаешь как работать с владением и заимствованием борясь с конпелятором. потом гораздо легче, поскольку уже конпелятор начинает работать за тебя и отлавливает глупые ошибки. в расте основная идея — это взять плюсы(правда с видоизмененным ооп) и крайне педантично выпилить все UB — превратив их в ошибки компиляции. это применимо к unsafe коду (надо так и читать — unsafe от UB). вся педантичность проявляется в очень строгих формальных гарантиях, которые дает компилятор и вот именно их очень в крестах после ржавого не хватает. такой небольшой шажок в сторону формального доказательства правильности программы. хотя плата за это так же имеется, естесна. нужно руками прописывать времена жизней объектов(если это не получается вывести из контекста). и в целом, некоторый класс программ написать становиться сложнее, приходится иногда извращаться чтобы ублажить требования конпилятора
|
|
|
3.13, НяшМяш (ok), 23:45, 19/05/2022 [^] [^^] [^^^] [ответить]
|
–3 +/– |
В лайфтаймы на старте можно и не упарываться вообще, просто фигача сплошные clone и прочие to_owned. В большинстве случаев этого хватает во всех смыслах. Зато при таком явном подходе сразу видишь, насколько получается среднестатистическая программа относительно неэффективной. Ведь в других языках всякие копирования неявно спрятаны, а иногда даже и в документации не описывается.
|
|
|
2.14, Аноним (14), 23:49, 19/05/2022 [^] [^^] [^^^] [ответить]
|
+4 +/– |
Ржавый это: смузихлёбство, феминизм, sjw, lgbt, blm, stand with ukraine. Вопросы?
|
|
2.20, Я (??), 00:00, 20/05/2022 [^] [^^] [^^^] [ответить]
|
+/– |
ну вот в плюсах все заряженные дробовики и острые предметы валяются где попало, а в расте всё это аккуратненько сложено на складе и если не надо не ходишь туда и всё хорошо, а если надо то горит ярко. в остальном не то чтобы большая разница с тем как если бы плюсовый компилятор просто отказывался компилировать код написанный не по гайдлайну..
|
|
|