C'è un modo per interpretare il ruolo di Javascript con qualsiasi altro linguaggio come C #? [chiuso]

5

C'è un modo per interpretare il ruolo di Javascript con qualsiasi altro linguaggio come C #? Un modo in cui mi viene in mente è, avendo installato Silverlight, utilizzando C # invece di Javascript per tutti gli script lato client (anche se C # non è un linguaggio di scripting). È possibile?

Non sto parlando di qualcosa come GWT (Java) o Script # (C #). Probabilmente la domanda può essere affermata come: "Con silverlight installato, posso fare tutto supportato da Javascript (come la manipolazione DOM ecc.) Con C #?" Spero sia più chiaro.

    
posta Gulshan 29.03.2011 - 11:03
fonte

7 risposte

11

Hai alcune opzioni per l'utilizzo di altre lingue al posto di Javascript:

  • Puoi usare qualsiasi linguaggio che puoi compilare in javascript (come coffeescript, Java via GWT, ecc.),
  • Puoi usare qualsiasi linguaggio che puoi interpretare usando un interprete javascript (molte lingue di template usano questa tecnica),
  • Potresti usare nativeclient per implementare la tua lingua (non sono sicuro del supporto per l'interazione DOM da parte di nativeclient, quindi non sono sicuro di quanto sia fattibile), ma in ogni caso il take-up sarà piccolo,
  • Potresti aggiungere il supporto per un'altra lingua in un browser e faticare con utenti prossimi a zero.

Solo le prime due tecniche sono davvero da considerare. Se detesti così tanto javascript, dai un'occhiata al coffeescript.

    
risposta data 29.03.2011 - 11:16
fonte
4

Un modo per farlo è compilare il codice in linguaggio <put language name here> in Javascript. Questo ha il vantaggio che il codice compilato può essere eseguito ovunque sia possibile eseguire Javascript.

Emscripten può essere usato per le lingue per le quali esiste un compilatore che produce codice bytecode LLVM (C e C ++ sono solo 2 di questi ).

Emscripten funziona generando codice JavaScript dai LLVM bytecodes.

    
risposta data 29.03.2011 - 12:10
fonte
1

Domanda interessante!

Un po 'di googlatura senza offesa:) trovato jsc , che ti permette di portare C # in javascript.

What is jsc?

jsc is a decompiler or a cross compiler if you will. It is not a source-code parser nor an IDE. It is a command line utility like any other compiler. jsc was originally an anagram for csharp to javascript.

Ho bisogno di fare un po 'di lavoro sul web e conosco molto poco javascript, quindi ci sto provando.

    
risposta data 29.03.2011 - 11:38
fonte
1

Se sei in Python, puoi utilizzare Pigiami .

Attualmente il nome del progetto è pyjs. Questa è la descrizione del progetto:

pyjs is a Rich Internet Application (RIA) Development Platform for both Web and Desktop. With pyjs you can write your JavaScript-powered web applications entirely in Python.

pyjs contains a Python-to-JavaScript compiler, an AJAX framework and a Widget Set API. pyjs started life as a Python port of Google Web Toolkit, the Java-to-JavaScript compiler.

La parte interessante per l'OP sarà il "compiler python-to-javascript".

    
risposta data 29.03.2011 - 12:39
fonte
1

Con Silverlight installato, il tuo client è codificato in C #, giusto?

Non è necessario la manipolazione del DOM se si utilizza Silverlight - Silverlight è un plug-in che funziona all'interno del browser (simile al flash) ed è un runtime separato. Puoi fare cose simili alle manipolazioni DOM (per esempio mostrare / nascondere campi, animazioni, ecc.) Ma tutto questo verrà ora fatto in XAML e C #, non con HTML e Javascript.

Spero che questo si chiarisca: un'applicazione Silverlight non ha bisogno di funzionalità Javascript.

    
risposta data 24.09.2012 - 09:46
fonte
0

A meno che tutti i principali browser non implementassero la lingua, o fosse stato fornito un plugin per tutti i principali browser e sei riuscito a convincere i tuoi utenti a installarlo, allora no, Javascript è l'unica opzione.

Ma davvero, cosa c'è di sbagliato in Javascript? Come linguaggio, è in realtà davvero bello e abbastanza potente. Il più grande "problema" con Javascript sono le diverse implementazioni del DOM su tutti i browser e l'introduzione di un'altra lingua non risolverà il problema.

    
risposta data 29.03.2011 - 11:12
fonte
0

GWT utilizza Java per generare codice JavaScript, quindi penso che qualcosa di simile sarebbe possibile con C #. Tuttavia, probabilmente non puoi semplicemente sostituire JavaScript sul lato client con un altro linguaggio (di scripting).

    
risposta data 29.03.2011 - 11:19
fonte

Leggi altre domande sui tag