• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    TENCOKACISTROMYProgramovani v C#, F# a dalsich jazycich pro .NET, Mono a ostatni CLI implementace
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    NECROMAN: Az na to, ze Reactive Extensions tu jsou uz hooodne dlouho :).
    NECROMAN
    NECROMAN --- ---
    URZA: to reaktivni programovani je ted koukam nejak v mode, jak jsem odkazoval nedavno:
    Úvod do Reactive Extensions - Zdroják
    http://www.zdrojak.cz/clanky/uvod-do-reactive-extensions/
    URZA
    URZA --- ---
    vypada zajimave:

    ReactiveUI
    http://www.reactiveui.net/
    NECROMAN
    NECROMAN --- ---
    BUTHRAKAUR: zajimave, ja vedel akorat o kodu ERR20 na 20%
    BUTHRAKAUR
    BUTHRAKAUR --- ---
    kdyby se nekomu hodila sleva na ebook Programming Windows 8 (http://shop.oreilly.com/product/0790145369079.do) za $6, tak discount code OR111..
    NECROMAN
    NECROMAN --- ---
    zajimave, v C# 5.0 / VS 2012 bude jinak fungovat closure ve foreach cyklech
    Změna sémantiky cyklu foreach v C# 5.0
    http://blog.imp.cz/post/2012/03/19/Zmena-semantiky-cyklu-foreach-v-C-50
    MRTVY_KENNY
    MRTVY_KENNY --- ---
    NECROMAN: jn, jsem zkousel, ale vyzada si to heslo znovu :(
    NECROMAN
    NECROMAN --- ---
    MRTVY_KENNY: jestli se pomoci toho ulozeneho hesla da prihlasit, tak si zapni nejaky network sniffer a odchyt prihlasovaci paket - to by mohlo projit :)
    MRTVY_KENNY
    MRTVY_KENNY --- ---
    nahodou netusite jestli lze nejak dekodovat ulozene ftp heslo z publish xmlka z VS web developeru? je tam userPWD...
    NECROMAN
    NECROMAN --- ---
    Vysla nova knizka od Charlese Petzolda - Programming Windows 6th edition (beta). Po ctrnact dnu bude k zakoupeni jako eBook jen za $10, tak sup a kupovat, kdo to mysli s programovanim Metro aplikaci ve WinRT aspon trochu vazne :)
    Petzold Book Blog - Programming Windows 6th Edition Preview Ebook Is Here!
    http://www.charlespetzold.com/blog/2012/05/Programming-Windows-6th-Edition-Preview-Ebook-Is-Here.html
    MORMEGIL
    MORMEGIL --- ---
    NECROMAN: Nevím, asi je to otázka přístupu. Ale přijde mi trochu zvláštní, pokud GetItemsList<NejakyEnum>(12345) vrátí zcela totéž jako GetItemsList<NejakyEnum>(57).
    NECROMAN
    NECROMAN --- ---
    MORMEGIL: kdyz se tam misto IEnumerable<T> da Array, tak uz to jede :) Jinak hodnoty mimo definici enumu asi neni cilem vracet, ne?
    MORMEGIL
    MORMEGIL --- ---
    NECROMAN: Je otázka, jestli to je jednodušší, čistší nebo co, ale můj první nástřel by byl
    public static IEnumerable<T> GetFlagsBits<T>(T x) where T : struct
    {
    	if (!typeof(T).IsEnum) throw new ArgumentException("Enum value required");
    
    	for(int i = 1; i != 0; i <<= 1)
    	{
    		if (((int)(object)x & i) != 0)
    		{
    			yield return (T)(object)i;
    		}
    	}
    }
    

    Akorát to teda funguje jen na enumy odvozené z intu. To ale ta tvoje verze taky. Navíc ta tvoje verze (plus to, že takhle nejde přeložit ;-) ) nepodporuje hodnoty mimo definici toho enumu.
    NECROMAN
    NECROMAN --- ---
    NECROMAN: neco jsem nasel, to je ale pekna bejkarna :)

    public static List<T> GetItemsList<T>(int enums) where T : struct, IConvertible
    {
    if (!typeof(T).IsEnum)
    {
    throw new Exception("Type given must be an Enum");
    }

    IEnumerable<T> allValues = Enum.GetValues(typeof (T));

    return allValues
    .Cast<int>()
    .Where(i => (enums & i) == i)
    .Select(i => (T) Enum.Parse(typeof(T), i.ToString(), true))
    .ToList();
    }
    NECROMAN
    NECROMAN --- ---
    lze v C# prevest genericky instanci enumu x
    [Flags]
    enum x { }

    na IEnumerable<x> kde kazda polozka bude ten jeden flag?
    GOSHEWAN
    GOSHEWAN --- ---
    NECROMAN: Aha, uz snad chapu. Tomuhle typu vizualizace se rika TreeMap. Algoritmu pro poskladani bloku je nekolik a lisi se prave tim, zda zachovavaji razeni a jak moc jsou ty bloky ctvercovite. Ja na to vzdy pouzival jen hotove vizualizacni knihovny, ktere vetsinou dovolovaly jakztakz konfigurovat vyslednou podobu.
    NECROMAN
    NECROMAN --- ---
    GOSHEWAN: jaky TreeMap a poskladani? resim, jak neco takoveho vykreslit rucne.
    Hilbertova krivka by se tu hodila, protoze ted se to sklada jak pri cteni. Krivka by zachovala postupne zmensovani bloku v jednom smeru a vypadalo by to vice konzistentne.
    GOSHEWAN
    GOSHEWAN --- ---
    NECROMAN: Neni mi uplne jasne jak jsi do toho zakomponoval tu Hilbertovu krivku. Neposlal bys ukazku? Zda se mi, ze jsem uplne nepochopil ceho presne z toho obrazku chces dosahnout (:
    GOSHEWAN
    GOSHEWAN --- ---
    To vypada jako obycejna TreeMap. Pokud ti jde o to "poskladani" tak vetsina toolu by tohle mela vicemene zvladat.
    NECROMAN
    NECROMAN --- ---
    MICTECH: myslim, ze to mam - hezky rekurzivne. Seradit polozky podle velikosti, vzit prvnich n tolik od nejvetsich, aby byl soucet vetsi nez soucet vsech. takto ziskam dve skupiny a kazdou delim dal podobne.
    Vykreslovani pak delat pripadne pomoci Hilbertovy krivky, at to vypada hezky
    Kliknutím sem můžete změnit nastavení reklam