Beruflich Dokumente
Kultur Dokumente
js
An overview of the
Javascript
ecosystem
About me
global market leader for in-store music, digital signage, hold music,
on-hold messaging, scent, integrated Audio/Video, and interactive
mobile marketing solutions;
offices in over 30 countries;
reaches over 100 million people in 470,000 locations;
globally serving customers such as Nike, AT&T, Target, McDonalds, H&M, Ecco,
Renault, Nissan
over 20 production servers, 50.000 devices running Windows Embedded or Android
over 200.000 lines of code over multiple projects and repositories
programming languages, in order of lines of code: C#, Typescript/Javascript, Java, C++
the web management application has over 30.000 lines of code, not including the 50
external dependencies (angular, bootstrap, signalR, underscore, etc)
stop me
and ask
The bad and the ugly - basic operations
js> {} + 1 js> {} + 1 + 2
js> 1 + {} js> 1 + {} + 2
js> 1 + 2 + {}
The bad and the ugly - objects
js> {} + 1 js> {} + 1 + 2
=> 1 => 3
js> 1 + {} js> 1 + {} + 2
=> '1[object Object]' => '1[object Object]2'
js> 1 + 2 + {}
=> '3[object Object]'
The bad and the ugly - nulls
js> 2..toString()
The bad and the ugly - misc
interface Person {
firstName: string;
lastName: string;
}
class Student implements Person {
fullName: string;
constructor(public firstName, public middleInitial, public lastName) {
this.fullName = firstName + " " + middleInitial + " " + lastName;
}
}
function greeter(person : Person) {
return "Hello, " + person.firstName + " " + person.lastName;
}
document.body.innerHTML = greeter(user);
Express.js
app.listen(3000, function () {
console.log('Example app listening on port 3000!');
});
MongoDB
Fast
Small
Horizontally scalable
JSON / javascript
db.users.aggregate( [
{ $match: { status: A } },
{ $group: { _id: $age } } ])
AngularJS - templates
<body>
<my-app>Loading AppComponent
content here ...</my-app>
</body>
AngularJS - components
@Component({
selector: 'my-app',
template: `<h1>Hello {{name}}</h1>`
});
Style guide
github.com/airbnb/javascript
Typescript
typescriptlang.org
Angular tutorial angular.io
MongoDb tutorial
docs.mongodb.com
Contributing to Open Source goo.gl/wNIofs
Visual Studio Code code.visualstudio.com
This presentation goo.gl/7sVSpc
Contact: me[at]cvlad[dot]info