Software

Società indipendente SAP

SAP e il percorso verso l'impresa autonoma

Scopri come SAP Autonomous Enterprise sta rivoluzionando il mondo degli affari grazie all'intelligenza artificiale, agli agenti intelligenti e alla nuova suite autonoma. Vieni a scoprire tutto!

iOS 27: il futuro del sistema

iOS 27 e il futuro del sistema operativo iPhone

Scopri come iOS 27 cambia il tuo iPhone: maggiore stabilità, migliore durata della batteria, una nuova Siri basata sull'intelligenza artificiale e il supporto per il futuro iPhone pieghevole.

Che cos'è il software? Definizione

Un'era tecnologica come questa è caratterizzata da una vasta quantità di software che ci circonda e che a volte ci sopraffà.Il concetto è implicito nella realtà di tutti oggi. Lo usiamo, come ai vecchi tempi, sul computer o informaticaMa anche sui nostri telefoni per prendere appunti, mentre giochiamo, seguiamo un corso di e-learning, cerchiamo lavoro sulle app di ricerca, guardiamo Netflix in TV e persino programmiamo il forno, solo per citare alcuni esempi.

Pertanto, circondati da tutto ciò, è ironico quanto poco sappiamo di questo concetto, ed è proprio a questo che rimedieremo oggi raccontandovelo Che cos'è il software e quali tipologie esistono?, come e a cosa serve e, in generale, tutto ciò che c'è da sapere su questa risorsa diventata indispensabile nelle nostre vite.

Che cos'è il software e a cosa serve? Definizione

Che cos'è il software e a cosa serve?

La definizione più semplice che possiamo trovare, e che descrive anche accuratamente di cosa si tratta, è quella fornita da Wikipedia stessa, che parla di un "supporto software di un sistema informatico"Tuttavia, faremmo un torto sia a voi che a noi stessi se questo fosse tutto ciò che abbiamo da dire su questo concetto."

Questi sono quelli regole, premesse, azioni e istruzioni che non esistono a livello fisicoche non sono tangibili, non possono essere toccati, ma che, tuttavia, Si attivano e funzionano per comunicare con la macchina in questione, offrendo un'ampia varietà di servizi.Nei computer, televisori, smartphone, ecc., attualmente si utilizzano sistemi complessi algoritmi progettato con l'intelligenza artificiale.

Si tratta quindi di un compendio di componenti logiche che si uniscono per formare un prodotto destinato a funzionare su un computer. È la sua parte operativa.

Per comprenderlo meglio, possiamo dire che si tratta di programmi per computer.sia quelli utilizzati dall'utente finale sia tutti quelli coinvolti in un processo più lungo e nascosto che include progettazione, sviluppo e programmazione computerA sua volta, tutto ciò dipende da altri software. Come vedremo in seguito, tutto ciò che eseguiamo sui nostri dispositivi è software, di un tipo o dell'altro.

Origine e storia del software

Origine

Le sue origini risalgono ai primi computer, negli anni '40.In quel periodo, la sua differenza rispetto all'hardware non era ben compresa (lo vedremo più avanti); Non è stato concepito come qualcosa di indipendente da questo.

Questo decennio e il prossimo hanno offerto prodotti gratuiti, senza licenzaQuesti oggetti venivano scambiati come se qualcuno si scambiasse una ricetta con un vicino.

Storia

Era già negli anni '60In un futuro lontano, con l'avvento di ARPANET, che iniziò a formarsi una comunità che cominciava a rivelare, in modo specifico, le caratteristiche, i principi e i valori del software.

L'impulso per questo settore è venuto da due conferenze sponsorizzate dalla NATO. negli anni '1968 e '1969.

Naturalmente, i decenni successivi, oltre ai nuovi sviluppi, furono caratterizzati da vari problemi che finirono per plasmare ciò che divenne noto come "crisi del software", l'aspetto più rilevante della storia di questo prodotto, proprio per il suo impatto a tutti i livelli.

Apparecchiature originali ARPANET

Evoluzione

Possiamo dire che stiamo parlando di evoluzione già dagli anni '60 Ebbene, nonostante, come abbiamo detto, abbia causato una grave crisi, la sua evoluzione stava diventando evidente.

Possiamo definire una prima era caratterizzata dall'utilizzo di software sviluppato dagli stessi programmatori, da un'unica azienda che si occupava della creazione dei programmi man mano che li ideava, per proprio uso.

La seconda era è definita dal concetto di molteplicità, compresi tutti i tipi di sistemi multifunzionali e multiprogrammazioneUn altro aspetto fondamentale è l'introduzione di nuovi concetti che favoriscono l'interazione tra la persona e la macchina.

La terza era, che fu Risale alla metà degli anni '70.Ciò include la distribuzione di questi sistemi, l'utilizzo di diversi computer, ognuno con uno scopo specifico, e tutti interconnessi. Attualmente, l'industria del software rappresenta la parte preponderante dell'economia globale.

Attualmente ci troviamo nella quarta era, caratterizzata dalla specificazione delle tecniche utilizzate per la progettazioneLo sviluppo e il miglioramento del software e, di conseguenza, dell'esperienza utente, sono diventati l'obiettivo principale del settore.

Classificazione e tipologie di software in base al loro utilizzo

Esempi di tipologie di software

A seconda del loro utilizzo, ovvero dello scopo per cui sono progettati, si distinguono software di programmazione, software di sistema, software applicativo, malware e software sociale.

Software di programmazione

Si aggiudica il premio per importanza perché è colui che crea tutto il restoQuesto include, ovviamente, gli altri tipi di software di cui parleremo più avanti. È necessario, a un livello molto basilare, sia nello sviluppo di app che nell'informatica in generale.

Per questo, È necessario utilizzare quelli che, a loro volta, sono anche altri programmi software di programmazione. come redattori e processori di testoAmbienti IDE, vari compilatori (ce ne sono molti) o software per client-serverche consentono test, sistemi di controllo di versione...

Per quanto riguarda le risorse umane, È ovviamente necessaria la conoscenza della programmazione, della logica e della matematica..

All'interno di questa tipologia abbiamo i seguenti sottotipi:

  • Ambiente di sviluppo integrato o IDESi tratta di una sorta di suite o insieme di strumenti di programmazione che aumentano la produttività nello sviluppo. Esistono diverse versioni, ognuna con le proprie funzionalità, che facilitano il progresso in una direzione o nell'altra.
  • Debugger del codiceCome suggerisce il nome, si tratta di un'attività di debug del codice, sempre apprezzata sia da chi programma e sviluppa, sia da chi lo osserva dall'esterno, una volta che il prodotto sviluppato è in esecuzione.
  • Editor di testoOffre la possibilità di creare codice pulito senza l'utilizzo di programmi esterni.
  • compilatoreÈ responsabile della lettura di un programma nella sua lingua originale e della sua decodifica per visualizzarlo in un linguaggio comune, in modo che sia compatibile con il computer e possa essere eseguito su di esso.

Software di sistema

La sua funzione principale è molto generale ma diretta; questa Serve a consentire il funzionamento dell'hardware di cui fa parte.. Certo, Esistono molti tipi, volti a lavorare su aspetti diversi e con caratteristiche molto differenti. (così come altre molto simili, ovviamente).

Staremmo parlando di un OS, come Android, Linux, MacOS, BlackBerryOS... e anche driver progettati per garantire la corretta interazione tra sistema e apparecchiatura.

Offriamo:

software dell'app

Di applicazione o utilità, sono quelli che vengono utilizzati in situazioni diverse da quelle sopra descritteCioè, non per progettare e sviluppare, né per gestire apparecchiature. In questo caso, l'obiettivo è divertirsi una funzionalità di interesse per l'utente finale e questo può essere davvero molto vario.

Tutto ciò che utilizziamo sui nostri dispositivi include il software applicativo. In effetti, possiamo dire che include tutto ciò che non rientra nelle due categorie precedenti, vale a dire, applicazioni per il computer Per l'utente finale. Un client di posta elettronica, un browser, una piattaforma di streaming, qualsiasi app scaricata dall'App Store o dal Google Play Store e innumerevoli altre cose.

Le tipologie che troviamo all'interno di questa categoria includono:

Dannoso o malware

Si tratta di programmi progettati per influire negativamente sui computer degli utenti su cui vengono installati, o per fare lo stesso con altri software.L'obiettivo generale è quello di disabilitare il software antivirus, distruggere gli hard disk, disabilitare o rendere inutilizzabili determinate funzioni di un programma, o semplicemente rubare informazioni, sebbene dietro questi programmi software sempre più sofisticati si celino molti altri scopi.

A seconda della loro modalità operativa e del loro obiettivo, troviamo:

  • virusSi tratta di un programma contenente codice dannoso progettato per diffondersi tra i computer. Si installa sul tuo computer senza la tua autorizzazione, tramite un file eseguibile, e si copia sistematicamente in ogni programma che avvii.
  • WormsSi tratta di un virus particolare, ma la sua conoscenza e i danni che ha causato nel corso della storia sono tali da averlo classificato come una tipologia specifica di malware.
  • TrojanSi tratta di un programma apparentemente innocuo che, una volta scaricato e installato, contiene software dannoso che gli consente di accedere al computer e ai dati. Non è in grado di riprodursi autonomamente; può rimanere inattivo fino al momento di entrare in azione.
  • BackdoorCosì come un worm è un tipo di virus che si è guadagnato il nome di malware, una backdoor è un tipo di cavallo di Troia. In questo caso, l'hacker prende il controllo del sistema infetto, consentendogli di installare software aggiuntivo, inviare email di massa e così via.
  • KeyloggerSoftware in grado di registrare i tasti premuti sulla tastiera, raccogliendo così informazioni su tutto ciò che si digita. Solitamente, gli obiettivi sono le password.
  • dialerSoftware di composizione automatica dei numeri di telefono che tenta di connettere il dispositivo alla rete. Alcuni sono innocui, mentre altri tentano di comporre numeri a pagamento.
  • RootkitSi tratta di kit di rooting per dispositivi. Consistono in codici estremamente complessi inseriti in macchine e sistemi per ottenerne il controllo e gestirli, rendendo molto difficile per chiunque rintracciare il cybercriminale a causa dell'assenza di tracce.
  • SpywareSoftware che mira a raccogliere informazioni dall'utente del computer su cui è installato. Queste informazioni vengono inviate alla parte appropriata, che si tratti del creatore o di una specifica rete informatica. Sono i più facili da individuare e rimuovere.

Di tipo sociale

Conclusione strumenti di comunicazione progettati per facilitare l'interazione attraverso le convenzioni socialicompresi i servizi di messaggistica, le piattaforme di social media, le chat room...

Tra queste funzionalità rientrano il supporto per le conversazioni tra due o più utenti, il feedback, la facilità di condivisione dei contenuti e l'espressione digitale e virtuale di una relazione personale.

Esempi e tipologie di programmi in base al loro tipo di sviluppo

Classificazione del software libero

Un'altra classificazione che vale la pena conoscere e considerare è quella basata sul copyright di questi programmi. Inoltre, un altro punto interessante da considerare è il ciclo di vita del softwareOvvero, dal momento in cui un'idea viene concepita fino alla sua messa in produzione per gli utenti, un processo laborioso ma entusiasmante.

Gratuito

Come indica il concetto stesso, stiamo parlando di un prodotto che puoi scaricare sul tuo computer e distribuire gratuitamentené da parte tua né da parte di coloro che lo ricevono da te.

In molti casi, queste funzionalità fanno parte di un programma più ampio e completo che ha un costo. Naturalmente, ci sono anche casi in cui, in cambio della gratuità del servizio, dobbiamo guardare le pubblicità, che rappresentano il modo in cui gli sviluppatori si guadagnano da vivere.

Anche se è gratuito, su codice sorgente Di solito non è disponibileIl fatto che non abbia alcun costo ciò non significa che manchi il diritto d'autorePer questo motivo, nessuno può venderlo a scopo di lucro, né tantomeno rivendicarlo come proprio.

Shareware

La sua distribuzione è consentita senza restrizioni, sebbene il suo utilizzo sia limitato dopo un certo periodo di tempo.Per questo motivo, non può essere copiato o installato senza previo pagamento.

Il suo codice sorgente rimane nascosto, come è logico, quindi non è un programma che può essere modificato in alcun modo. L'esempio chiaro Si tratta della versione di prova di qualsiasi programma.

gratis

Non ci sono restrizioni sulla copia, la modifica e la distribuzione del contenuto.Lo abbiamo trovato avendo pieno accesso al codice sorgente.

Open source

I programmi chiamati Open Source Sono perfettamente distribuibili, copiabili e modificabili, ma sempre con l'obbligo di informare la community di supporto. La proprietà intellettuale, pertanto, è condivisa tra gli sviluppatori e gli utenti successivi che lo modificano.

Privato

A differenza del software libero, questo non può essere modificato o distribuito e, ovviamente, non si ha accesso al codice sorgente.Per ovvie ragioni, si tratta di un servizio a pagamento o premium.

Adware

Il suo scopo è generare profitti economiciUna volta acquistato, il software può essere modificato, poiché di solito è open source.

Componenti software, loro funzioni e utilità

Un componente, semplicemente per definizione, è qualsiasi elemento che costituisce o fa parte di qualcosa di più grande. Pertanto, i componenti di un programma software sono: ciascuno degli elementi che ne fanno parte, che lo integrano e lo costituiscono come un tutto.

parliamo Moduli che hanno una propria interfaccia e dipendenze sufficientemente definite da poter essere raggruppati in un insieme specificoSi va da soluzioni minimali a quelle che formano una vera e propria ramificazione di sottomoduli.

  • Una delle sue caratteristiche è quella Hanno dipendenze esplicite dal contesto.
  • Un altro è che Può essere implementato in modo indipendente; possiede un'identità propria.e può essere utilizzato in altre composizioni e database.
  • Quest'ultimo punto ci conduce a un altro punto, che è il seguente: un gruppo sostituibile.
  • E, inoltre, riutilizzabile.
  • La sua interfaccia è perfettamente definita.in modo che il suo utilizzo in un altro gruppo sia semplice e intuitivo,
  • Infine, abbiamo che riguarda elementi che devono essere coesi.

Differenze tra hardware e software (componenti logici e fisici)

Differenze tra hardware e software

Dopo aver discusso a lungo del software, possiamo riassumere dicendo che si tratta di un componente logico utilizzato in vari modi a seconda dello scopo previsto. Tuttavia, con la somiglianza al concetto "hardware"Chiunque non sia un esperto potrebbe confonderli o addirittura pensare che siano la stessa cosa."

Data l'ampia definizione che abbiamo già fornito, dobbiamo ancora discutere cosa sia un L'hardware non è altro che un componente fisico di un dispositivo, ovvero le parti materiali, quelle che si possono toccare.Cioè, il software è "ciò che c'è dentro" e l'hardware "il contenitore".

Il software richiede, a un livello o all'altro, l'esecuzione da parte dell'hardware.Ciò significa che deve esserci un componente fisico, un contenitore, che consenta l'utilizzo del programma, per quanto minimale esso sia.

Così, Il software comprende tutti i tipi di programmi come giochi, siti web, app che scarichiamo, ecc. e l'hardware Sarebbe il monitor dove vediamo le informazioni, il mouse che Ci consente di gestire i contenutiil processore che lavora per rendere possibile l'esecuzione o il RAM che consente di memorizzare le informazioni immediate che vengono rilasciate.