Bekymmer (datavetenskap)
Inom datavetenskap är ett problem en viss uppsättning information som har en effekt på koden för ett datorprogram . Ett problem kan vara så allmänt som detaljerna i databasinteraktion eller så specifikt som att utföra en primitiv beräkning, beroende på nivån på samtalet mellan utvecklare och programmet som diskuteras. IBM använder termen bekymringsutrymme för att beskriva sektionering av begreppsinformation.
Översikt
Vanligtvis kan koden delas upp i logiska sektioner, var och en tar upp separata problem, och så döljer den behovet för en given sektion att känna till specifik information som adresseras av en annan sektion. Detta leder till ett modulärt program. Edsger W. Dijkstra myntade termen " separation of concerns " för att beskriva mentaliteten bakom denna modularisering, vilket gör att programmeraren kan minska komplexiteten i systemet som designas . Två olika problem som blandas i samma kodavsnitt kallas " högt kopplade ". Ibland tillåter inte de valda modulindelningarna att ett problem helt separeras från ett annat, vilket resulterar i tvärgående problem . De olika programmeringsparadigmen tar upp frågan om övergripande problem i olika grad. Dataloggning är ett vanligt tvärgående problem, som används i många andra delar av programmet förutom den eller de speciella moduler som faktiskt loggar data. Eftersom ändringar av loggningskoden kan påverka andra avsnitt, [ hur? ] det kan introducera buggar i driften av programmet.
Paradigm som specifikt tar upp frågan om problemseparation:
- Objektorienterad programmering , som beskriver problem som objekt
- Funktionell programmering , beskrivning av problem som funktioner
- Aspektorienterad mjukvaruutveckling , behandlar problem och deras interaktion som konstruktioner av sin egen ställning
Se även
- Övergripande oro
- Dela upp problemen
- Issue (datorer) , en arbetsenhet för att åstadkomma en förbättring av ett datasystem
- ^ Bekymra utrymmen på IBM Arkiverad 2008-01-22 på Wayback Machine
- ^ Dijkstra, Edsger W. (1982), "On the role of scientific thought" , i Dijkstra, Edsger W. (red.), Selected writings on Computing: A Personal Perspective , New York, NY, USA: Springer-Verlag New York, Inc., s. 60–66 , ISBN 0-387-90652-5
- ^ Mendhekar, Anurag, Gregor Kiczales och John Lamping. "RG: A Case-Study for Aspect-Oriented Programming" Arkiverad 2007-09-08 på Wayback Machine Xerox Palo Alto Research Center. februari 1997.