Obfuscation bazi ticari durumlarda gerekli, cunku sattiginiz / sagladiginiz kodun degisik platformlarda musteri tarafindan compile edilebilmesi ya da kaynak kodu seviyesinde yeniden kullanilip baska urunlere entegre edilebilmesi gerekiyor. Ancak kodun tamamini da gozle gorulebilir ve kolay anlasilabilir sekilde vermek istemiyorsunuz. Yillardir hem yazilim, hem donanim projelerinde bircok defa obfuscated source code olarak lisanslanip dagitilan urunler kullandim.
Linkini verdiginiz yazi kararli ve becerili bir yazilim muhendisinin isteyip zaman ayirirsa her obfuscation metodunu cozebilecegi, dolayisiyla "obfuscation'in yararsiz oldugu" argumaninini yapmis. Obfuscation zaten kodunuzun hic kimse tarafindan anlasilamayacagi garantisini degil, olaganin cok ustunde bir efor ve zaman harcamadan anlasilamayacagi garantisini veriyor. Benzer bir mantikla kararli ve becerili bir hirsizin kilidinizi matkapla delerek ya da balyozla kapinizi kirarak evinize girebilecegini, bu yuzden tatile giderken kapinizi kilitlemenin ve genel olarak kilitlerin ise yaramadigi argumanini da ortaya atabilecegimizi soylersek bu soylemin ne kadar mantiksiz oldugu gorulebilir.
Somut bir ornek vermek gerekirse su anda tasarladigimiz bir projede bize obfuscated source code olarak verilmis bir komponent kullaniyoruz. Acikcasi bunu oturup 50 adam/gun harcayip anlamaya calismamizin hic bir anlami yok, biz zaten o komponenti 50 adam/gun harcayip sifirdan tasarlamak zorunda kalmamak icin satin aldik. Urunu piyasaya bir an once ulastirabilmek icin her dakikanin onemli oldugu profesyonel hayatta gayet normal ve mantikli bir uygulama.