IIRC it also had a funny feature where it obfuscated by keeping the method names but rearranging them.
Kinda evil if you think about it.
Basic assumptions I make when decompiling someone's code:
1. You don't want me to see it, so you won't have put effort into making them make sense. Even colleagues struggle to come up with method and variable names that are as clear as one wants
, so I'm assuming that yours are not much use to me.
2. If you thought you were gaining anything by obfuscating it, I'm assuming you're the kind of person who puts even less effort into intelligent names
. Maybe you were just going for classfile compression, but probably not.
So, my toolchain is setup to delete all the method and variable names as the first step automatically, giving them logical inferred names instead (which IMHO are easier to keep track of during the refactoring process). To be honest, if I'm decompiling something where I expect the names to be good I usually just javap it instead (it's usually to salvage a lost interface or rewrite a class from scratch/earlier version but with same names).
I think you'll find that's pretty common. shift-alt-t is the decompilers best friend
What boat did you get off from?
You do not know me, how I code or anything else about me yet you think you can judge me because I use an obfuscator?
Here are some clues:
One benefit of obfuscating is to make your code unreadable to others. Not really a blocker to anyone willing to read your code but every bit counts.
This does NOT mean my naming is poor or anything like that. I have no idea where you get off presuming that crap.
Second, obfuscation removes dead code.
Should not happen but in some circumstances, it is not really that bad.
Expecially in my area, it can help a lot.
Third, it reduces class size. By a lot.
Always good but in my line of buisiness, the mobile area, VERY important.
I have seen 50% size reduction and basically speaking, it can mean getting your app on a phone or not.
Talk about arrogant and presumptuous.