Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1

    [ GERARCHIA SOFTWARE ] Programmazione ad Alto Livello

    raga' ...in occasione dell'esame per il primo modulo del ECDL ( ) ho pensato che chiarirmi una volta per tutte il significato e la gerarchia di tutti quei termini che stanno dentro il concetto di SOFTWARE

    - LINGUAGGIO DI BASSO LIVELLO
    --- LINGUAGGIO MACCHINA
    ----- CODICE OGGETTO
    --- LINGUAGGIO DI PROGRAMMAZIONE A BASSO LIVELLO
    ----- ASSEMBLY
    - LINGUAGGIO DI ALTO LIVELLO (o SOFTWARE in senso comune)
    --- LINGUAGGIO DI PROGRAMMAZIONE A ALTO LIVELLO

    a questo punto come sta sotto il resto?

    ----- SW DI BASE
    -------- SW DI SISTEMA
    -------- SW UTILITY
    -------- ASP ?
    ----- SW APPLICATIVO
    -------- SW APPLICATIVO in senso stretto (Office, IE, ...)
    -------- SW GESTIONALE (Sap, ...)

    ma allora Pascal, Basic, C++ sove stanno? dentro una di queste categorie? oppure queste categorie sono scritte proprio in tali linguaggi ?
    Farmacia di Jarno - le mie pillole: Cookie [#780810], Dom4Php4 [#1123236], Fade [#1139489], getCssProperty [#1152911]
    Inchinatevi difronte al Prof! Nacchio!

    A me pare che l'uomo vada avanti con la retromarcia

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Credo che ci sia parecchia confusione... (premetto che sono dell'avviso che le ECDL non servano a nulla)
    - LINGUAGGIO DI ALTO LIVELLO (o SOFTWARE in senso comune)
    La parte in grassetto non ha nessun senso: non tutto il software è un linguaggio di programmazione. Con WinZip, ad esempio, non ci si programma proprio niente.

    Pascal, Basic e C++ sono dei linguaggi di programmazione. Essi fanno parte del mondo del software e servono a produrre altro software.

    In quale categoria rientrino dipende un po' dall'ottica... ad esempio, c'è chi considera il C++ nu linguaggio di alto livello perchè consente un tipo di programmazione chiamato Object Oriented. Ma c'è anche chi lo considera di basso livello perchè, se messo a confronto con linguaggi come UML o altri, esso risulta più scarno.
    Pascal e Basic sono ad un livello più basso rispetto a C++, però nettamente più alto rispetto al linguaggio ASSEMBLY.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente bannato
    Registrato dal
    Jan 2003
    Messaggi
    1,414
    Permettimi di dire che hai fatto un casino assurdo
    Allora, facendo una cosa sintetica al massimo...

    Quello che tu chiami software è semplicemente il programma che utilizzi, come Firefox, come WinZIP, come Paint o il Blocco Note...

    Per creare un software bisogna scriverlo, e i diversi modi in cui viene scritto danno origine a diversi linguaggi di programmazione; a seconda del tipo di linguaggio di programmazione, essi si dividono in linguaggi di alto e di basso livello.

    Ci sono due tipi fondamentali di linguaggi di programmazione: quelli compilati e quelli interpretati:

    Il C e il C++, ad esempio, sono linguaggi compilati, perchè per rendere il sorgente un programma eseguibile (compilare un programma) bisogna usare un compilatore apposito; da un programma compilato (e quindi un software) non è possibile risalire al codice sorgente.

    Altri linguaggi, come Perl o Python, sono interpretati, perchè un listato perl non viene compilato (creando un eseguibile come avviene con i compilati) ma semplicemente viene interpretato ed eseguito ogni volta dall'interprete perl presente sulla macchina.

    Contempraneamente in questi linguaggi si può fare un'ulteriore distinzione, spesso meno netta e marcata, che differenzia i programmi di alto livello e quelli di basso livello. I linguaggi di alto livello sono in genere più facili e veloci da scrivere, perchè non devi gestire molte cose a livello quasi macchina; per fare un esempio scemo, in C se vuoi dichiarare una variabile contentente un numero, poniamo 10, devi dichiararla

    int num = 10 ( se vuoi che il numero sia di tipo intero)
    long num = 10 (se vuoi che il numero sa di tipo long)
    double num = 10 (se vuoi che il numero sia di tipo double)
    char carattere = x (se vuoi dichiarare un carattere)

    In Perl, invece, ti è sufficiente fare

    $a = 10;
    $b = 'ciao mondo';

    E puoi dichiarare qualsiasi cosa all'interno della variabile, senza preoccuparti direttamente di che genere effettivo di dati si tratti, perchè se ne occuperà l'interprete Perl; il C, invece, devi occupartene tu.

    Il linguaggio più di basso livello in assoluto (oltre a quello binario, of course) e' l'assembler; i linguaggi più di alto livello, anche se non ha molto senso come distinzione, sono generalmente quelli Object Oriented (che supportano quindi una prorammazione ad oggetti) come appunto Perl, Python, Java, Ruby eccetera.

    Linguaggi come ASP o PHP, infine, non sono linguaggi di programmazione, bensì di scripting (in effetti, anche Python è un linguaggio di scripting) ma quello che li differenzia dagli altri linguaggi è che essi sono generalmente utilizzati in ambito web...(nonostante sia effettivamente possibile fare programmi in PHP a sè stanti, è molto più comodo utilizzare un vero linguaggio di programmazione come Perl).

  4. #4
    ECDL: concordo ...infatti ho messo la faccia da fagiano

    Terminologia: aspetta un attimo ...come dici te è una questione di punti di vista, e su queste classificazioni di punti di vista ce ne sono troppo ..per questo volevo chiarirmelo una volta per tutte

    WinZip: ma infatti non ho detto che SOFTWARE=LinguaggioProgrammazione ma LinguaggioAltoLivello: i file zip non vanno visti a sè, ma come un tuo personale "insieme di istruzioni" complementari al software Winzip. Quando apri un file.zip questo viene filtrato da Winzip che in un suo linguaggio ad Alto Livello dirà all'OS o alla macchina quello che deve fare.

    su tutto il resto concordo e non è in contrasto con la mia visione

    Mia Domanda: Possiamo inserire i SW che permettono di scrivere i Linguaggi di Programmazione tra i SW APPLICATIVI? i SW di BASE e i SW APPLICATIVI in cosa sono scritti? Windows in cosa è scritto?
    Farmacia di Jarno - le mie pillole: Cookie [#780810], Dom4Php4 [#1123236], Fade [#1139489], getCssProperty [#1152911]
    Inchinatevi difronte al Prof! Nacchio!

    A me pare che l'uomo vada avanti con la retromarcia

  5. #5
    x maiosyet

    grazie mille per le informazioni che mi hai dato

    non ho detto le tue cose ma ciò che ho detto (o volevo dire) non è in contrasto con quello che dici: io sto dando una gerarchia ai codici/linguaggi, mentre te hai riportato delle proprietà del codice/linguaggio con cui concordo ma che per difficoltà di sintesi non ho riportato

    fammi fare il saputello anche a me (senza offese):
    ASP: non intendevo quello che si contrappone ad PHP, ma a "Applications Service Provider"
    ASSEMBLER non è il linguaggio ma il traduttore, il linguaggio è ASSEMBLY

    ps: io ho scritto "SOFTWARE in senso comune" per indicare quello che dite voi, poichè "SOFTWARE" nel suo senso vero e teorico è ogni informazione o istruzione ...in pratica ciò che sta al livello uno della gerarchia da me inserita, in opposizione al concetto di HardWare


    cmq grazie 1000 mi è molto utile quello che hai detto
    Farmacia di Jarno - le mie pillole: Cookie [#780810], Dom4Php4 [#1123236], Fade [#1139489], getCssProperty [#1152911]
    Inchinatevi difronte al Prof! Nacchio!

    A me pare che l'uomo vada avanti con la retromarcia

  6. #6
    insomma...

    i SW di BASE e i SW APPLICATIVI in cosa sono scritti? Windows in cosa è scritto?
    Farmacia di Jarno - le mie pillole: Cookie [#780810], Dom4Php4 [#1123236], Fade [#1139489], getCssProperty [#1152911]
    Inchinatevi difronte al Prof! Nacchio!

    A me pare che l'uomo vada avanti con la retromarcia

  7. #7
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,296
    Originariamente inviato da Jarno
    i SW di BASE e i SW APPLICATIVI in cosa sono scritti? Windows in cosa è scritto?
    Windows si presume sia scritto in C/C++, ma non capisco cosa ne ricavi, né quali siano i dubbi che ti sono rimasti.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  8. #8
    Utente di HTML.it L'avatar di edriv
    Registrato dal
    Oct 2004
    Messaggi
    367
    E poi non puoi dire che WinZip (come tutti gli altri) sia "sotto forma di linguaggio di programmazione ad alto livello": ogni programma compilato è in linguaggio macchina!

    Per chiarezza: ogni programma (windows e applicativi) può essere scritto in che linguaggio ti pare, anche Assembly se ti và.
    Per un OS è indispensabile qualche istruzione di assembler.
    I've got a bike. You can ride it if you like.

  9. #9
    Utente bannato
    Registrato dal
    Jan 2003
    Messaggi
    1,414
    Originariamente inviato da Jarno
    insomma...

    i SW di BASE e i SW APPLICATIVI in cosa sono scritti? Windows in cosa è scritto?
    Ma non capisco, l'unica differnza tra un software di base e applicativo che vedo sta solo nel nome, che perlopiù non significa nulla... un software è un applicazione, che vuol dire che è applicativo? e di base?

  10. #10
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,296
    In genere, il termine software applicativo viene usato per indicare tutti quei programmi che non fanno parte in senso stretto del sistema operativo stesso ma utilizzano i servizi offerti da esso (a livello di grafica, gestione memoria, ecc.) per consentire all'utente di eseguire determinate operazioni.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.