Transcript
Page 1: What's New in Web Development

What’s newin

Web Development?

Konstantin

Käfer

Page 2: What's New in Web Development

Konstantin Käfer2

1

2

3

4

HTML 5

Gears, Native Client & Silverlight

CSS 3

Client side XSLT

Page 3: What's New in Web Development

Konstantin Käfer

HTML 5

3

Page 4: What's New in Web Development

Konstantin Käfer

Standardize what’salready there

4

Page 5: What's New in Web Development

Konstantin Käfer

Standardize solutionsfor real-life applications

5

Page 6: What's New in Web Development

Konstantin Käfer

HTML 5: Structural Elements

6

‣ <section>, <nav>, <article>, <aside>, <footer>, <figure>, <header>, <dialog>

‣ Behave like spans; use display:block

‣ For structuring pages

‣ Allows for nice CSS:

– footer { font-size: 0.75em; color: gray; }

Page 7: What's New in Web Development

Konstantin Käfer

HTML 5 in action‣ Doctype: <!DOCTYPE html>

‣ Most browsers support any tags

‣ Except our beloved Internet Explorer

7

<section> <h2>Alpha</h2> <p> Section Alpha </p></section>

<section></section> <h2>Alpha</h2> <p> Section Alpha </p></section><//section>

Page 8: What's New in Web Development

Konstantin Käfer

document.createElement('section');

8

Page 9: What's New in Web Development

Konstantin Käfer9

HTML 5

New input types

Page 10: What's New in Web Development

Konstantin Käfer

HTML 5: Storing data‣ Database Storage API: Plain SQL

‣ Local Storage: key-value pairs

‣ Session Storage: key-value pairs

‣ Supported by Mozilla, WebKit, Opera

10

Page 11: What's New in Web Development

Konstantin Käfer

HTML 5: <canvas>‣ Already supported by Mozilla, WebKit, Opera

‣ Arbitrary 2D drawing

‣ Can be emulated with VML in IE

‣ Applications:

– http://code.google.com/p/flot/

– http://wiki.github.com/sorccu/cufon/about

– http://ejohn.org/blog/processingjs/

11

Page 12: What's New in Web Development

Konstantin Käfer

Canvas Fonts‣ Alternative to images replacement and sIFR

‣ Use <canvas> and VML to render fonts

‣ Several libraries

– http://typeface.neocracy.org

– http://cufon.shoqolate.com

‣ Converts font files to proprietary format

12

Page 13: What's New in Web Development

Konstantin Käfer

HTML 5: Miscellaneous‣ Drag-and-Drop

‣ Cross-document message exchange

‣ Data grids

‣ Undo manager

‣ Web sockets

‣ <video>, <audio> tags

13

Page 14: What's New in Web Development

Konstantin Käfer

Google Gears‣ Offline applications

‣ Worker pools(for compute-intensive applications)

‣ Databases(not fully compatible with HTML 5)

‣ Geolocation

14

Page 15: What's New in Web Development

Konstantin Käfer

Gears Demos

15

Page 16: What's New in Web Development

Konstantin Käfer

Google Native Client

16

Page 17: What's New in Web Development

Konstantin Käfer

Silverlight

17

‣ Microsoft’s Flash clone

‣ Based on XAML and WPF

‣ .NET languages (C#, VB.NET, IronPython, ...)

<Canvas xmlns="http://schemas.microsoft.com/client/2007" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <Ellipse Canvas.Left="30" Canvas.Top="30" Height="200" Width="200" Stroke="Black" StrokeThickness="10" Fill="SlateBlue" /></Canvas>

Page 18: What's New in Web Development

Konstantin Käfer

Silverlight Demos

18

Page 19: What's New in Web Development

Konstantin Käfer

CSS 3

19

‣ Split up in modules

‣ Some parts are already implemented

– Use them now! (Degrade gracefully)

Page 20: What's New in Web Development

Konstantin Käfer

CSS 3‣ border-radius: 5px;

‣ user-modify: read-write;

‣ box-shadow: 3px 3px 5px #888;

‣ background: rgba(0, 0, 0, 0.5);

‣ border-image: url(border.png) 5 5 10 10 round round;

‣ text-overflow: ellipsis;

20

Page 21: What's New in Web Development

Konstantin Käfer

CSS 3 cont.‣ column-width: 10em;

column-gap: 1em;

‣ @font-face { font-family: Aller; src: url('Aller-Roman.otf');}

font-family: Aller, sans-serif;

21

Page 22: What's New in Web Development

Konstantin Käfer

WebKit’s CSS enhancements‣ Transforms: Rotating, Scaling, Morphing, ...

‣ Transitions: Animate between two states

‣ Animations: Define keyframes and timelines

‣ Demo

22

Page 23: What's New in Web Development

Konstantin Käfer

Client side XSLT‣ Transform XML documents

to HTML

‣ Use the same XML forWeb Services

23

XML Input XSLT Code

XSLT Processor

<xsl:value-of>Title:$nameDate:$curdat</xsl:value-o

Result Document

Page 24: What's New in Web Development

Konstantin Käfer24

Example: WoW Armory

Page 25: What's New in Web Development

Konstantin Käfer

Client side XML/XSLT

25

<?xml version="1.0" encoding="UTF-8"?><page title="Add text format" path="admin/settings/filter/add" base="/"> <title>Add text format</title>

<content>...</content>

<menu id="navigation" title="Navigation"> <item path="user/1" title="My account" /> <item path="node/add" title="Create content" children="2" /> <item path="admin" title="Administer" /> <item path="admin/content" title="Content management" children="6" /> <item path="admin/build" title="Site building" children="4" /> <item path="admin/settings" title="Site configuration">...</item> <item path="admin/user" title="User management" /> <item path="admin/reports" title="Reports" /> <item path="admin/help" title="Help" /> <item path="logout" title="Log out" /> </menu>

<user name="admin" id="1" /></page>

Page 26: What's New in Web Development

Konstantin Käfer

Server side JavaScript‣ Has been possible for a long time (CGI)

‣ Interpreters got extremely fast

‣ http://groups.google.com/group/serverjs

26