Dio Porco
Ad
hhttps://bestemmietraamicidioporco
Perché non bestemmiare tra amici? È una cosa divertente!
Scritto da:
> ma il troll di mezzanotte non sarà quel bottaro del pisano che sta sperimentando il suo bot insultante su node.js
Sono quasi sicuro che sia lui
> ma il troll di mezzanotte non sarà quel bottaro del pisano che sta sperimentando il suo bot insultante su node.js

Sono quasi sicuro che sia lui
Young professional woman and busy mom.
Scritto da: altg
> > > > C'e` una cosa che non capisco su come funzionano i moduli e la funzione "require". Ho letto qui
e recepito gli argomenti trattati, pero` da quel che ho capito i moduli vivono in ambienti separati, comunicando tramite le esportazioni nell'oggetto module.exports. Invece - forse e` una particolarita` di quello "principale" che viene dato in pasto a node.exe - se nel modulo principale creo un oggetto con require, sul tipo di fs = require ('fs'), poi includo un modulo mio (non-core), quell'oggetto fs mi risulta disponibile anche nel mio modulo, cioe` non mi da` errore se nel mio modulo uso fs senza il corrispondente require.
> > > >
> > > > E` normale?
> > > > Succede solo con gli oggetti del modulo principale o con quelli di tutti i moduli?
> > >
> > > Non mi risulta:
> > >
> > >
> >
> > Mumble... neanche a me risulta, ora.
> >
> >

> >
> > Sono perplemuto, ricontrollero` ma avrei giurato che i modulini richiesti dal modulo principale girassero anche se avevo dimenticato il require dei moduli che gli servivano.
>
> Ok, ho risolto: l'esempio dell'httpServer da cui ero partito dichiarava le variabili senza "var", e quindi - come nel js client-side - come globali, da cui la loro disponibilita` dappertutto in riferimenti molteplici e incasinati.
>
> Insomma non avevo messo "var" davanti, pensando che comunque lo scope globale del modulo fosse limitato al modulo, invece lo scope globale e` proprio diffuso a tutta l'applicazione.
>
> E vabbe' devo imparare.
passa in chatte
> > > > C'e` una cosa che non capisco su come funzionano i moduli e la funzione "require". Ho letto qui
e recepito gli argomenti trattati, pero` da quel che ho capito i moduli vivono in ambienti separati, comunicando tramite le esportazioni nell'oggetto module.exports. Invece - forse e` una particolarita` di quello "principale" che viene dato in pasto a node.exe - se nel modulo principale creo un oggetto con require, sul tipo di fs = require ('fs'), poi includo un modulo mio (non-core), quell'oggetto fs mi risulta disponibile anche nel mio modulo, cioe` non mi da` errore se nel mio modulo uso fs senza il corrispondente require.> > > >
> > > > E` normale?

> > > > Succede solo con gli oggetti del modulo principale o con quelli di tutti i moduli?

> > >
> > > Non mi risulta:
> > >
> > > // mod1.js
> > > var fs = require('fs');
> > >
> > > require('./mod2').fun()
> > >
> > > // mod2.js
> > > exports.fun = function() {
> > > console.log(fs);
> > > }
> > > > > >
> > > » node mod1.js > > > > > > /home/suoranciata/mod2.js:2 > > > console.log(fs); > > > ^ > > > ReferenceError: fs is not defined > > > at Object.exports.fun (/home/suoranciata/mod2.js:2:15) > > > at Object.<anonymous> (/home/suoranciata/mod1.js:3:19) > > > at Module._compile (module.js:456:26) > > > at Object.Module._extensions..js (module.js:474:10) > > > at Module.load (module.js:356:32) > > > at Function.Module._load (module.js:312:12) > > > at Function.Module.runMain (module.js:497:10) > > > at startup (node.js:119:16) > > > at node.js:901:3 > > >
> >
> > Mumble... neanche a me risulta, ora.

> >
> >

> >
> > Sono perplemuto, ricontrollero` ma avrei giurato che i modulini richiesti dal modulo principale girassero anche se avevo dimenticato il require dei moduli che gli servivano.

>
> Ok, ho risolto: l'esempio dell'httpServer da cui ero partito dichiarava le variabili senza "var", e quindi - come nel js client-side - come globali, da cui la loro disponibilita` dappertutto in riferimenti molteplici e incasinati.

>
> Insomma non avevo messo "var" davanti, pensando che comunque lo scope globale del modulo fosse limitato al modulo, invece lo scope globale e` proprio diffuso a tutta l'applicazione.

>
> E vabbe' devo imparare.

passa in chatte
Young professional woman and busy mom.
Scritto da: altg
> C'e` una cosa che non capisco su come funzionano i moduli e la funzione "require". Ho letto qui
e recepito gli argomenti trattati, pero` da quel che ho capito i moduli vivono in ambienti separati, comunicando tramite le esportazioni nell'oggetto module.exports. Invece - forse e` una particolarita` di quello "principale" che viene dato in pasto a node.exe - se nel modulo principale creo un oggetto con require, sul tipo di fs = require ('fs'), poi includo un modulo mio (non-core), quell'oggetto fs mi risulta disponibile anche nel mio modulo, cioe` non mi da` errore se nel mio modulo uso fs senza il corrispondente require.
>
> E` normale?
> Succede solo con gli oggetti del modulo principale o con quelli di tutti i moduli?
Non mi risulta:
**Modificato dall'autore il 12.04.2013 20:02**
> C'e` una cosa che non capisco su come funzionano i moduli e la funzione "require". Ho letto qui
e recepito gli argomenti trattati, pero` da quel che ho capito i moduli vivono in ambienti separati, comunicando tramite le esportazioni nell'oggetto module.exports. Invece - forse e` una particolarita` di quello "principale" che viene dato in pasto a node.exe - se nel modulo principale creo un oggetto con require, sul tipo di fs = require ('fs'), poi includo un modulo mio (non-core), quell'oggetto fs mi risulta disponibile anche nel mio modulo, cioe` non mi da` errore se nel mio modulo uso fs senza il corrispondente require.>
> E` normale?

> Succede solo con gli oggetti del modulo principale o con quelli di tutti i moduli?

Non mi risulta:
// mod1.js
var fs = require('fs');
require('./mod2').fun()
// mod2.js
exports.fun = function() {
console.log(fs);
}
» node mod1.js
/home/suoranciata/mod2.js:2
console.log(fs);
^
ReferenceError: fs is not defined
at Object.exports.fun (/home/suoranciata/mod2.js:2:15)
at Object.<anonymous> (/home/suoranciata/mod1.js:3:19)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:901:3
**Modificato dall'autore il 12.04.2013 20:02**
Young professional woman and busy mom.
AH SI ma NO Non lo so
Ad
http://sallo.it
LO SAI? Allora NON fa per te. NON LO SAI? Allora non ti serve.
Scritto da: altg
> mi servirebbe un incentivo piuttosto forte per buttarmi su Linux e derivati.
Non so te, ma a me questo argomento
è stato quello che mi ha convinto.
> mi servirebbe un incentivo piuttosto forte per buttarmi su Linux e derivati.
Non so te, ma a me questo argomento
è stato quello che mi ha convinto.
Young professional woman and busy mom.
Scritto da: Seu
> Scritto da: Troll della mezzanotte
> >

> >
> > e qualcuno mi aveva consigliato voi pezzi di stronzi
>
> Il buon vecchio SPAM
> Chissá che fine ha fatto, l'ultima volta che l'ho sentito doveva andare in libano a piazzare "un carico di carciofi"
Ci piace ricordarlo così
> Scritto da: Troll della mezzanotte
> >

> >
> > e qualcuno mi aveva consigliato voi pezzi di stronzi
>
> Il buon vecchio SPAM

> Chissá che fine ha fatto, l'ultima volta che l'ho sentito doveva andare in libano a piazzare "un carico di carciofi"

Ci piace ricordarlo così
Young professional woman and busy mom.
Scritto da: altg
> > > > > Cos'e` open(2)??
> > > >
> > > > man 2 open (e qua *nix >>>> win)
> > >
> > > Parlare criptico per riferimenti multipli a cose "scontate" aiuta molto a rendere la documentazione accessibile.
> > >
> > > > > Qual'e` il valore di ritorno di fs.openSync?
> > > >
> > > > fs.open
vuole una callback (err, fd), ergo fs.openSync torna il file descriptor.
> > > > Quando la callback prende più parametri (es. vedi sopra readSync) viene specificato cosa ritorna.
> > > >
> > > > > Se non ritorna un descrittore di file perche` il file non esiste o per altre cause d'errore, COSA RITORNA? Mystero.
> > > >
> > > > Lancia una eccezione, try-catcha.
> > >
> > > Avevo provato: s'era piantato node.exe in un loop che ha consumato tutta la memoria. Vabbe'... comunque passo all'uso della funzione asincrona anche in quel punto.
> > >
> > > > > > non dirmi che ti serve sapere il tipo di offset, length e position, vero?), e quali argomenti di callback devi aspettarti quando usi funzioni asincrone.
> > > > >
> > > > > No, quello non mi serve, ma per esempio poco piu` sotto:
> > > > >
> > > > >
> > > > >
> > > > > Options che cos'e`? Un oggetto che racchiude una proprieta` encoding e una proprieta` flag? Nei pochi esempi, alla fine quel che conta e` metterci una stringa per l'encoding, ad esempio 'ascii', al posto di "options". Metterci un oggetto vero e proprio da` un errore, es. { encoding: 'ascii' }.
> > > >
> > > > Options è un array associativo, facoltativo perché fra parentesi quadre.
> > > > A me questo codice funziona:
> > > >
> > >
> > > A me no, dice che vuole una stringa.
> > > Saranno disguidi nel porting.
> >
> > che versione hai?
> > La stringa è un retaggio delle prime versioni dell'api, e a me funzionano entrambe.
> > Sono su node 0.10.3.
>
> Uguale. 0.10.3.
> Ma qui funziona solo la stringa.
> Secondo me nel port per windoze c'e` un po' di casino.
>
> Comunque, visto che devono essere problemi della sola versione per windoze, ritiro il vaffanculo e lo downgrado a un vaffannel diversamente fronte.
>
> Mah, comunque ho ripreso a lavorarci. E` anche colpa mia. In questi giorni sono piu` nervoso del solito. Poi mi passa. Sara` la primavera.
Ma il mac ce l'hai ancora? Molti devel che usano/sviluppano nodejs sono macachi, il supporto è ottimo.
> > > > > Cos'e` open(2)??

> > > >
> > > > man 2 open (e qua *nix >>>> win)
> > >
> > > Parlare criptico per riferimenti multipli a cose "scontate" aiuta molto a rendere la documentazione accessibile.

> > >
> > > > > Qual'e` il valore di ritorno di fs.openSync?

> > > >
> > > > fs.open
vuole una callback (err, fd), ergo fs.openSync torna il file descriptor.> > > > Quando la callback prende più parametri (es. vedi sopra readSync) viene specificato cosa ritorna.
> > > >
> > > > > Se non ritorna un descrittore di file perche` il file non esiste o per altre cause d'errore, COSA RITORNA? Mystero.

> > > >
> > > > Lancia una eccezione, try-catcha.
> > >
> > > Avevo provato: s'era piantato node.exe in un loop che ha consumato tutta la memoria. Vabbe'... comunque passo all'uso della funzione asincrona anche in quel punto.
> > >
> > > > > > non dirmi che ti serve sapere il tipo di offset, length e position, vero?), e quali argomenti di callback devi aspettarti quando usi funzioni asincrone.
> > > > >
> > > > > No, quello non mi serve, ma per esempio poco piu` sotto:
> > > > >
> > > > >
fs.readFile(filename, [options], callback)# > > > > > filename String > > > > > options Object > > > > > encoding String | Null default = null > > > > > flag String default = 'r' > > > > > callback Function
> > > > >
> > > > > Options che cos'e`? Un oggetto che racchiude una proprieta` encoding e una proprieta` flag? Nei pochi esempi, alla fine quel che conta e` metterci una stringa per l'encoding, ad esempio 'ascii', al posto di "options". Metterci un oggetto vero e proprio da` un errore, es. { encoding: 'ascii' }.
> > > >
> > > > Options è un array associativo, facoltativo perché fra parentesi quadre.
> > > > A me questo codice funziona:
> > > >
> > > > var fs = require('fs');
> > > > fs.readFile('/etc/fstab', {encoding:'utf8',flag:'r'}, function(err, data) {
> > > > if (err)
> > > > console.log(err);
> > > > else
> > > > console.log(data)
> > > > })
> > > > > > >
> > > A me no, dice che vuole una stringa.
> > > Saranno disguidi nel porting.
> >
> > che versione hai?
> > La stringa è un retaggio delle prime versioni dell'api, e a me funzionano entrambe.
> > Sono su node 0.10.3.
>
> Uguale. 0.10.3.

> Ma qui funziona solo la stringa.
> Secondo me nel port per windoze c'e` un po' di casino.
>
> Comunque, visto che devono essere problemi della sola versione per windoze, ritiro il vaffanculo e lo downgrado a un vaffannel diversamente fronte.

>
> Mah, comunque ho ripreso a lavorarci. E` anche colpa mia. In questi giorni sono piu` nervoso del solito. Poi mi passa. Sara` la primavera.

Ma il mac ce l'hai ancora? Molti devel che usano/sviluppano nodejs sono macachi, il supporto è ottimo.
Young professional woman and busy mom.
Scritto da: Troll della mezzanotte
>

>
> e qualcuno mi aveva consigliato voi pezzi di stronzi
Che risoluzione piccola.
>

>
> e qualcuno mi aveva consigliato voi pezzi di stronzi
Che risoluzione piccola.
Young professional woman and busy mom.
Scritto da: altg
> > > Cos'e` open(2)??
> >
> > man 2 open (e qua *nix >>>> win)
>
> Parlare criptico per riferimenti multipli a cose "scontate" aiuta molto a rendere la documentazione accessibile.
>
> > > Qual'e` il valore di ritorno di fs.openSync?
> >
> > fs.open
vuole una callback (err, fd), ergo fs.openSync torna il file descriptor.
> > Quando la callback prende più parametri (es. vedi sopra readSync) viene specificato cosa ritorna.
> >
> > > Se non ritorna un descrittore di file perche` il file non esiste o per altre cause d'errore, COSA RITORNA? Mystero.
> >
> > Lancia una eccezione, try-catcha.
>
> Avevo provato: s'era piantato node.exe in un loop che ha consumato tutta la memoria. Vabbe'... comunque passo all'uso della funzione asincrona anche in quel punto.
>
> > > > non dirmi che ti serve sapere il tipo di offset, length e position, vero?), e quali argomenti di callback devi aspettarti quando usi funzioni asincrone.
> > >
> > > No, quello non mi serve, ma per esempio poco piu` sotto:
> > >
> > >
> > >
> > > Options che cos'e`? Un oggetto che racchiude una proprieta` encoding e una proprieta` flag? Nei pochi esempi, alla fine quel che conta e` metterci una stringa per l'encoding, ad esempio 'ascii', al posto di "options". Metterci un oggetto vero e proprio da` un errore, es. { encoding: 'ascii' }.
> >
> > Options è un array associativo, facoltativo perché fra parentesi quadre.
> > A me questo codice funziona:
> >
>
> A me no, dice che vuole una stringa.
> Saranno disguidi nel porting.
che versione hai?
La stringa è un retaggio delle prime versioni dell'api, e a me funzionano entrambe.
Sono su node 0.10.3.
> > > Cos'e` open(2)??

> >
> > man 2 open (e qua *nix >>>> win)
>
> Parlare criptico per riferimenti multipli a cose "scontate" aiuta molto a rendere la documentazione accessibile.

>
> > > Qual'e` il valore di ritorno di fs.openSync?

> >
> > fs.open
vuole una callback (err, fd), ergo fs.openSync torna il file descriptor.> > Quando la callback prende più parametri (es. vedi sopra readSync) viene specificato cosa ritorna.
> >
> > > Se non ritorna un descrittore di file perche` il file non esiste o per altre cause d'errore, COSA RITORNA? Mystero.

> >
> > Lancia una eccezione, try-catcha.
>
> Avevo provato: s'era piantato node.exe in un loop che ha consumato tutta la memoria. Vabbe'... comunque passo all'uso della funzione asincrona anche in quel punto.
>
> > > > non dirmi che ti serve sapere il tipo di offset, length e position, vero?), e quali argomenti di callback devi aspettarti quando usi funzioni asincrone.
> > >
> > > No, quello non mi serve, ma per esempio poco piu` sotto:
> > >
> > >
fs.readFile(filename, [options], callback)# > > > filename String > > > options Object > > > encoding String | Null default = null > > > flag String default = 'r' > > > callback Function
> > >
> > > Options che cos'e`? Un oggetto che racchiude una proprieta` encoding e una proprieta` flag? Nei pochi esempi, alla fine quel che conta e` metterci una stringa per l'encoding, ad esempio 'ascii', al posto di "options". Metterci un oggetto vero e proprio da` un errore, es. { encoding: 'ascii' }.
> >
> > Options è un array associativo, facoltativo perché fra parentesi quadre.
> > A me questo codice funziona:
> >
> > var fs = require('fs');
> > fs.readFile('/etc/fstab', {encoding:'utf8',flag:'r'}, function(err, data) {
> > if (err)
> > console.log(err);
> > else
> > console.log(data)
> > })
> > >
> A me no, dice che vuole una stringa.
> Saranno disguidi nel porting.
che versione hai?
La stringa è un retaggio delle prime versioni dell'api, e a me funzionano entrambe.
Sono su node 0.10.3.
Young professional woman and busy mom.
Scritto da: altg
> > > Node.js e` molto immaturo ma windows non e` adatto per programmare se non si vogliono usare gli strumenti di sviluppo di microsoft. Installa linux o usa asp.net, una delle due.
> >
> > Qvoto in parte, node è abbastanza maturo su unix, è usato in molti sistemi di produzione ormai e siamo prossimi alla versione 1 (che implica, secondo il semver, il congelamento delle api, si stanno riservando ancora qualche piccola cleanup).
> > Il problema è node per windows, che cerca di emulare cose che non esistono a livello di api su windows; il porting è arrivato a sviluppo molto avanzato, quando è stato fatto lo switch da libev a libuv; una parte delle api è costruita intorno alle classiche api unix.
>
> L'abilita` nell'emulazione e` proprio il far credere al buco quadrato di essere in realta` un buco rotondo.
>
> > La documentazione io la trovo buona, nell'esempio di alex,js fs.readSync(fd, buffer, offset, length, position)
rimanda a fs.read(fd, buffer, offset, length, position, callback)
, che spiega il significato di ogni parametro (l'unica cosa implicita è che buffer è di tipo Buffer, ma se parli di node potresti immaginarlo;
>
> Si`, e fs.openSync rimanda a "Synchronous open(2)".
>
> http://nodejs.org/api/fs.html#fs_fs_opensync_path_...
>
> Come anche fs.open, la versione asincrona.
>
> Asynchronous file open. See open(2).
>
> Cos'e` open(2)??
man 2 open (e qua *nix >>>> win)
> Qual'e` il valore di ritorno di fs.openSync?
fs.open
vuole una callback (err, fd), ergo fs.openSync torna il file descriptor.
Quando la callback prende più parametri (es. vedi sopra readSync) viene specificato cosa ritorna.
> Se non ritorna un descrittore di file perche` il file non esiste o per altre cause d'errore, COSA RITORNA? Mystero.
Lancia una eccezione, try-catcha.
> > non dirmi che ti serve sapere il tipo di offset, length e position, vero?), e quali argomenti di callback devi aspettarti quando usi funzioni asincrone.
>
> No, quello non mi serve, ma per esempio poco piu` sotto:
>
>
>
> Options che cos'e`? Un oggetto che racchiude una proprieta` encoding e una proprieta` flag? Nei pochi esempi, alla fine quel che conta e` metterci una stringa per l'encoding, ad esempio 'ascii', al posto di "options". Metterci un oggetto vero e proprio da` un errore, es. { encoding: 'ascii' }.
Options è un array associativo, facoltativo perché fra parentesi quadre.
A me questo codice funziona:
> Quanto meno e` poco chiaro, molto poco chiaro.
>
> > Io lo valuto molto positivamente, abbinato a tanti piccoli tools per nodejs (il numero di librerie ormai fa quasi concorrenza a cpan) è lo strumento adatto a scrivere e prototipare rapidamente webappe.
> > I difetti sono: velocità del runtime per task cpu-intensive (nelle webapp si traduce nella velocità di rendering di pagine dinamiche), utilizzo della memoria e la facilità con cui ci si confonde quando si annidano molto le callback (cosa che comunque si può evitare usando gli EventEmitter oppure librerie tipo async).
> >
> > p.s. @alex Usare le funzioni *Sync è il modo sbagliato di usare node (blocchi l'event loop).
>
> Quella era la prima sincrona che usavo in assoluto. Posso farlo con l'asincrona (che fra l'altro funziona), ma l'errore mi ha disgustato.
> > > Node.js e` molto immaturo ma windows non e` adatto per programmare se non si vogliono usare gli strumenti di sviluppo di microsoft. Installa linux o usa asp.net, una delle due.
> >
> > Qvoto in parte, node è abbastanza maturo su unix, è usato in molti sistemi di produzione ormai e siamo prossimi alla versione 1 (che implica, secondo il semver, il congelamento delle api, si stanno riservando ancora qualche piccola cleanup).
> > Il problema è node per windows, che cerca di emulare cose che non esistono a livello di api su windows; il porting è arrivato a sviluppo molto avanzato, quando è stato fatto lo switch da libev a libuv; una parte delle api è costruita intorno alle classiche api unix.
>
> L'abilita` nell'emulazione e` proprio il far credere al buco quadrato di essere in realta` un buco rotondo.

>
> > La documentazione io la trovo buona, nell'esempio di alex,js fs.readSync(fd, buffer, offset, length, position)
rimanda a fs.read(fd, buffer, offset, length, position, callback)
, che spiega il significato di ogni parametro (l'unica cosa implicita è che buffer è di tipo Buffer, ma se parli di node potresti immaginarlo;>
> Si`, e fs.openSync rimanda a "Synchronous open(2)".

>
> http://nodejs.org/api/fs.html#fs_fs_opensync_path_...

>
> Come anche fs.open, la versione asincrona.
>
> Asynchronous file open. See open(2).
>
> Cos'e` open(2)??

man 2 open (e qua *nix >>>> win)
> Qual'e` il valore di ritorno di fs.openSync?

fs.open
vuole una callback (err, fd), ergo fs.openSync torna il file descriptor.Quando la callback prende più parametri (es. vedi sopra readSync) viene specificato cosa ritorna.
> Se non ritorna un descrittore di file perche` il file non esiste o per altre cause d'errore, COSA RITORNA? Mystero.

Lancia una eccezione, try-catcha.
> > non dirmi che ti serve sapere il tipo di offset, length e position, vero?), e quali argomenti di callback devi aspettarti quando usi funzioni asincrone.
>
> No, quello non mi serve, ma per esempio poco piu` sotto:
>
>
fs.readFile(filename, [options], callback)# > filename String > options Object > encoding String | Null default = null > flag String default = 'r' > callback Function
>
> Options che cos'e`? Un oggetto che racchiude una proprieta` encoding e una proprieta` flag? Nei pochi esempi, alla fine quel che conta e` metterci una stringa per l'encoding, ad esempio 'ascii', al posto di "options". Metterci un oggetto vero e proprio da` un errore, es. { encoding: 'ascii' }.
Options è un array associativo, facoltativo perché fra parentesi quadre.
A me questo codice funziona:
var fs = require('fs');
fs.readFile('/etc/fstab', {encoding:'utf8',flag:'r'}, function(err, data) {
if (err)
console.log(err);
else
console.log(data)
})
> Quanto meno e` poco chiaro, molto poco chiaro.
>
> > Io lo valuto molto positivamente, abbinato a tanti piccoli tools per nodejs (il numero di librerie ormai fa quasi concorrenza a cpan) è lo strumento adatto a scrivere e prototipare rapidamente webappe.
> > I difetti sono: velocità del runtime per task cpu-intensive (nelle webapp si traduce nella velocità di rendering di pagine dinamiche), utilizzo della memoria e la facilità con cui ci si confonde quando si annidano molto le callback (cosa che comunque si può evitare usando gli EventEmitter oppure librerie tipo async).
> >
> > p.s. @alex Usare le funzioni *Sync è il modo sbagliato di usare node (blocchi l'event loop).
>
> Quella era la prima sincrona che usavo in assoluto. Posso farlo con l'asincrona (che fra l'altro funziona), ma l'errore mi ha disgustato.
Young professional woman and busy mom.
Scritto da: avvelentani
> Node.js e` molto immaturo ma windows non e` adatto per programmare se non si vogliono usare gli strumenti di sviluppo di microsoft. Installa linux o usa asp.net, una delle due.
Qvoto in parte, node è abbastanza maturo su unix, è usato in molti sistemi di produzione ormai e siamo prossimi alla versione 1 (che implica, secondo il semver, il congelamento delle api, si stanno riservando ancora qualche piccola cleanup).
Il problema è node per windows, che cerca di emulare cose che non esistono a livello di api su windows; il porting è arrivato a sviluppo molto avanzato, quando è stato fatto lo switch da libev a libuv; una parte delle api è costruita intorno alle classiche api unix.
La documentazione io la trovo buona, nell'esempio di alex,js fs.readSync(fd, buffer, offset, length, position)
rimanda a fs.read(fd, buffer, offset, length, position, callback)
, che spiega il significato di ogni parametro (l'unica cosa implicita è che buffer è di tipo Buffer, ma se parli di node potresti immaginarlo; non dirmi che ti serve sapere il tipo di offset, length e position, vero?), e quali argomenti di callback devi aspettarti quando usi funzioni asincrone.
Io lo valuto molto positivamente, abbinato a tanti piccoli tools per nodejs (il numero di librerie ormai fa quasi concorrenza a cpan) è lo strumento adatto a scrivere e prototipare rapidamente webappe.
I difetti sono: velocità del runtime per task cpu-intensive (nelle webapp si traduce nella velocità di rendering di pagine dinamiche), utilizzo della memoria e la facilità con cui ci si confonde quando si annidano molto le callback (cosa che comunque si può evitare usando gli EventEmitter oppure librerie tipo async).
p.s. @alex Usare le funzioni *Sync è il modo sbagliato di usare node (blocchi l'event loop).
**Modificato dall'autore il 11.04.2013 19:40**
> Node.js e` molto immaturo ma windows non e` adatto per programmare se non si vogliono usare gli strumenti di sviluppo di microsoft. Installa linux o usa asp.net, una delle due.
Qvoto in parte, node è abbastanza maturo su unix, è usato in molti sistemi di produzione ormai e siamo prossimi alla versione 1 (che implica, secondo il semver, il congelamento delle api, si stanno riservando ancora qualche piccola cleanup).
Il problema è node per windows, che cerca di emulare cose che non esistono a livello di api su windows; il porting è arrivato a sviluppo molto avanzato, quando è stato fatto lo switch da libev a libuv; una parte delle api è costruita intorno alle classiche api unix.
La documentazione io la trovo buona, nell'esempio di alex,js fs.readSync(fd, buffer, offset, length, position)
rimanda a fs.read(fd, buffer, offset, length, position, callback)
, che spiega il significato di ogni parametro (l'unica cosa implicita è che buffer è di tipo Buffer, ma se parli di node potresti immaginarlo; non dirmi che ti serve sapere il tipo di offset, length e position, vero?), e quali argomenti di callback devi aspettarti quando usi funzioni asincrone.Io lo valuto molto positivamente, abbinato a tanti piccoli tools per nodejs (il numero di librerie ormai fa quasi concorrenza a cpan) è lo strumento adatto a scrivere e prototipare rapidamente webappe.
I difetti sono: velocità del runtime per task cpu-intensive (nelle webapp si traduce nella velocità di rendering di pagine dinamiche), utilizzo della memoria e la facilità con cui ci si confonde quando si annidano molto le callback (cosa che comunque si può evitare usando gli EventEmitter oppure librerie tipo async).
p.s. @alex Usare le funzioni *Sync è il modo sbagliato di usare node (blocchi l'event loop).
**Modificato dall'autore il 11.04.2013 19:40**
Young professional woman and busy mom.
Arricchimento culturale in Svezia
Ad
https://www.breitbart.com/europe/2019/01/04/patient-placed-in-quarantine-after-suspected-ebola-case-in-sweden/
The Emergency Room of a Swedish hospital was closed down Friday morning after a patient recently returned from Africa arrived vomiting blood, a possible symptom of the deadly and contagious Ebola virus.
Scritto da:
> Pazienza, non vedrà la modella.
Hai finito coi backup? Hai portati in assistenza il porcatile rotto?
> Pazienza, non vedrà la modella.
Hai finito coi backup? Hai portati in assistenza il porcatile rotto?
Young professional woman and busy mom.
Scritto da:
> > > Perché il pulsante CERCA e la casella hanno un'ombra intorno e il menu a discesa no?
> >
> > È una eredità del precedente governo.
>
> Se Yoda è in chat chiamalo qua, deve vedere la skinny model.
non è in chat da…
> > > Perché il pulsante CERCA e la casella hanno un'ombra intorno e il menu a discesa no?
> >
> > È una eredità del precedente governo.
>
> Se Yoda è in chat chiamalo qua, deve vedere la skinny model.
non è in chat da…
00:05 (@suoranciata) !visto yoda__
00:05 (@sarrusofono) Utente yoda__: ultimo login: boh, ultimo logout: boh, ultimo messaggio:
2012-09-30 15:44:56
00:05 (@suoranciata) !visto yoda___
00:05 (@sarrusofono) Utente yoda___: ultimo login: 2013-04-01 16:49:11, ultimo logout: 2013-04-01
18:44:47, ultimo messaggio: 2013-04-01 17:18:00
00:05 (@suoranciata) !visto yoda____
00:05 (@sarrusofono) Utente yoda____: ultimo login: 2013-04-01 18:58:00, ultimo logout: 2013-04-02
08:50:53, ultimo messaggio: 2013-04-01 20:22:28
00:05 (@suoranciata) !visto yoda___1
00:05 (@sarrusofono) Utente yoda___1: ultimo login: 2013-03-15 23:42:24, ultimo logout: 2013-03-16
00:16:52, ultimo messaggio: 2013-03-09 17:04:31
Young professional woman and busy mom.
Scritto da:
> Perché il pulsante CERCA e la casella hanno un'ombra intorno e il menu a discesa no?
È una eredità del precedente governo.
> Perché il pulsante CERCA e la casella hanno un'ombra intorno e il menu a discesa no?
È una eredità del precedente governo.
Young professional woman and busy mom.
Scritto da: altg
> > Interessante!
> > Credo che reimplementero` Mary Lou in javascript!
> >
> >

>
> Ewwiwa!
> Le ho gia` insegnato a mostrare la sua iconcina.
> Notare il piccolo "ML" violetto nel tab di "localhost".
>
>

Prima di reinventare l'esercito delle dodici ruote, impara a usare npm
, il package manager incluso in nodejs; se cerchi idee di moduli e quant'altro ti consiglio questa
lista.
> > Interessante!
> > Credo che reimplementero` Mary Lou in javascript!

> >
> >

>
> Ewwiwa!
> Le ho gia` insegnato a mostrare la sua iconcina.

> Notare il piccolo "ML" violetto nel tab di "localhost".
>
>

Prima di reinventare l'esercito delle dodici ruote, impara a usare npm
, il package manager incluso in nodejs; se cerchi idee di moduli e quant'altro ti consiglio questa
lista.
Young professional woman and busy mom.
Quando sei parte di una minoranza in via d'estinzione
Ad
https://images2.imgbox.com/d3/da/AZxsgAEN_o.png
ma se vuoi difendere la tua etnia e le tue terre sei "razzista"
Scritto da:
> > > Credo che reimplementero` Mary Lou in javascript!
> > >
> > >

> >
> > Ewwiwa!
> > Le ho gia` insegnato a mostrare la sua iconcina.
> > Notare il piccolo "ML" violetto nel tab di "localhost".
> >
> >

>
> Dagli scrinsciotti non si capisce cuale softuer stai usando.
La grossa scritta ConTEXT dovrebbe aiutarti a individuare l'editor, il browser là dietro è chrome, nella finestra di cmd c'è nodejs al lavoro.
Infine dai bordi delle finestre sembra che alex,tg stia usando windows 8.
> > > Credo che reimplementero` Mary Lou in javascript!

> > >
> > >

> >
> > Ewwiwa!
> > Le ho gia` insegnato a mostrare la sua iconcina.

> > Notare il piccolo "ML" violetto nel tab di "localhost".
> >
> >

>
> Dagli scrinsciotti non si capisce cuale softuer stai usando.
La grossa scritta ConTEXT dovrebbe aiutarti a individuare l'editor, il browser là dietro è chrome, nella finestra di cmd c'è nodejs al lavoro.
Infine dai bordi delle finestre sembra che alex,tg stia usando windows 8.
Young professional woman and busy mom.
Scritto da: altg
> > > Interessante!
> > > Credo che reimplementero` Mary Lou in javascript!
> > >
> > >

> >
> > Era ora!
> > P.s.: coffee-script!
>
> Boh, a occhio mi sembra che dia un po' troppa importanza alla formattazione testuale del sorgente. Che fa, indenta come Python?
Più come ruby, il grosso vantaggio è che ha dei default molto buoni (es: is diventa ===), supporta gli splat (es: [1..10]) e ha una sintassi comoda per gestire il "this" ( -> vs =>).
Infine maschera il modello di ereditarietà prototipale di javascript con qualcosa molto simile all'object orientation di linguaggi più tradizionali.
> > > Interessante!
> > > Credo che reimplementero` Mary Lou in javascript!

> > >
> > >

> >
> > Era ora!

> > P.s.: coffee-script!
>
> Boh, a occhio mi sembra che dia un po' troppa importanza alla formattazione testuale del sorgente. Che fa, indenta come Python?

Più come ruby, il grosso vantaggio è che ha dei default molto buoni (es: is diventa ===), supporta gli splat (es: [1..10]) e ha una sintassi comoda per gestire il "this" ( -> vs =>).
Infine maschera il modello di ereditarietà prototipale di javascript con qualcosa molto simile all'object orientation di linguaggi più tradizionali.
Young professional woman and busy mom.
Scritto da: altg
> Interessante!
> Credo che reimplementero` Mary Lou in javascript!
>
>

Era ora!
P.s.: coffee-script!
> Interessante!
> Credo che reimplementero` Mary Lou in javascript!

>
>

Era ora!

P.s.: coffee-script!
Young professional woman and busy mom.