CHAPTER 5

Decompiler Design

For the remainder of this book, I’m going to focus on how you can create your own decompiler, which is, in fact, a cross-compiler that translates bytecode to source code. Although I will be covering the theory behind the relevant design decisions as they arise, my intention is to give you enough background information to get you going rather than to give you a full-blown chapter on compiler theory.

Don’t expect your decompiler (ClassToSource in this chapter) to be more comprehensive or better than anything currently on the market; to be honest, it is probably closer to Mocha than JAD or SourceAgain. Like most development, the first 80 to 90 percent of our decompiler is the easiest and the last 10 to 20 percent takes ...

Get Decompiling Java now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.