Minimalisme (computing) - Minimalism (computing)

I computing , minimalisme henviser til anvendelsen af minimalistiske filosofier og principper i design og brug af hardware og software . Minimalisme betyder i denne forstand at designe systemer, der bruger mindst mulig hardware- og softwareressourcer.

Historie

I slutningen af ​​1970'erne og begyndelsen af ​​1980'erne arbejdede programmører inden for rammerne af relativt dyre og begrænsede ressourcer på fælles platforme. Otte eller seksten kilobyte af RAM var almindelig; 64 kilobyte blev betragtet som en enorm mængde og var hele adresseområdet, der var tilgængeligt for 8-bit CPU'er, der var dominerende i de tidligste generationer af pc'er . Det mest almindelige lagringsmedium var 5,25 tommers diskettedrev, der indeholdt fra 88 til 170 kilobyte. Harddiske med kapacitet fra fem til ti megabyte koster tusindvis af dollars.

Over tid udvidede kapaciteter til personlig computerhukommelse med størrelsesordener, og almindelige programmører udnyttede den ekstra lagerplads til at øge deres softwarefunktioner og for at gøre udviklingen lettere ved at bruge sprog på højere niveau . Derimod forblev systemkravene til ældre software de samme. Som et resultat virker selv de mest detaljerede, funktionsrige programmer fra tidligere minimalistiske i sammenligning med den nuværende software. Mange af disse programmer betragtes nu som abandonware .

Et eksempel på et program, hvis systemkrav engang gav det et tungt omdømme, er GNU Emacs- teksteditor, der fik backronymet "Otte megabyte og konstant bytte" i en æra, hvor 8 megabyte var meget RAM. I dag, Emacs' hovedsageligt tekstmæssige buffer -baseret paradigme anvendelser langt færre ressourcer end desktop metafor GUI IDE'er med sammenlignelige funktioner som Eclipse eller Netbeans . I en tale på den internationale Lisp-konference i 2002 indikerede Richard Stallman , at minimalisme var et problem i hans udvikling af GNU og Emacs, baseret på hans erfaringer med Lisp og systemspecifikationer for low-end minicomputere på det tidspunkt.

Da kapaciteterne og systemkravene til almindelig desktop-software og operativsystemer voksede gennem 1980'erne og 1990'erne, og da softwareudvikling blev domineret af hold, der støttede modstridende, faddish softwareudviklingsmetoder , vedtog nogle udviklere minimalisme som en filosofi og valgte at begrænse deres programmer til en forudbestemt størrelse eller rækkevidde. Et fokus på softwareoptimering kan resultere i minimalistisk software, da programmører reducerer antallet af operationer, deres program udfører for at fremskynde udførelsen.

I det tidlige 21. århundrede har nye udviklinger inden for databehandling bragt minimalismen i spidsen. I det, der er blevet kaldt post-PC-æraen, er det ikke længere nødvendigt at købe en avanceret personlig computer kun for at udføre almindelige computeropgaver. Mobile computerenheder , såsom smartphones , tablet-computere , netbooks og plug-computere , har ofte mindre hukommelseskapacitet, mindre kompatible grafikundersystemer og langsommere processorer sammenlignet med den pc, de forventes at erstatte. Derudover tømmer tung brug af grafiske effekter som alfa-blanding batteriet hurtigere end en "flad brugergrænseflade". Den stigende popularitet af disse enheder har gjort minimalisme til et vigtigt designproblem.

Google 's Chrome-browseren og Chrome OS bliver ofte nævnt som eksempler på minimalistisk design. I Windows 8 , Microsoft besluttet at droppe grafiktunge Aero brugergrænseflade til fordel for den "simple, kvadreret-off" Metro udseende, som krævede færre systemressourcer. Denne ændring blev til dels på grund af stigningen i mindre, batteridrevne enheder og behovet for at spare strøm. Version 7 af Apples 's iOS foretaget lignende ændringer for brugeroplevelsen årsager.

Anvendelse

Udviklere kan oprette brugergrænseflader for at være så enkle som muligt ved at fjerne knapper og dialogbokse, der potentielt kan forvirre brugeren. Minimalisme bruges undertiden i sin visuelle kunstbetydning , især i det industrielle design af hardwareenheden eller softwaretemaet .

Nogle udviklere har forsøgt at oprette programmer til at udføre en bestemt funktion i de færreste kodelinjer eller den mindste kompilerede eksekverbare størrelse mulig på en given platform. Nogle Linux- distributioner nævner minimalisme som et mål. Alpine Linux , Arch Linux , Puppy Linux , Bodhi Linux , CrunchBang Linux , dynebolic og Tiny Core Linux er eksempler. Den tidlige udvikling af Unix- systemet fandt sted på hardware med lav strømforsyning, og Dennis Ritchie og Ken Thompson har udtalt deres mening om, at denne begrænsning bidrog til systemets "elegance af design".

Programmeringssprogsdesignere kan oprette minimale programmeringssprog ved at undgå syntaktisk sukker og omfattende biblioteksfunktioner . Sådanne sprog kan være Turing-tarpits på grund af ikke at tilbyde standardstøtte til almindelige programmeringsopgaver. Oprettelse af en minimal Lisp- tolk er en almindelig læringsopgave, der ligger inden for datalogistuderende . Den lambdakalkyle , udviklet af Alonzo Church er en minimal programmeringssprog, der bruger kun fungere definitioner og funktion applikationer. Scheme , Forth og Go nævnes som eksempler på praktiske, minimale programmeringssprog.

Programmeringshobbyen for kodegolf resulterer i minimalistisk software, men disse er typisk øvelser eller kodepoesi , ikke brugbar applikationssoftware.

John Millar Carroll påpegede i sin bog Minimalism Beyond the Nürnberg Funnel , at brugen af ​​minimalisme resulterer i "øjeblikkelig brug" -enheder såsom videospil, pengeautomater , stemmemaskiner og indkøbscentre med lille eller ingen læringskurve, der gør kræver ikke, at brugeren læser vejledninger. Brugergrænsefladeforskere har udført eksperimenter, der tyder på, at minimalisme, som illustreret af designprincipperne for parsimon og gennemsigtighed , styrker effektivitet og lærbarhed. Minimalisme er implicit i Unix-filosofierne om "alt er en tekststrøm" og "gør en ting og gør det godt", selvom moderne Unix / Linux-distributioner ikke holder så nøje med denne filosofi.

Se også

Referencer