27 October, 2005
Linguaggi di programmazione: opportunità o alternative?
I linguaggi di programmazione nascono per svariati motivi tutti rivolti a coprire specifiche esigenze e/o mancanze/inefficienze esistenti.
Pluralità di linguaggi significa dunque maggiore copertura e maggiore sicurezza per i professionisti IT.
Negli ultimi tempi la somiglianza tra Java, C# e C++ è andata aumentando. Come sempre ci sono i puristi delusi dalla Sun (che pensa giustamente a fare $oldi cercando di portare sulla propria barca anche i #isti. Fa bene, ma non so se questo avverrà su grande scala) e i pragmatici che vantano una certa capacità di switching tra le varie tecnologie.
La verità non è mai nel mezzo e di fatti anche in questo caso bisogna scendere un pò in "cantina", per vedere il problema più da vicino.
Punto primo. Limitandoci ai soli linguaggi citati, pare che Java e C# tendano a C++. E' singolare per Java che è nato come antagonista di C++ ("eliminando tutta quella roba inutile", quante volte ho sentito questo insulso commento) ora si trovi addirittura ad introdurre i Generics (certo con tutti i distinguo del caso. Ad ogni modo i Generics hanno una loro legittimità e utilità)
Punto secondo. Se da un lato la somiglianza e dunque l'interascambio di developers tra i vari linguaggi produce sinergia (parola che inebria qualsiasi manager...) non capisco perché allora inventarne o - ancora peggio - impararne tanti.
Punto terzo. Dov'è lo specifico di ogni linguaggio se tutti tendono prima o poi a unificarsi a certi standard? E' nel marketing, parafrasando McLuhan dico: il marketing è il linguaggio (!!!)
Punto quarto. Si ha come il sospetto che la Sun abbia operato in questo modo: Java è senz'altro un buon linguaggio, ben accessibile ai più, con un sacco di buone cosucce che messe insieme fanno un prodotto vendibile. Boom! In pochi anni la Sun è diventata una delle major sul mercato (vendevano hardware. Ora stravendono...non vi dice nulla tutto questo con la strategia dell'Open Source?) con una larga fidelity tra gli adepti e una schiera di evangelist (questa degli evangelist è una cosa che mi fa ridere di brutto) che seguitano a fare il loro bravo predicozzo. Tié! becchiamoci i generics, i foreach, i varargs,...e tante altre cose che NON sono "inutile roba" anzi necessaria per una buona copertura di business (e che non potevano darci - loro, gli evangelist - con la bottiglina perché altrimenti -secondo loro- avremmo avuto un rigetto. Tradotto: avrebbero rischiato un clamoroso fiasco).
Non so se è stata una lungimirante strategia o semplice fiuto di mercato, di fatti ora il linguaggio inizia a diventare più serio e complesso (al di là della complessità intrinseca del paradigma ad oggetti) e fatto salvo alcune eccezioni, le reazioni si sono limitate a innocui e scontati mugugni.
P.S
Scontatissimo il mio rifiuto a dare contributi (?) nelle inutili e infeconde discussioni che ruotano intorno al già eterno quesito: "meglio Java o C#" et similia.
Pluralità di linguaggi significa dunque maggiore copertura e maggiore sicurezza per i professionisti IT.
Negli ultimi tempi la somiglianza tra Java, C# e C++ è andata aumentando. Come sempre ci sono i puristi delusi dalla Sun (che pensa giustamente a fare $oldi cercando di portare sulla propria barca anche i #isti. Fa bene, ma non so se questo avverrà su grande scala) e i pragmatici che vantano una certa capacità di switching tra le varie tecnologie.
La verità non è mai nel mezzo e di fatti anche in questo caso bisogna scendere un pò in "cantina", per vedere il problema più da vicino.
Punto primo. Limitandoci ai soli linguaggi citati, pare che Java e C# tendano a C++. E' singolare per Java che è nato come antagonista di C++ ("eliminando tutta quella roba inutile", quante volte ho sentito questo insulso commento) ora si trovi addirittura ad introdurre i Generics (certo con tutti i distinguo del caso. Ad ogni modo i Generics hanno una loro legittimità e utilità)
Punto secondo. Se da un lato la somiglianza e dunque l'interascambio di developers tra i vari linguaggi produce sinergia (parola che inebria qualsiasi manager...) non capisco perché allora inventarne o - ancora peggio - impararne tanti.
Punto terzo. Dov'è lo specifico di ogni linguaggio se tutti tendono prima o poi a unificarsi a certi standard? E' nel marketing, parafrasando McLuhan dico: il marketing è il linguaggio (!!!)
Punto quarto. Si ha come il sospetto che la Sun abbia operato in questo modo: Java è senz'altro un buon linguaggio, ben accessibile ai più, con un sacco di buone cosucce che messe insieme fanno un prodotto vendibile. Boom! In pochi anni la Sun è diventata una delle major sul mercato (vendevano hardware. Ora stravendono...non vi dice nulla tutto questo con la strategia dell'Open Source?) con una larga fidelity tra gli adepti e una schiera di evangelist (questa degli evangelist è una cosa che mi fa ridere di brutto) che seguitano a fare il loro bravo predicozzo. Tié! becchiamoci i generics, i foreach, i varargs,...e tante altre cose che NON sono "inutile roba" anzi necessaria per una buona copertura di business (e che non potevano darci - loro, gli evangelist - con la bottiglina perché altrimenti -secondo loro- avremmo avuto un rigetto. Tradotto: avrebbero rischiato un clamoroso fiasco).
Non so se è stata una lungimirante strategia o semplice fiuto di mercato, di fatti ora il linguaggio inizia a diventare più serio e complesso (al di là della complessità intrinseca del paradigma ad oggetti) e fatto salvo alcune eccezioni, le reazioni si sono limitate a innocui e scontati mugugni.
P.S
Scontatissimo il mio rifiuto a dare contributi (?) nelle inutili e infeconde discussioni che ruotano intorno al già eterno quesito: "meglio Java o C#" et similia.
Labels: IT
Comments:
<< Home
Ciao intervengo al post dicendo la mia a riguardo.Premetto che nonostante conosca diversi linguaggi di programmazione e scripting ho deciso focalizzare la mia "attenzione lavorativa" solo su uno di questi... Java per l'appunto.
Al punto primo rispondo a coloro che parlano di puntatori,template etc. come "roba inutile".Lo è solo perchè la Sun ha pensato che evitando certe procedure vi avrebbe facilitato la vita, nonchè un bel pò di fastidi in termini di gestione della memoria di cui ogni programmatore Java sembra fregarsene (e grazie al Gc lo fa).Tuttavia la Sun ammette problemi di performance "abbastanza seri" in certi settori dove il C++ eccelle (vedi funzionalità 3d (java3d nel caso di Java)).
Al punto secondo e terzo non posso fare altro che condividere le parole di Michele. Infine sul discorso dell'Open Source come movimento non posso fare altro che condividerlo e stimarlo,tuttavia vi sembra possibile che un'azienda come la Sun quotata in borsa possa andare avanti con la realizzazione di software Open Source? Magari mette le fondamenta del suo business sull'open source (un pò come ha fatto con il sistema *nix like Solaris e il pacchetto Office Business StartOffice).Niente da dire invece sulle componentistiche hardware/server che sviluppano. Dopotutto la Sun è stata in grado di sviluppare un linguaggio quale è Java che guarda caso sulle macchine Sun va particolarmente bene :-) e guarda caso se un colosso come Microsoft non mettesse il naso per appropiarsene.
ciao
Post a Comment
Al punto primo rispondo a coloro che parlano di puntatori,template etc. come "roba inutile".Lo è solo perchè la Sun ha pensato che evitando certe procedure vi avrebbe facilitato la vita, nonchè un bel pò di fastidi in termini di gestione della memoria di cui ogni programmatore Java sembra fregarsene (e grazie al Gc lo fa).Tuttavia la Sun ammette problemi di performance "abbastanza seri" in certi settori dove il C++ eccelle (vedi funzionalità 3d (java3d nel caso di Java)).
Al punto secondo e terzo non posso fare altro che condividere le parole di Michele. Infine sul discorso dell'Open Source come movimento non posso fare altro che condividerlo e stimarlo,tuttavia vi sembra possibile che un'azienda come la Sun quotata in borsa possa andare avanti con la realizzazione di software Open Source? Magari mette le fondamenta del suo business sull'open source (un pò come ha fatto con il sistema *nix like Solaris e il pacchetto Office Business StartOffice).Niente da dire invece sulle componentistiche hardware/server che sviluppano. Dopotutto la Sun è stata in grado di sviluppare un linguaggio quale è Java che guarda caso sulle macchine Sun va particolarmente bene :-) e guarda caso se un colosso come Microsoft non mettesse il naso per appropiarsene.
ciao
<< Home

