Пару слов о современном подходе к программированию и о скорости роста вычислительных мощностей. И о том, что мне в этом всем не нравится.
Итак. У нас есть приложение. Даже не столь важно оно коммерческое или открытое. Для приложения важна цена его разработки или трудозатраты по разработке / время, необходимое для разработки. И важно, что бы его в итоге «пипл хавал».
Рассмотрим граничную ситуацию. Приложение можно написать с нуля на чуть ли не ассемблере или «Си», который без «плюс-плюс». И получить, при условии хорошей прямоты рук программистов, качественное и очень шустрое приложение с качественным кодом, которое очень оптимально расходует память, время процессора и вообще очень эффективно использует железо.
Все хорошо? Нет, не хорошо. На создание такого софта и на его поддержку уходит огромное количество человеческих ресурсов. Потому затраты на разработку стараются снизить. Как? Использованием более высокоуровневых языков программирования, фреймоворков и библиотек.
Конечно, давайте для приложения, которое складывает две строки подрубим библиотеку «терабайтный текстовый процессор», для онлайн калькулятора засунем мегафреймворк, а оболочку для приложения напишем на гребанной Java, сделаем там «ГосподьБогСоздатьВеленную()» и похрен, что оно там будет тормозить как проклятое.
Все равно ведь железо клепают с невероятной скоростью. Мощности процессоров растут по экспоненте, объемы памяти удваиваются каждый год везде (даже, по слухам, у айфонов), давайте захренячим записывалку дисков на три гигабайта! Да здравствует Nero!
Давайте вообще не думать о скорости работы приложений, ведь об этом позаботятся в интеле! Давайте создавать восьмиядерные смартфоны, которые будут тормозить при элементарных действиях.
За**ало/