Diskuze: asp.net
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 35 zpráv z 35.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
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.
no, spíše jsem myslel, což jsem neuvedl, proč se to využívá než php?
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íž.
ASP.NET je modernější než PHP.
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.
"...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í.
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ší...
A hlavne je ASP.NET (Web Forms) stranka slozena z komponent - objektu, coz dela kod prehlednejsi a snadno rozsiritelny.
To i MVC - všechno je to objektové...
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í...
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é.
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.
Když máš kvalitní textový editor, tak je to jedno.
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...
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...
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...
Syntax je naprosto odlišný - už jen funkčnost stringu, zkrácené zápisy atd...
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.
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.
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í.
Pokud u obou přístupů použiješ testování, odpadá debugování u obou.
Souhlasím, jen jsem narážel na častý omyl, že psaní datových typů prodlužuje dobu vývoje.
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.
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í.
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.
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.
Jak může být PHP (interpret) rychlejší než C# (virtuální stroj)? To by mě zajímalo.
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ě.
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é.
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.
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:
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á.
"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á.
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#.
Zobrazeno 35 zpráv z 35.