IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Amomym
Člen
Avatar
Amomym:23.5.2013 13:48

ahoj, proč se začalo používat hodně asp.net, jako že soubory mají koncovku .aspx? jakou to má výhodu?

 
Odpovědět
23.5.2013 13:48
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Amomym
Kit:23.5.2013 13:56

Je úplně jedno, jakou má soubor příponu. Podle přípony se však dá udělat asociace na aplikace, které se mají použít pro defaultné spouštění. Microsoft zřejmě nechtěl, aby se nové skripty spouštěly starým interpretrem a proto udělal novou příponu, na kterou asocioval nový interpretr.

Nahoru Odpovědět
23.5.2013 13:56
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Amomym
Člen
Avatar
Odpovídá na Kit
Amomym:23.5.2013 14:05

no, spíše jsem myslel, což jsem neuvedl, proč se to využívá než php?

 
Nahoru Odpovědět
23.5.2013 14:05
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Amomym
Kit:23.5.2013 14:20

Jsou to konkurenční produkty. To je stejné, jako kdyby ses ptal, proč se na webu používá Python nebo Java. Každý má nějaké výhody a nevýhody. ASP.NET má podle mne výhodu v přímé vazbě na Windows. Vývojáři, kteří běžně ladí pro Windows, k tomu mají blíž.

Nahoru Odpovědět
23.5.2013 14:20
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Michal Žůrek - misaz:23.5.2013 14:38

ASP.NET je modernější než PHP.

 
Nahoru Odpovědět
23.5.2013 14:38
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Kit
matesax:23.5.2013 17:29

S tím Windows bych to co píšeš dal až na poslední místo. Hlavní rozdíl je v technologiích samotných. Misaz - najdi si definici PHP a ASP. (ASP.NET nahradilo ASP - ale funguje na společných principech) ASP.NET je kompilované do polotovaru - stránky jsou jako v PHP dynamické avšak kód statický, silně typovaný atd. Zatímco PHP je vyloženě dynamický jazyk. (ASP.NET je jen webová technologie - jazyk jako takový se musí použít nějaký z .NET - C#, VisualBasic.NET,­...) A to je hlavní úskalí ASP.NET - jak píšeš - je to nová technologie, zatímco PHP nasbíralo neuvěřitelnou sumu uživatelů. Kdo by se chtěl od základů přeučovat? A to v obrovském měřítku - syntax, myšlení, statika,... Dále s ASP.NET musí pracovat vyloženě programátor - k tvoření v PHP není třeba být přímo programátor.

Editováno 23.5.2013 17:30
 
Nahoru Odpovědět
23.5.2013 17:29
Avatar
Kit
Tvůrce
Avatar
Odpovídá na matesax
Kit:23.5.2013 17:34

"...k tvoření v PHP není třeba být přímo programátor..."

Bohužel tohle je hodně rozšířený mýtus. Pak ty skripty vypadají jak vypadají.

Nahoru Odpovědět
23.5.2013 17:34
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Kit
matesax:23.5.2013 17:39

Pokud chce dělat v PHP profesionálně, to je jiná... Ale jinak je pro běžného člověka PHP rozhodně otevřenější...

 
Nahoru Odpovědět
23.5.2013 17:39
Avatar

Člen
Avatar
Odpovídá na matesax
:23.5.2013 17:40

A hlavne je ASP.NET (Web Forms) stranka slozena z komponent - objektu, coz dela kod prehlednejsi a snadno rozsiritelny.

 
Nahoru Odpovědět
23.5.2013 17:40
Avatar
Kit
Tvůrce
Avatar
Odpovídá na
Kit:23.5.2013 17:43

PHP také, ale programátora k tomu nenutí.

Nahoru Odpovědět
23.5.2013 17:43
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Tvůrce
Avatar
Odpovídá na
matesax:23.5.2013 17:48

To i MVC - všechno je to objektové... :)

Kit

Ať je to mýtus či nikoliv - nesejde na pravdě, ale na tom, co si lidé myslí - a pokud si myslí většina, že PHP je schůdnější, co asi použijí...

 
Nahoru Odpovědět
23.5.2013 17:48
Avatar
Kit
Tvůrce
Avatar
Odpovídá na matesax
Kit:23.5.2013 17:52

PHP je o něco schůdnější, ale jen co se týká psaní kódu. Ladění je o dost problematičtější, proto by se daleko důsledněji mělo provádět testování. Mimo jiné i proto, že každá verze PHP má mírně odlišné chování a není nic jednoduššího, než po upgrade spustit testy...

Testování v PHP dělá málokdo. Kdekdo si myslí, že k tomu potřebuje PHPUnit, které však na free serverech nebývá dostupné.

Editováno 23.5.2013 17:54
Nahoru Odpovědět
23.5.2013 17:52
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Luboš Běhounek Satik:23.5.2013 19:57

Delat weby v asp.net je oproti php rychlejsi a prijemnejsi, jsou pro to lepsi vyvojove nastroje (MSVS), lepe se to ladi, treba PHP prakticky moc debugovat nejde.

Nahoru Odpovědět
23.5.2013 19:57
https://www.facebook.com/peasantsandcastles/
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Luboš Běhounek Satik
Kit:23.5.2013 21:47

Když máš kvalitní textový editor, tak je to jedno.

Nahoru Odpovědět
23.5.2013 21:47
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Luboš Běhounek Satik
matesax:23.5.2013 22:08

Zajímalo by mne, jak může být pevné typování a celková statika .NET rychlejší, než dynamický PHP... Mezitím co v .NET budu psát typy, v PHP už budu mít půlku aplikace... :)

Editováno 23.5.2013 22:10
 
Nahoru Odpovědět
23.5.2013 22:08
Avatar
Odpovídá na matesax
Luboš Běhounek Satik:24.5.2013 0:00

Kit: jedno to neni, uz z principu jak oba jazyky funguji. Navic jsem jeste poradny PHP editor nepotkal :)

matesax: Tohle muze napsat jen nekdo, kdo v ASP.NET poradne neprogramoval.
V .NET mas spoustu komponent hotovych, takze ty bezne veci se delaji samy za tebe (ale muzes je i lehce upravit, takze te to neomezuje).
Takze zatimco ty se budes v PHP placat s loginem, ja uz budu mit pulku aplikace :) .

A rozdil v rychlosti kodu zase tak velky neni, ja sice musim pred promenne psat, jakeho typu jsou, ale ty ten cas zase ztratis psanim znaku $ a zjistovani, jaky zhruba typ dat ti dana funkce vraci... :)

Nahoru Odpovědět
24.5.2013 0:00
https://www.facebook.com/peasantsandcastles/
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Luboš Běhounek Satik
matesax:24.5.2013 5:45

Tohle může napsat jen někdo kdo v ASP.NET nikdy nedělal. Je mnohem výhodnější začínat s prázdným projektem... UAC je katastrofa - než to předělávat... Dále - v čem to žiješ? To právě v PHP existuje spousty a spousty šablon... A .NET je jen jeden Framework - PHP jich má víc...

 
Nahoru Odpovědět
24.5.2013 5:45
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Luboš Běhounek Satik
matesax:24.5.2013 5:48

Syntax je naprosto odlišný - už jen funkčnost stringu, zkrácené zápisy atd...

 
Nahoru Odpovědět
24.5.2013 5:48
Avatar
Odpovídá na matesax
Luboš Běhounek Satik:24.5.2013 9:44

Ja v ASP.NET delal, zivim se tim, programuju v tom ve firme, zivil jsem se i PHP ve firme... :)

Pokud pod pojmem UAC chapeme oba to same - ty otravny potvrzovaci okynka pri instalaci/zmene nastaveni neceho ve win, tak ty se daj vypnout, ale nevim, jak se to tyka ASP.NET.

.NET je jen jeden, coz je dobre, nemusim se ucit milion ruznych frameworku, kdyz prijdu nekam do firmy :)
Ale existuje spousta baliku komponent, ktere ti muzou praci jeste vic ulehcit (pokud by ti treba nestacily ty zakladni).

BTW rychlost vyvoje aplikace neni jenom o rychlosti psani kodu.

Nahoru Odpovědět
24.5.2013 9:44
https://www.facebook.com/peasantsandcastles/
Avatar
Kit
Tvůrce
Avatar
Odpovídá na matesax
Kit:24.5.2013 9:51

Můj editor píše datové typy za mne, takže mě to nezdržuje. To spíš trvá déle napsání toho "$" před každou proměnnou a vzpomínání, jak se jmenuje funkce, kterou zrovna potřebuji.

Nahoru Odpovědět
24.5.2013 9:51
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
David Hartinger:24.5.2013 9:55

Srovnáváte agilní a korporátní přístup. Každý se hodí na něco jiného, obvykle se na menší projekty více hodí agilní přístup (dynamické jazyky jako PHP) a na větší, korporátní jazyky silně typované (C#). Rychlost psaní kódu je stejná, jelikož v ASP díky typové kontrole odpadá část debuggování.

Nahoru Odpovědět
24.5.2013 9:55
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:24.5.2013 9:58

Pokud u obou přístupů použiješ testování, odpadá debugování u obou.

Nahoru Odpovědět
24.5.2013 9:58
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:24.5.2013 10:03

Souhlasím, jen jsem narážel na častý omyl, že psaní datových typů prodlužuje dobu vývoje.

Nahoru Odpovědět
24.5.2013 10:03
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Luboš Běhounek Satik
Kit:24.5.2013 10:04

Kvalitní editory existují, dokonce nejen pro PHP. Jen u nich v základní sestavě není patrná převaha nad ostatními, protože nemají žádné ikony ani menu. Prostě na první pohled vypadají jako Notepad s obtížnějším ovládáním, ale uvnitř jsou nabušené vším, co si dovedeš představit.

Nahoru Odpovědět
24.5.2013 10:04
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:24.5.2013 10:48

Je zvláštní, jak autoři videotutoriálů na psaní programů v IDE píší poctivě každé písmenko. Nemají udělané žádné zkratky, žádné automatické opravy. Celé IDE používají vlastně jen jako kontextový slovník, jako by intellisense bylo vrcholem efektivnosti editorů. Maximálně si nechají vygenerovat nějaký stub.

Psaní datových typů vůbec nezdržuje, i když jsem to zpočátku tak vnímal. Vlastně to zdržuje jen ty, kteří ten jazyk neovládají.

Nahoru Odpovědět
24.5.2013 10:48
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
matesax
Tvůrce
Avatar
Odpovídá na Luboš Běhounek Satik
matesax:24.5.2013 14:09

Já teže dělám ve firmě - ale weby dělám i mimo. Používám přitom obě technologie. UAC = Users Account Control -> systém uživatelů

S tím psaním typů jsem to vzal s nadsázkou - zahalil jsem tím obsáhlejší problém. Každopádně jak už tu bylo řečeno - PHP je rychlejší, ale jen v určitém měřítku... Asi to tedy nebudu šířit jako obecný fakt, jelikož jinak si to každý přebere po svém.

 
Nahoru Odpovědět
24.5.2013 14:09
Avatar
Odpovídá na matesax
Luboš Běhounek Satik:24.5.2013 14:17

Souhlasím s tím, že psát v PHP je rychlejší pro malé skripty nebo jednoduché weby, ale čím je web složitější, tím více se projevují výhody v ASP.NET.

Nahoru Odpovědět
24.5.2013 14:17
https://www.facebook.com/peasantsandcastles/
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na matesax
David Hartinger:24.5.2013 14:44

Jak může být PHP (interpret) rychlejší než C# (virtuální stroj)? To by mě zajímalo.

Nahoru Odpovědět
24.5.2013 14:44
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:24.5.2013 14:51

Může. PHP totiž skripty nejprve kompiluje do bajtkódu. Hromada funkcí v PHP je napsána v C/C++, takže pokud je někdo umí využívat, může z PHP vyždímat i větší výkon, než z C#. Záleží však na řešené úloze, bývá to i obráceně.

Nahoru Odpovědět
24.5.2013 14:51
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:24.5.2013 14:57

Co jsem se díval, tak lépe vychází C#. Je ale pravda, že stejně 90% času skriptu zabere práce s databází. Na druhou stranu konkurovat MySQL není těžké.

Nahoru Odpovědět
24.5.2013 14:57
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:24.5.2013 15:07

To opravdu není. SQLite mi vychází cca 5× rychlejší než MySQL a DB4 dokonce 70× rychlejší.

C# je na rozdíl od PHP univerzální jazyk. Proto pro určité typy úloh je výkonnější jeden, pro jiný typ úloh druhý. Octave to v hrubých výpočtech natře C# na plné čáře, ale nedá se použít jako univerzální jazyk, i když je úplný. Octave je čistý interpretr.

Nahoru Odpovědět
24.5.2013 15:07
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Luboš Běhounek Satik:24.5.2013 15:59

Nenapada me moc uloh, kde by provadeni PHP kodu mohlo byt rychlejsi, co jsem koukal na ruzne grafy a benchmarky, tak byl c# temer vzdy nekolikrat rychlejsi.

Je to i docela logicke, treba:

  • V c# jsou primitivni typy
  • Pole je v php vlastne ve skutecnosti hashtable, coz je vzdy pomalejsi nez obycejne pole
  • c# kod je ve vysledku zkompilovan v podstate na nativni kod, jak je to presne u php netusim, ale ten tedy je predpokladam jen interpretovany, pripadne zkompilovany do bajtkodu (ale ten bajtkod je pak take interpretovan)
  • staticka typova kontrola u c#, pri vypoctech nemusi c# zjistovat, jak ma s promennou pracovat, proste uz to vi od kompilace
Nahoru Odpovědět
24.5.2013 15:59
https://www.facebook.com/peasantsandcastles/
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Luboš Běhounek Satik
Kit:24.5.2013 16:15

Pokud v PHP použiješ funkci, která v C# není, tak bude zpravidla rychlejší. Připouštím, že ve většině případů bude C# rychlejší. Jen se C# nedá použít všude, stejně jako PHP se také nedá použít všude.

Nativnost kódu C# a PHP je v podstatě srovnatelná. PHP není čistý interpretr, C# není čistý kompilátor. Oba kompilují do bajtkódu, který je následně interpretován.

Primitivní datové typy v PHP téměř nejsou potřebné. Stejně tak je nepotřebné pole. V PHP se pracuje hlavně se seznamy a slovníky. Statická typová kontrola v C# také není a ani není u OOP možná.

Nahoru Odpovědět
24.5.2013 16:15
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Luboš Běhounek Satik:24.5.2013 16:23

"Oba kompilují do bajtkódu, který je následně interpretován."

Omyl, C# kód není interpretován, tam, kde ho spouštíš, je normálně zkompilován do strojových instrukcí, tam už žádná interpretace neprobíhá.

Nahoru Odpovědět
24.5.2013 16:23
https://www.facebook.com/peasantsandcastles/
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Luboš Běhounek Satik
Kit:24.5.2013 16:37

Kompilace JIT, která v PHP není. PHP to dohání tím, že má víc knihoven zkompilovaných do nativního kódu běhového prostředí PHP.

Pokud budeš v PHP používat cykly, bude výrazně pomalejší, než C#, protože se bude hodně interpretovat bajtkód. Pokud však místo nich budeš používat knihovní funkce, které jsou optimalizovány, PHP může být rychlejší.

Většina programátorů na to však kašle, látají skripty v PHP jak se dá a proto vychází programy v PHP výrazně pomalejší, než v C#.

Nahoru Odpovědět
24.5.2013 16:37
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
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 35 zpráv z 35.