5. Рост размера программ
• Windows
– Windows NT 4.0: 50M (95 год)
– Window 8: 2.5G (2012 год)
• MS Office
– MS Office 97: 180 M
– MS Office 2013: 670 M
• Adobe Photoshop
– Photoshop 5.0: 60 MB (98 – год)
– Photoshop CS 5.5 : 1.2G (2011 год)
• CorelDRAW
– CorelDRAW 8.0: 20 MB (2000 год)
– CorelDRAW Graphics Suite X6: 260 MB (2012 год)
6. Н.Вирт -- Долой “жирные”
программы (1996)
• Программное обеспечение увеличивается в
размерах до тех пор, пока не заполнит всю
доступную на данный момент память
• Программное обеспечение замедляется
более быстро, чем аппаратура становится
быстрее
7. Статистика использования
• IDEA 12.0.4 Community Edition:
– 120MB
– 79 000 классов
– Грузится на старте ~ 4000 классов (пока сплэш)
– После загрузки проекта ~ 12000 классов
– После активной работы
(VCS, debugger, refactoring, etc.) ~ 19000 классов.
– 500 000 методов
– Исполнилось после активной работы ~ 90 000
– rt.jar: ~ 20 000 классов, загрузилось идеей ~5 000
• Реально используется только 20%
8. Статистика использования
• Eclipse Classic SDK 4.2:
– 180MB
– 40 000 классов
– Грузится на старте ~ 7000 классов (пока сплэш)
– После загрузки проекта ~ 8000 классов
– После активной работы (VCS, debugger, refactoring, etc.)
~ 11000 классов.
– 290 000 методов
– Исполнилось после активной работы ~ 60 000 методов
– rt.jar: ~ 20 000 классов, загрузилось эклипсом ~1 500
• Реально используется только ~ 20%
10. Web
1. Нет инсталляции на клиенте
2. Встроенное бесплатное “автоматическое
обновление“
3. Отгрузка приложения по частям
4. «Простые» изобразительные средства:
HTML + JavaScript
5. Работает везде, где есть браузер
15. Мобайл
• Могут ли планшеты и планшетные OC
вытеснить десктоп?
• Почему все уважающие себя порталы и
интернет-сервисы делают мобильные
приложения
• А что внутри?
23. Основа системы будущего
(мое мнение)
• Переносимый, безопасный и эффективный
(быстрый) ЯП + платформа
• MVC – разделение представления от логики
и данных. Представление – произвольное.
Контроль над рендерингом представления.
• Загрузка приложения по частям (контроль
над толщиной клиента)
• Персонализированность (настройка "под
себя“).