35
JavaScript is all you need Артем Маркушев, Senior Webmaster / Frontend Developer

Артем Маркушев - JavaScript

  • Upload
    dataart

  • View
    150

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Артем Маркушев - JavaScript

JavaScriptis all you need

Артем Маркушев, Senior Webmaster / Frontend Developer

Page 2: Артем Маркушев - JavaScript

JS for Backend

Backend / NodeJS / Express vs Geddy

NodeJS

Page 3: Артем Маркушев - JavaScript

JS for Backend

Backend / NodeJS / Express vs Geddy

NodeJSconsole.log(‘Hello world!') $ node helloworld.js

Helloworld.js

Page 4: Артем Маркушев - JavaScript

JS for BackendBackend / NodeJS / Express vs Geddy

NodeJSExpress vs Geddy

Page 5: Артем Маркушев - JavaScript

JS for BackendBackend / NodeJS / Express vs Geddy

Express vs Geddy

Page 6: Артем Маркушев - JavaScript

Backend / NodeJS / Express vs Geddy

Express vs Geddy

$ npm install express$ npm install express-generator –g$ express myapp$ cd myapp && npm install$ node app.js

$ npm install -g geddy$ geddy gen app to_do$ cd to_do && geddy

Page 7: Артем Маркушев - JavaScript

Backend / NodeJS / Express vs Geddy

$ npm install express$ npm install express-generator –g$ express myapp$ cd myapp && npm install$ node app.js

$ npm install -g geddy$ geddy gen app to_do$ cd to_do && geddy

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().addressvar port = server.address().port

console.log('Example app listening at http://%s:%s', host, port)})

var config = {detailedErrors: true

, debug: true, hostname: null, port: 4000, model: {

defaultAdapter: 'filesystem'}

, sessions: {store: 'memory'

, key: 'sid', expiry: 14 * 24 * 60 * 60}

};

var ToDo = function () {...// Add this inside the constructor functionthis.validatesPresent('title');this.validatesLength('title', {min: 5});

...

Page 8: Артем Маркушев - JavaScript

And winner is…

Backend / NodeJS / Express vs Geddy

Page 9: Артем Маркушев - JavaScript

Backend / NodeJS / Express vs Geddy

Page 10: Артем Маркушев - JavaScript

JS for Frontend

Frontend

Page 11: Артем Маркушев - JavaScript

Четвертьфинал

Frontend

Popularity

Entry threshold

Code amount

Documentation

Popularity

Entry threshold

Code amount

Documentation

Page 12: Артем Маркушев - JavaScript

Четвертьфинал

Frontend

Popularity

Entry threshold

Code amount

Documentation

Popularity

Entry threshold

Code amount

Documentation

WINS

Page 13: Артем Маркушев - JavaScript

Frontend

Четвертьфинал

Page 14: Артем Маркушев - JavaScript

Четвертьфинал

Frontend

Popularity

Entry threshold

Code amount

Documentation

Popularity

Entry threshold

Code amount

Documentation

Page 15: Артем Маркушев - JavaScript

Четвертьфинал

Frontend

WINSPopularity

Entry threshold

Code amount

Documentation

Popularity

Entry threshold

Code amount

Documentation

Page 16: Артем Маркушев - JavaScript

Frontend

Четвертьфинал

Page 17: Артем Маркушев - JavaScript

Frontend

Четвертьфинал

Popularity

Entry threshold

Code amount

Documentation

Popularity

Entry threshold

Code amount

Documentation

Page 18: Артем Маркушев - JavaScript

Четвертьфинал

Frontend

WINSPopularity

Entry threshold

Code amount

Documentation

Popularity

Entry threshold

Code amount

Documentation

Page 19: Артем Маркушев - JavaScript

Frontend

Четвертьфинал

Page 20: Артем Маркушев - JavaScript

Frontend

Четвертьфинал

Popularity

Entry threshold

Code amount

Documentation

Popularity

Entry threshold

Code amount

Documentation

Page 21: Артем Маркушев - JavaScript

Четвертьфинал

Frontend

WINSPopularity

Entry threshold

Code amount

Documentation

Popularity

Entry threshold

Code amount

Documentation

Page 22: Артем Маркушев - JavaScript

Четвертьфинал

Frontend

Полуфинал

Page 23: Артем Маркушев - JavaScript

Frontend

Полуфинал

MV*

DOM power

Abstraction

Extensibility

MV*

DOM power

Abstraction

Extensibility

Page 24: Артем Маркушев - JavaScript

Полуфинал

Frontend

WINSMV*

DOM power

Abstraction

Extensibility

MV*

DOM power

Abstraction

Extensibility

Page 25: Артем Маркушев - JavaScript

Frontend

Полуфинал

Page 26: Артем Маркушев - JavaScript

Frontend

Полуфинал

MV*

DOM power

Abstraction

Extensibility

MV*

DOM power

Abstraction

Extensibility

Page 27: Артем Маркушев - JavaScript

Frontend

WINSMV*

DOM power

Abstraction

Extensibility

MV*

DOM power

Abstraction

Extensibility

Полуфинал

Page 28: Артем Маркушев - JavaScript

Полуфинал

Frontend

Финал

Page 29: Артем Маркушев - JavaScript

Frontend

Enterprise

Relevance

Weight

Speed

Enterprise

Relevance

Weight

Speed

Финал

Page 30: Артем Маркушев - JavaScript

Frontend

WINSPopularity

Entry treshhold

Code amount

Documentation

Popularity

Entry treshhold

Code amount

Documentation

Финал

Page 31: Артем Маркушев - JavaScript

Frontend

Финал

Page 32: Артем Маркушев - JavaScript

Вне конкурса

Socket.io

Page 33: Артем Маркушев - JavaScript

Socket.io

var app = require('express')();var http = require('http').Server(app);var io = require('socket.io')(http);

app.get('/', function(req, res){res.sendfile('index.html');

});

io.on('connection', function(socket){console.log('a user connected');

});

http.listen(3000, function(){console.log('listening on *:3000');

});

<script src="/socket.io/socket.io.js"></script><script>var socket = io();

</script>

Backend Frontend

Page 34: Артем Маркушев - JavaScript

Вопросы?

Вася, это конец…

Page 35: Артем Маркушев - JavaScript

vk.com/kubikami

Вася, это конец…