{"id":106445,"date":"2023-01-22T12:48:15","date_gmt":"2023-01-22T10:48:15","guid":{"rendered":"https:\/\/prohoster.info\/?p=106445"},"modified":"2023-01-24T13:53:19","modified_gmt":"2023-01-24T11:53:19","slug":"sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/news\/sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya","title":{"rendered":"Tw\u00f3rca C++ skrytykowa\u0142 narzucanie bezpiecznych j\u0119zyk\u00f3w programowania","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Bjarne Stroustrup, tw\u00f3rca j\u0119zyka C++, opublikowa\u0142 zastrze\u017cenia wobec wniosk\u00f3w zawartych w raporcie NSA, w kt\u00f3rym organizacjom zaleca si\u0119 rezygnacj\u0119 z u\u017cywania j\u0119zyk\u00f3w programowania, takich jak C i C++, kt\u00f3re przenosz\u0105 zarz\u0105dzanie pami\u0119ci\u0105 na dewelopera, na rzecz j\u0119zyk\u00f3w takich jak C#, Go, Java, Ruby, Rust i Swift, kt\u00f3re zapewniaj\u0105 automatyczne zarz\u0105dzanie pami\u0119ci\u0105 lub wykonuj\u0105 kontrole bezpiecze\u0144stwa podczas kompilacji.     <\/p>\n<p>Wed\u0142ug Stroustrupa wspomniane w raporcie NSA bezpieczne j\u0119zyki nie przewy\u017cszaj\u0105 C++ w istotnych z jego perspektywy zastosowaniach. W szczeg\u00f3lno\u015bci rozwijane w ostatnich latach podstawowe wytyczne dotycz\u0105ce u\u017cycia C++ (C++ Core Guidelines) obejmuj\u0105 metody bezpiecznego programowania i nakazuj\u0105 stosowanie narz\u0119dzi zapewniaj\u0105cych bezpieczne operacje z typami i zasobami. Deweloperom, kt\u00f3rzy nie potrzebuj\u0105 takich surowych gwarancji bezpiecze\u0144stwa, pozostawia si\u0119 mo\u017cliwo\u015b\u0107 kontynuowania u\u017cycia starych metod programowania.     <\/p>\n<p>Stroustrup uwa\u017ca, \u017ce dobry statyczny analizator zgodny z wytycznymi C++ Core Guidelines mo\u017ce zapewni\u0107 niezb\u0119dne gwarancje bezpiecze\u0144stwa kodu C++, wymagaj\u0105c znacznie mniej nak\u0142ad\u00f3w ni\u017c przej\u015bcie na nowe bezpieczne j\u0119zyki programowania. Na przyk\u0142ad, wi\u0119kszo\u015b\u0107 rekomendacji Core Guidelines jest ju\u017c wdro\u017cona w statycznym analizatorze i profilu bezpiecznego dzia\u0142ania pami\u0119ci w Microsoft Visual Studio. Cz\u0119\u015b\u0107 zalece\u0144 uwzgl\u0119dniono r\u00f3wnie\u017c w statycznym analizatorze Clang tidy.    <\/p>\n<p>Obiektem krytyki sta\u0142o si\u0119 r\u00f3wnie\u017c skupienie raportu NSA tylko na problemach z pami\u0119ci\u0105, pomijaj\u0105c wiele innych problem\u00f3w j\u0119zyk\u00f3w programowania, kt\u00f3re wp\u0142ywaj\u0105 na bezpiecze\u0144stwo i niezawodno\u015b\u0107. Stroustrup postrzega bezpiecze\u0144stwo jako szersze poj\u0119cie, kt\u00f3rego r\u00f3\u017cne aspekty mo\u017cna osi\u0105gn\u0105\u0107 poprzez po\u0142\u0105czenie stylu pisania kodu, bibliotek i statycznych analizator\u00f3w. Do zarz\u0105dzania w\u0142\u0105czeniem zasad zapewniaj\u0105cych bezpiecze\u0144stwo pracy z typami i zasobami proponuje si\u0119 stosowanie adnotacji w kodzie i opcji kompilator\u00f3w.     <\/p>\n<p>W aplikacjach, w kt\u00f3rych wydajno\u015b\u0107 jest wa\u017cniejsza ni\u017c bezpiecze\u0144stwo, takie podej\u015bcie umo\u017cliwia selektywne wdra\u017canie \u015brodk\u00f3w zapewniaj\u0105cych bezpiecze\u0144stwo tylko tam, gdzie to konieczne. Narz\u0119dzia poprawiaj\u0105ce bezpiecze\u0144stwo mog\u0105 by\u0107 te\u017c stosowane cz\u0119\u015bciowo, na przyk\u0142ad pocz\u0105tkowo ograniczaj\u0105c si\u0119 do zasad sprawdzania zakres\u00f3w i inicjalizacji, a nast\u0119pnie stopniowo dostosowuj\u0105c kod do surowszych wymaga\u0144.<br \/>\n<br \/>\u0179r\u00f3d\u0142o: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=58527\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0411\u044c\u0451\u0440\u043d \u0421\u0442\u0440\u0430\u0443\u0441\u0442\u0440\u0443\u043f (Bjarne Stroustrup), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c \u044f\u0437\u044b\u043a\u0430 C++, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u044b\u0432\u043e\u0434\u043e\u0432, \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0432 \u043e\u0442\u0447\u0451\u0442\u0435 \u0410\u041d\u0411, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f\u043c \u0431\u044b\u043b\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043d\u043e \u043e\u0442\u043e\u0439\u0442\u0438 \u043e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u0421\u0438 \u0438 \u0421\u0438++, \u043f\u0435\u0440\u0435\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430, \u0432 \u043f\u043e\u043b\u044c\u0437\u0443 \u044f\u0437\u044b\u043a\u043e\u0432, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a C#, Go, Java, Ruby, Rust \u0438 Swift, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0438\u0445 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0438\u043b\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u0445 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-106445","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0411\u044c\u0451\u0440\u043d \u0421\u0442\u0440\u0430\u0443\u0441\u0442\u0440\u0443\u043f (Bjarne Stroustrup), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c \u044f\u0437\u044b\u043a\u0430 C++, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u044b\u0432\u043e\u0434\u043e\u0432, \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0432 \u043e\u0442\u0447\u0451\u0442\u0435 \u0410\u041d\u0411, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f\u043c \u0431\u044b\u043b\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043d\u043e \u043e\u0442\u043e\u0439\u0442\u0438 \u043e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pl\/blog\/news\/sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c C++ \u0440\u0430\u0441\u043a\u0440\u0438\u0442\u0438\u043a\u043e\u0432\u0430\u043b \u043d\u0430\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0411\u044c\u0451\u0440\u043d \u0421\u0442\u0440\u0430\u0443\u0441\u0442\u0440\u0443\u043f (Bjarne Stroustrup), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c \u044f\u0437\u044b\u043a\u0430 C++, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u044b\u0432\u043e\u0434\u043e\u0432, \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0432 \u043e\u0442\u0447\u0451\u0442\u0435 \u0410\u041d\u0411, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f\u043c \u0431\u044b\u043b\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043d\u043e \u043e\u0442\u043e\u0439\u0442\u0438 \u043e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/news\/sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2023-01-22T10:48:15+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-01-24T11:53:19+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Tw\u00f3rca C++ skrytykowa\u0142 narzucanie bezpiecznych j\u0119zyk\u00f3w programowania | ProHoster","description":"Bjarne Stroustrup, tw\u00f3rca j\u0119zyka C++, opublikowa\u0142 zastrze\u017cenia wobec wniosk\u00f3w przedstawionych w raporcie NSA, w kt\u00f3rym organizacjom zalecano rezygnacj\u0119 z u\u017cywania j\u0119zyk\u00f3w programowania.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/news\/sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pl_PL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c C++ \u0440\u0430\u0441\u043a\u0440\u0438\u0442\u0438\u043a\u043e\u0432\u0430\u043b \u043d\u0430\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u0435 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0445 \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f | ProHoster","og:description":"\u0411\u044c\u0451\u0440\u043d \u0421\u0442\u0440\u0430\u0443\u0441\u0442\u0440\u0443\u043f (Bjarne Stroustrup), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c \u044f\u0437\u044b\u043a\u0430 C++, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0432\u043e\u0437\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u044b\u0432\u043e\u0434\u043e\u0432, \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0445 \u0432 \u043e\u0442\u0447\u0451\u0442\u0435 \u0410\u041d\u0411, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f\u043c \u0431\u044b\u043b\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043d\u043e \u043e\u0442\u043e\u0439\u0442\u0438 \u043e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.","og:url":"https:\/\/prohoster.info\/pl\/blog\/news\/sozdatel-c-raskritikoval-navyazyvanie-bezopasnyh-yazykov-programmirovaniya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2023-01-22T10:48:15+00:00","article:modified_time":"2023-01-24T11:53:19+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/106445","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/comments?post=106445"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/106445\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=106445"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=106445"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=106445"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}