View
392
Download
1
Category
Preview:
Citation preview
@dskgry #WISSENTEILEN
Zeitgemäße Webanwendungen in JavaEE
MVC 1.0
@_openknowledge
Sven Kölpin – open knowledge GmbH
Action-based MVC
• Klassische Web-Programmierung
• Weniger Abstraktion
• Request / Response basiert
• Viel leichtgewichtiger
MVC 1.0
• Serverseitiges Rendering
• „Rich internet applications“
• Rolle von JavaScript: DOM-Manipulation
jQuery UI
• HTML
• JavaScript
<input type="text"
data-datepicker="true"
name="dueDate"/>
$("input[data-datepicker='true']").datepicker();
Web Components
• W3C Draft
• Custom elements
• Eigene HTML-Tags (mit Logik)
• Templates
• HTML-imports
• Shadow DOM
Web Components: Custom elements
• HTML
• JavaScript
• Polymer
<javaland-datePicker name="dueDate"/>
var datePicker = Object.create(HTMLElement.prototype);
document.registerElement("javaland-datePicker", {prototype: datePicker});
MVC 1.0
• Clientseitiges Rendering
• „Single-page web applications“
• Rolle von JavaScript: Rendering + Business Logik
Bsp.: ReactJS
• HTML
<!DOCTYPE html>
<html>
<body>
<div id="app"></div>
<script src="${mvc.contextPath}/resources/dist/javaland.bundle.js"></script>
</body>
</html>
Bsp.: ReactJS
• JavaScript
import React, {Component} from "react";
import ReactDOM from "react-dom";
class MyView extends Component {
action(){…}
render() {
return (
<button onClick={this.action.bind(this)} />
);
}
}
Recommended