Минимализм (вычисления)

редактировать

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

Содержание
  • 1 История
  • 2 Использование
  • 3 См. Также
  • 4 Ссылки
История

В конце 1970-х - начале 1980-х программисты работали в рамках относительно дорогие и ограниченные ресурсы распространенных платформ. Обычно было восемь или шестнадцать килобайт из RAM ; 64 килобайта считались огромным объемом и представляли собой все адресное пространство, доступное для 8-битных центральных процессоров, преобладавших в первых поколениях персональных компьютеров. Наиболее распространенным носителем информации была 5,25-дюймовая гибкая дискета, содержащая от 88 до 170 килобайт. Жесткие диски емкостью от пяти до десяти мегабайт стоят тысячи долларов.

Со временем объем памяти персонального компьютера увеличился на порядки, и обычные программисты воспользовались преимуществами добавленного хранилища, чтобы расширить возможности своего программного обеспечения и упростить разработку за счет использования языков высокого уровня. Напротив, системные требования для устаревшего программного обеспечения остались прежними. В результате даже самые сложные, многофункциональные программы прошлых лет кажутся минималистичными по сравнению с текущим программным обеспечением. Многие из этих программ теперь считаются заброшенным программным обеспечением.

Одним из примеров программы, системные требования которой когда-то обеспечили ей репутацию тяжеловесной, является текстовый редактор GNU Emacs, получивший обратную связь «Восемь мегабайт и постоянный обмен местами» в эпоху, когда 8 мегабайт были большим количеством оперативной памяти. Сегодня парадигма Emacs на основе в основном текстового буфера использует гораздо меньше ресурсов, чем метафора рабочего стола GUI IDE со сравнимыми функциями, такими как Eclipse или Netbeans. В своей речи на Международной конференции по Лисп в 2002 году Ричард Столлман указал, что минимализм был проблемой при его разработке GNU и Emacs, основываясь на своем опыте работы с Lisp и системные спецификации младших миникомпьютеров в то время.

По мере того, как возможности и системные требования обычного программного обеспечения для настольных ПК и операционных систем росли в течение 1980-х и 1990-х годов, и когда разработка программного обеспечения стала доминирующей из-за того, что команды придерживались противоречивых, причудливых методологий разработки программного обеспечения, некоторые разработчики приняли минимализм как философию и решили ограничить свои программы заранее определенным размером или областью. Сосредоточение внимания на оптимизации программного обеспечения может привести к созданию минималистичного программного обеспечения, поскольку программисты сокращают количество операций, выполняемых их программой, чтобы ускорить выполнение.

В начале 21 века появились новые разработки в области вычислений. выдвинули на первый план минимализм. В так называемую эпоху пост-ПК больше нет необходимости покупать высокопроизводительный персональный компьютер только для выполнения обычных вычислительных задач. Мобильные вычислительные устройства, такие как смартфоны, планшетные компьютеры, нетбуки и подключаемые компьютеры часто имеют меньший объем памяти, менее функциональные графические подсистемы и более медленные процессоры по сравнению с персональный компьютер, который они должны заменить. Кроме того, интенсивное использование графических эффектов, таких как альфа-смешивание, разряжает батарею быстрее, чем «плоский интерфейс». Растущая популярность этих устройств сделала минимализм важной дизайнерской заботой.

Google браузер Chrome и Chrome OS часто упоминаются как примеры минималистичного дизайна. В Windows 8 компания Microsoft решила отказаться от требовательного к графике пользовательского интерфейса Aero в пользу «простого, квадратного» Metro <109.>внешний вид, который требовал меньше системных ресурсов. Это изменение было внесено отчасти из-за появления более компактных устройств с батарейным питанием и необходимости экономии энергии. Версия 7 Apple iOS внесла аналогичные изменения для взаимодействия с пользователем.

Использование

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

Некоторые разработчики пытались создать программы для выполнения конкретная функция в наименьшем количестве строк кода или наименьшем размере скомпилированного исполняемого файла, возможном на данной платформе. Некоторые дистрибутивы Linux упоминают минимализм как цель. Alpine Linux, Arch Linux, Puppy Linux, Bodhi Linux, CrunchBang Linux, dynebolic и Tiny Core Linux являются примерами. Ранняя разработка системы Unix происходила на оборудовании с низким энергопотреблением, и Деннис Ричи и Кен Томпсон высказали свое мнение, что это ограничение способствовало " элегантность дизайна ».

Язык программирования Разработчики могут создавать минимальные языки программирования, избегая синтаксического сахара и обширных библиотечных функций. Такими языками могут быть tarpits Тьюринга из-за того, что они не предлагают стандартной поддержки для общих задач программирования. Создание минимального интерпретатора Lisp - это обычная учебная задача, которую ставят перед студентами информатики. Лямбда-исчисление, разработанный Алонзо Черч, представляет собой минимальный язык программирования, который использует только определения функций и приложения функций. Схема, Форт, и Go приводятся в качестве примеров практических минимальных языков программирования.

Хобби программирования гольф приводит к минималистическому программному обеспечению, но это обычно упражнения или поэзия кода, а не прикладное программное обеспечение, которое можно использовать.

Джон Миллар Кэрролл в своей книге Minimalism Beyond the Nürnberg Funnel указал, что использование минимализма приводит к "мгновенным" устройствам, таким как видеоигры, банкоматы, машины для голосования и киоски в торговых центрах с минимальной кривой обучения , которые не требуют от пользователя чтения руководств. Исследователи пользовательского интерфейса провели эксперименты, показавшие, что минимализм, о чем свидетельствуют принципы дизайна экономия и прозрачность, повышает эффективность и обучаемость. Минимализм подразумевается в философии Unix «все является текстовым потоком» и «делай одно и делай это хорошо», хотя современные дистрибутивы Unix / Linux не придерживаются этой философии так строго.

См. Также
Ссылки
Последняя правка сделана 2021-05-30 13:15:48
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте