StackOverflow-dakı ən məşhur Java kod nümunəsi səhv imiş

StackOverflow-dakı ən məşhur Java kod nümunəsi səhv imiş

Code-News
06.12.2019 PAYLAŞIM

    StackOverflow-da qeyd edilmiş ən məşhur Java kod nümunəsi müəyyən şərtlərdə düzgün olmayan nəticələrə gətirib çxartmış səhv imiş. Sözügedən kod 2010-cu ildə dərc edilmiş və 1000-dən çox müsbət fikir əldə etmişdi. Bundan əlavə olaraq həmin kod bir çox layihələr kopyalanıb və ona GitHub repozitoriyalarından 7000 dəfədən çox rast gəlinir. Maraqlısı ondadır ki, koddakı səhvi öz layihələrinə həmin kodu kopyalayan istifadəçilər deyil kodun müəllifi aşkar edib. Bu barədə Opennet.ru saytı xəbər verib.

    Sözügedən kod baytlıq informasiyanı oxunula bilən formaya çevirirdi. Məsələn o, 110592-ni “110.6 kB”ə və ya “108.0 KiB”ə çevirirdi. Bu kod daha öncədən təqdim edilmiş məsləhətin loqarifma vasitəsilə optimizasiya edilmiş versiyasıdır. Daha öncədən təqdim edilmiş məsləhətdə böyüklük, ixtiyari mənanın ardıcıl olaraq dövrdə 10 üstü 18, 10 üstü 15, 10 üstü 12, 10 üstü 19, 10 üstü 6, 10 üstü 3 və 10 üstü 0-a bölünməsi sayəsində təyin edilirdi. Bölünmə o vaxta kimi davam edəcək ki, bölən, baytlar üzrə ixtiyari mənadan böyük olsun.

    Diqqətsiz hesablamalar səbəbilə optimizasiya edilmiş variantda böyük rəqəmlərin emal olunması zamanı iş nəticələri həqiqəti əks etdirmirdilər. Bundan əlavə olaraq nümunələrin linklərsiz kopyalanması və lisenziyaların qeyd edilməməsi problemlərinə də nəzər yetirilib. İlkin tədqiqatların nəticələrinə əsasən tərtibatçıların 46%-i bu kodu StackOverflow-dan müəllifin adının qeyd olunmaması şəklində yükləyib, 75%-i bu kodun CC BY-SA lisenziyası vasitəsilə yayılmasından xəbərsiz olub, 67%-i isə bu kodun yüklənməsi zamanı müəllifin adının qeyd olunmasının mütləq olmasından xəbərsiz olub. 



SİZƏ MARAQLI OLACAQ BİR NEÇƏ MƏLUMAT


2020-ci ildə məlumatların vizualizasiyası üçün aktual olacaq Top-8 JavaScript ki..

JavaScript-də məlumatları daha gözəl şəkildə təqdim etmək lazımdır?


Microsoft bu il olmuş qeyri adi fişinq kiberhücumlarından danışdı

Bir neçə müddət bundan öncə isə Microsoft şirkəti kiberhücumlar və malware-lar üzrə trendləri əks et..


Microsoft Windows-da 0-day boşluğu da daxil olmaqla 7 kritik sistem boşluğu arad..

Microsoft şirkəti bu ay təqdim etmiş olduğu yenilənmələr ilə öz sistemlərində 36 boşluğu aradan qald..


Microsoft Teams platformasının Linux versiyası təqdim edildi

Microsoft şirkəti Microsoft Teams platformasının Linux versiyasını təqdim edib.


OpenBSD-də 4 ciddi sistem boşluğu aşkar edilib

OpenBSD-də 4 ciddi sistem boşluğu aşkar edilərək aradan qaldrılıb.


Sadə tətbiqlərin müxtəlif proqramlaşdırma dillərindəki test nəticələri təqdim ed..

Assembler x86_64-də HeavyThing adlı azad kitabxananı reallaşdırmış müəllif Jeff Marrison “Assembler-..