PHP
echo "1";
sleep(5);
echo "2";
JS
console.log("1");
setTimeout(function(){
console.log("2");
}, 5000);
console.log("3");
Event Loop
https://youtu.be/8aGhZQkoFbQ
Requerimientos Windows:
Consejos S.O. NO Windows:
Versiones
Framework simplista
Servidor web
Middlewares imperativos
"Evitar GZIP"
Pagina oficial confiable
http://expressjs.com/
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World!');
});
var server = app.listen(3000, function () {
var host = server.address().address;
var port = server.address().port;
console.log('Example app listening at http://%s:%s', host, port);
});
Mongoose
Inicializar
TokuMX
var mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/test');
var Cat = mongoose.model('Cat', { name: String });
var kitty = new Cat({ name: 'Zildjian' }); kitty.save(function (err) {
if (err) // ...
console.log('meow');
});
Gulp *
Grunt
Webpack
FULL AJAX SPA
Google Feedback
6 meses, 3 devs, 17k lineas de codigo
egghead.io
ng-book
john papa styleguide
var fs = require("fs");
fs.readFile("name", "utf8", function(err, data) {
});
var fs = Promise.promisifyAll(require("fs"));
fs.readFileAsync("name", "utf8").then(function(data) {
});
//Promise.method()
POO
Tipos
Import / Export
Futurefill
ng-inx
bower
lodash
código agnóstico
protractor + karma + jasmine
yeoman: gulp-angular && meanjs