Precedente :: Successivo |
Autore |
Messaggio |
Zeus News Ospite
|
Inviato: 14 Apr 2009 00:00 Oggetto: Cinquant'anni di Cobol |
|
|
Commenti all'articolo Cinquant'anni di Cobol
Nato nel 1959, il linguaggio "orientato alle applicazioni commerciali" resta ancora insostituibile per moltissime aziende in tutto il mondo.
|
|
Top |
|
 |
zeross Amministratore


Registrato: 19/11/08 12:04 Messaggi: 8076 Residenza: Atlantica
|
Inviato: 18 Apr 2009 23:31 Oggetto: |
|
|
Quando un professionista serio si ingegna per scrivere linguaggi dedicati a specifiche funzioni come per il COBOL per il commercio, il FORTRAN per le formule scientifiche, ADA per le applicazioni militari critiche, il C per i sistemi operativi ed addirittura il LOGO per imparare ed il BASIC per le applicazioni basiche, allora abbiamo invenzioni destinate a durare forse anche oltre gli uomini o le aziende che li hanno prodotti.
E se nessuno a inventato qualcosa di meglio forse non è solo perché quello che è gia presente va benissimo, ma anche perché la semplice logica commercilae speculativa, e la ricerca del bello e funzionale esasperato a portato a prodotti si affascinanti ma anche complessivamente fragili ed inadatti.
Poco di quello che è stato prodotto dal 1980 ad oggi a dimostrato di durare a lungo o di avere una specifica funzione tale da renderlo insostituibile.
Faccio esempi come il REXX oppure il JAVA, per non dire del FORTH o del PASCAL.
Ci sono anche le eccezioni ma vedere che anche i dinosauri sopravvivono alle invenzioni odierne mi fà tornare in mente un detto sulle piramidi.
L'uomo teme il tempo ma il tempo teme le piramidi.
L'informatica teme il tempo, ma il tempo teme il COBOL! |
|
Top |
|
 |
mdweb Dio maturo


Registrato: 18/12/07 16:59 Messaggi: 4412
|
Inviato: 19 Apr 2009 09:54 Oggetto: |
|
|
Citazione: |
L'informatica teme il tempo, ma il tempo teme il COBOL! |
Non metto in dubbio la sue efficenza!
Pur essendo vecchio fa il suo sporco mestiere,però non è ad ogetti! |
|
Top |
|
 |
Massive X Semidio


Registrato: 17/06/08 17:24 Messaggi: 235
|
Inviato: 19 Apr 2009 10:37 Oggetto: |
|
|
mdweb ha scritto: | Citazione: |
L'informatica teme il tempo, ma il tempo teme il COBOL! |
Non metto in dubbio la sue efficenza!
Pur essendo vecchio fa il suo sporco mestiere,però non è ad ogetti! |
e quindi? quale sarebbe il problema? |
|
Top |
|
 |
mdweb Dio maturo


Registrato: 18/12/07 16:59 Messaggi: 4412
|
Inviato: 19 Apr 2009 11:30 Oggetto: |
|
|
Citazione: | e quindi? quale sarebbe il problema? |
Magari usando linguaggi ad oggetti si potrebbero ottenere risultati migliori in minor tempo! |
|
Top |
|
 |
freemind Supervisor sezione Programmazione


Registrato: 04/04/07 21:28 Messaggi: 4643 Residenza: Internet
|
Inviato: 19 Apr 2009 18:18 Oggetto: |
|
|
Cobol ha giocato nella storia della programmazione lo stesso ruolo di fortran.
Sono due linguaggi che non hanno mai brillato per nulla, i loro costrutti sono penosi, i paradigmi pure però hanno avuto la fortuna di nascere in periodi in cui mancavano tecnologie specializzate nei campi che loro occupano.
Il fortran per esempio è nato per applicazioni scientifiche ma poi il C è risultato migliore sotto tutti i punti di vista ma ormai il numero di librerie scritte in fortran era talmente alto che fare un porting verso altri linguaggi era troppo costoso.
Idem il cobol.
Oggi questo linguaggio resiste perchè ci sono talmente tante righe scritte con lui che passare ad altri linguaggi costerebbe cifre impensabili e soprattutto tempi biblici. Purtroppo esistono ancora aziende che producono software nuovi con cobol, dovrebbero sparagli (Mi spiace se qui c'è qualcuno che lavora con cobol e ci sviluppa anche roba nuova, il paradigma usato dal linguaggio era già vecchio quando è nato)!
I grossi progetti scritti in cobol richiedono ore e ore di manutenzione, le modifiche pesano, la probabilità di bug è altissima per via del poco riutilizzo del codice (poco rispetto all'uso ad esempio dell'oop secondo tutti i dogmi)...
La fortuna del cobol è stata dettata dal periodo in cui è nato.
La mia azienda ha un cliente in comune con un programmatore cobol, ogni volta che ci vediamo parliamo di queste cose, pure lui la vede come me...
Passeranno ancora molti anni prima che questo linguaggio inizi a sentire la crisi però è veramente triste...
Con questo però ritengo di poter affermare che cobol, fortran e altri hanno reso possibile lo sviluppo di tecnologie alternative perchè hanno messo in mostra difetti enormi e quindi si sono potute creare cose nuove senza i difetti di questi linguaggi. |
|
Top |
|
 |
zeross Amministratore


Registrato: 19/11/08 12:04 Messaggi: 8076 Residenza: Atlantica
|
Inviato: 19 Apr 2009 18:57 Oggetto: |
|
|
@free dovresti incominciare a sparare ad IBM e SUN che hanno dei compilatori specifici per il COBOL (vabbé mi dirai che IBM ad aver creato il COBOL quindi avrà pure un interesse a supportarlo) con integrazioni atte a rendere meno arcaico il ruolo del povero programmatore che ci lavora, e quindi spingendo ancora per la sua utilizzazione.
Pero effettivamente quando hanno iniziato a sviluppare le idee del COBOL i calcolatori elettronici funzionavano a valvole termoioniche e relé, con memorizzazzione su linee acustiche al mercurio, sostutite poi da memorie al tamburo, input con schede perforate, oscilloscopio come unità di controllo e punzonatrice come output con gli schermi come optional di lusso.
Credo che con queste risorse pensare che potessero sviluppare qualcosa di meglio di ALGOL, COBOL e FORTRAN sia francamente impensabile.
Eppure se dopo cinquanta anni non sono riusciti a sostituire questi linguaggi nonstante i suoi limiti vorrà dire che non sono cosi da buttare via.
In realtà concordo sul fatto che scrivere in COBOL sia un problema, visto la difficoltà della sintassi, ed infatti ci ho rinunciato personalmente ad approfondirlo concentrandomi su ADA, però rispetto agli inizi sono stati fatti dei passi in avanti.
Voglio vedere quante parolacce uscivano se dovevi metterti a programmare i primi mainframe IBM come il NORC oppure gli Zuse della serie Z! |
|
Top |
|
 |
freemind Supervisor sezione Programmazione


Registrato: 04/04/07 21:28 Messaggi: 4643 Residenza: Internet
|
Inviato: 19 Apr 2009 19:24 Oggetto: |
|
|
Quello che dici, zeross è corretto però l'unico motivo per cui cobol (e fortran) non è stato sostituito è solo perchè costerebbe troppo il porting, fine.
All'epoca, anche se già stavano nascendo paradigmi nuovi e migliori, cobol poteva andar bene ma (relativamente) poco dopo sono nati altri linguaggi migliori; è ovvio che poi un'azienda non può sostituire una tecnologia inventata da lei con un' altra senza guadagnarci il più possibile prima di pensionarla! Cambiando contesto oggi si usano ancora le plc anche nel controllo di macchinari nuovi quando con un microcontrollore è un buon firmware faresti molto di più!
La maggior parte delle aziende sono restie ai cambiamenti quindi sfruttano all'estremo quello che hanno a meno che non ci siano limiti oggettivi che non potrebbero essere superati con una certa tecnologia.
Il paradigma di Cobol è scorretto sotto ogni punto di vista, in oltre ci sarà un perchè se l'ingegneria del software nella maggior parte teorizza sull'oop e i design pattern si basano su questa.
Inoltre oggi a differenza dell'epoca, i vari linguaggi hanno implementato strumenti avanzatissimi per la manipolazioni degli insiemi di dati (dbms relazionali etc...) quindi oggi con questi è possibile creare gestionali ultracazzuti, potenti, veloci e plasmabili cosa che il cobol non permette (veloci sì, potenti sì, plasmabili no).
Insomma, molti applicativi in cobol hanno i componenti che parlano tramite file csv, nel 2009 non è accettabile (è vero che questo è colpa dei programmatori e non del linguaggio però questo è una foto di come sia la mentalità). |
|
Top |
|
 |
zeross Amministratore


Registrato: 19/11/08 12:04 Messaggi: 8076 Residenza: Atlantica
|
Inviato: 19 Apr 2009 19:55 Oggetto: |
|
|
Si ma alla fin il problema e sempre lo stesso, abbiano il client efinale che arriva, ci chiede il programma ultracazzuto, con tutte le amenita moderne, userfriendly, ad icone, ad oggetti, a pallini a quadretti, in grado di gestire terabyte di dati e trasferirli dalla cina a Marte e......che utilizzi gli archivi COBOL della azienda
A quel punto non puoi farci niente e devi cercare di trovare il lato positivo anche sotto una montagna di spazzatura
Ciao
Zeross |
|
Top |
|
 |
Massive X Semidio


Registrato: 17/06/08 17:24 Messaggi: 235
|
Inviato: 19 Apr 2009 21:08 Oggetto: |
|
|
oop si usa quasi esclusivamente per risparmiare (ovviamente tutto tranne che risorse macchina)
cobol si estinguerà quando le aziende che lo usano saranno una nicchia, cioè o molte nuove aziende con sw migliori o fallimento di tante vecchie e altrettante che proveranno a convertirsi... credo che ci vorrà ancora tempo |
|
Top |
|
 |
freemind Supervisor sezione Programmazione


Registrato: 04/04/07 21:28 Messaggi: 4643 Residenza: Internet
|
Inviato: 19 Apr 2009 21:15 Oggetto: |
|
|
Massive X ha scritto: | oop si usa quasi esclusivamente per risparmiare (ovviamente tutto tranne che risorse macchina)
cobol si estinguerà quando le aziende che lo usano saranno una nicchia, cioè o molte nuove aziende con sw migliori o fallimento di tante vecchie e altrettante che proveranno a convertirsi... credo che ci vorrà ancora tempo |
E' quello che penso io. |
|
Top |
|
 |
mdweb Dio maturo


Registrato: 18/12/07 16:59 Messaggi: 4412
|
Inviato: 19 Apr 2009 21:17 Oggetto: |
|
|
Citazione: | oop si usa quasi esclusivamente per risparmiare (ovviamente tutto tranne che risorse macchina) |
Non è del tutto errato.
Però l'oop è il nuovo modo di programmare.
Forse non conosci linguaggi di programmazione oop e non sai tutte le loro potenzialità!
Certo che se poi ti metti a programmare con php ad oggetti,la vedo dura! |
|
Top |
|
 |
freemind Supervisor sezione Programmazione


Registrato: 04/04/07 21:28 Messaggi: 4643 Residenza: Internet
|
Inviato: 19 Apr 2009 21:22 Oggetto: |
|
|
mdweb ha scritto: |
Certo che se poi ti metti a programmare con php ad oggetti,la vedo dura! |
Che vuol dire?
Guarda che l'oop di php 5 non ha nulla da invidiare a quella di java, python etc...
Ha qualche difetto ma puoi fare tutto quello che vuoi e alla fine avrai qualcosa di più veloce rispetto degli altri due linguaggi che ho citato in questo post.
Ma qui si va ot quindi basta. |
|
Top |
|
 |
Zeus Amministratore


Registrato: 21/10/00 02:01 Messaggi: 13266 Residenza: San Junipero
|
Inviato: 19 Apr 2009 23:36 Oggetto: |
|
|
Quindi Cobol è un po' come i Beatles. A quei tempi bastava strimpellare quattro canzonette orecchiabili - ma pallose dopo il secondo ascolto - per diventare il gruppo piu' sopravvalutato della storia. |
|
Top |
|
 |
controcorrente Mortale devoto

Registrato: 28/06/06 10:11 Messaggi: 17
|
Inviato: 20 Apr 2009 00:14 Oggetto: |
|
|
freemind ha scritto: | ...
Oggi questo linguaggio resiste perchè ci sono talmente tante righe scritte con lui che passare ad altri linguaggi costerebbe cifre impensabili e soprattutto tempi biblici. Purtroppo esistono ancora aziende che producono software nuovi con cobol, dovrebbero sparagli (Mi spiace se qui c'è qualcuno che lavora con cobol e ci sviluppa anche roba nuova, il paradigma usato dal linguaggio era già vecchio quando è nato)!
|
Be', questa affermazione ti identifica come uno che l'informatica l'ha vista da PC in poi.
Il COBOL aveva ed HA una sintassi che gli altri linguaggi moderni si sognano. C'è solo una differenza: con il COBOL devi SAPER PROGRAMMARE, con gli altri linguaggi no, perchè ti aiutano moltissimo.
freemind ha scritto: |
I grossi progetti scritti in cobol richiedono ore e ore di manutenzione, le modifiche pesano, la probabilità di bug è altissima
|
Se non sai programmare sì, se sai fare il tuo mestiere NO!
freemind ha scritto: |
per via del poco riutilizzo del codice (poco rispetto all'uso ad esempio dell'oop secondo tutti i dogmi)...
La fortuna del cobol è stata dettata dal periodo in cui è nato.
La mia azienda ha un cliente in comune con un programmatore cobol, ogni volta che ci vediamo parliamo di queste cose, pure lui la vede come me...
|
La tua azienda ha un cliente comune con uno che hanno costretto a programmare in COBOL ma che non ne è capace!
freemind ha scritto: |
Passeranno ancora molti anni prima che questo linguaggio inizi a sentire la crisi però è veramente triste...
|
Sai cosa è veramente triste: che si migliorino i linguaggi di programmazione al posto dei programmatori!
Programmatori INCAPACI possono fare un qualche accrocchio con quei linguaggi che "fanno tutto loro".
Per programmare in COBOL devi sapere cosa fare, lui non ti aiuta molto. Ma sapere cosa fare vuol dire obbligare a PENSARE PRIMA DI FARE. Oggi il software non lo si progetta, si butta giù e via! Con il COBOL devi progettarlo. Certo, DEVI SAPERLO FARE, senno ciccia.
freemind ha scritto: |
Con questo però ritengo di poter affermare che cobol, fortran e altri hanno reso possibile lo sviluppo di tecnologie alternative perchè hanno messo in mostra difetti enormi e quindi si sono potute creare cose nuove senza i difetti di questi linguaggi. |
Bè, le tecnologie alternative hanno quei limiti che nè il COBOL nè il FORTRAN hanno: delegano tutte le "comodità di programmazione" alla macchina con costi, in termini di CPU, memoria e tutt'altro, che, credimi, ti puoi permettere se il tuo applicativo deve girare su un server con qualche centinaio di accessi contemporanei e qualche decina di migliaia di, per esempio, clienti, ma per le migliaia di accessi contemporanei e i milioni di clienti, fidati, l'efficenza del COBOL non la batti con i "linguaggi fighi di ultima generazione".
Ti faccio una previsione: tra una decina d'anni i linguaggi di oggi che saranno sopravvissuti saranno: ASSEMBLER, COBOL, FORTRAN, C/C++, JAVA. |
|
Top |
|
 |
controcorrente Mortale devoto

Registrato: 28/06/06 10:11 Messaggi: 17
|
Inviato: 20 Apr 2009 00:30 Oggetto: |
|
|
freemind ha scritto: | ...
Il paradigma di Cobol è scorretto sotto ogni punto di vista, in oltre ci sarà un perchè se l'ingegneria del software nella maggior parte teorizza sull'oop e i design pattern si basano su questa.
|
Un giorno mi spiegherai cosa vuol dire "Il paradigma di Cobol è scorretto sotto ogni punto di vista".
freemind ha scritto: |
Inoltre oggi a differenza dell'epoca, i vari linguaggi hanno implementato strumenti avanzatissimi per la manipolazioni degli insiemi di dati (dbms relazionali etc...) quindi oggi con questi è possibile creare gestionali ultracazzuti, potenti, veloci e plasmabili cosa che il cobol non permette (veloci sì, potenti sì, plasmabili no).
|
Questo prova che NON SAI che il COBOL gestisce dbms realzionali? Su cosa pensi che siano basati i DB delle banche? Pensi che ORACLE e DB/2 siano dei gestori di file ad indici? Non sai che i nuovi cobol gestiscono il formato XML con istruzioni apposite? Che i nuovi COBOL (ma non ho potuto sperimentarlo perchè è disabilitato dove lavoro io) gestiscono le classi?
freemind ha scritto: |
Insomma, molti applicativi in cobol hanno i componenti che parlano tramite file csv, nel 2009 non è accettabile (è vero che questo è colpa dei programmatori e non del linguaggio però questo è una foto di come sia la mentalità). |
In realtà non è accettabile che ci siano persone che si piccano di SAPERE e non sanno un fico!
LA struttura XML IMPONE che il parsing del file SIA FATTO PER INTERO prima di iniziare ad elaborarlo, in quanto, SE IL FILE NON È VALIDO, NON DEVE ESSERE ELABORATO. Quindi, visto che devi eseguire il parsing fino alla chiusura dell'XML, devi farlo di tutto il file PRIMA DI COMINCIARE. Questo potrebbe andare ancora bene se devi travasare 10000 record, ma se devi travasarne 5000000, magari con ogni traccaito record di 30-40 campi, tanti auguri.
Guarda, io uso sia CSV che XML e ti dico che non è colpa di CSV se i linguaggi moderni non sanno trattarlo in maniera decente.
XML va bene per gestire le aree di passaggio dati tra linguaggi che, non avendo una struttura dei dati così potente come il COBOL, si devono arrabattare in qualche maniera, ma CSV è indispensabile per travasare piccole o grosse quantità di dati da un sistema ad un altro. |
|
Top |
|
 |
freemind Supervisor sezione Programmazione


Registrato: 04/04/07 21:28 Messaggi: 4643 Residenza: Internet
|
Inviato: 20 Apr 2009 00:49 Oggetto: |
|
|
controcorrente ha scritto: |
freemind ha scritto: | ...
Oggi questo linguaggio resiste perchè ci sono talmente tante righe scritte con lui che passare ad altri linguaggi costerebbe cifre impensabili e soprattutto tempi biblici. Purtroppo esistono ancora aziende che producono software nuovi con cobol, dovrebbero sparagli (Mi spiace se qui c'è qualcuno che lavora con cobol e ci sviluppa anche roba nuova, il paradigma usato dal linguaggio era già vecchio quando è nato)!
|
Be', questa affermazione ti identifica come uno che l'informatica l'ha vista da PC in poi.
Il COBOL aveva ed HA una sintassi che gli altri linguaggi moderni si sognano. C'è solo una differenza: con il COBOL devi SAPER PROGRAMMARE, con gli altri linguaggi no, perchè ti aiutano moltissimo.
|
Ho solo 28 anni, ma non è colpa mia.
Secondo il tuo pensiere è come dire: "L'assembler ha una sinstassi che gli altri linguaggi moderni si sognano C'è solo una differenza: con il COBOL devi SAPER PROGRAMMARE, con gli altri linguaggi no, perchè ti aiutano moltissimo".
Allora inventiamo tutti i giorni la ruota (e te lo dice uno che purtroppo al lavoro lo deve fare perchè non ha la possibiltà di scegliere gli strumenti)
controcorrente ha scritto: |
freemind ha scritto: |
I grossi progetti scritti in cobol richiedono ore e ore di manutenzione, le modifiche pesano, la probabilità di bug è altissima
|
Se non sai programmare sì, se sai fare il tuo mestiere NO!
|
Senza offesa, questa cosa vale anche con gli altri linguaggi e in generale in qualunque contesto.
controcorrente ha scritto: |
freemind ha scritto: |
per via del poco riutilizzo del codice (poco rispetto all'uso ad esempio dell'oop secondo tutti i dogmi)...
La fortuna del cobol è stata dettata dal periodo in cui è nato.
La mia azienda ha un cliente in comune con un programmatore cobol, ogni volta che ci vediamo parliamo di queste cose, pure lui la vede come me...
|
La tua azienda ha un cliente comune con uno che hanno costretto a programmare in COBOL ma che non ne è capace!
|
Il tizio in questione lavora con grandi aziende che con cobol hanno fatto i soldi quindi non è un cretino.
controcorrente ha scritto: |
freemind ha scritto: |
Passeranno ancora molti anni prima che questo linguaggio inizi a sentire la crisi però è veramente triste...
|
Sai cosa è veramente triste: che si migliorino i linguaggi di programmazione al posto dei programmatori!
Programmatori INCAPACI possono fare un qualche accrocchio con quei linguaggi che "fanno tutto loro".
Per programmare in COBOL devi sapere cosa fare, lui non ti aiuta molto. Ma sapere cosa fare vuol dire obbligare a PENSARE PRIMA DI FARE. Oggi il software non lo si progetta, si butta giù e via! Con il COBOL devi progettarlo. Certo, DEVI SAPERLO FARE, senno ciccia.
|
Non sono d'accordo.
Ritengo triste considerare il cobol un grande linguaggio solo perchè è stato il primo ad essere orientato alla creazione dei gestionali.
Non so a quali accrocchi ti riferisci quando parli di lunguaggi che fanno tutto loro.
Fai qualche esempio. Se ti riferisci a metodi che ti ritornano la lunghezza di una stringa, non capisco che problema ci sia. Allora ritorniamo all'assembler, perchè avere un linguaggio con delle istruzioni che fanno il goto quanto puoi implementare un jump? E perchè usare dei nomi simbolici delle variabili quando puoi accedere alla memoria tramite indirizzi?
Anche con le tecnologie moderne devi progettare il software se non vengono come dici tu degli accrocchi.
Gli aiuti che dici tu essere dati dai linguaggi moderni a volte (e oggi troppo spesso) diventano delle armi a doppio taglio: usa male gli oggetti e vedrai che le prestazioni del programma saranno quasi nulle!
Usali come si deve e otterrai un codice estremamente veloce e versatile.
La versatilità data dall'oop per ora non può essere uguagliata da nessun'altra tecnologia.
Ovviamente non basta creare una classe e metterci qualche metodo per dire: "Cazzo! Il mio programma è a oggetti", un po' come avveniva con vb pre .net.
controcorrente ha scritto: |
freemind ha scritto: |
Con questo però ritengo di poter affermare che cobol, fortran e altri hanno reso possibile lo sviluppo di tecnologie alternative perchè hanno messo in mostra difetti enormi e quindi si sono potute creare cose nuove senza i difetti di questi linguaggi. |
Bè, le tecnologie alternative hanno quei limiti che nè il COBOL nè il FORTRAN hanno: delegano tutte le "comodità di programmazione" alla macchina con costi, in termini di CPU, memoria e tutt'altro, che, credimi, ti puoi permettere se il tuo applicativo deve girare su un server con qualche centinaio di accessi contemporanei e qualche decina di migliaia di, per esempio, clienti, ma per le migliaia di accessi contemporanei e i milioni di clienti, fidati, l'efficenza del COBOL non la batti con i "linguaggi fighi di ultima generazione".
Ti faccio una previsione: tra una decina d'anni i linguaggi di oggi che saranno sopravvissuti saranno: ASSEMBLER, COBOL, FORTRAN, C/C++, JAVA.
|
Qui siamo abbastanza d'accordo, ma non completamente.
Ad esempio i costi di cui parli: è vero, lavorare con gli oggetti costa di più, ma indietro hai versatibilità. Inoltre uno dovrebbe intendere secondo me come prestazione alta il fatto che il programma faccia una determinata cosa nel minor tempo possibile per l'hardware su cui deve girare senza però tralasciare il riutilizzo del codice o delle librerie (in maniera più generale).
Ovviamente poi sta al programmatore scegliere il linguaggi giusto per il tipo di lavoro che si deve fare.
Se devo scrivere un modore grafico, non userò java, ma c++ o derivati diretti da questo.
Perchè? Perchè anche se è più difficile da usare produce (se usato come si deve) un esegubile più veloce. Il passare direttamente dai puntatori permette di alzare le prestazioni di molto.
Ovviamente poi dovrai scrivere dei distruttori come si deve altrimenti rischi di mandare tutto a ramengo.
Non credo che chi ha teorizzato sui design pattern o su altri metodi di progetto basato sull'oop sia un demente.
Se con l'oop riesco a produrre oggetti talmente astratti da poter essere usati come base per cose diversissime tra loro non vedo perchè devo fermari al goto.
Sinceramente non ho mai visto un gestionale in cobol più veloce (ma neppure più lento sia chiaro) di altri scritti con altre metodologie, però ho visto interi blocchi logici di software scritti in java o in c++ poter essere presi così come sono e portati dentro ad un altro programma che fa tutt'altro e usati senza problemi. Cose così con il cobol non ne ho mai viste.
Con c++, java, php, c#, ruby etc... insomma, linguaggi moderni (anche se c++ non è tanto moderno) posso disaccoppiare il codice che implementa l'algoritmo da quello che lo usa e ciò mi permette nel caso debba cambiare l'algoritmo di modificare solo gli oggetti che lo implementano e non tutto il resto senza poi dover fare refactoring pesante su tutto il resto.
Magari anche con cobol puoi fare lo stesso, ma per evitare il refactoring successivo dovrai spendere molto più tempo nella scrittura del codice da cui parte il tutto.
Sulla previsione che hai fatto la vedo come te. |
|
Top |
|
 |
freemind Supervisor sezione Programmazione


Registrato: 04/04/07 21:28 Messaggi: 4643 Residenza: Internet
|
Inviato: 20 Apr 2009 01:16 Oggetto: |
|
|
@controcorrente: non avevo visto che intando avevi scritto un altro post quindi riprendo in questo.
controcorrente ha scritto: |
Un giorno mi spiegherai cosa vuol dire "Il paradigma di Cobol è scorretto sotto ogni punto di vista".
|
I listati di cobol che ho visto hanno tutti dei gran goto: tranne in rari casi il goto non va usato.
controcorrente ha scritto: |
Questo prova che NON SAI che il COBOL gestisce dbms realzionali? Su cosa pensi che siano basati i DB delle banche? Pensi che ORACLE e DB/2 siano dei gestori di file ad indici? Non sai che i nuovi cobol gestiscono il formato XML con istruzioni apposite? Che i nuovi COBOL (ma non ho potuto sperimentarlo perchè è disabilitato dove lavoro io) gestiscono le classi?
|
Lo so che puoi gestire i dbms relazionali e so anche cosa sono oracle e db2.
So pure che cobol gestisce xml.
Riguardo al discorso csv/xml.
Xml lo conosco bene, so come funziona perchè insieme a json per gli applicativi ajax lo uso tutti i giorni.
Hai ragione a dire che il file deve essere parserizzato tutto prima di elaborarlo perchè prima devi essere sicuro che sia valido. Infatti usare xml nudo e crudo per immagazzinare dei dati non va bene. Però non ho capito perchè lo hai tirato in ballo, sinceramente, non è un attacco.
I linguaggi moderni usano il csv esattamente come il cobol anche perchè il formato è talmente semplice che non è che ci puoi fare dei grandi giri.
Il problema non è usare csv o anche xml per importare qualche dato oppure qualche configurazione, il problema è usare csv, xml, o qualunque altra cosa per creare dei dati intermedi su disco per prepararli a elaborazioni successive.
Questo però non è un problema solo di cobol, se io scrivo in quello che vuoi e mi passo da una procedura ad un altra dei dati tramite file secchi (ovviamente se è troppo costoso lavorare in ram) senza sfruttare un dbms se permetti non credo che sia una cosa furba.
Le strutture dati da usare sono sempre da studiare bene prima e spesso diventano molto complesse per evitare basse prestazioni.
Un esempio cretino: mysql usa la clausola limit per impaginare le select.
Per piccole query o comunque per select semplici che ritornano molti dati, potrebbe essere la soluzione migliore. Con una riga impagini anche se il tempo di esecuzione è quello della query senza clausola.
Se però la select è pesante questo potrebbe distruggere le prestazioni perchè se continuo a cambiare pagina il server deve eseguire la query senza limit per sapere quante righe ci sono e poi rieseguirla con per impaginare. Per eviatare questo o si usa della cache oppure si creano una o più tabelle con degli indici (un po' come con glki archivi ad indice) e le impaginazioni si fanno appoggiandosi a queste tabelle.
Le prestazioni salgono e fine.
Però questo non dipende dal linguaggio, anche se il linguaggi moderni si attaccano a mysql sono io che devo scrivere il db nel modo migliore e usarlo bene.
Quello che ho visto per adesso (e tu potrai dirmi, "si ma sei giovane") non mi ha mostrato i pregi che cobol dovrebbe avere.
Tutto quello che ho dettoe le critiche che ho fatto non sono dettate da un mio delirio di onnipotenza ma da quello che vedo quasi tutti i giorni (quasi perchè per fortuna a volta mi occupo anche di cose divertenti).
Diamine, oggi pure i firmware si iniziano a scrivere con linguaggi ad oggetti (lasciamo perdere i grandi firmware per palmari cellulari etc perchè li siamo in un ambito particolare) tralasciando l'assembler, ci sarà un perchè! |
|
Top |
|
 |
controcorrente Mortale devoto

Registrato: 28/06/06 10:11 Messaggi: 17
|
Inviato: 20 Apr 2009 02:38 Oggetto: |
|
|
freemind ha scritto: | @controcorrente: non avevo visto che intando avevi scritto un altro post quindi riprendo in questo.
controcorrente ha scritto: |
Un giorno mi spiegherai cosa vuol dire "Il paradigma di Cobol è scorretto sotto ogni punto di vista".
|
I listati di cobol che ho visto hanno tutti dei gran goto: tranne in rari casi il goto non va usato.
|
Vero. Ma i nuovi linguaggi non l'hanno, e quindi NON PUOI usarlo anche dove serve. Perchè toglierti una possibilità? Tieni presente che, molto spesso, i listati infarciti di GOTO sono l'n_esima derivazione di un programma scritto 20 anni fa quando anche risparmiare 20 byte era utile...
Il COBOL ha anche la PERFORM che, pur meno immediata di una chiamata a funzione, è "quasi" la stessa cosa.
Il COBOL (senza classi) non è ricorsivo e non ha la protezione delle variabili, ma si stanno dando da fare:
- puoi chiamare dei sotto-programmi ed usarli per isolare il codice e le variabili (questo da sempre, anche se la chiamata ricorsiva non è ammessa a meno di complicazioni immani)
- se si decideranno ad abilitarle, si potranno usare le classi
freemind ha scritto: |
controcorrente ha scritto: |
Questo prova che NON SAI che il COBOL gestisce dbms realzionali? Su cosa pensi che siano basati i DB delle banche? Pensi che ORACLE e DB/2 siano dei gestori di file ad indici? Non sai che i nuovi cobol gestiscono il formato XML con istruzioni apposite? Che i nuovi COBOL (ma non ho potuto sperimentarlo perchè è disabilitato dove lavoro io) gestiscono le classi?
|
Lo so che puoi gestire i dbms relazionali e so anche cosa sono oracle e db2.
So pure che cobol gestisce xml.
Riguardo al discorso csv/xml.
Xml lo conosco bene, so come funziona perchè insieme a json per gli applicativi ajax lo uso tutti i giorni.
Hai ragione a dire che il file deve essere parserizzato tutto prima di elaborarlo perchè prima devi essere sicuro che sia valido. Infatti usare xml nudo e crudo per immagazzinare dei dati non va bene. Però non ho capito perchè lo hai tirato in ballo, sinceramente, non è un attacco.
|
Sai quante volte mi hanno detto CVS è schifo, ora si usa XML...
freemind ha scritto: |
I linguaggi moderni usano il csv esattamente come il cobol anche perchè il formato è talmente semplice che non è che ci puoi fare dei grandi giri.
Il problema non è usare csv o anche xml per importare qualche dato oppure qualche configurazione, il problema è usare csv, xml, o qualunque altra cosa per creare dei dati intermedi su disco per prepararli a elaborazioni successive.
|
A volte serve...
Semplificare le problematiche suddividendole in più piccole e potendo usare più strumenti che si parlano è utile. Come è utile poter far parlare semplicemente procedure DIVERSE scritte in momenti DIVERSI, da persone DIVERSE e con strumenti DIVERSI.
Ti garantisco che, in ambienti complessi con decine di procedure complesse fa comodo...
freemind ha scritto: |
Questo però non è un problema solo di cobol, se io scrivo in quello che vuoi e mi passo da una procedura ad un altra dei dati tramite file secchi (ovviamente se è troppo costoso lavorare in ram) senza sfruttare un dbms se permetti non credo che sia una cosa furba.
Le strutture dati da usare sono sempre da studiare bene prima e spesso diventano molto complesse per evitare basse prestazioni.
Un esempio cretino: mysql usa la clausola limit per impaginare le select.
Per piccole query o comunque per select semplici che ritornano molti dati, potrebbe essere la soluzione migliore. Con una riga impagini anche se il tempo di esecuzione è quello della query senza clausola.
Se però la select è pesante questo potrebbe distruggere le prestazioni perchè se continuo a cambiare pagina il server deve eseguire la query senza limit per sapere quante righe ci sono e poi rieseguirla con per impaginare. Per eviatare questo o si usa della cache oppure si creano una o più tabelle con degli indici (un po' come con glki archivi ad indice) e le impaginazioni si fanno appoggiandosi a queste tabelle.
Le prestazioni salgono e fine.
Però questo non dipende dal linguaggio, anche se il linguaggi moderni si attaccano a mysql sono io che devo scrivere il db nel modo migliore e usarlo bene.
Quello che ho visto per adesso (e tu potrai dirmi, "si ma sei giovane") non mi ha mostrato i pregi che cobol dovrebbe avere.
Tutto quello che ho dettoe le critiche che ho fatto non sono dettate da un mio delirio di onnipotenza ma da quello che vedo quasi tutti i giorni (quasi perchè per fortuna a volta mi occupo anche di cose divertenti).
Diamine, oggi pure i firmware si iniziano a scrivere con linguaggi ad oggetti (lasciamo perdere i grandi firmware per palmari cellulari etc perchè li siamo in un ambito particolare) tralasciando l'assembler, ci sarà un perchè! |
Difatti i cellulari hanno un boot da PC. Il cellulare, poi, ha la necessità di un ambiente "protetto" dove far girare i programmi, e JAVA è nato per questo...
Il bello (ed il brutto) di JAVA nasce da lì: l'esigenza di un ambiente protetto. Bello, ma lento, a meno di non sapere a menadito tutte le varie librerie di metodi ed usarle sempre appena se ne presenta l'occasione. Allora JAVA è quasi veloce come il C... ...perchè è quasi C! |
|
Top |
|
 |
mda Dio maturo


Registrato: 01/11/06 10:39 Messaggi: 6648 Residenza: Figonia
|
Inviato: 20 Apr 2009 12:57 Oggetto: |
|
|
freemind ha scritto: | Quello che dici, zeross è corretto però l'unico motivo per cui cobol (e fortran) non è stato sostituito è solo perchè costerebbe troppo il porting, fine.
All'epoca, anche se già stavano nascendo paradigmi nuovi e migliori, cobol poteva andar bene ma (relativamente) poco dopo sono nati altri linguaggi migliori;(...........). |
Scusate ma qui parla un ex programmatore COBOL or ora Java.
Il COBOL è semplicemente vecchio perché negli anni 90' la IBM smise il supporto (meglio dire "ci buttava i soldi") nell'organizzazione di standardizzazione COBOL ... Caso strano mori l'organizzazione ...Subito dopo apparvero vari dialetti (con tanti bei copyright) che non arrivarono da nessuna parte se non incasinare il tutto ... Nel caso avremmo avuto il COBOL con Oggetti (magari non evoluto come Java e altri, ma già allora gestiva le classi nelle variabili) che gestisce le finestre in Windows ecc. ecc..
Comunque è ancora valido per fare il lavoro "sporco" o dietro le quinte, meglio di qualsiasi altro linguaggio = Veloce, leggero, facile ad modificare.
Ciao |
|
Top |
|
 |
|
|
Non puoi inserire nuovi argomenti Non puoi rispondere a nessun argomento Non puoi modificare i tuoi messaggi Non puoi cancellare i tuoi messaggi Non puoi votare nei sondaggi
|
|