Programma (informatica): differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m →Collegamenti esterni: Componenti di Windows |
Nessun oggetto della modifica |
||
Riga 1:
{{F|programmazione|maggio 2012}}
[[File:Algoritmo_para_Procesar_y_Organizar_en_GTD.png|thumb|upright=1.3|Esempio di [[diagramma di flusso]] di un [[algoritmo]] di un [[programma]]]]
Un '''programma''', in [[informatica]], è un procedimento [[algoritmo|algoritmico]] applicato ad un problema dato da [[automatica|automatizzare]], tipicamente [[Codice (teoria dell'informazione)|codificato]] in una serie di [[codice sorgente|linee di codice]] scritte in un certo [[linguaggio di programmazione]] da un [[programmatore]] in fase di [[programmazione (informatica)|programmazione]] a formare un ''[[software]]'', che può essere [[Esecuzione (informatica)|eseguito]] o interpretato da un [[Computer|elaboratore]]<ref>{{Cita web|url=https://www.thefreedictionary.com/computer+program|titolo=computer program|sito=TheFreeDictionary.com|accesso=2022-04-06}}</ref>, ricevendo in ''input'' determinati [[Dato|dati]] e restituendo in ''output'' gli eventuali risultati ottenuti a seguito dell'esecuzione/elaborazione delle sue [[istruzione (informatica)|istruzioni]].
== Descrizione ==
Riga 8:
Un programma è un insieme di linee di [[codice sorgente|codice]] a loro volta costituite da un insieme di istruzioni. Il problema deve essere risolvibile attraverso un [[algoritmo]] affinché un [[programmatore]] possa [[codifica]]rlo in [[Istruzione (informatica)|istruzioni]] in un [[linguaggio di programmazione]]; in questa fase - detta [[Programmazione (informatica)|programmazione]] - viene realizzato il [[codice sorgente]] del programma che definisce il suo [[flusso di esecuzione]].
La programmazione del computer (conosciuta anche come [[sviluppo del software]] e [[ingegneria del software]]) è il processo di scrittura o modifica del [[codice sorgente]]. In un ambiente formale, un analista di sistema raccoglie informazioni dai manager su tutti i processi dell'organizzazione da automatizzare. Questo professionista prepara poi un piano dettagliato per il sistema nuovo o modificato. Il piano assomiglia alle planimetrie utilizzate in architettura. Un programmatore di computer è uno specialista responsabile di scrivere o modificare il codice sorgente per implementare il piano dettagliato.<ref>{{Cita libro|nome=George Walter|cognome=Reynolds|titolo=Principles of information systems : a managerial approach|url=https://www.worldcat.org/oclc/50919802|accesso=2022-04-06|edizione=6th ed|data=2003|editore=Thomson/Course Technology|OCLC=50919802|ISBN=0-619-06489-7}}</ref>
Il termine indica una sequenza logicamente ordinata di comandi, istruzioni e operazioni e differisce dal termine - più generico - di [[software]] in quanto un programma è un software che può essere caricato nella memoria [[RAM]] per essere eseguito sotto forma di [[Processo (informatica)|processo]], includendo quindi anche quei programmi che girano in [[Esecuzione in background|background]] come ad esempio in un [[sistema operativo]] in esecuzione come a es. le [[libreria software|librerie]]. Analogamente differisce dal termine "[[applicazione (informatica)|applicazione]]" il quale viene usato normalmente nella prospettiva dell'utente finale per intendere un servizio di cui questi può usufruire, a prescindere dal fatto che questo sia realizzato da un solo programma o da un insieme di programmi - e infatti i programmi operanti su [[sistema embedded|sistemi embedded]] non sono dunque applicazioni per l'utente ma consentono comunque la funzionalità del dispositivo. In questo caso l'applicazione si compone di un'[[interfaccia utente]] e di un nucleo elaborativo.{{Chiarire}} L'espressione "[[sistema software]]" è usata poi, di norma, per indicare esplicitamente una collezione di componenti software come programmi, librerie, [[file]] e altro, interagenti fra loro.▼
▲Il termine indica una sequenza logicamente ordinata di comandi, istruzioni e operazioni e differisce dal termine - più generico - di [[software]] in quanto un programma è un software che può essere caricato nella memoria [[RAM]] per essere eseguito sotto forma di [[Processo (informatica)|processo]], includendo quindi anche quei programmi che girano in [[Esecuzione in background|background]] come ad esempio in un [[sistema operativo]] in esecuzione come
{{vedi anche|Programmazione (informatica)}}
Line 14 ⟶ 16:
[[File:05arearettangolocodice.png|thumb|[[Codice sorgente]] scritto in [[C++]]]]
{{Vedi anche|Codice sorgente}}
Un programma, per essere scritto, deve rispettare la [[sintassi]] e la [[semantica]] del particolare linguaggio di programmazione scelto. Errori di scrittura vengono poi rilevati e segnalati in fase di [[compilazione]] o interpretazione. Il presupposto base per la corretta scrittura e funzionalità del programma, secondo le specifiche desiderate, è anche la corretta elaborazione a monte dell'algoritmo di risoluzione del problema da automatizzare.
=== Compilazione/interpretazione e linking===
|