{"id":53599,"date":"2019-12-05T00:00:00","date_gmt":"2019-12-04T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/samyj-populyarnyj-primer-java-koda-na-stackoverflow-okazalsya-s-oshibkoj"},"modified":"2020-02-18T14:01:31","modified_gmt":"2020-02-18T11:01:31","slug":"samyj-populyarnyj-primer-java-koda-na-stackoverflow-okazalsya-s-oshibkoj","status":"publish","type":"post","link":"https:\/\/prohoster.info\/nl\/blog\/news\/samyj-populyarnyj-primer-java-koda-na-stackoverflow-okazalsya-s-oshibkoj","title":{"rendered":"Het populairste voorbeeld van Java-code op StackOverflow bleek een fout te bevatten.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Populairste <noindex><a rel=\"nofollow\" href=\"https:\/\/stackoverflow.com\/questions\/3758606\/how-to-convert-byte-size-into-human-readable-format-in-java\/3758880#3758880\">voorbeeld van Java-code<\/a><\/noindex>, gepost op StackOverflow, <noindex><a rel=\"nofollow\" href=\"https:\/\/programming.guide\/worlds-most-copied-so-snippet.html\">bleek<\/a><\/noindex> met een fout die onder bepaalde voorwaarden onjuiste resultaten oplevert. De besproken code werd in 2010 geplaatst en heeft meer dan duizend aanbevelingen verzameld, en was <noindex><a rel=\"nofollow\" href=\"https:\/\/arxiv.org\/pdf\/1802.02938.pdf\">gekopieerd<\/a><\/noindex> in veel projecten en komt ongeveer 7.000 keer voor in repositories op GitHub. Opmerkelijk is dat de fout niet is gevonden door gebruikers die deze code in hun projecten kopieerden, maar door de oorspronkelijke auteur van het advies.<\/p>\n<p>De besproken code voerde de conversie van byte-grootte naar een leesbaar formaat uit, bijvoorbeeld 110592 werd omgezet naar &#171;110,6 kB&#187; of &#171;108,0 KiB&#187;. De code werd voorgesteld als geoptimaliseerd met behulp van logaritmen, een variant van een eerder gegeven advies waarbij de waarde werd bepaald op basis van herhaaldelijke deling van de oorspronkelijke waarde in een lus door 1018, 1015, 1012, 1019.<br \/>\n106, 103 en 100, totdat de deler groter was dan de oorspronkelijke waarde in bytes. Vanwege onnauwkeurige berekeningen in de geoptimaliseerde variant (overloop van de waarde long) kwam het resultaat bij de verwerking van zeer grote getallen (exabite) niet overeen met de werkelijkheid. <\/p>\n<p>De auteur van het advies probeerde ook aandacht te vestigen op het probleem van het kopi\u00ebren van voorbeelden zonder verwijzing naar de bron en zonder een licentie te vermelden. Volgens eerder <noindex><a rel=\"nofollow\" href=\"https:\/\/empirical-software.engineering\/assets\/pdf\/icse19-snippets-slides.pdf\">uitgevoerde onderzoeken<\/a><\/noindex> heeft 46% van de ontwikkelaars code van StackOverflow gekopieerd zonder de auteur te vermelden, 75% was niet op de hoogte dat de code onder de CC BY-SA-licentie valt, en 67% wist niet dat dit betekent dat de auteursrechten moeten worden vermeld.<\/p>\n<p>Volgens <noindex><a rel=\"nofollow\" href=\"https:\/\/arxiv.org\/pdf\/1910.01321.pdf\">gegevens<\/a><\/noindex> In een ander onderzoek ging het kopi\u00ebren van codevoorbeelden niet alleen gepaard met het risico van fouten in de code, maar ook met kwetsbaarheden. Bijvoorbeeld, na het analyseren van 72.483 codevoorbeelden in C++ op StackOverflow, ontdekten onderzoekers ernstige kwetsbaarheden in 69 voorbeelden (wat 0,09% van het totaal uitmaakt), die allemaal tot de meest populaire aanbevelingen behoorden. Na het analyseren van de aanwezigheid van deze code op GitHub, werd vastgesteld dat kwetsbare code die van StackOverflow was gekopieerd, aanwezig was in 2.859 projecten.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Bron: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51982\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u0430\u043c\u044b\u0439 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 Java-\u043a\u043e\u0434\u0430, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 StackOverflow, \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0441 \u043e\u0448\u0438\u0431\u043a\u043e\u0439, \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0449\u0435\u0439 \u043a \u0432\u044b\u0432\u043e\u0434\u0443 \u043f\u0440\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u0445 \u043d\u0435\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430. \u0420\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u043a\u043e\u0434 \u0431\u044b\u043b \u0440\u0430\u0437\u043c\u0435\u0449\u0451\u043d \u0432 2010 \u0433\u043e\u0434\u0443 \u0438 \u043d\u0430\u043a\u043e\u043f\u0438\u043b \u0431\u043e\u043b\u0435\u0435 \u0442\u044b\u0441\u044f\u0447\u0438 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0439, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0431\u044b\u043b \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d \u0432\u043e \u043c\u043d\u043e\u0433\u0438\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u044b \u0438 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u0445 \u043d\u0430 GitHub \u043e\u043a\u043e\u043b\u043e 7 \u0442\u044b\u0441\u044f\u0447 \u0440\u0430\u0437. \u041f\u0440\u0438\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0442\u043e \u043e\u0448\u0438\u0431\u043a\u0443 \u043d\u0430\u0448\u043b\u0438 \u043d\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438, \u043a\u043e\u043f\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\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-53599","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u0430\u043c\u044b\u0439 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 Java-\u043a\u043e\u0434\u0430.\" \/>\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\/nl\/blog\/news\/samyj-populyarnyj-primer-java-koda-na-stackoverflow-okazalsya-s-oshibkoj\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"nl_NL\" \/>\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\u0430\u043c\u044b\u0439 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 Java-\u043a\u043e\u0434\u0430 \u043d\u0430 StackOverflow \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0441 \u043e\u0448\u0438\u0431\u043a\u043e\u0439 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u0430\u043c\u044b\u0439 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 Java-\u043a\u043e\u0434\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/nl\/blog\/news\/samyj-populyarnyj-primer-java-koda-na-stackoverflow-okazalsya-s-oshibkoj\" \/>\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=\"2019-12-04T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:01:31+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\udd47 Het populairste voorbeeld van Java-code op StackOverflow bleek een fout te bevatten | ProHoster","description":"Populairste voorbeeld van Java-code.","canonical_url":"https:\/\/prohoster.info\/nl\/blog\/news\/samyj-populyarnyj-primer-java-koda-na-stackoverflow-okazalsya-s-oshibkoj","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nl_NL","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\u0430\u043c\u044b\u0439 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 Java-\u043a\u043e\u0434\u0430 \u043d\u0430 StackOverflow \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0441 \u043e\u0448\u0438\u0431\u043a\u043e\u0439 | ProHoster","og:description":"\u0421\u0430\u043c\u044b\u0439 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 Java-\u043a\u043e\u0434\u0430.","og:url":"https:\/\/prohoster.info\/nl\/blog\/news\/samyj-populyarnyj-primer-java-koda-na-stackoverflow-okazalsya-s-oshibkoj","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":"2019-12-04T21:00:00+00:00","article:modified_time":"2020-02-18T11:01:31+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"53599","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 08:02:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 14:26:01","updated":"2026-01-24 08:02:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/53599","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/comments?post=53599"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/53599\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/media?parent=53599"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/categories?post=53599"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/tags?post=53599"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}