Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
1
Technológiák összehasonlítása J2EE - PHP
Csikor Ákos ELTE IK
2
Bevezetés – J2EE Java Platform Enterprise Edition
Készítette: Sun Microsystems Objektumorientált programozási nyelv Platformfüggetlen („Írd meg egyszer és futtasd bárhol”) JVM: Java Virtual Machine Nagyvállalatoknál használatos technológia Fejlesztés hordozható, robosztus, skálázható, biztonságos szerveroldali alkalmazások
3
Bevezetés – PHP PHP Hypertext Preprocessor Kitalálta: Rasmus Lerdorf
Létrejötte után gyorsan fejlődött Jelenleg: Zend cég fejleszti Script programozási nyelv Oldalak dinamikus működéséhez Kis- és középvállalatoknak készült Jelenleg több mint 10 millió webhelyen található
4
Nyelvi elemek a JSP J2EE-ben és a PHP-ban
Alapjaiban különböznek OOP ↔ Scriptnyelv Tag-ek: JSP: adott tag library-t milyen prefix segítségével PHP: egyszerűbb: <?php ?> Beágyazott kódok: JSP: engedélyezett a forráskódok beillesztése <h:inputText binding="#{backing_topic.topicName}" id="topicname" required="false” /> PHP: az csak így működik, nem lehet különválasztani <input type=”text” name=”felhasználónév”>
5
A megjelenítő és logikai réteg szétválaszthatósága
Nagy méretű programoknál elkülönül Előnye: Egyszerre így akár két különböző csapat dolgozhat a különböző rétegeken Sokkal olvashatóbb rétegek J2EE: JSF: backing bean-ek kapcsolása JSP-khez JSP oldalon binding tulajdonsággal változót rendelni szerveroldalon Egy backing bean akár több oldalhoz is Action esetén String visszatérésű függvények (faces-config.xml-ben navigáció) PHP: Nem annyira áll távol egymáshoz képest a két réteg PHP mellett megjelennek a HTML elemek Keretrendszerrel lehetne a két réteget „szétválasztani”
6
Adatelérés J2EE: PHP: Entity Bean-eket használjuk az EJB rétegből
Bean-ekhez a kezelő a Session Bean Bean-eket táblákhoz rendeljük egy Object-Relational Mapping-gel Adat = objektum PHP: Nincs ilyen réteg SQL parancsok gépelése a forráskódban A legtöbb adatbázishoz a függvények biztosítottak Adat = adat
7
Példakód - PHP <html> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Language" content="hu"> <title>Proba Php</title> <body> <?php if( isset($_POST["username"]) && !empty($_POST["username"]) && isset($_POST["username"]) && !empty($_POST["password"]) ) print "Username: " . $_POST["username"] . "<br />"; print "Password: " . $_POST["password"] . "<br />"; ?> <form id="form1" name="form1"> <input type="text" name="username" /><br /> <input type="password" name="password" /><br /> </form> </body> </html>
8
Példakód – J2EE (JSP file)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " page contentType="text/html;charset=windows-1250"%> taglib uri=" prefix="h"%> taglib uri=" prefix="f"%> <f:view> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>Index</title> </head> <body> <h:form binding="#{backing_topic.form1}" id="form1"> <h:inputText binding="#{backing_topic.topicName}" id="topicname" required="false" /> <h:commandButton value="Add" style="font-family: Verdana, sans-serif, Arial; font-weight: normal; font-size: 11px; color: #404040; background-color: #fafafa; text-align: left; padding-left: 3px;" action="#{backing_topic.addTopicButton_action}" /> <br /> </h:form> </body> </html>
9
Példakód – J2EE (JSF file)
public class Topic { private HtmlForm form1; private HtmlInputText topicName; . public void setForm1(HtmlForm form1) { this.form1 = form1; } public HtmlForm getForm1() { return form1; public void setTopicName(HtmlInputText topicName) { this.topicName = topicName; public HtmlInputText getTopicName() { return topicName; public void setTopic(HtmlInputText topicName){ cm.addTopics(topicName.toString()); public String addTopicButton_action(){ try{ cm.addTopics(topicName.getValue().toString()); catch(NullPointerException ex){ return "";
10
Technológiákat segítő fejlesztői környezetek
Számos fejlesztői környezet Vannak fizetősek és ingyenesek Mégtöbb editor, ami csak a szintaxist ismeri Mindegyik internetről beszerezhető Mindkét technológiát kitaláló cég írt hozzá keretrendszert
11
J2EE fejlesztői környezetek
NetBeans: Sun fejleszti, ingyenes Standard-tól enterprise-ig támogat GUI-t Drag’nDrop technikával Jelenleg: 6.0 Beta2, 5.5.1 stabil
12
J2EE fejlesztői környezetek
JDeveloper Studio Edition: Oracle fejleszti, ingyenes, adatbázisához Jelenleg: ,
13
J2EE fejlesztői környezetek
Eclipse: Ingyenes, nagyon sok plugin van hozzá Nagyon sok programozási nyelvet ismer Jelenleg:
14
PHP fejlesztői környezetek
Zend Studio: Zend fejleszti, egyik legnagyobb, fizetős($254) lassú, beépített webserver
15
PHP fejlesztői környezetek
NuSphere PhpED: NuSphere fejleszti, másik legnagyobb, fizetős ($249), beépített webserver
16
Fejlesztői környezetek
Funkcionalitásukban megegyeznek: Kinézetük: ProjectExplorer: projectünket láthatjuk fa struktúrában ServerExplorer: projektünket nézhetjük a háttértároló szemszögéből ComponentPalette: GUI-hoz a grafikai elemek ConnectionExplorer: adatbázis menedzseléséhez Refactoring … Dokumentációgenerálás Javadoc, PHPDocumentor Működésük megegyezik
17
Összegzés Másképp és más célból születtek Célközönségük különböző
J2EE: nagyvállalat PHP: kis- és középvállalat PHP egyszerű nyelv – sokan ismerik J2EE sokkal komplexebb – komoly háttértudás
18
Köszönöm a figyelmet ! Csikor Ákos Technológiai összehasonlítás
J2EE – PHP Csikor Ákos ELTE IK
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.