Pohodový přivýdělek, PHP a MySQL, 350 Kč/hod. z domova. Chceš? Klikni pro více info.
Avatar
Jozef
Člen
Avatar
Jozef:12. února 17:06

Ahojte ľudia,

mám na vás taký dotaz. Som ešte študent a začínam sa popri štúdiu učiť programovať webové stránky a potreboval by som vedieť či sa dá web naprogramovať v Jave. Doteraz som si myslel, že java má celkom iné využitie v praxi a nnaprogramovať web sa dá zvládnuť zase tiež efektívnejšie ako v jave. Avšak, potom mi kamarát posunul tento web: https://kasinoguru-cz.com/, ktorý našiel a údajne je vyzerá to tak, že pri jeho vývoji bola použitá java zo značnej časti. Môžete mi teda prosim niekto ozrejmiť ako to funguje, prípadne aké sú výhody/nevýhody takéhoto využitia Javy? Diki

 
Odpovědět 12. února 17:06
Avatar
Štefan Melich:12. února 17:15

https://www.itnetwork.cz/…-do-jee-j2ee

myslím, že Java alebo C# je ešte lepšia cesta ako php.

 
Nahoru Odpovědět  +4 12. února 17:15
Avatar
DHPICO
Redaktor
Avatar
Odpovídá na Jozef
DHPICO:12. února 17:56

omezení není v podstě žádné, vše co napíšeš v Ruby, Node.js nebo PHP tak napíšeš i v Javě. Výhoda je v rychlosti a stabilitě. V dnešní době v Javě napíšeš API server a frontend třeba v Angularu, který volá onu Javu.

Nahoru Odpovědět  +3 12. února 17:56
Požehnáni budíš oráj
Avatar
Odpovídá na Jozef
Milan Jurkulak:13. února 13:54

Ahoj.
Pokial chces v Jave robit web, je niekolko moznosti.
Pri kazdej budes potrebovat server umoznujuci spustat java servlety, vecsinou sa pouzivaju styri:

  • Tomcat
  • JBoss
  • GlassFish
  • Jetty

Doporucujem Tomcat.
Dalej mozes pouzit rozne frameworky, zalezi na tom, co chces vyvinut.
Pre rest api sa najcastejsie pouziva framework nazyvany Spring, SpringBot.
Je to skvela vec, umoznuje pomocou annotations vytvorit rychle co potrebujes.
Pre web sa pouzivaju najcastejsie:

Osobne skor doporucujem tuto kombinaciu pre web stranky:

  • nodejs + couchdb + handlebars

Milan

Nahoru Odpovědět  +2 13. února 13:54
Everything possible, just know how is missing in most cases...
Avatar
Milan Jurkulak:13. února 13:58

PHP je neprehladne, pomale a zastarale.

C# je jazyk pre male projekty a na platenom ASPX frameworku.

NodeJS ma NPM package manager, coz umoznuje najst jednu z milionov kniznic, presne aku potrebujes priamo z command line.

ukazka: npm search websocket
vysledok:
NAME DESCRIPTION AUTHOR DATE V
bufferutil WebSocket buffer utils =lpinca =3rdeden… 2017-11-03 3
...

alebo najdes balicky: https://www.npmjs.com/search

jednoduchym prikazom mozes kniznicu priamo nainstalovat do projektu:
npm install <pkg> --save

parameter save zabezpeci, ze ked presunies projekt, dependency na tomto balicku sa apise do suboru package.json a potom ked napises: npm install, vsetky balicky sa same stiahnu.

M

Editováno 13. února 14:01
Nahoru Odpovědět  -10 13. února 13:58
Everything possible, just know how is missing in most cases...
Avatar
Lako
Člen
Avatar
Odpovídá na Milan Jurkulak
Lako:13. února 15:31

Jenom k tomu C# - jsi úplně mimo.

  • Nic jako ASPX framework neexistuje. Existuje .NET framework a i ve verzi .NET core, která je multiplatformní a web na ní lze zprovoznit "zdarma" (náklady na běžící server nepočítaje)
  • Naopak v ASP.NET (Core), především v MVC se vytvářejí projekty většího charakteru. MVC architektura je na to právě stavěná. Pod Core existují ještě Razor Pages, které jsou spíš pro menší a stření projekty.
 
Nahoru Odpovědět  +7 13. února 15:31
Avatar
Samuel Kodytek
Redaktor
Avatar
Samuel Kodytek:13. února 21:22

Ahoj,

Vyvíjím svůj maturitní projekt v kotlinu a je to web. Kotlin běží nad JVM takže je to s Javou kompatibilní. Jak říkal Milan Jurkulak tak ano většina webů v Javě se dělá přes Applety v dnešní době, máš na to různé frameworky. Co jsem ale koukal tak je málo JavaEE tutoriálu/článků. Je to trošku komplikovanější si založit server a napsat si v něm nějakou aplikaci.

Ale Applety nepotřebuješ za každou cenu aby si mohl vyvíjet svůj vlastní web v Javě, můžeš si také napsat "svůj vlastní" server, který jenom buildneš jako JAR file a spustíš. Já například používám tuhle knihovnu na webový server v Javě/Kotlinu: https://github.com/ktorio/ktor

Nahoru Odpovědět 13. února 21:22
Programming is thinking, not typing.
Avatar
Odpovídá na Milan Jurkulak
Radoslav Tušan:14. února 1:38

ten npm ktory ospevujes vznikol na myslienke Mavenu v Jave, tak isto ako Gradle... je to neodmyslitelna sucast vacsich projektov koli manazovaniu dependencies... NPM je pokus o kopiu pre node.js

 
Nahoru Odpovědět 14. února 1:38
Avatar
Marian Benčat
Redaktor
Avatar
Odpovídá na Radoslav Tušan
Marian Benčat:14. února 7:05

Npm je to nejhorší, co kdy mezi balickovacimi systémy kdy vzniklo. A nemuze za to ani tak samotne NPM jako neuvěřitelna hloupost JS vývojářů co nemají tušení co je semver

Nahoru Odpovědět  -3 14. února 7:05
In Smalltalk, everything is an object, In Clojure, everything is a list, In Javascript, everything is fucking mistake
Avatar
Petr Čech
Redaktor
Avatar
Odpovídá na Marian Benčat
Petr Čech:14. února 10:57

Můžeš to rozepsat? Docela by mě to zajímalo, sám nemám NPM příliš v lásce, ale objektivně nedokážu říct, proč :D . A potom tu máš třeba bower, co sám doporučuje přechod na npm potom, co byl označen za deprecated.

Nahoru Odpovědět 14. února 10:57
Why so serious? -Joker
Avatar
Marian Benčat
Redaktor
Avatar
Nahoru Odpovědět  -1 14. února 11:31
In Smalltalk, everything is an object, In Clojure, everything is a list, In Javascript, everything is fucking mistake
Avatar
DHPICO
Redaktor
Avatar
Odpovídá na Marian Benčat
DHPICO:14. února 11:37

já zas NPM a PNPM mám celkem dost v oblibě, takže bych taky ocenil zdůvodnění opačního názoru :) a celkem silná slova označit všechny JS vývojáře za hlupáky

Nahoru Odpovědět 14. února 11:37
Požehnáni budíš oráj
Avatar
Marian Benčat
Redaktor
Avatar
Odpovídá na DHPICO
Marian Benčat:14. února 11:50

"hloupost studentů, co nevědí kdy vznikla ČR"

Mluvím o tom, že všichni studenti jsou hloupí a neví kdy vznikla ČR, nebo mluvím o studentech s nevědomostí, kdy vznikla ČR?

To ale nepopírám, že většinu JS vývojářů považuji za hlupáky.

Nahoru Odpovědět 14. února 11:50
In Smalltalk, everything is an object, In Clojure, everything is a list, In Javascript, everything is fucking mistake
Avatar
Marian Benčat
Redaktor
Avatar
Odpovídá na DHPICO
Marian Benčat:14. února 11:57

Každopádně, zaujal mě tvůj slogan na profilu, takže ti povím, že právě to co tam píšeš je jedna z největších nevýhod NPM a ekosystému Javascriptu..

místo, aby vývojář napsal 1 řádku kodu, nebo si 2 mi řádkami kódu rozšířil prototyp, tak si použije balíček, který má 1 řádku kódu, skládá se z 10ti souboru, přináší neskutečný overhead, prochází do bundlingu, treeshakingu a nejideálněji.. V dependencies ho pak budeš mít cavet verzí, takže autor toho balíčku udělá v další patch verzi tolik breaking change ze se z toho pak psoere polovina internetu,.., nebo jeste lepe, polovina internetu prestane fungovat...

Odkazy:
https://www.theregister.co.uk/…t_pad_chaos/
https://github.com/…uber/isarray

Takže.., třeba pro to :-) NPM ekosystém je velikánský omyl, díky silné hlouposti a demenci většiny JS vývojářů. Douofám, že si vážíš toho, že jsem odpověděl.

Nahoru Odpovědět 14. února 11:57
In Smalltalk, everything is an object, In Clojure, everything is a list, In Javascript, everything is fucking mistake
Avatar
DHPICO
Redaktor
Avatar
Odpovídá na Marian Benčat
DHPICO:14. února 13:18

Jsem rád za odpověď, samozřejmě řeším balíčky spíše větší problémy než ty, které bych vyřešil do 100 řádků kódu, breaking changes jsem nějaké drastické za poslední rok práce s tím nezažil, protože používám jen ty, které mají 10k+ stažení každý den, a když jsme u těch článků, já už řeším spíše prevenci před takovými věcmi https://hackernoon.com/…9a8cb347c5b5
:D

Nahoru Odpovědět 14. února 13:18
Požehnáni budíš oráj
Avatar
Marian Benčat
Redaktor
Avatar
Odpovídá na DHPICO
Marian Benčat:14. února 13:41

Jsem velmi rád, že jsi napsal co jsi napsal a dal ten článek..

Rád se s tebou tedy o něco podělím. Rád bych předně řekl, že toto se rozhodně netýká pouze JS, ale obecně veškerého použití 3rd party knihoven.

Jen NPM je v tomto nejpalčivější právě z důvodu minimalizace, distribuce a runtimeu (u třeba milionu počítačů).

Jmenuješ tady 10k stáhnutí. Je tomu 3 týdny, co jsem zjistil, že knihovna co má 250 000+ STAŽENÍ a jejímž autorem je celosvětový poskytovatel SSO identit má v sobě naprosto kritickou chybu (jedná se o NPM balík), který způsobuje, že jakýkoliv projekt, který tento balíček použivá, odesílá přihlašovací tokeny (bearer tokeny) na cití weby.

Knihovna má 160řádků kódu.

Co mě vyděsilo ještě více je to, že po upozornění autorů na tento critical explot jim trvalo 2 týdny, než publishnuli na NPM nový balíček.

Dále bych rád řekl, že jsem také spoluautor odhaleného exploitu na RCE u express.js

Nahoru Odpovědět 14. února 13:41
In Smalltalk, everything is an object, In Clojure, everything is a list, In Javascript, everything is fucking mistake
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 16 zpráv z 16.