Verkkotekniikat kehässä: ASP vs. J2EE vs. .NET vs. PHP

Back to tv, radio, leffat, web O

[q]Garo

---


Yleisesti joo, mutta eri ohjelmointikielillä ohjelmoidaan erityyppisiä sovelluksia. Et esimerkiksi halua ohjelmoida 3D peliä Javascriptillä vaan todennäköisesti C++:lla, tai et halua ohjelmoida webbisivun DHTML:ää C++:lla (tekisit ehkä jonkinlaisen selainpluginin joka latautuu selaimeen) koska Javascriptillä hoituu homma huomattavasti helpommin :)

- Garo
[/q]

Jees..
3d-juttuja voidaan ohjelmoida C++ ja vaikka Java:lla. Mutta niissä on kuitenkin nykyään käytössä OpenGL tai DirectX joita taas edellä mäinituilla käytetään.

PHP, ASP ja JSP on mm webbisovelusten palvelin puolen ohjelmointiin. Eikä yksin omaan webasivujen tekemiseen vaan kaikkiin selaimenavulla käytettäviin sovelluksiin kuten Intra- ja Extranet.

JavaScript on taas scritauskieli kuten PHP mutta toimii suoraan selaimessa kuten HTML ja CSS. JavaScriptiä käytetään yleensä vain esim. PHP sovelluksen tukena luomaan joitakin pieniä tomintoja kuten lomkkeen alasvetovalikon muutaminen linkkivalikoksi tai lomakeen syöttökenttien tarkistukseen, kuten että onko syötetyssä email osoitteessa @-merkki ja onko loppu muotoa jotain.jotain.

[q]Garo, 24.5.2005 21:48:
Itselläni on nyrkkisääntönä yksinkertainen kolmen suora:

2) PHP sopii hienosti tähän väliin. PHP:tä on melko nopeeta ohjelmoida, se tarjoaa tarvittaessa riittävät olio-ominaisuudet laajempiin projekteihin ja koodi on tarpeeksi nopeaa.


[/q]

Liian olio-pohjeinen voi kuulemma olla hidas...

Java2 sovellukset on toiminut onnetoman hitaasti netissä..

[q]Mark Hamilton, 4.8.2005 15:37:
---
Garo, 24.5.2005 21:48:
2) PHP sopii hienosti tähän väliin. PHP:tä on melko nopeeta ohjelmoida, se tarjoaa tarvittaessa riittävät olio-ominaisuudet laajempiin projekteihin ja koodi on tarpeeksi nopeaa.
---
Liian olio-pohjeinen voi kuulemma olla hidas...
Java2 sovellukset on toiminut onnetoman hitaasti netissä..
[/q]

Voitko hieman selventää tarkemmin? Ja kai ymmärsit oikein: eli tarkoitin java-web sovelluksia nimenomaan palvelimessa (servlet containerissa) pyörivää javakoodia, enkä suinkaan appletteina selaimelle lähetettäviä ongelmamagneetteja.

- Garo

[q]Garo, 4.8.2005 16:36:
---
Mark Hamilton, 4.8.2005 15:37:
---
Garo, 24.5.2005 21:48:
2) PHP sopii hienosti tähän väliin. PHP:tä on melko nopeeta ohjelmoida, se tarjoaa tarvittaessa riittävät olio-ominaisuudet laajempiin projekteihin ja koodi on tarpeeksi nopeaa.
---
Liian olio-pohjeinen voi kuulemma olla hidas...
Java2 sovellukset on toiminut onnetoman hitaasti netissä..

---


Voitko hieman selventää tarkemmin? Ja kai ymmärsit oikein: eli tarkoitin java-web sovelluksia nimenomaan palvelimessa (servlet containerissa) pyörivää javakoodia, enkä suinkaan appletteina selaimelle lähetettäviä ongelmamagneetteja.

- Garo
[/q]

Olen ollut joskus verkko-kursilla ja käytössö oli R5 Genration - e-Learnin Platform. Siinä sai valita joko Java:n ta "HTML" version. Javaa puoli toimi onnetoman hitaasti 256 HomeBNA:lla. Siinä oli vaikka mitä Java systeemeitä kuten Java kielellä toteutettu dokumenti editori joka toimi niin hitaasti että dokumenteja ei pystynyt tekemään.

Eli, vähän niinkä intranet joka olisi totutettu Java kielellä. En tarkoita nyt JSP:tä.. vaan samalaisia Java soveluksia kun esim. http://www.platinum.ac/phpbb/chatroom.php

[q]Mark Hamilton, 4.8.2005 17:15:

Olen ollut joskus verkko-kursilla ja käytössö oli R5 Genration - e-Learnin Platform. Siinä sai valita joko Java:n ta "HTML" version. Javaa puoli toimi onnetoman hitaasti 256 HomeBNA:lla. Siinä oli vaikka mitä Java systeemeitä kuten Java kielellä toteutettu dokumenti editori joka toimi niin hitaasti että dokumenteja ei pystynyt tekemään.

Eli, vähän niinkä intranet joka olisi totutettu Java kielellä. En tarkoita nyt JSP:tä.. vaan samalaisia Java soveluksia kun esim. http://www.platinum.ac/phpbb/chatroom.php
[/q]

Siis selvennykseksi eri tavat käyttää javaa verkkoympäristössä (pysytään Java 2 SE:ssä pienin laajennuksin):

Appletti = Sovelma = sivuilta ladattua koodia jota ajetaan sinun koneessasi JVM:ssä yleensä webiselaimeen upotettuna (<-- tämä on mitä kuvailet tuossa ylhäällä)

Applikaatio = Sovellus = ohjelma joka on koodattu javalla ja pyörii koneellasi JVM:ssä (ei mihinkään upotettuna). Yleisin nykyään lienee Azureus

Servletti = palvelimen JVM:ssä pyörivä softa joka yleensä ulostaa HTML:ää ja siis tekee webisivuja dynaamisesti (niin kuin jumaloimasi php)

JSP = yksinkertaistettu tapa tehdä servlettejä niille jotka ei halua/osaa/jaksa tehdä niitä itse - sopii hyvin jos ei tunne javan sielunelämää eikä kiinnosta

[q]duvin, 4.8.2005 17:35:
Applikaatio = Sovellus = ohjelma joka on koodattu javalla ja pyörii koneellasi JVM:ssä (ei mihinkään upotettuna). Yleisin nykyään lienee Azureus.
[/q]
Selvennetään vielä, että Azureus on BitTorrent clientti, eikä liity suoranaisesti www:hen tai html:ään mitenkään, vaan duvin ilmeisesti mainitsi sen vain koska se on kirjoitettu Javalla.

[q]
Servletti = palvelimen JVM:ssä pyörivä softa joka yleensä ulostaa HTML:ää ja siis tekee webisivuja dynaamisesti (niin kuin jumaloimasi php)

JSP = yksinkertaistettu tapa tehdä servlettejä niille jotka ei halua/osaa/jaksa tehdä niitä itse - sopii hyvin jos ei tunne javan sielunelämää eikä kiinnosta
[/q]

Selityksesi JSP:stä on hieman puutteellinen. Servlettien alkuaikoina JSP:tä käytettiin suoraan, vastaavalla tavalla kuin aloittelevat PHP koodaajat käyttävät PHP:tä, eli laittavat logiikkaa, kantakyselyjä yms ns. business logiikkaa suorittavaa koodia suoraan HTML:n sekaan. Tämä on yleisesti ottaen, ainakin omasta mielestäni, todella huono tapa tehdä yhtään mitään.

Nykyään JSP:tä käytetään usein itse sivun ulkoasun generointiin - joka on usein vain hyvin pieni osa www sivuston takana olevasta koodista. Esimerkiksi monissa MVC (Model-View-Controller) toteutuksissa JSP:llä toteutetaan View -osa. Itsenäisillä Java luokilla toteutetaan sitten Model ja Controller. Laajemmissa J2EE sovelluksissa Java:lla koodattu Model pyörii usein jossakin erityisessä sovelluspalvelimessa (esim. JBoss), josta Javakoodia ajetaan verkon yli.

Vaihtoehtoja JSP:lle View osana on esim. Java Server Faces.

- Garo

[q]Garo, 4.8.2005 17:49:
Vaihtoehtoja JSP:lle View osana on esim. Java Server Faces.
[/q]

Onkos JSF:stä jollain kokemuksia?

[q]Garo, 4.8.2005 17:49:
Selityksesi JSP:stä on hieman puutteellinen. Servlettien alkuaikoina JSP:tä käytettiin suoraan, vastaavalla tavalla kuin aloittelevat PHP koodaajat käyttävät PHP:tä, eli laittavat logiikkaa, kantakyselyjä yms ns. business logiikkaa suorittavaa koodia suoraan HTML:n sekaan. Tämä on yleisesti ottaen, ainakin omasta mielestäni, todella huono tapa tehdä yhtään mitään.
[/q]

Pointtini oli lähinnä, että JSP:stä generoidaan käännettäessä ihan normaali Servletti-luokka (siis extends javax.serlvet.http.HttpServlet) ja vaikkakin jsp-sorsa näyttää huomattavan erilaiselta kuin normaalin servletin java-sorsa, on toiminnallisuus _TÄYSIN_ sama. (Itse asiassa JSP-sivusta tehdään ihan servletti-sorsakoodia, joka sit käännetään normaalisti ja ajetaan).

[q]duvin, 4.8.2005 18:00:
vaikkakin jsp-sorsa näyttää huomattavan erilaiselta kuin normaalin servletin java-sorsa
[/q]

Pakkoa sanoa tähän väliin että tommosen käännetyn jsp:n lukeminen voi olla aika valaiseva ja opettavainen kokemus

Ja itseasiassa nyt voisin kirjata tänne omat vastaukset, eli:

Mitä teknologioita olet käyttänyt?

Java, C/C++, VB, J2EE, DNA, HTML, JSP, ASP, JavaScript, VBScript, DHTML, Perl, XML, XSLT, UML, SQL, Win XP/2000/NT4, Aix, Linux, IBM DB2, MS SQL Server 7/2000, MySQL, IBM Websphere 5, IronFlare Orion, MS IIS, Apache HTTP server, Apache Tomcat

Mikä on suosikkisi ja miksi?

Java

Pidän Javassa kielen syntaksista, isosta luokkakirjastosta, standardeista, isosta määrästä apukirjastoja ja siitä miten nopeaa vauhtia tekniikat kehittyvät.

Mitä heikkouksia suosikillasi on?

Muistisyöppöys ja jo mainittu ja esitelty raskauden maine.

Javayhteisöllä on myös paha tapa keskittyä infrastruktuuripalikoiden rakentamiseen kokonaisuuksien sijasta. Jos haluat tehdä jotain joudut itse kokoamaan omat työvälinesetit ja sovittamaan ne yhteen (ellet halua ostaa jotain valmista).

Mitä teknologioita inhoat? Sydämestäsi?

ASP+COM - Epäselvästi määritelty kieli (asp/vb/vbscript) jolla sai aivan liian helposti tehtyä päivänvaloa kestämättömiä virityksiä. Päälle vielä kaikenlaiset mukavat yllätykset kuten se että NT4:lla com-komponentit ajettiin sisäänloggaantuneen käyttäjän lokaaliasetuksilla (eli lokaalisidonnaiset järjestelmätoiminnot toimivat jenkkiasetuksilla jos kone buutattiin eikä sisään logattu).

Oma tausta?

It-alalla enemmän tai vähemmän vuodesta 2001. Siirryin konsulttipuolelta asiakkaalle töihin 2v sitten.

Okei..

Eli siis R5vison on käytänyt Java väärin kun syteemi kusee..???

Tietääkseni tämä sivusto tai siis sen CMS on tehty J2EE:llä

http://www.finnishdigibusiness.fi/

Päätelin tämän lukemalla sen tehneen yrityksen sivujen tekstit..

Olenko väärässä?

[q]Mark Hamilton, 4.8.2005 18:39:
Okei..

Eli siis R5vison on käytänyt Java väärin kun syteemi kusee..???
[/q]

Ei, vaan mitä luultavimmin koneessasi ei riittäny tehoa pyörittämään rich-text editoriapplettia. Lisäksi appletin downaaminen voi kestää jonkin aikaa ekalla kerralla, varsinkin 256k adsl:ää pitkin.

Satun itse tuntemaan r5visionin kaverit (ihan siitä lähtien kun perustivat firman), enkä usko että he ovat tehneet mitään sen kummemmin "väärin". Ehkä asiakas on ostanut väärän ratkaisun tarpeeseensa (tai myyjä on myynyt väärän ratkaisun).

[q]Mark Hamilton, 4.8.2005 18:42:
Tietääkseni tämä sivusto tai siis sen CMS on tehty J2EE:llä

http://www.finnishdigibusiness.fi/

Päätelin tämän lukemalla sen tehneen yrityksen sivujen tekstit..

Olenko väärässä?
[/q]

CMS näyttäisi perustuvan j2ee:hen, joo. Itse sivuthan voidaan pulauttaa vaikka html:ksi, kun ei niissä mitään dynaamisuutta vaativaa sisältöä (nopealla katsomalla) ollut. Tosin uskon kyllä että ne tulee ihan siitä cms:stä.

Eli kyllä.

Oliko hidasta?

[q]duvin, 4.8.2005 18:54:
---
Mark Hamilton, 4.8.2005 18:39:
Okei..

Eli siis R5vison on käytänyt Java väärin kun syteemi kusee..???

---


Ei, vaan mitä luultavimmin koneessasi ei riittäny tehoa pyörittämään rich-text editoriapplettia. Lisäksi appletin downaaminen voi kestää jonkin aikaa ekalla kerralla, varsinkin 256k adsl:ää pitkin.

Satun itse tuntemaan r5visionin kaverit (ihan siitä lähtien kun perustivat firman), enkä usko että he ovat tehneet mitään sen kummemmin "väärin". Ehkä asiakas on ostanut väärän ratkaisun tarpeeseensa (tai myyjä on myynyt väärän ratkaisun).
[/q]

En muista olisko mulla siloin käytössä vanha paska AMDK62 495 Mhz...

Asiakas oli AVOIN TAMK...

[q]Mark Hamilton,
Eli siis R5vison on käytänyt Java väärin kun syteemi kusee..???
[/q]
Itse en ole sitä mieltä, että appletit olisivat teknologiana välttämättä väärä valinta kaikkiin tilanteisiin.

Veikkaan, että R5Visionin softa kusi vaan siksi, että se on vituilleen koodattu.

[q]duvin, 4.8.2005 18:55:
---
Mark Hamilton, 4.8.2005 18:42:
Tietääkseni tämä sivusto tai siis sen CMS on tehty J2EE:llä

http://www.finnishdigibusiness.fi/

Päätelin tämän lukemalla sen tehneen yrityksen sivujen tekstit..

Olenko väärässä?

---


CMS näyttäisi perustuvan j2ee:hen, joo. Itse sivuthan voidaan pulauttaa vaikka html:ksi, kun ei niissä mitään dynaamisuutta vaativaa sisältöä (nopealla katsomalla) ollut. Tosin uskon kyllä että ne tulee ihan siitä cms:stä.

Eli kyllä.

Oliko hidasta?
[/q]

No ei ole hidasta..

Mitä teknologioita olet käyttänyt?

Mistä asti lasketaan? =)

HTML:ää ja Apachen CGI-APIa C:llä, Apache-moduuleita C:llä, ASP:ia (sitä ekaa versiota, eli käytännössä VBScriptiä) hyvin lyhyen aikaa (onneksi), Javaa, Javaa ja Javaa.


Mikä on suosikkisi ja miksi?

Java. Koska se mahdollistaa juuri niin tarkan kontrollin kuin haluan, kuitenkin niin etten joudu huolehtimaan esim. muistivuodoista tms. HotSpot <3


Mitä etuja se tarjoaa verrattuna muihin teknologioihin?

JIT-käännöksen ja siitä tulevat edut (dynaamiset optimoinnit), yhteensopivuus, selkeät code conventionit (sillon kun niitä käytetään), nykyään pääteknologia ICT-sektorilla.


Mitä heikkouksia suosikillasi on?

Muistisyöpön ja hitauden maine.


Mitä teknologioita inhoat? Sydämestäsi?

VisualBasiccia. Muutenkin inhoan tyypittömiä kieliä. Paitsi tietty perlillä on aina paikkansa =)


(Jokeri)Oma taustasi?

IT-alalla vuodesta nano, tein HTML:ää duunikseni sillon ku Netscapen eka oma selain tuli ulos. Projekti- ja teknologiajohtotehtävissä vuodesta 1999. Oma konsultointilafka vuodesta 2002. Nykyään kylläkin väliaikaisesti vuoden ollut tuossa 3D-maailmassa.

[q]duvin,
Ei, vaan mitä luultavimmin koneessasi ei riittäny tehoa pyörittämään rich-text editoriapplettia. Lisäksi appletin downaaminen voi kestää jonkin aikaa ekalla kerralla, varsinkin 256k adsl:ää pitkin.
[/q]
Hetkinen.. Kuinka rikas sen oikeasti täytyy olla, että modernit koneet ei sitä pyöritä? Tai edes vähän vähemmän modernit? Kyllä mä tossa vaiheessa syyttäisin mielummin softan tekijöitä kuin koneen hitautta jos rich-text editori ei pyöri.

[q]siveys, 4.8.2005 19:07:
Hetkinen.. Kuinka rikas sen oikeasti täytyy olla, että modernit koneet ei sitä pyöritä? Tai edes vähän vähemmän modernit? Kyllä mä tossa vaiheessa syyttäisin mielummin softan tekijöitä kuin koneen hitautta jos rich-text editori ei pyöri.
[/q]

Perkule, ehdit jo jatkaa keskustelua =)

---

Niin, no... Tunnen osan koodareista - enkä siis usko että se on vituilleen koodattu. Se on mitä luultavimmin koodattu nykyään toimistoista löytyvän peruskoneen pyöritettäväksi, mitä tuo Mark Hamiltonin kertoman mukaan ei ollut ajoalustana.

Voin tietenkin olla väärässä =)

O