Modern front end development

49
Modern Front-End Development Tomislav Mesić @tomislavmesic 5minuta

description

My view of modern front-end development based on web technologies.

Transcript of Modern front end development

Page 1: Modern front end development

Modern Front-End

Development

Tomislav Mesić @tomislavmesic 5minuta

Page 2: Modern front end development

Modern Front-End

Development

Front-End through history Front-End in Enterprise environment Modern Front-End Technology HTML5 Front-End Frameworks

Page 3: Modern front end development

Front-End through history

Front-End on top of the world From C prog to interaction designer UX and modern Front-End Programers & Developers Different Front-End approaches

Page 4: Modern front end development

From C programmer

to interaction designer

DTP designer C Programmer

Page 5: Modern front end development

From C programmer

to interaction designer

Web Designer PHP / ASP / Perl Programmer Web master

Page 6: Modern front end development

From C programmer

to interaction designer

Web Designer Front-End Developer Back-End Developer End User

Page 7: Modern front end development

From C programmer

to interaction designer

Information Architect Interaction Designer UX Designer Web Designer Front-End Developer Back-End Developer Web Maseter

Page 8: Modern front end development

Front-End through history

Front-End on top of the world From C prog to interaction designer UX and modern Front-End Programers & Developers Differences between Front-End devs

Page 9: Modern front end development

Front-End Enterprise &

Consumer

Different Approaches Consumer Blivakker, Netthandelen, Rhapsody, ripplo Bleeding Edge Enterprise HZZO, Gov, ERP, Oracle, RAD Proff Concepts 1-5 Y behind

Page 10: Modern front end development

Modern Front-End

Content Structure Design Behaviours

Page 11: Modern front end development

Modern Front-End

Content Structure - HTML Design - CSS Behaviours - JavaScript

Page 12: Modern front end development

Modern Front-End

Responsive (Blivakker, Rhapsody) Adaptive (vecernji.hr) Content Coreografy Content Owners & Webmaster Content is a king - Not

Page 13: Modern front end development

Modern Front-End

Semantics Separation of concerns Progresive enhancements Degradation gracefuly

Page 14: Modern front end development

HTMLMarkup Language SGML (Standard Generalized Markup Language) Logical Design HTML 2 - Structure & Content HTML 3 - HTML Styles HTML 4 - SoC, CSS, XHTML HTML 5

Page 15: Modern front end development

<!DOCTYPE html><html><head>

<meta charset="utf-8"><title>Your Website</title><link href="styles.css" rel="stylesheet"/><script src="script.js">

</head><body>…</body></html>

Page 16: Modern front end development

HTMLMarkup Language SGML (Standard Generalized Markup Language) Logical Design HTML 2 - Structure & Content HTML 3 - HTML Styles HTML 4 - SoC, CSS, XHTML HTML 5

Page 17: Modern front end development

CSSv3 Physical Design Selectors (id, class, pseudo, attributes)

Box Model

Page 18: Modern front end development

p {color: #000}!.teaser {float: left}!#logo {…}!a:link { display: block; background: #ccc; color: #fff; }!input[type=checkbox]:checked { … }input[type=checkbox]:checked + label { … }

Page 19: Modern front end development
Page 20: Modern front end development

CSSv3 Physical Design Selectors (id, class, pseudo, attributes)

Box Model

Page 21: Modern front end development

JavaScriptInterpreter, OOP, Single Tread, Script ECMAScript 5.1 Front-End Development Language Not only Front-End (Windows Store Apps, Node.js, Firefox OS, Microcontrollers like Rosbery PI and Tessel) DOM & OOP Development

Page 22: Modern front end development

Communication & Data Devices & Printing

WinRT APIs

Graphics & Media

Desktop Apps

C C++

Win32

C# VB

.NET

HTML JavaScript

IE

Windows Store Apps

Application Model

XAML

JavaScript

HTML / CSS

C C++

C# VB

Windows Kernel Services

Syst

em S

ervi

ces

View

Mod

el

Cont

rolle

rKe

rnel

Page 23: Modern front end development

Communication & Data Devices & Printing

WinRT APIs

Graphics & Media

Desktop Apps

C C++

Win32

C# VB

.NET

HTML JavaScript

IE

Windows Store Apps

Application Model

JavaScript

HTML / CSSXAML

C C++

C# VB

Windows Kernel Services

Syst

em S

ervi

ces

View

Mod

el

Cont

rolle

rKe

rnel

Page 24: Modern front end development

HTML5More Semantic Rich API New Controls Form Validations … Not only HTML

Page 25: Modern front end development
Page 26: Modern front end development

Graphic Semantics Storage Device Access

CSS3 Performance Multimedia Conectivity

Page 27: Modern front end development

Semantics

Section elements (section, nav, aside, sidebar,

header, footer, article …) Grouping elements (fieldset, figure)

Form elements (search, tel, url, email, date,

number, keygen, progress, meter) Form field validation (pattern, required) Microdata (data attrs, machnine language)

Page 28: Modern front end development

MultimediaVideo Video element, Codec detection, Subtitle support, DRM Support, Video formats (mpg4, h.264, Theora …)

Audio Audio element, Speech recognition & syntesis, Audio formats (pcm, aac, mp3 …)

Page 29: Modern front end development

GraphicCanvas 2D Text, Path, Elipse, API, Colisions detection, Bledning, Image export formats, SVG eNotebook

WebGL 3D acko.net

Page 30: Modern front end development

ConnectivityServer-Sent Events WebSockets XMLHttpRequest L2 (upload files)

Page 31: Modern front end development

Device access

Geolocation Device Orientation Fullscreen Webcam Vibrate

Page 32: Modern front end development

Offline & Storage

Application cache IndexDB WebSQL Local Storage File API Aida, eNotebook

Page 33: Modern front end development

Performance & integration

Drag and drop HTML editing Spellcheck Web Workers Sandboxed iframe

Page 34: Modern front end development

CSS3

Transitions 2D Transformations 3D Transforms GPU blivakker menu & flip

Page 35: Modern front end development

real life

Page 36: Modern front end development
Page 37: Modern front end development
Page 38: Modern front end development
Page 39: Modern front end development
Page 40: Modern front end development
Page 41: Modern front end development
Page 42: Modern front end development
Page 43: Modern front end development

<ol class="tabs"> <li><a href="#tab-1">Tab 1</a></li> <li><a href="#tab-2">Tab 3</a></li> </ol>…<div id="tab-1">…</div><div id="tab-2">…</div>…$("tabs").tabs();

Page 44: Modern front end development

.tabs {…}

.tabs .tab {…}

.tabs a:link:before { animate … }.tabs a:link:before { background … rotate … }.tabs a:link:after { border … rotate … }

Page 45: Modern front end development

"use strict";var tabs = (function(window, document, undefined) { var _init = function() { ... }; return { init: _init }})(this, this.document);!…!tabs.init();

Page 46: Modern front end development

real life

Page 47: Modern front end development

ModernFrameworks

HTML Bootstrap, Zurb Foundation, Kendo, jQuery UI, Kickstart, Sencha …

CSS 360 Grids, Less, Skeleton, Compass, Blueprint …

JavaScript MV*, Backbone, Knockout, Can JS, Ember, Angular, Meteor, jQuery …

Page 48: Modern front end development

For the futureWeb platform & native apps Javascript patterns and optimization Single Page Apps Front-End FTW

Page 49: Modern front end development

Modern Front-End

DevelopmentTomislav Mesić @tomislavmesic