| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Minimal Size |
| Автор: Anonym 19.4.2004, 17:39 |
| это вопрос: у меня есть класс который использует всего 4 импорта: import com.ms.security.PermissionID; import com.ms.security.PolicyEngine; import com.ms.win32.Kernel32; import java.io.FileOutputStream; а как я понял при компайле - компилятся все пакеты или че там...я вобщем не силен в Джаве.. так вот как сделать так чтобы комплилилось только нужное а лишнего не было и соответственно уменьшился размер класса? спасибо |
| Автор: AntonSaburov 20.4.2004, 10:09 |
| От количества import размер класса не изменится - просто это требует указать дополнительные библиотеки. А для запуска надо указывать библиотеки все равно. Загрузчик классов сам вытащит все, что надо. Так что не заморачивай себе голову. |
| Автор: Anonym 20.4.2004, 17:34 | ||
хорошо, тогда как вообще можно уменьшить размер класса? (паковщики, опции) |
| Автор: Alone 5.5.2004, 14:30 |
| javac -g:none -O <You_file.java> -g DebugLevel -O Optimization |
| Автор: LSD 6.5.2004, 20:11 |
| Можно уменьшить размер файла путем сокращения полных имен классов и методов. Т.е. максимально короткое имя пакета, и максимально короткие имена классов и методов: a, b, c и т.д. Такой прием часто используется в приложениях для мобильных телефонов. |
| Автор: DarkDS 6.5.2004, 21:08 | ||
Нет. Большинство приложений для мобильников обфускированны. Поэтому имеют имена классов а,в,с и тд. Обфускация - это процесс "запутывания" класс файлов. То есть удаляется дебаговая информация (то же, что делает javac -g:none) и переименовывает все классы, методы, переменные так, чтобы максимально затруднить декомпиляцию байт кода. В общем то на этом выгирывается размер, но очень незначительно. |
| Автор: AntonSaburov 7.5.2004, 09:56 |
| LSD прав - таким образом действительно можно добиться уменьшения размера файла .class. И в случае, когда памяти мало, такой прием может помочь. Но и DarkDS тоже прав - обфускатор действительно такие штуки вытворяет, но выигрышь будет вряд ли очень значительный. Но информация настолько профессиональна, что не удержался - обоим по звезде |