Alfonso Maruccia

TypeScript, JavaScript in salsa Microsoft

Redmond presenta un nuovo linguaggio di scripting pienamente compatibile con l'attuale standard del web. Una tecnologia open source pensata per facilitare la vita agli sviluppatori

Roma - L'alternativa a JavaScript targata Microsoft si chiama TypeScript (TS), risponde a criteri di retrocompatibilità ma è soprattutto pensata per facilitare il lavoro a sviluppatori di applet web HTML5 e app da mettere in vendita sullo store integrato in Windows 8.

A presentare al mondo TypeScript è Anders Hejlsberg, autore originale del linguaggio di programmazione Turbo Pascal e attuale "Technical Fellow" presso Microsoft: il nuovo linguaggio di scripting vorrebbe portare JavaScript al passo con le moderne esigenze del web, uno scenario piuttosto diverso rispetto al periodo in cui il linguaggio è stato formalizzato.

TypeScript introduce dunque tutti quei componenti che mancherebbero a JavaScript e che sono utili allo sviluppo di codice funzionale. Non stupisce poi la volontà di offrire ambienti e strumenti di sviluppo pensati per facilitare ulteriormente il lavoro ai programmatori.
Anche se introduce molte novità, TypeScript continua a essere compatibile con JavaScript e relative piattaforme di esecuzione: gli script TS contengono tutte le annotazioni necessarie affinché un browser (o altro client di esecuzione) compatibile con JavaScript "interpreti" il codice e lo traduca al volo in un listato JavaScript eseguibile senza complicazioni.

Alfonso Maruccia
66 Commenti alla Notizia TypeScript, JavaScript in salsa Microsoft
Ordina
  • Seee ma già explorer s'impicca con javascript .... figurati se passo a typescript
  • Dall' articolo:

    ...gli script TS contengono tutte le annotazioni necessarie affinché un browser (o altro client di esecuzione) compatibile con JavaScript "interpreti" il codice e lo traduca al volo in un listato JavaScript eseguibile senza complicazioni.

    Che cooooosa???
    Io un browser del genere non ce l' ho!
    Forse parli di una interprete on the fly che ogni utente dovrebbe scaricarsi ed installare?
    Se così fosse sarebbe drammatico.
    non+autenticato
  • Ah! Mi ero dimenticato di quel pezzo dell'articolo, e ora finalmente mi sono chiari tanti commenti che non capivo...Sorride forse si è sbagliato, ma è solo il mio modestissimo parere... Non nella parte della compatibilità col JavaScript che è giusta, infatti TypeScript a differenza per esempio di Dart non richiede altro che un classico motore JavaScript. La parte sbagliata sarebbe "on-the-fly", perché la compilazione da TypeScript a JavaScript avviene nell'IDE e non nel browser. Questo per il presente (l'articolista parla al presente), per il futuro nessuno può dire. Comunque, se una VM nativa (e non per esempio implementata in JavaScript come nel caso dell'interprete dei tag text/coffeescript) ci sarà, sono del parere come altri che non sarà per un incremento di prestazioni perché quella è una filosofia di Dart e non di TypeScript, ma per altri motivi che al momento mi sfuggono (per esempio il fatto che è standard?)
    non+autenticato
  • D'accordo, avviene nel compilatore che sta dietro le quinte dell'IDE... ci siamo capitiOcchiolino E certo, se non compilasse non si chiamerebbe compilatore
    non+autenticato
  • Hai ragione ho visto il sito, il comp produce dei .js.
    E' a tutti gli effetti uno script di virtualizzazione per fornire ereditarietà, polimorfismo etc. ma alla fine si parla pur sempre di distribuire dei file javascript(.ts -> .js).
    non+autenticato
  • In pratica si sono rifatti GWT in casa (più o meno)...
  • - Scritto da: Anonimo come una funzione anonima
    > Ah! Mi ero dimenticato di quel pezzo
    > dell'articolo, e ora finalmente mi sono chiari
    > tanti commenti che non capivo...Sorride
    Leggere prima di commentare, oggi hai imparato qualcosa di nuovoA bocca aperta
    non+autenticato
  • Ho scritto "dimenticato", non "perso". L'avevo letto ma non sapevo ancora del TypeScript per potermi accorgere che era (per me) errato. Più che consigliarti di leggere i miei commenti prima di commentarli, ti do un consiglio più utile, non venire qui a fare flame e niente commenti all'articolo... anzi, non sono io che te lo consiglioOcchiolino
    non+autenticato
  • E poi, ad aver letto ho letto e pure non poco, se consideriamo anche le notizie su altri siti. Sono tutto fuorché uno che commenta senza leggere sull'argomento. Ed è l'ennesima volta in mesi che dico: "mi ero dimenticato del perché non scrivevo più su PI, ora ricordo"...Sorride
    non+autenticato
  • - Scritto da: Anonimo come una funzione anonima
    > E poi, ad aver letto ho letto e pure non poco, se
    > consideriamo anche le notizie su altri siti. Sono
    > tutto fuorché uno che commenta senza leggere
    > sull'argomento. Ed è l'ennesima volta in mesi che
    > dico: "mi ero dimenticato del perché non scrivevo
    > più su PI, ora ricordo"...
    >Sorride
    ah ecco perchè: memoria bacataA bocca aperta
    non+autenticato
  • Bacata? Forse, però con un ottimo debuggerFicoso
    non+autenticato
  • contenuto non disponibile
  • Jquery framework is the answer.
    Elegante, conciso, potente, performante e market leader.
    non+autenticato
  • ma anche fondamentalmente inutile come tutti i javascript sul web
    non+autenticato
  • spiegati meglio...
    non+autenticato
  • - Scritto da: Alessandro
    > spiegati meglio...
    immagino si riferisca a tutti gli script aggiunti per fornire effeti speciali ASSOLUTAMENTE inutili
    non+autenticato
  • Scusa, non avevo inteso che per "...inutile come tutti i javascript sul web"
    stessi parlando di effetti tipo fadein/fadeout etc, che rappresentano circa il 2% del framework, e che comunque molti sviluppatori(se non tutti) non usano.
    non+autenticato
  • Quindi anche TypeScript è inutile, visto che alla fine produce del javascript.
    non+autenticato
  • Dire oggi che js è inutile per il web equivale a non capire il tipo di evoluzione che nel web sta avvenendo.
    Il tempo di Flash, Silverlight etc. è scaduto.
    non+autenticato
  • Disabilita javascript dal tuo browser e poi fatti un giro in rete, magari su Facebook, così ti puoi rendere conto della cazzata che hai detto trollone.
    non+autenticato
  • - Scritto da: Alessandro
    > Jquery framework is the answer.
    > Elegante, conciso, potente, performante e market
    > leader.

    Ma non c'entra con l'obiettivo di TypeScript.
    Inoltre TypeScript supporta JQuery.
    non+autenticato
  • Dimenticavo, mi sembra sicuramente meglio di CoffeeScript per chi lavora già in un team di sviluppatori JavaScript, che sarebbero restii al passaggio a CoffeeScript, più complicato per loro. Nonostante io sia un fan e utente linux, non sono integralista.Sorride
    non+autenticato
  • Non conosco ancora questo TypeScript, però ho programmato in CoffeeScript. Così, a occhio, la sintassi sembra meno espressiva e "potente" di CoffeeScript, ma la (apparentemente) migliore potenzialità di refactoring di TypeScript, controllo tipi (come dice il nome del linguaggio), e più in generale la buona integrazione con le funzionalità tipiche di un IDE, potrebbero compensare questo (apparente) difetto, o addirittura sovra-compensarlo. Imparare entrambi i linguaggi non guasta, e so che almeno CoffeeScript si impara facilmenteSorride
    non+autenticato
  • Sono tutto orecchie su cosa ne pensate voi altri del refactoring e del controllo tipi di TypeScript, e gli altri pregi decantati. Mi avete fatto venire qualche (altro) dubbio coi vostri commenti.
    non+autenticato
  • da quel che ho visto è un clone di Dart

    alla fine ha gli stessi problemi, cioè costringe ad essere più verbosi e meno flessibili

    bisogna capire che javascript è amato dai suoi sviluppatori proprio perchè poco formale e lascia molta libertà ( anche di fare porcate )

    ci sono linguaggi che aggiungono molto di più ai linguaggi che cercano di sostituire ( mi riferisco a Erlang, Go, Haskell ), eppure sono poco utilizzati

    senza contare che ci sono fior fiori di framework per javascript e ovviamente c'è il problema che l'interprete per questo linguaggio va implementato nei browser ( i quali già adesso consumano un botto di ram )

    c'è troppo lavoro e troppi investimenti su javascript, perchè qualcuno possa seriamente pensare di sostituirlo con qualcos'altro
    non+autenticato
  • Se ho ben capito le annotazioni di tipo sono opzionali, quindi questo darebbe meno costrizioni.
    Hai ragione, ci sono molti investimenti su JavaScript, volenti o nolenti (per me, nolenti... sono gusti). Proprio Microsoft (quindi fonte di parte) critica la filosofia di Dart di voler al contrario rompere con JavaScript. non conosco Dart e se tu dici che questo è un clone di Dart avrai le tue buone ragioni. Ma la filosofia (che è l'unica cosa che deduco di Dart da WikipediaSorride ) mi sembra meno radicale in TypeScript rispetto a Dart, e forse proprio il fatto di TypeScript di non aggiungere cose rivoluzionarie (nel 2012 forse era ora che il client-side scripting avesse un tooling negli IDE migliorato...), paradossalmente, potrebbe essere positivo.
    non+autenticato
  • notare che però la critica è venuta dal team javascript di ms "Some examples, like Dart, portend that JavaScript has fundamental flaws and to support these scenarios requires a 'clean break' from JavaScript in both syntax and runtime. We disagree with this point of view."

    mi chiedo cosa avrebbero da dire su typescript

    comunque se guardi un esempio di dart e uno di typescript, trovi moltissime somiglianze

    notare pure che "Dart is a class-based, single inheritance, object-oriented language with C-style syntax. It supports interfaces, abstract classes, reified generics, and optional typing. "

    al massimo typescript non aggiunge i generics?
    non+autenticato
  • Neanche i generics, perché si dice che una futura versione di TypeScript li aggiungeràSorride
    Hai centrato il punto: di TypeScript direbbero che non rompe con JavaScript riguardo alla sintassi, a differenza di Dart. E questo, scusa se ripeto, paradossalmente potrebbe essere un vantaggio su Dart, perché come hai detto ci sono molti investimenti in JavaScript (anche per formare gli sviluppatori, aggiungo io).
    non+autenticato
  • contenuto non disponibile
  • Non trovo notizia di una macchina virtuale TypeScript che un discorso come il tuo (che esclude la VM JavaScript) sottintenderebbe... Al contrario su Stack Overflow un perfetto sconosciuto dice che una VM non esiste e non esisterà. Sicuro quindi che non ti sei confuso con la macchina virtuale di Dart che viene citata nel 99% delle notizie odierne su TypeScript? In caso contrario chiedo venia.
    Certamente, comunque, una macchina virtuale a parte come quella di Dart (e che mi auguro anche in TypeScript come opzione futura) ha tra i vantaggi quelli prestazionali, e questo sembrerebbe uno svantaggio di TypeScript in teoria: in pratica invece, la cosa di sostituire la VM essendo abbastanza "radicale" potrebbe avere più svantaggi che vantaggi, lo dico però da inesperto di Dart
    non+autenticato
  • contenuto non disponibile
  • Sono d'accordissimo con te SE mi parli di dare in pasto al browser direttamente del codice TypeScript e non il codice JavaScript che viene sputato fuori dall'IDE nella compilazione del TypeScript suddetto. Mi spiego meglio, per esempio la mancanza nei browser odierni di una VM CoffeeScript fa sì che per usare il famoso tag SCRIPT type="text/coffeescript" noi dobbiamo includere nella pagina web un interprete CoffeeScript sotto forma di file JavaScript, alquanto lento rispetto a una ipotetica macchina virtuale CoffeeScript pre-installata in ogni browser ed è per questo che sono d'accordo. Mutatis mutandis, lo stesso vale per TypeScript. Ma CoffeeScript ha avuto una buona diffusione senza VM, quindi la diffusione di Visual Studio e altre cose potrebbero far sì che lo stesso accada per TypeScript. Staremo a vedere, di certo il fatto che sia Microsoft non piace a un fan di Linux quale sono, ma non lo boccio a priori...
    non+autenticato
  • Da come l'ho capita io hai ragione tu: scrivi codice in TypeScript e l'IDE genera JavaScript. Il browser esegue JavaScript. Ovvero una VM TypeScript non serve. Questo è un vantaggio non da poco perché non richiederebbe alcuna modifica ai browser.

    E, in questo modo, potrebbe anche essere adottato solo da un gruppo di programmatori (quindi non da tutti).
    non+autenticato
CONTINUA A LEGGERE I COMMENTI
Successiva
(pagina 1/2 - 9 discussioni)