it-swarm-eu.dev

Kdy je Java) dobrá volba pro vývoj webových aplikací?

Kdy je Java) dobrá volba pro vývoj webových aplikací?

Neříkejte prosím, „pokud máte vývojový tým, který zná pouze Javu.“

35
Gulshan

Vzhledem k mnoha dostupným rámcům, vyspělosti platformy atd. Jsem v pokušení říci „téměř vždy“. Zde je několik důvodů, proč byste neměli Java používat:

  • jako čistě MS shop, pravděpodobně to raději uděláte .net způsobem
  • pokud potřebujete nejlevnější možný webhoster, máte pravděpodobně pouze PHP jako svou volbu)
  • pokud to chcete udělat co nejrychleji, Ruby na Rails, Grails nebo Django jsou pravděpodobně lépe vyhovující vašim potřebám)
  • pokud váš vývojový tým zná pouze XYZ, kde XYZ! = Java, raději XYZ využijte
35
user281377

Java is použitá na malých a středních webech. Klíčovým bodem je, že existuje mnohem méně webhostingů pro Java webů než pro PHP např.), Což znamená, že pokud nemáte dostatek zdrojů pro hostování vlastního webového serveru, pravděpodobně si nevyberete Javu.

Všimněte si, že s Java EE 6, zejména webovým profilem) je zahrnuto mnoho standardních technologií, které mohou vytvářet velmi výkonné webové aplikace, aniž by bylo nutné kódovat mnoho.

Vezměte prosím na vědomí, že se to nedávno změnilo pomocí Google Application Engine, který vám umožňuje nasadit standardní Java webové aplikace (s několika omezeními)) do cloudu zdarma pro weby s nízkým až středním provozem.

19
user1249

Pokud je vaše platforma UNIX/Linux a potřebujete bohatou sadu nástrojů, jako je mapování objektů/relací, zabezpečení, komplexní orchestrace webových služeb atd.
(Nemluvíme o jednoduchých webech, že?)

12
Sorantis

Pokaždé, když mě další Java tým srazí, vyhodím Steam tím, že vyhledám podobné otázky. Dovolte mi to zopakovat. Jsem klientem dev a jsem už téměř 5 let. Pracoval jsem na webech od jednorázových mikroobsahů s většinou obsahem, přes weby tak masivní jako Sears, až po sofistikovanější weby typu aplikací, kde je potřeba opravdu hluboká znalost uživatelského rozhraní. Zabýval jsem se Rails, PHP, .net webovými formuláři (ew), .net MVC (mnohem lepší) a uspořádáním kytic Java řešení pro vývoj webových aplikací doprovázenými devs a týmy, které byly všechny katastrofami poradit si s. Píšu také trochu Python a začínám kopat Djanga.

Moje zkušenost s týmy Java byla všeobecně hrozná. Nástroje jsou vždy PITA. Devs nikdy nechtějí věřit, že udělali něco špatného a přimět je, aby znovu investovali svůj vlastní trávník, jakmile vyloučíte problém na svém konci, je jako tahat zuby. První obětí jednání s týmy Java podle mých zkušeností je vývojový čas převedený na e-mailový čas, který píše několik zdlouhavých vysvětlení, proč je problém definitivně na jejich konci. HTML obvykle není jejich problém, pokud jej vlastně nechcete mít pod kontrolou. Pak je pravděpodobné, že všechno půjde do pekla na jejich konci, protože se vlastně chcete pohybovat několika divy vyšší úrovně.

Existují věci o jazyce, který se mi nelíbí, ale myslím si, že skutečným problémem je kultura a skutečnost, že přijetí je tak rozšířené, máte uprostřed uprostřed tunu průměrnosti. Kultura, u které mám podezření, pramení ze způsobu, jakým je uváděna na trh Java. Napište jednou, nasaďte všude. Překlad: „Musíte se naučit jen jednu věc!“ Lidé, kteří shledají, že přitažlivé v podstatě chtějí ovládat Java jako jedno gigantické kladivo pro každý hřeb s minimem skutečně honování svého řemesla, pokud jde o vývoj webových aplikací.

Takže pokud máte devs, kteří znají Java a další jazyky, ale stále preferujete Javu, řekl bych, ano, pokračujte, pokud to vypadá jako správné řešení. Ale pokud máte Java devs, kteří znají Java a všechno ostatní jen stěží splňuje kritéria, aby to ve svém životopisu skutečně odráželo, nechte je sestavit jednoduchou aplikaci s různými polokomplexních stránek na konci HTML a zkuste tento jednoduchý test. Přerušte nějaký HTML. Zkuste je přimět, aby zjistili, co je špatně. Pokud je okamžitým problémem, který začínají řešit, obviňování ze sebe, držte je! @ # $ Od vývoje webových aplikací. Web dev je multidisciplinární a vyžaduje aktivní zájem v oboru, aby byl úspěšný. Není to místo pro lidi, kteří chtějí mít pouze znalosti jednoho jazyka a jsou zděšení problémy, než mají zájem o jejich řešení.

Netvrdím, že samotná Java je kořenem nekompetence a slyšel jsem, že jaro je dobré. Jsem si jistý, že tam jsou kompetentní Java týmy. Ještě jsem se do jedné nedostal a nemyslím si, že je to náhoda. Myslím, že Sun s tím má hodně společného. Také si myslím, že provozování webových týmů, jako jsou IT oddělení nebo pod nimi, má s tím mnoho společného.

9
Erik Reppen

Java je naprosto v pořádku pro malé webové stránky. Můžete například zajistit, aby stránky JSP fungovaly velmi rychle například s webovým serverem Java, jako je Tomcat .

Přestože podle mých zkušeností je Java běžnější pro velké weby, kde je potřeba komplexnějšího zpracování na straně serveru - v tomto případě najdete sofistikovanější Java rámce používané jako JavaServer Faces (JSF).

Je důležité si uvědomit, že úplná instalace Java historicky nebyla k dispozici v mnoha levných nastaveních webhostingu, což může vysvětlit prevalenci jiných jazyků, jako je PHP v těchto prostředích.

5
mikera

Hlavní důvody použití Java ve vývoji webových aplikací) jsou následující:

  • Klient to požaduje. K lepšímu nebo horšímu, někteří klienti mají „přijaté technologické seznamy“, a pokud navrhnete něco, co není na tomto seznamu, měli byste mít opravdu dobré vysvětlení proč - a proč něco na seznamu nelze použít.
  • Vyvíjejte na Windows, nasaďte na Unix. Většina vývojových strojů jsou Windows, některé jsou Mac a jen velmi málo jsou Linux - stejně jako byste očekávali u běžných klientských počítačů. Na serveru však budete stejně pravděpodobně vidět nějakou formu Unixu, jako jste server Windows. Java je pravděpodobně nejblíže k psaní, jakmile ji nasadíte kdekoli (není to dokonalé, ale lepší než některé alternativy).
  • Volba managementu. Přiznejme si to, že výběr Java přes jiný jazyk) bude mít více společného s možností najít programátory a nahradit členy týmu, kteří opouštějí projekt, než aby byli založeni čistě na výhodách jazyka.
2
Berin Loritsch

Technicky vzato:

  • Pokud můžete definovat architekturu, která je přístupná optimalizátoru hot-spot.
  • Pokud očekáváte potřebu masivního OO režie Java ukládá).

Kdybych začínal s webovou aplikací, použil bych Ruby on Rails) a navrhl takovým způsobem, že hotspoty by mohly být vyměněny, když RoR dosáhne svého výkonu. limit měřítka.

Java má jednoznačný zápach COBOLu a „low-end kodéry používají Javu“, které na ní visí, a fiasko Oracle nepomáhá reputaci. Pokud máte volba, vyberte jazyk, který přitahuje nejlepší devs.

2
Paul Nathan

Je to jednoduché: použijte Java, kdy hlavní výkon je back-end. Existuje více režijních nákladů při kódování, ale kód bude spuštěn v 1/200. až 1/500. časově doslova. Php, Ruby a další dynamicky psané jazyky jsou vždy pomalejší než Java nebo .net servery).

Většina řešení pro web to nebude potřebovat. Twitter se neopustil Rails), dokud nezačali například dosahovat vrcholu popularity.

0
Rian Fowler