Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Příspěvky - noef

Stran: 1 ... 48 49 [50] 51 52 ... 60
736
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 28. 02. 2015, 12:34:29 »
Vidim, ze si tu nekdo dela srandu z Pascalu. Ale on i ted jeste "zije", napr. velmi oblibeny Total Commander (drive Windows Commander) je napsan ve Free Pascalu. A myslim ze i dost veci v Delphi se jeste udrzuje pri zivote.

U Groovy byl velky problem s rychlosti, takze jazyk ziskal negativni povedomi, ktere se spatne meni. Od zavedeni podpory staticke kompilace to tusim bylo celkem pouzitelne.

S Pythonem si zrovna trochu hraju (uroven zacatecnik), dost veci mi ale prijde strasne ukecanych a neintuitivnich. Funkcionalni ficury jako prilis dlouhy zapis lambdy nebo map ala globalni funkce se mi moc nelibi (volani nejdou hezky retezit).

737
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 25. 02. 2015, 17:19:40 »
Nebylo by teda cistsi reseni vracet pri dotazu na DB (pri nepouziti razeni) neusporadanou mnozinu (co se divam na SO, tak v C# to bude asi HashSet)? Takto to pusobi, ze ta abstrakce "DB = list" se snazi spojit dva neslucitelne svety.

Osobne si myslim, ze pro nizkourovnovy pristup k DB staci dobre DSL a neni treba spojovat pristup do DB s pristupem ke kolekci na urovni jazyka i standardni knihovny. Co jsem rychle vygooglil, tak squeryl pusobi pouzitelne:
Citace
def songsInPlaylistOrder =
  from(playlistElements, songs)((ple, s) =>
    where(ple.playlistId === id and ple.songId === s.id)
    select(s)
    orderBy(ple.songNumber asc)
  )

738
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 25. 02. 2015, 16:27:13 »
Osobne to vidim podobne jako ava. Vubec by me nenapadlo, ze nekdy muze nastat situace, ze x.Select(Compose(g, f)) nevrati stejny vysledek jako x.Select(f).Select(g) ??? . IMO takova implementace je dost nesikovna a zaslouzila by prepsani nebo odebrani.

739
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 25. 02. 2015, 15:10:54 »
tiez si myslim, ze tie nazvy su robene preto tak, nakolko LINQ, ako uviedol kolega nado mnou, je dotazovaci jazyk. A ak pouzijeme LINQ, ktory sa dotazuje na nieco do DB a zaroven sa transformuje do TSQL, tak potom Select dava vyznam.
No, ano. MS si jde vlastni cestou, ocenuji, ze jste to uznal. LINQ je zajimava myslenka, ale nevim, jestli neni lepsi pristup vzit obecne operace nad kolekcemi jako vychozi bod a dotazy nad DB brat pouze jako podmnozinu problemu (tak to myslim implementuji i nektere Scala knihovny pro pristup k db).

odporucam pozriet si este take srandicky ako napriklad Reactive Extensions (Reactive Linq).
Existuje nieco podobne v jave(nemyslim nieco co si Frantisek nainstaloval vo verzi 0.23Beta, ale nieco realne pouzivane)?
Scala to myslim primo obsahuje, v Jave je mozne pouzit jako externi knihovnu - Akka (obsahuje i jine veci, nejsem si teda 100% jisty, ze se to nerozdelilo na vice knihoven a Akka nejsou uz jen actori).

Skoda sa tu o niecom bavit. Niekto sa spyta na "Kadial sa ide do obchodu" a postupne dostava odpovede typu "Cerveny stvorec neobsahuje suchy piesok lebo priehladne koliecko moze zabranit pocatiu".
Funguje se tu stejne, jako v ostatnich vlaknech - kdyz je puvodni dotaz zodpovezen, prejde se na pridruzene tema. V tomto pripade kritika Javy a C#.

Strata casu uz len citanim tych zvastov.
Nekteri az s nabozenskou vervou brani jeden jazyk (ze zacatku na me tak pusobili Javisti, ke konci C#isti). Kdyz se ale zjisti, ze MS to opravdu prasi dela po svem, tj. ignoruje zazitou konvenci a vymysli kolo, tak najednou je cele vlakno jen zvasty a oni se zlobi nad tim, jaka ze je to ztrata casu ;D.



Myslim, ze kazdy jazyk slouzi k trochu jinemu ucelu.

Jak tu zaznelo drive, Java se dlouhodobe profiluje jako stabilni a zpetne kompatibilni za kazdou cenu (napr. ta generika, ze). Nove vlastnosti (napr. funkcionalni pristup ke kolekcim, lambdy atp.) se do jazyka dostava pomalu a casto syntaxe neni uchvatna kvuli zachovani kompatibility. Vypada to, ze tu s nami zustane jeste hodne dlouho.

Naopak C# se snazi pridavat co nejvice aktualne popularnich novinek. Je dost mozne ze skonci stejne jako C++, tj. dort pejska a kocicky. (Samozrejme je mozne, ze tak skonci i treba ta Scala. I kdyz tam uz nyni ma rada lidi neprekonatelne problemy s ucenim a pokrocilejsi veci jako ScalaZ je casto vnimana jako vec pro teoretiky, prestoze byl opakovane demonstrovan opak.)

Pokud chce nekdo neco pokrokovejsiho nad JVM (tj. vymanit se z omezeni stability a zpetne kompatibility), zkusi Scalu nebo neco dalsiho (Groovy, Kotlin?). Stejne tak v .NETu je hodne alternativ, ten jiz zminovany F# pusobi hodne solidne. Jazyk a platforma by se mely vybirat podle vlastnosti a vhodnosti pro danou ulohu.

740
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 25. 02. 2015, 12:25:46 »
LINQ se snaží být univerzální, stejný kód lze používat pro kolekce i pro relační DB.
pouzivat terminologii relacni DB u kolekci je snad pouze v MS svete.
Na druhou stranu používat terminologii kolekcí pro relační DB asi také není úplně ideální.
To se deje presne kde? Vetsina jazyku to ma totiz tak, ze pro DB veci pouziva DB terminologii a pro obecne kolekce pouziva terminologii kolekci.

Všude ne. V relačních databázích je selekce výběr řádek a projekce výběr sloupců. MS to prostě nerespektoval a udělal to po svém.
V relacnych databázach SELECT vyberie/vrati vsetky s atributmi/stlpcami ktore mu zadefinujeme a NIC VIAC
SELECT stlpec1, stlpec2
FROM tabulka
...
Kde to MS nerespektuje? Presne takto sa to chova aj v MS
Ano, popsal jste nas problem. MS nerespektuje rozdeleni terminologie na relacni DB a kolekce.

A "Select" z C# opravdu mapuje (v terminlogii kolekci):
Citace
        var list = new List<int>{ 1, 2, 3 };
        var mapped = list.Select(x => "["+ x * 10 +"]");
vraci [10], [20], [30]. Tzn. ze nevybira polozky z puvodni kolekce (vysledky jsou retezce, nesedi ani typ), ale provadi jeji transformaci, ktera se bezne (viz linky vyse) oznacuje jako mapovani.

PS: Jak jsem bastlil ten snippet v C#, tak jsem si uvedomil, jak krasna funkce je (i castecna) type-inference - u List jsem musel uvest <int>, jinak to nesezral :(. Scala se svou castecnou type inference tohle nepotrebuje, ale samozrejme ze na takovy Haskell nema ani omylem.
Citace
Seq(1, 2, 3).map("[" + _ * 10 + "]")

741
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 25. 02. 2015, 11:54:22 »
https://en.wikipedia.org/wiki/Map_%28higher-order_function%29
Citace
In many programming languages, map is the name of a higher-order function that applies a given function to each element of a list, returning a list of results.

Kdyz nalistujeme nize, tak vidime, ze opravdu jen malo jazyku nepouziva klicove slovo "map". Z siroce pouzivanych jazyku jsem si vsiml jen C++ s "transform", ktere je ale na rozdil od "select" vystizne a obtizne zamenitelne.


v relacnich db je to bezne, naopak u kolekci je to silne netypicke

LINQ se snaží být univerzální, stejný kód lze používat pro kolekce i pro relační DB.

Ja chapu motivaci za tou volbou. Jen si myslim, ze konecne rozhodnuti bylo spatne. Pokud totiz mate zakladni rozhled mezi programovacimi jazyky, tak pouzivat terminologii relacni DB u kolekci je snad pouze v MS svete.

742
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 25. 02. 2015, 11:41:51 »
asi sa nevedia zmierit s tym, ze je lepsie ako java.
To jsem nikdy netvrdil. Java je ukecanejsi a prijima pomaleji zmeny, na druhou stranu je stabilnejsi (jako jazyk). "Muj" jazyk je Scala a samzrejme i ta ma svoje chyby (kupr. lepsi generika nez Javovska, ale stale nema na .NETi, coz je dano omezenimi JVM), ale jak jsem psal vyse, ve srovnani s C# je mnohem strucnejsi a vystiznejsi. Jak uvedl Kit, v relacnich db je to bezne, naopak u kolekci je to silne netypicke a pusobi to, ze MS se snazi za kazdou cenu razit svoji "lepsi" cestu.

Projection means choosing which columns (or expressions) the query shall return.
Selection means which rows are to be returned.

kde je spominane mapovanie?
Opet spatny kontext, nalistujte si tam obecne kolekce, ne databaze.

743
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 25. 02. 2015, 11:27:42 »
konkretne Select znamena projekciu.
Select prekladame jako vybrat. Proc teda meni prvky? Proc se chova jako map z ostatnich jazyku? Opravdu intuitivni. Mozna tak leda pro lidi, co nikdy nevideli funkcionalni programovani nebo jiny jazyk krom C#.

neviem o akom mapovani noef rozprava. vidiet, ze casto tu ti ludia pisu o niecom, comu ani samu nerozumeju a len sa snazia za kazdu cenu zdiskreditovat C#. asi sa nevedia zmierit s tym, ze je lepsie ako java.
Problem je, ze to vypada, ze tomu nerozumite vy. Pusobi to, ze jste nikdy nezkusil nic krome (SQL ci) C#, ktery pouziva ne uplne logicke pojmenovani standardnich metod u kolekci, asi aby ulehcil uceni pro lidi se znalostmi SQL. Bohuzel to znamena, ze lide se zkusenostmi z jinych jazyku (napr. Python, PHP, Scala, Java, JavaScript a asi mnoho dalsich) se musi preucovat na unikatni a ne prilis logicky pristup C#.

C# jako jazyk se mi pomerne libi, je hodne pokrokovy (narozdil od Javy). Kdyby ho MS otevrel driv, mozna ani neprejdu do JVM sveta. Nesnazim se za kazdou cenu C# zdiskreditovat, pouze poukazuji na chyby, stejne jako se v tomto vlaknu deje u Javy.

Aha, takže Select nedělá selekci, ale projekci. Jak výstižné!
Presne na to jsem narazel.

Select je z anglictiny, a neznamena filtrovat ale vybrat.
Select vravi ake atributy chces vratit ale nie podla akých podmienok.

Tak je to vsade... ale len asi u teba je to ine, nuz....
"Vybrat" ale neznamena "mapovat", "vybrat" znamena vzit prvky splnujici urcite kriterium = "filtrovat". Nechapu, jak z "vybrat" dostanete "vratit upravene prvky" = "aplikovat funkci" = "mapovat"...

744
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 25. 02. 2015, 09:37:01 »
Ono celkove veci nad kolekcemi (hlavne ty z funkcionalniho sveta) jsou v C# divne a vymykaji se beznym standardum. Napr. select misto (IMO podstatne intuitivnejsiho) map. U select bych cekal, ze dela filtrovani, ne mapovani...

745
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 25. 02. 2015, 09:21:44 »
... Co sa tyka R# ja som ho zatial nepotreboval ale chapem ze si treba propagovat vlastny produkt (neni JetBrains nahodou ceska firma)?

Nepracuji v ani pro tuto firmu. Fakta zustavaji, dokud jsem nezkusil R#, tak jsem netusil, ze VS muze byt jeste lepsi. Pak jsem zkusil IntelliJ IDEA a u toho zustal, snazim se jej pouzivat na vsechno na co muzu. Jak jsem psal vyse, je to nekolik let zpet, je mozne ze Microsoft vse dohnal. Drive ve VS nebylo type-aware naseptavani, v jinych Java IDE mi casto chybela i tak zakladani funkce, jako naseptavani podle camel nebo casti (ne nutne zacatku) identifikatoru (coz doufam uz vsude davno napravili).

protože ten kód v C# je neintuitivní.
intuitivnejsi, ako ten zapis v Jave. Ale bavit sa o takychto kktinach to je tak rootovske :)

Take mi neprijde spojení first s filtrovanim (a s default) semancticky spravne. Navic pokud jedete na co nejmene kodu, tak proc pracujete v C#? Proc jste nezkusil F# nebo jiny jazyk z siroke rodiny .NET?

746
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 24. 02. 2015, 23:08:36 »
A nazorny priklad:

Uplna novinka v Jave 8 (rok 2014):

public Optional<Article> getFirstJavaArticle() { 
    return articles.stream()
        .filter(article -> article.getTags().contains("Java"))
        .findFirst();
    }


A naproti tomu, LINQ v C#, ktery je s nama od roku 2007:

public Article GetFirstJavaArticle()
{
    return articles.FirstOrDefault(x => x.Tags.Contains("Java");
}

Co vam pripada prehlednejsi, citelnejsi a jednodussi na nauceni??

Nad default bych se asi taky napoprve pozastavil, ale je to IMO jen detail.
Ta C# verze se mi zda, ze nedela uplne presne to stejne, co Java verze, ktera vraci Optional (tj. vzdy ne-null wrapper).

Jen pro zajimavost (pokud chcete teda hodnotit delku) Scala verze:
Citace
def firstJavaArticle = articles.find(_.tags.contains("Java"))

747
Studium a uplatnění / Re:C# .NET vs. Java?
« kdy: 24. 02. 2015, 21:54:49 »
Uz len vyvojove prostredia pre .NET su luxusnejsie. Eklips je tragedia ktora furt pada, Android studio je lepsie ale luxusu Viusual Studia sa stale nechyta. Aspon tak hovoria moji kolegovia. Ja sa drzim .NETu k jave ma nikto nedostane.

Je to nekolik let zpatky, co jsem prechazel z C# na Javu (a nasledne Scalu). V casech, kdy bylo VS placene se bez R# nedalo pouzivat. Kdyz jsem vyzkousel IntelliJ IDEA dost me prekvapilo, ze se to rovna placenemu Visual Studiu s placenym R# pluginem, presto je to zdarma dostupne. Co se tykalo prechodu mezi IDE, tak jsem pouze prenastavil zkratky na ty naucene z VS a normalne jsem zacal fungovat. Nic me rozhodne nechybelo. Dokonce si myslim, ze naseptavani bylo (v te dobe, nevim jak ted) kvalitnejsi nez ve VS.

Velmi omezene jsem (po donuceni) vyzkousel Eclipse i NetBeans. Oproti IDEA na mne moc dojem neudelaly. Presto se me ale nikdy nestalo, ze by mi Eclipse zhavaroval (nekdy se vlekl velmi line).

Ja sa drzim .NETu k jave ma nikto nedostane.

Zminujete .NET, takze je fer srovnavat s JVM jazyky - napr Scala je zajimava volba. Oproti Jave jde psat mnohem strucneji a vystizneji. Obsahuje hodne vychytavek a ve srovnani s C# na tom byla dost podobne. Neco malo jsem cetl i o Groovy, nevypada to spatne, ale pro me je to asi moc divoke - dynamicke.

748
Z toho, jak jste formuloval vetu, to pomalu vypadalo, ze lidem vadila ta zadost o vypnuti - obsah sdeleni. Ja si ale myslim, ze mnohem vic vadilo provedeni. Pokud by takto stejne dopadl karmo-metr, tj. ze nebudou lidi na poradne ohnuti a udrzbu, tak si myslim, ze to za to nestoji.

Take netusim, jak presne by se resilo anonymni prispivani. Bez povinne registrace, skryvani ci implicitni negativni karmy anonymu (resp. jejich prispevku) nebo nejakeho podobneho reseni to IMO nema smysl vubec zavadet. Ale zrusenim anonymniho prispivani by odeslo asi nemale % lidi. ???

749
... Vzhledem k tomu, kolik keců tady bylo jenom kvůli přiblblé žádosti o vypnutí AdBlocku...

Ta "priblbla" zadost na nekterych zarizenich zabirala vice jak polovinu obrazovky a nesla trvale vypnout (bez uziti modu/addonu/user skriptu atp.). Pokud pridaji karma system, ktery bude zabirat 60% sirky/vysky, tak asi taky moc lidi nepotesi ;D .

750
O serveru Root.cz / Re:Budoucnost fór na Rootu
« kdy: 15. 02. 2015, 19:37:07 »
Už mi to tu začíná fakt lézt na nerv. Právě jsem zablokoval další bazmeky objevující se při označení textu kdekoliv na serverech IInfo (krom fóra). K zablokování je tvít/xichtbook sdílecí kokotiny jsou nově třeba již 4 filtry pro každý server, původní dva již nestačí, anžto se začala objevovat nějaká nesmyslná šipka nad označeným textem.

Kód: [Vybrat]
www.root.cz##.icon-arrow.icon-arrow-bottom
www.root.cz##.sharer-content.sharer-content--facebook
www.root.cz##.sharer-content.sharer-content--twitter
www.root.cz##.sharer-inner
www.lupa.cz##.icon-arrow.icon-arrow-bottom
www.lupa.cz##.sharer-content.sharer-content--facebook
www.lupa.cz##.sharer-content.sharer-content--twitter
www.lupa.cz##.sharer-inner

Toho magora, co tohle vymýšlí, by měli vystavovat v muzeu.

Sice na to pouzivam Stylish, mozna se to lisi od AdBlocku, ale nestaci skryvat jenom a.sharer-trigger?

Stran: 1 ... 48 49 [50] 51 52 ... 60