Ответ 1
Вам известно о Proguard? http://proguard.sourceforge.net/
Это отличный оптимизатор байт-кода, который реализует множество оптимизаций. См. FAQ для списка: http://proguard.sourceforge.net/FAQ.html
- Вычислить постоянные выражения.
- Удалите ненужные запросы и методы доступа к полю вызовы.
- Удалите ненужные ветки.
- Удалите ненужные сравнения и Примеры тестов.
- Удалить неиспользуемый код блоки.
- Объединить идентичные кодовые блоки.
- Уменьшить распределение переменных.
- Удалить поля только для записи и неиспользуемый метод параметры.
- Внутренние постоянные поля, параметры метода и возвращаемые значения.
- Встроенные методы, которые являются короткими или единственными один раз.
- Упростить хвостовую рекурсию звонки.
- Объединить классы и интерфейсы.
- Сделать методы приватными, статичными и если возможно.
- Сделать классы статические и окончательные, когда это возможно.
- Заменить интерфейсы, которые имеют один Реализации.
- Выполните более 200 оптимизация глазок, например заменяя... * 2 на... < 1.
- Необязательно удалить код регистрации.
Я уверен, что вы можете дополнительно изучить исходный код, чтобы понять, как они реализованы.