Platformy / technologie. Jaroslav Žáček

Podobné dokumenty
Platformy / technologie. Jaroslav Žáček

PLATFORMY / TECHNOLOGIE JAROSLAV ŽÁČEK

Platformy / technologie. Jaroslav Žáček jaroslav.zacek@osu.cz

Nástroje a frameworky pro automatizovaný vývoj. Jaroslav Žáček jaroslav.zacek@osu.cz

Architektury informačních systémů

Architektury informačních systémů

Tvorba podnikových aplikací v jazyce JAVA. Josef Pavlíček KII PEF CZU

Úvod. Petr Aubrecht (CA) Martin Ptáček (Wincor Nixdorf) Je 10 typů lidí: ti, kteří znají binární kód, a ti, kteří ne.

Platforma J2EE. Lukáš Zapletal liberix.cz. Platforma Java 2 Enterprise Edition

Semináˇr Java X J2EE Semináˇr Java X p.1/23

Tvorba informačních systémů

Tvorba informačních systémů

(Enterprise) JavaBeans. Lekce 7

Technology Entry form Entry up-to-date? Internal links Faulty internal Possible internal links

Michal Krátký, Miroslav Beneš

NOVINKY V JEE EJB 3.1. Zdeněk Troníček Fakulta informačních technologií ČVUT v Praze

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU

KIV/PIA 2013 Jan Tichava

Tvorba informačních systémů

1. Distribuce Javy. 2. Vlastnosti J2EE aplikace. 3. Fyzická architektura J2EE aplikace. Distribuce Javy se liší podle jejího zamýšleného použití:

PA165: Úvod do Java EE. Petr Adámek

Server-side technologie pro webové aplikace

X33EJA Web Services. Martin Ptáček, KOMIX s.r.o.

Co je nového v Java EE 6

Technologie Java. Jaroslav Žáček

X33EJA Enterprise Java

Připravil: Ing. Vít Ondroušek, Ph.D. Technologie.Net Framework

Přizpůsobení JSTL pro Google App Engine Datastore

Technologie Java. Jaroslav Žáček

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Servlety a JSP. Petr Adámek, petr.adamek@ibacz.eu

Spring framework 2.0. Roman Pichlík CZJUG

1 - Úvod do platformy.net. IW5 - Programování v.net a C#

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Databázové a informační systémy

Úvod do Web Services

Web frameworks v praxi

Efektivní vývoj mobilních aplikací na více platforem současně. Mgr. David Gešvindr MCT MSP MCPD MCITP

SOAP & REST služby. Rozdíly, architektury, použití

Tvorba informačních systémů

Co by měl umět dobrý vývojář. Petr Adámek Home Credit International a.s.

Informační systém pro podporu řízení, správu a zjišťování aktuálního stavu rozvrhované výuky

Základy datových vazeb Silverlightu. Funkce Silverlightu 2. Podpora jazyků a technologie.net Framework

Systémová administrace portálu Liferay

Ing. Jiří Fůsek. Základní informace. Pracovní zkušenosti. Vzdělání. 09/ nyní Freelancer. 09/ /2010 Univerzita Tomáše Bati ve Zlíně

Vybrané partie z jazyka Java Spring a Enterprise JavaBeans (EJB)

Vhodnost nasazení jednotlivých webových architektur, sdílení dat, perzistence, webové služby a REST, asynchronnost, messaging

SPECIFIKACE PŘEDMĚTU PLNĚNÍ

Ing. Jiří Fůsek. Základní informace. Pracovní zkušenosti. Vzdělání. 09/ nyní Valatron s.r.o. 09/ /2010 Univerzita Tomáše Bati ve Zlíně

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Java a J2EE. Cleverlance. Lukáš Marek lukas.marek@cleverlance.com

RESTful web service v Javě

Web Services na SOAP

Seznámení s prostředím dot.net Framework

Ruby on Rails: zapomeňte na Javu

HMI * nad webovými technologiemi

Požadavky pro výběrová řízení TerraBus ESB/G2x

Tvorba informačních systémů na platformě J2EE Petr Hetmánek Masarykova Univerzita, Fakulta Informatiky, Botanická 68a, Brno

Webové programování je CHALENGE! Milan Čapoun, Samuel Šramko

A7B39WPA Webové podnikové aplikace. Zdeněk Kouba Petr Aubrecht Petr Křemen

Session Beans. Petr Aubrecht CA. Vtipy budou tentokrát o krizi:

X33EJA Enterprise Java. Petr Šlechta Sun Microsystems

Enterprise Java Beans 3.0

Domino 10 nové komponenty a související témata (node.js, ES )

UNIVERZITA PARDUBICE

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Tabulka Nabídková cena za předmět plnění *uchazeč vyplní cenu za celý kurz nebo cenu za 1 účastníka dle zadávací dokumentace a nabídky uchazeče

VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA

Compatibility List. GORDIC spol. s r. o. Verze

Nasazení webových služeb do enterprise prostředí. Petr Steckovič

Nové předměty z oblasti softwarového vývoje na FIM UHK

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové technologie

X36WWW. Technologie aplikačních serverů. Miroslav Bureš,, Martin Klíma. X36WWW: 12. přednáška 1

Nové jazykové brány do Caché. Daniel Kutáč

Počítačová Podpora Studia. Přednáška 5 Úvod do html a některých souvisejících IT. Web jako platforma pro vývoj aplikací.

Sísyfos Systém evidence činností

Informační systém autoškoly

<Insert Picture Here> Vývoj portálových řešení v Javě

Google Web Toolkit. Martin Šurkovský, SUR března Katedra informatiky

Jalapeño: pekelně ostrá Java persistence v Caché. Daniel Kutáč Senior Sales Engineer

Novinky ve Visual Studio Tomáš Kroupa

Správa a sledování SOA systémů v Oracle SOA Suite


Úvod. Únor Fakulta informačních technologií VUT. Radek Kočí Seminář Java Úvod 1/ 23

Historie, současnost a budoucnost ASP.NET

JAVA &.NET JAVA VS.NET

Softwarové komponenty a Internet

Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 12.2.

Web frameworks v praxi Tomáš Krátký

Programovací jazyky Přehled a vývoj

Převod 4GL aplikací do webového prostředí. Ing. Jan Musil, IBM ČR Community of Practice for

Aplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části:

Ruby on Rails. Bc. Tomáš Juřík Bc. Bára Huňková

Specifikace. Odevzdání do

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

KAPITOLA 1 Představení platformy Microsoft SQL Server 2008

Obsah přednášky. Technologie. Enterprise Java Beans. Enterprise Java Beans. EJB kontejner. Enterprise Java Beans (EJB)

Komponentově orientované webové frameworky. Jiří Stránský twitter.com/jistr

Bc. David Gešvindr MSP MCSA MCTS MCITP MCPD

Transkript:

Platformy / technologie Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/infs1/

Které platformy / technologie znáte

Co je potřeba znát Web Applications Frontend AngularJS React Backend Java.NET Google Go Mobile Applications Android (Java) Xamarin (C#) React Native Ionic DevOps CI, Jenkins, TeamCity, TFS Quality Assurance (QA) Embedded Devices RTOS, Linux Manual Testing, Automated Testing

Java

Trocha historie

Java EE Java EE 5 Java EE 6 Pruning, Extensibility Ease of Dev, CDI, JAX-RS Java EE 7! JMS 2, Batch, Concurrency, JSON, TX Interceptor, WebSocket J2EE 1.2 Servlet, JSP, EJB, JMS, RMI J2EE 1.3 CMP, Connector Architecture J2EE 1.4 Web Services Mgmt, Deployment, Async Connector Ease of Development, EJB 3.0, JPA, JSF, JAXB, JAX-WS, StAX, SAAJ Web Profile Servlet 3.0, EJB 3.1 Lite

Co možná znáte z Java EE 7 Anotace v POJO Lepší podpora vícevláknových aplikací, asynchronní API (Servlet, EJB, JAX-RS) Příprava na HTML5 - JSON, WebSocket, JAX-RS (API pro REST) Java Message Service, dávkové zpracování, distribuované transakce

Co se běžně používá

Jaké IDE použít?

Java 8 http://www.java9countdown.xyz

Java 8 Lambda expressions, Method references, Functional interfaces, Stream API, Default methods, Base64 Encode Decode, Static methods in interface, Optional class Collectors class, ForEach() method, Parallel array sorting, Nashorn JavaScript Engine, Parallel Array Sorting, Type and Repating Annotations, IO Enhancements, Concurrency Enhancements, JDBC Enhancements etc.

Základní idea Otevřené standardy Stabilní jádro nad živým ekosystémem Plně integrované běhové prostředí Dobře strukturované API Striktně prosazovány pravidla jazyka Java - silné statické typování, Objektově-orientovaný, zpětně kompatibilní

Co se Java snaží potlačit XML hell Složitá konfigurace Problémy se závislostmi (jar hell) Zbytečná funkcionalita Složitý deploy Proprietární řešení

Jednotlivé části platformy Java EE JAX-WS JSF JAX-RS EL Concurrency Utilities JavaMail JPA JMS Servlet CDI EJB 3 JAXB Bean Validation Batch Applications Java API for JSON JCA JTA JASPIC JACC Java API for WebSocket Nové Major Release Aktualizováno

Základní stavební kameny Java Database Connectivity Jednotné rozhraní k relačním databázím Pro využití je potřeba driver, který poskytuje tvůrce SŘBD Aplikace je nezávislá na databázovém stroji Využívá se u JPA

Základní stavební kameny Servlet Zachytává HTTP požadavek a nabízí ho vývojáři jako objekt Generuje výstup pro uživatele (zpravidla HTML) V současné době se používá hlavně u webových frameworků

Běhové prostředí pro Servlet Servletový kontejner

Základní stavební kameny JavaServer Pages Na pozadí funguje Servlet Slouží pro psaní dynamických HTML stránek Lepší, než generovat výstup servletem Výstup generuje v HTML, nebo v XML Nutné minimum pro MVC

Základní stavební kameny Enterprise Java Beans (EJB) Aplikační logika Distribuované aplikace (RPC) Objektově-relační mapování Existuje více typů Entity Session Message-driven

Běhové prostředí pro EJB JBoss AS GlassFish WebSphere WebLogic TomEE+ (OpenEJB)

Oblíbené aplikační servery

Webová aplikace

Webová aplikace

Webová aplikace Má přesně definovanou strukturu Na server se umísťuje (deploy) v souboru WAR (Web ARchiv), případně v EAR (Enterprise ARchiv) Základní parametry aplikace ve web.xml

A co frameworky? Web-like Spring Grails Struts Play Desktop-like Wicket Vaadin GWT Vert.x - reaktivní aplikace (asynchronní) Hibernate Frontend AngularJS/ Angular 2+ ReactJS Vue.js

.NET

.NET

Jednotlivé části platformy.net

Architektura

Základní idea Common Language Specification (CLS) podporováno více programovacích jazyků, které jsou ovšem mezi sebou kompatibilní (rozhraní MSIL) Velmi dobře integrovatelný pro OS Windows Výborná podpora Office aplikací Databáze MSSQL Velmi dobré možnosti ladění aplikace (debug) Všechny frameworky od jedné společnosti -> nemusím je jako programátor integrovat (až na NuGet)

Základní stavební kameny ASP.NET Slouží pro tvorbu dynamických stránek WebForms - snaží se dosáhnout desktop-like aplikace MVC - framework pro oblíbené paradigma tvorby webových aplikací, alternativa k WebForms Dělí se na šablonu a logiku

Práce s daty

Language Integrated Query Univerzální jazyk (nástroj) pro manipulaci s daty Při použití se vám bude hodit: Lambda výrazy Anonymní třídy - klíčové slovo var Stromy výrazů, delegáti Možnosti použití LINQ to Objects LINQ to XML LINQ to SQL LINQ to DataSets

Práce s daty ADO.NET Pro přístup k datovým službám (dataset, XML) nejen k databázi Dělí se na konzumenta a poskytovatele Pracuje na podobném konceptu jako JPA Dokáže spolupracovat s LINQ a Entity SQL (transformuje dotazy na příslušné SQL)

Základní stavební kameny Windows Communication Foundation (WCF) Podporuje tvorbu servisně-orientované architektury Vhodnou formou zpřístupňuje webové služby (tvoří endpoint). Dokáže ovšem pracovat i s jmennými rourami Díky použití webových služeb se dokáže bavit multiplatformně

Základní stavební kameny Windows Presentation Foundation (WPF) Framework pro podporu vykreslení GUI Používá DirectX (hardwarové urychlení) Základem je XAML Podporován prohlížeči (FireFox) Modern UI A co Silverlight?

Webová aplikace

Webová aplikace

NuGet Balíčkovací nástroj Json.NET, EntityFramework, NUnit, BootstrapCSS, jquery, AutoMapper, log4net, Angular JS https://www.nuget.org/stats

A co aplikační server?

A co aplikační server?

Deploy webové aplikace