C/C++

Почему языки С/С++ считаются опасными, уязвимыми? Почему они такими изначально делались?

Потому что раньше люди были добрее и трава зеленее.
Никто не предполагал, что нужно защищаться от самих себя. Раньше программисты были исключительно другого уровня и склада ума.
Интернет тоже был раньше полностью открытым и никто не подразумевал, что кто-то будет использовать технологии в корыстных целях.
Однако и сертификаты появились, и шифрование трафика, и защиты всевозможные.
Dos Bi
Dos Bi
55 095
Лучший ответ
Андрей Кибальчич и что теперь? Не стоит их изучать? На них писать?
Andre Serenbore не сами языки уязвимы, а программное обеспечение имеет некоторые особенности работы в результате чего и происходит Ж
>Почему языки С/С++ считаются опасными, уязвимыми?
Из-за некоторых особенностей управления памятью, свойственных этим языкам, и из-за некогда многочисленных ошибок, содержавшихся в стандартных библиотеках. Сейчас большинство проблем теми или иными способами пофикшено. Если следовать некоторым правилам, можно писать на плюсах вполне безопасный во всех отношениях код.

>Почему они такими изначально делались?
Потому что когда они делались, никто еще не думал о том, что компьютеры будут массовыми, связанными в единую сеть, и исполнение зловредного кода на них превратится сначала в хобби, а потом и в бизнес. Многих общепринятых сегодня понятий компьютерной безопасности тогда еще в принципе не существовало.
Потому что делали их профессионалы для самих себя, и были они ориентированы на
а) быстроту выполнения программ, поэтому компилятор часто полагался на то, что программист ошибок не делает и не вводил в код проверок, скажем, выхода за границы массива и т. п.
б) быстроту написания программ, поэтому запись часто напоминала стенографию (два пишем, три в уме).
Ты все в кучу смешал. Си просто старый и примитивный. А в C++ уже есть разные подходы, при правильном подходе вполне себе безопасный, не хуже какой-нибудь злоебучей Java под Android или, не дай Бог, Rust. А программировать на нем может быть и в разы проще, чем на той же Java под Android. Все зависит от применяемых библиотек и от конкретного проекта.

Rust, который позиционируется как замена C++, на самом деле является какашкой, как и браузер от его разработчиков. Но на любую распиаренную какашку ведутся какие-то компании.
Extrimo
Extrimo
92 464
Andre Serenbore люди хотят упростить с++ для идиотов... Зря, не получится ибо как раньше говорили с++/с придкмали для того, чтобы случайные люди не стали программистами