Egzanp ki pi popilè nan kòd Java sou StackOverflow gen yon erè

Ki pi popilè Egzanp kòd Java, pibliye sou StackOverflow, vire soti ak yon erè ki mennen nan pwodiksyon an nan yon rezilta kòrèk nan sèten kondisyon. Kòd la nan kesyon an te afiche an 2010 e li te akimile plis pase mil rekòmandasyon, e li te tou kopye nan anpil pwojè ak parèt nan depo sou GitHub apeprè 7 mil fwa. Li enpòtan pou remake ke erè a te jwenn pa itilizatè yo kopye kòd sa a nan pwojè yo, men pa otè orijinal la nan konsèy la.

Kòd la nan kesyon an konvèti gwosè a byte nan yon fòm lizib, pou egzanp konvèti 110592 nan "110.6 kB" oswa "108.0 KiB". Kòd la te pwopoze kòm yon vèsyon logaritm optimize nan konsèy yo te pwopoze deja, nan ki valè a te detèmine ki baze sou divizyon an sekans nan valè orijinal la nan yon bouk pa 1018, 1015, 1012, 1019.
106, 103 ak 100, osi lontan ke divizè a pi gran pase valè byte orijinal la. Akòz kalkil sloppy nan vèsyon an optimize (long valè debòde), rezilta a lè yo trete nimewo trè gwo (egzaoctet) pa t 'koresponn ak reyalite.

Otè konsèy la te eseye tou atire atansyon sou pwoblèm nan kopye egzanp san yo pa site sous la ak san yo pa endike lisans lan. Dapre done pi bonè fè rechèch 46% nan devlopè yo kopye kòd nan StackOverflow san yo pa atribisyon, 75% pa t 'okouran ke kòd la te lisansye anba CC BY-SA, ak 67% pa te okouran ke sa a te mande atribisyon.

Sou bay yo Dapre yon lòt etid, kopye egzanp kòd enplike non sèlman risk pou erè nan kòd la, men tou frajilite. Pa egzanp, apre yo fin analize 72483 egzanp kòd C++ sou StackOverflow, chèchè yo idantifye vilnerabilite grav nan 69 egzanp (ki se 0.09%) ki enkli nan lis rekòmandasyon ki pi popilè yo. Lè w fin analize prezans kòd sa a sou GitHub, li te revele ke kòd vilnerab kopye nan StackOverflow te prezan nan 2859 pwojè yo.

Sous: opennet.ru

Add nouvo kòmantè