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

Člen

Zobrazeno 13 zpráv z 13.
//= 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.
Uložit do souboru. A pak ji z něj zase načíst.
using (StreamWriter sw = new StreamWriter(new FileStream(@"soubor.txt", FileMode.Create)))
{
sw.WriteLine("Text");
sw.Flush();
}
// u načítání se nemusí dávat stream dovnitř, stačí jen cesta k souboru
using (StreamReader sr = new StreamReader(new FileStream(@"soubor.txt", FileMode.Create)))
{
string s;
while ((s = sr.ReadLine()) != null) // tato podmínka musí být přesně
{...}
}
Nejlépe uložením hodnoty do databáze. Vymýšlet nový formát souboru dnes už nemá význam.
Pro práci s databázemi musíš umět velmi dobře kolekce a dotazy. Zatím použij co radí sczdavos.
Jinak databázím se tu budeme věnovat, ale myslím, že máš ještě čas, je k tomu samozřejmě potřeba znalost objektů a podobně, kterou si můžeš zatím číst a učit, je tu toho spoustu.
Většina programovacích jazyků dnes má nějakou databázi přímo v sobě nebo se dá stáhnout hotová knihovna (často velmi malá), která se k aplikaci přilinkuje.
Ovšem do C# moc nevidím, v něm se převážně asi bude používat MS Access. Mělo by stačit nakouknout do manuálu.
To jsem netušil, že v C# jsou s tím takové obstrukce. V PHP mám s databázemi méně práce, než s obyčejnými soubory.
Ano, C# má velmi pěknou embedded databázi, ale bez znalosti OOP nepochopí ORM a bez toho asi nemá smysl s tím vůbec začínat. Asi tuším, na jaké je úrovni a ptá se jen na uložení jedné proměnné.
Máš samozřejmě s DB pravdu, ale prostě je to složitější a to hlavně pro začátečníka.
Kolem ORM je hlavně mnoho řečí. Nejvíc zmatků do toho vkládají ti, kteří se snaží objekty napasovat na relační databáze.
Obráceně to jde mnohem jednodušeji. Stačí myslet relačně a použít k tomu objekty.
já osobně používám soubory. například teď jsem řešil jednu zakázku
pro tvorbu eknih, a moje řešení znělo:
vytvoření webové aplikace, kde jsou všechny textboxy, tlačítka, atd.
bude na webu, kde je tvoje pozadí (samozřejmě pokud máš rozmyšleno,
jaké)
člověk si tam vyplní různé věci, jako název, obrázek obálky,
životopis, o knize, atd
bude moci otevírat soubory s těmito věcmi. dále tam budou nástroje na
zvýraznění textu,
tabulek, obrázků (pokusím se o načítání docx a doc formátů).
po stisknutí tlačítka uložit se zavolá metoda převeď a ulož, která
přeloží text
a uloží do souboru (X)HTML. následně se zapíše do souboru, kde jsou odkazy
na knihy.
odkaz na právě vytvořenou knihu.
PS: tady zrovna vidíš výhodu souborů.
navíc, když ti nějaký web spadne (teď mě omluv jestli řeknu blbost), tak
se databáze vymaže.
zato soubory ne
Databáze je fyzicky uložena samozřejmě také v souborech (jak jinak), princip je tedy naprosto stejný. DB se tedy s pádem serveru nevymaže, protože je uložena na disku, pouze některé její části jsou v operační paměti jako cache. Výhodou DB je, že již nemusíš řešit věci jako vyhledávání nebo bezpečnost, protože je za tebe vykonává tzv. databázový stroj.
Ty budeš mít třeba problém s editací knih, protože je ukládáš již převedené do HTML. Kdybys měl hodnoty v DB a z nich knihu renderoval pomocí server-side jazyka, bylo by to mnohem snažší.
no myslel jsem takhle:
1.převede se na HTML
2.uloží se do souboru
3.do dalšího souboru zapíšu odkaz na HTML soubor, kde je kniha
4.díky za objasnění databází.
Také jsem kdysi preferoval ukládání do souborů, než jsem zjistil, že databáze je rychlejší a spolehlivější. Také za tebe vyřídí spoustu záležitostí (ACID), které musíš v souborech obstarat ručně a které určitě neřešíš.
Vyzkoušel jsem už 11 databází, na běžném hostingu jich je běžně dostupných 5-6 druhů s různými vlastnostmi. Výběr je velký, stačí se jen naučit je používat.
Tvůj přístup je dobrý, dokud nebudeš potřebovat fulltextové vyhledávání mezi články nebo nebudeš potřebovat řešit automatické vazby mezi nimi.
Databáze je také lépe zabezpečena proti útokům XSS. Schopní
programátoři si však rádi udělají díry i do databáze
Zobrazeno 13 zpráv z 13.