Когда мы говорим об оптимизации, то обычно имеем в виду повышение скорости или требования к объему программы. Часто эти две цели являются противоположностями: можено сделать программу быстрее за счет большого объема памяти, и наоборот.

В последнее время, еще один вид оптимизации становится все более актуальным: оптимизация для низкого энергопотребления. Каждая операция, выполняемая мобильным приложением потребляет энергию; чем большие мощности приложение потребляет, тем короче срок службы батареи устройства. Используйте слишком много энергии, и люди будут избегать использования вашего приложения, если они не находятся рядом с адаптером питания.

Знайте устройства для вашего приложения

Когда вы пытаетесь создать энергоэффективный код, так же, как при создании быстрого или «легкого» приложения использует память код, самая важная вещь, которую нужно помнить -характеристики устройств не являются универсальными.

Этот принцип является еще более важным, когда речь заходит о потреблении энергии. Хорошим примером является постоянное хранилище. Большинство портативных устройств теперь поставляются с постоянными накопителями памяти. Некоторые оснащены микродрайвом, но при этом много ноутбуков по-прежнему используют вращающиеся хранители данных, такие как дисткеты. Требования к потребляемой мощности всех этих систем очень разные. Самое дорогое, что касается жесткого диска - это вращение пластин. Если привод находится в режиме ожидания в течение некоторого времени, он не использует (почти) энергию.

Много операционных систем переводят диск в спящий режим после определенного периода бездействия. Поэтому разработчикам десктоп приложений, которые вероятние всего будут использоваться на устройствах с дисковыми носителями нужно учесть эту особенность.

Энергетические характеристики флэш-карт являются очень разными: Переход между включением и отключением для флешки потребляет очень мало энергии и произходит очень быстро, так что хорошо продуманные флэш контроллер выключит флэш чип как только доступ с ним оборвется. В отличие от жесткого диска, запись информации на флешку -потребляет намного больше энергии, и тем более если нужно все стереть.

И так, мы, специалисты компании ПНН, делаем выводы – приступая к разработке собственного приложения, программного обеспечения, системы, одним из не менее важных факторов является учитывание того, для каких устройст вы разрабативаете программу, оценить препятствия которые могут возникнуть на вашем пути, и в конце проекта – протестировать производительность на всех требуемых устройствах.