Anonymní profil p3can – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

Anonymní profil p3can – Programujte.comAnonymní profil p3can – Programujte.com

 

Příspěvky odeslané z IP adresy 77.92.213.–

p3can
.NET › zamzrani Serveru TCP/IP
3. 4. 2016   #209582

#16 TD
kliknu serverStart_Click pro nastartovani serveru pak client1Start_Click, client2Start_Click. server posila zpravy pomoci serverBroadcast_Click a klienti pomoci client1Send_Click a client2Send_Click. tam nic nepada a vsechno je asynchroni a nezamrza UI. neni osetrene to ze posilas zpravy na zavrene spojeni.


 

p3can
.NET › zamzrani Serveru TCP/IP
1. 4. 2016   #209543

#14 TD
jelikoz uz sem to psal mockrat tak uz se me to nechce psat nejak extra osetrene tady je nastrel jak to ma vypadat. jediny problem je tam v tom ze TCP neumoznuje detekovat vypadek spojeni nekde mezi clientem a serverem. na to se pouziva mechanismus "heartbeat" pripadne vyssi trida nez je tcp.

using System;
using System.Collections.Generic;
using System.IO;
using System.Net.Sockets;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Kecalek
{
    public partial class Form1 : Form
    {
        private Dictionary<string, StreamWriter> clients = new Dictionary<string, StreamWriter>();
        private TcpListener server;
        private TcpClient client1;
        private StreamWriter client1writer;
        private TcpClient client2;
        private StreamWriter client2writer;
        public Form1()
        {
            InitializeComponent();
        }

        private void serverStart_Click(object sender, EventArgs e)
        {
            server = new TcpListener(789);
            Task.Factory.StartNew(() =>
            {
                int i = 0;
                server.Start(10);
                Write("Server started");
                while (true)
                {
                    var clientAcceptedByServer = server.AcceptTcpClient();
                    var name = "Client" + ++i;
                    clients.Add(name,new StreamWriter(clientAcceptedByServer.GetStream()) {AutoFlush=true});
                    StartListening(clientAcceptedByServer, name);
                }
            });
        }

        private void StartListening(TcpClient serverClient, string name)
        {
            Write("Server accept " + name);
            Task.Factory.StartNew(() =>
            {
                using (var reader = new StreamReader(serverClient.GetStream()))
                {
                    while (true)
                    {
                        var data = reader.ReadLine();
                        if (data == null)
                            break;
                        Write(name + ": " + data);
                    }
                    Write("Server detect " + name + " is disconnected");
                    clients.Remove(name);
                }
            });
        }

        private void Write(string text)
        {
            if (InvokeRequired)
                this.Invoke((Action) (() => listBox1.Items.Insert(0,text)));
            else
                listBox1.Items.Insert(0,text);
        }

        private void client1Start_Click(object sender, EventArgs e)
        {
            Task.Factory.StartNew(() =>
            {
                client1 = new TcpClient("localhost", 789);
                client1writer = new StreamWriter(client1.GetStream());
                client1writer.AutoFlush = true;
                using (var reader = new StreamReader(client1.GetStream()))
                {
                    while (true)
                    {
                        var data = reader.ReadLine();
                        if (data == null)
                            break;
                        Write("Client1  recieved:"  + data);
                    }
                }
                Write("Client1 disconected");
            });
        }

        private void serverBroadcast_Click(object sender, EventArgs e)
        {
            Write("Server broadcast message");
            foreach (var client in clients.Values)
            {
                client.WriteLine("Message text");
            }
        }

        private void client1Send_Click(object sender, EventArgs e)
        {
            Write("Client 1 sending message");

            client1writer.WriteLine("Client1 text");
        }

        private void client2Start_Click(object sender, EventArgs e)
        {
            Task.Factory.StartNew(() =>
            {
                client2 = new TcpClient("localhost", 789);
                client2writer = new StreamWriter(client2.GetStream());
                client2writer.AutoFlush = true;
                using (var reader = new StreamReader(client2.GetStream()))
                {
                    while (true)
                    {
                        var data = reader.ReadLine();
                        if (data == null)
                            break;
                        Write("Client2  recieved:" + data);
                    }
                }
                Write("Client2 disconected");
            });
        }

        private void client2Send_Click(object sender, EventArgs e)
        {
            Write("Client 2 sending message");

            client2writer.WriteLine("Client2 text");
        }

        private void serverStop_Click(object sender, EventArgs e)
        {
            server.Stop();
            foreach (var client in clients.Values)
                client.Dispose();
        }

        private void client1Stop_Click(object sender, EventArgs e)
        {
            client1.Close();
        }

        private void client2Stop_Click(object sender, EventArgs e)
        {
            client2.Close();
        }
    }
}
p3can
.NET › zamzrani Serveru TCP/IP
31. 3. 2016   #209530

#11 TD
1ni vlakno bude na UI (standartni hlavni vlakno jak je ted)

2he vlakno bude obsahovat nekonecny while a metodu AcceptTcpClient.

pokud 2 he vlakno prijme klienta tak nastartujes dalsi 2 vlakna jedno na cteni z klienta a druhe na zapis do klienta

vlakna startuj pres Task.Factory.StartNew(()=>{}); a parametry si predavej pres closure v lambdach

kapis?
 

p3can
.NET › WinForm C# - MouseMove + Panel
22. 3. 2016   #209407

#1 BDS
https://msdn.microsoft.com/en-us/library/windows/desktop/ee418864%28v=vs.85%29.aspx

p3can
.NET › NamedPipeClientStream BeginR…
22. 3. 2016   #209405

#9 hlucheucho
a nastavil su tu pipu na asynchroni zpracovani v konstruktoru?

tady je kod co funguje pro pralalelni cteni i zapis (je to jen ukazka takze neni moc hezky)

        static void Main(string[] args)
        {
            int serverMessage = 1;
            int clientMessage = 1;
            int sleepTime = 1;
            int bulkWrite = 200;
            int stopLimit = 5000;
            object serverSyncRoot = new object();
            object clientSyncRoot = new object();
            Task.Factory.StartNew(() =>
            {
                var server = new NamedPipeServerStream("moje", PipeDirection.InOut, 1, PipeTransmissionMode.Byte, PipeOptions.Asynchronous);
                Console.WriteLine("Server-connecting");
                server.WaitForConnection();
                Console.WriteLine("Server-connected");
                Task.Factory.StartNew(() =>
                {
                    using (var reader = new StreamReader(server))
                    {
                        while (true)
                        {
                            var rawMessage = reader.ReadLine();
                            int recievedMessage = Convert.ToInt32(rawMessage);
                            if (recievedMessage%bulkWrite == 0)
                                Console.WriteLine("Server-read: " + recievedMessage);
                        }
                        Console.WriteLine("Exiting server reader");
                    }
                });

                Task.Factory.StartNew(() =>
                {
                    var writer = new StreamWriter(server);
                    writer.AutoFlush = true;
                    while (true)
                    {
                        Interlocked.Increment(ref serverMessage);
                        lock(serverSyncRoot)
                        writer.WriteLine(serverMessage);
                        
                        if (serverMessage%bulkWrite == 0)
                            Console.WriteLine("Server-writer 1: " + serverMessage);
                        Thread.Sleep(sleepTime);
                        if (serverMessage > stopLimit)
                            break;
                    }
                    Console.WriteLine("Exiting server writer 1");

                });

                Task.Factory.StartNew(() =>
                {
                    var writer = new StreamWriter(server);
                    writer.AutoFlush = true;
                    while (true)
                    {
                        Interlocked.Increment(ref serverMessage);
                        lock (serverSyncRoot)
                       writer.WriteLine(serverMessage);
                        
                        if (serverMessage%bulkWrite == 0)
                            Console.WriteLine("Server-writer 2: " + serverMessage);
                        Thread.Sleep(sleepTime);
                        if (serverMessage > stopLimit)
                            break;
                    }
                    Console.WriteLine("Exiting server writer 2");

                });
                Thread.Sleep(Timeout.Infinite);

            });

            Task.Factory.StartNew(() =>
            {
                Console.WriteLine("Client-connecting");
                var client = new NamedPipeClientStream("localhost", "moje", PipeDirection.InOut, PipeOptions.Asynchronous);
                client.Connect();
                Console.WriteLine("Client-connected");
                Task.Factory.StartNew(() =>
                {
                    using (var reader = new StreamReader(client))
                    {
                        while (true)
                        {
                            var rawMessage = reader.ReadLine();
                            int recievedMessage = Convert.ToInt32(rawMessage);
                            if (recievedMessage%bulkWrite == 0)
                                Console.WriteLine("Client-read: " + recievedMessage);
                        }
                        Console.WriteLine("Exiting client reader");
                    }
                });

                Task.Factory.StartNew(() =>
                {
                    var writer = new StreamWriter(client);
                    writer.AutoFlush = true;
                    while (true)
                    {
                        Interlocked.Increment(ref clientMessage);
                        lock (clientSyncRoot)
                            writer.WriteLine(clientMessage);
                        if (clientMessage%bulkWrite == 0)
                            Console.WriteLine("Client-writer 1: " + clientMessage);
                        Thread.Sleep(sleepTime);
                        if (clientMessage > stopLimit)
                            break;
                    }
                    Console.WriteLine("Exiting client writer 1");

                });

                Task.Factory.StartNew(() =>
                {
                    var writer = new StreamWriter(client);
                    writer.AutoFlush = true;
                    while (true)
                    {
                        Interlocked.Increment(ref clientMessage);
                        lock (clientSyncRoot)
                            writer.WriteLine(clientMessage);
                        if (clientMessage%bulkWrite == 0)
                            Console.WriteLine("Client-writer 2: " + clientMessage);
                        Thread.Sleep(sleepTime);
                        if (clientMessage > stopLimit)
                            break;
                    }
                    Console.WriteLine("Exiting server writer 2");

                });

                Thread.Sleep(Timeout.Infinite);
            });

            Console.WriteLine("Everything is started");
            Console.ReadKey();
        }
p3can
.NET › NamedPipeClientStream BeginR…
21. 3. 2016   #209382

#1 hlucheucho
zkousel sis rozjet 2 vlakna v jenom synchrone cist a ve druhem synchrone zapisovat ? me to prijde jednoduzsi na implementaci.

p3can
.NET › zamzrani Serveru TCP/IP
28. 2. 2016   #208951

#6 TD
no a jake problemy mas stim kodem co jsi sem postnul? co se tak divam tak jediny problem by mel byt v metode
click_connect protoze se provadi na UI vlakne a uprostred je metoda AcceptTcpClient ktera je blokujici.

p3can
.NET › c# Universal app - stažení R…
6. 2. 2016   #208469

#6 Kit
Nebude to tim ze nevis co je to UWP ?

p3can
.NET › c# Universal app - stažení R…
6. 2. 2016   #208467

#4 Kit
v nadpisu je docela jasne napsane Universal app. ten kod cos poslal ani nejde protoze metoda Create neprijima webove adresy (v UWP) a i kdyby prijimala tak to nepujde dekodovat protoze nebude nainicializovany spravny encoding.

p3can
.NET › c# Universal app - stažení R…
6. 2. 2016   #208465

#1 motorcb
bud to nactes pres XmlDocument jak psal kit nebo takhle. kazdopadne bez toho prvniho radku to nepujde ani pres ten XmlDocument

Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
var client = new System.Net.Http.HttpClient();
var data = await client.GetByteArrayAsync("http://www.muzikus.cz/save/rss-windows-1250.xml");
var content = Encoding.GetEncoding(1250).GetString(data);
p3can
.NET › usafe struct - 1.lekce
14. 8. 2015   #204319

#1 BDS

fixed arrays je zabugovane. doporucuju pouzivat normalni pole s attributem o konstantni delce.

    [StructLayout(LayoutKind.Sequential)]
    internal class TestData
    {
        [MarshalAs(UnmanagedType.ByValArray, SizeConst = 6)]
        public byte[] head;
        [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)]
        public char[] dataA;
        [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)]
        public char[] dataB;
        public TestData()
        {
            head = new byte[6];
            dataA = new char[3];
            dataB = new char[3];
        }
    }
p3can
Pascal › parameter procedury
1. 3. 2015   #199668

#1 Marek
protoze v pascalu se pri volani funkce parametry predavaji hodnotou. to znamena ze pokud zavolas funkci funkce1(parametr1) tak se do funkce1 posle KOPIE hodnoty, ktera je ulozena v te promene parametr1. to co chces ty se menuje predani parametru odkazem a dela se to
procedure plusone(var a: superType);
 

p3can
.NET › Uložiště RAM nebo HDD?
28. 2. 2015   #199666

#2 ondra
a co stema datama chces delat ? pokud chces zpracovavat tak velke xml soubory tak to by se melo delat pres XmlReader ktery zpracovava data "postupne"

p3can
.NET › Zahrnutí dll knihoven do pro…
12. 2. 2015   #199188

teoreticky jo ale prakticky bych to asi nedelal   

muzes secky ty knihovny nahazet do resources a pri spusteni aplikaci v "release" rezimu je nacist z tech resources pomoci Assembly.Load

p3can
Pascal › využitie výtvoreného programu
27. 1. 2015   #198462

#1 anonym
jednoducha odpoved: NE

slozita odpoved:

windows phone telefony pouzivaji jazyk C#, android telefony Java, apple telefony ObjectiveC nebo Swift. normalne nejde napsat aplikaci ktera pobezi vsude. vyjimka jsou "multiplatformni" aplikace napsane pomoci napr. phonegapu coz je framework ve kterem se napise aplikace v javascriptu proti phonegap sdk a ta bezi na telefonu. pro pascal ciste nahodou take exituje neco podobneho jmenuje se to RAD STUDIO XE7 ale je to komercni a stoji to hodne penez. takze teoreticky ANO jde to.

p3can
.NET › C# - obnovení datagridview z…
26. 1. 2015   #198422

#4 Matěj Andrle
1. nevim proc meles o opp kdyz to co popisujes neni oop ale architektonicky vzor.

2. action sis suploval dependency injection, takze si rozbil SOLID (single class responsibility) a princip znovupouzitelnosti

3. ignoraci designeru tak leda ignorujes RAD

4. kdyz uz sme u toho tak tvuj tetris zabira ~550 radku kodu a co mam nejake svoje stare kody tak u me to zabira ~900 radku kodu stim ze je to ve 3 rozmerech.

ale co ja vim ja se tomu nevenuju 7 let ...

p3can
.NET › Online multiplayer bez serve…
20. 12. 2014   #197421

#3 Matěj Andrle
WebSockets je protokol a nijak se neinstaluje. Pokud to ma byt pro par lidi tak proc jako server neni tvuj pc ?

p3can
.NET › C# přetypování
27. 11. 2014   #196600

#1 ondra
napis ceho presne chces dosahnout protoze co jak to delas ted je nesmysl.

p3can
C / C++ › Import do CSV a UTF8 v excelu
21. 10. 2014   #195171

#1 Martin
ikdyz je ten kod uplne hrozne strasny tak me funguje. spustim to a vytvori me to soubor csv ve kterem je dany text a obsahuje hacky a carky a jde normalne otevrit. takze jaky presne stim mas problem ?

p3can
OS - GNU / Linux › Linux v mobilu
9. 10. 2014   #194773

#3 Ladík
Tak na co chces telefon s linuxem a javou ? xD

p3can
MySQL › SQLite is Locked
6. 10. 2014   #194673

#27 Martin
reader2 musi byt v bloku using nebo volat explicitne close. to predtim ti uz funguje ?

p3can
MySQL › SQLite is Locked
5. 10. 2014   #194573

#1 Martin
napis sem jak je definovana funkce
getConnection

beztak mas chybu tam.

p3can
C / C++ › Anticheat hladam programatorov
29. 9. 2014   #194374

#1 robert7
tak to asi nebude ani mozne   

p3can
C / C++ › co sa ucit???
25. 9. 2014   #194271

#25 Kit

1. Nesmysl.

3. Takze kdyz vyberu jazyk homololo ke kteremu je jedna jedina knizka tak to znamena ze jen ta jedna jedina knizka je spravna a je super ? Stejny nesmysl jak bod 1.

p3can
C / C++ › co sa ucit???
25. 9. 2014   #194268

#23 Kit

Java ani C# tě nenaučí programovat objektově.

  1. Oba 2 jazyky jsou objektove. Kdyz se v tom budes pohybovat kazdy den tak ti to snad casem blikne samo jak mas co delat.
  2. ZADNY jazyk ti nezaruci ze se naucis programovat "spravne". Kdyz si prase tak si prase v kazdem jazyce.
  3. Neni nahodou statisticky vetsi pravdepodobnost ze u rozsirenejsiho jazyka najdes kvalitnejsi material ke studiu?

p3can
C / C++ › co sa ucit???
25. 9. 2014   #194262

#21 Kit
Lisp neznam to je pravda. Nepotrebuju znak kazdy programovaci jazyk co kdo vymyslel. Staci me umet par jazyku na profi urovni. Nevim jak souvisi znalost lispu a javy / c# (presneji nechapu frazi "Lisp tě naučí programovat")?

Proc ne lisp? A proc ne jazyk XYZ? Dalsim polemizovanim se dojde k a proc teda ne c# / java ktere jsou nejrozsirenejsi a nejuniverzalnejsi jazyky?

p3can
C / C++ › co sa ucit???
25. 9. 2014   #194259

#19 Kit

v ERP nijak "aktivne" nevyuzijes funkcionalni programovani. nevim jak te lisp mauci lip programovat kdyz vzdycky delas v teamu nebo pouzivas knihovny, ktere jsou napsane podle konvenci dane platformy (jazyka).


ps: hlavne ze tebe to naucilo programovat. si dobre pamatuju co za prispevky pises   

p3can
C / C++ › co sa ucit???
25. 9. 2014   #194254

#16 matus
Konkretne na ERP portaly se pouziva jen c# a java. (osobně si myslim ze se vic pouziva ten C#, i ze statistik to vypliva, a taky ten c# je "jednoduzsi").

#17 Kit
kratce: jobs.cz

C# - Nalezeno 281 nabídek

lisp - Nalezeny 3 nabídky

p3can
C / C++ › co sa ucit???
25. 9. 2014   #194248

#7 matus
Vysku mam (UTB ve Zline, ale toho programovani tam taky zrovna moc nebylo   ).

Jako zacatecnik urcite nechod do niceho jineho nez C# / Java. (i c++ bych se vyhnul). poznamku o lispu bych bral asi jako   .

p3can
C / C++ › co sa ucit???
24. 9. 2014   #194220

#5 matus
Ano. Ano. Precti si nejakou tu knizku o dane platforme.

Ps jakou ze vysku si studoval ?

p3can
Offtopic › Administrátor vs vývojář
24. 9. 2014   #194187

#7 RustinL
to budes muset vedet asi sam co te bavi, protoze ty obory jsou narocne a nepredpokladam ze by se nekdo vypracoval na "top" v tom co ho nebavi. znam lidi co berou +70k jak za programovani tak za administraci.

p3can
C / C++ › co sa ucit???
23. 9. 2014   #194186

#1 matus

motas do sebe moc veci. zaprve to chce zvolit si "zakladni" jazyk. visual c++ je pro vykone aplikace a hry (neni uplne vhodny pro zacatecniky). doporucuju prejit na c#. pak bych si koupil knizku zaklady objektoveho programovani (zaklady oop) v c#. pak bych asi skousel neco programovat podle nejakych tutorialu na netu a pak bych asi presel na anglickou literaturu neco jako Professional C# 4.0 and .NET 4 (me se to docela libilo ale je mozne ze pro normalni lidi to bude trosku tezke cteni, ale zase je tam popsany v zakladech cely .net).
alternativne je mozne zvolit jako zakladni jazyk javu. volit neco jineho nez javu/c# (z ohledem na to ze chces delat desktop aplikace) bych nedoporucoval.

shrnuti: naucit se zaklady jazyka, naucit se oop, zacit v tom delat, udelat si sirsi prehled o dane platforme.

p3can
Offtopic › Administrátor vs vývojář
23. 9. 2014   #194177

Budu končit se studiem VŠ a čeká mě hledání práce... Nyní se tedy nemohu rozhodnout jakou cestou se vydat.

To vidim jako prvni problem. Uz ve skole nekdy nazacatku sis mel vybrat/rozhodnout se jakou cestou chces jit a na tu se zamerit. Dobre placeni jsou vzdy jen specialiste.

Vzhledem k tomu, že studuji IT orientovanou školu, tak mám určité znalosti jak s administrací, tak s programováním.

Myslis skolni "dovednosti" nebo neco komercniho? Rozdil mezi skolnimy "vedomostmi" a praxi je propastny. Pracoval jsi pri skole?

p3can
.NET › Proč funkce zamrzá?
14. 9. 2014   #193942

   

var pom=unrar.Extract(zip, Core.PublicVariable.UltimaOnlinePath, getProgress, getLabelPercent, setAddText);
getLabelPercent.Invoke(new Action(() => getLabelPercent.Text = pom ));
p3can
.NET › Proč funkce zamrzá?
14. 9. 2014   #193939

vubec nevim co tu resite kdyz chyba je tady


getLabelPercent.Invoke(new Action(() => getLabelPercent.Text = unrar.Extract(zip, Core.PublicVariable.UltimaOnlinePath, getProgress, getLabelPercent, setAddText)));
 

celou metodu Extract si spustil pomoci invoke na GUI vlakne.

p3can
C / C++ › Porovnani jazyku
7. 9. 2014   #193701

#7 Flowy

on chtel jazyky pro desktop aplikace.
#10 Honza

tak rozdili jsou dane spis zamerenim toho jazyka. jako mezi c# a java uz neni "tak velky rozdil" jako mezi c#/java a c++. c++ ma proste jine zamereni a to na rychle a optimalni kody. dan za to je ze musis resit "slozitě" pamet a dalsi neprijemne veci.

p3can
C / C++ › Porovnani jazyku
7. 9. 2014   #193696

#5 Honza
pokud se odprostime od "exotickych jazyku" (ktere hlavne v ceskych koncinach maji velice tezke uplatneni), tak nam zbydou Java, C#, C++, Python. Pak zalezi na platforme pro kterou chces delat. Pokud te zajima jen windows tak je jasny C#. 

Proti pythonu bych rekl to ze si jede svuj svet (docela odlisny od zbylych). Je to interpretovany (pomalejsi) jazyk bez staticke typove kontroly (vice chyb pri vyvoji aplikace). Na okna/formulare se musi pouzit nejaky externi GUI framework.

C++ je dobre pro aplikace kde potrebujes vykon, ale to se da resit separaci kritickeho kodu do c++ knihovny a nactenim te knihovny v jinem jazyce. V C++ jsou problem pointery a hlavne to ze to c++ standartne "nic nemumi" (neba to zakladni knihovny jako C# / JAVA). Na okna/formulare se musi pouzit nejaky externi GUI framework.

Java je klasika. Urcite neudelas chybu kdyz si vyberes javu. Je to multiplatformni a jede to vsude. Chyba je ze to neni tak pekne jak C#   

C# je jasna volbo pro Windows aplikace. Pokud chces delat na Win/Linux/Mac tak je moznost pomoci mono+gtk#. (mono umozni beh kodu na linuxu a mac; vyvyji to komerni firma ale samotne mono je zdarma; melo by to uz byt hodne stabilni); (gtk# je framework pro GUI vrstvu co bezi na vsech 3 platformach).

Ja osobne volim C# z duvodu "asi nejpokrocilejsich" moznosti jazyka, pokryva to vsechny 3 dektopy+ vsechny 3 mobilni platformy, knihoven je dost a prijdou me jednoduche na pouziti, ma to dobre IDE - Visual Studio. A hlavne C# ma neco co se tezko popisuje je to takove tajne kouzlo dokonalosti ktere se neda slovy popsat   

p3can
C / C++ › Porovnani jazyku
7. 9. 2014   #193670

#3 Honza
To bude chtit asi jeste vic rozepsat. Slovo program je tozis prakticky "vsecko co se programuje"   .

p3can
C / C++ › Porovnani jazyku
7. 9. 2014   #193667

No nevim co by v takove knize bylo napsane xD. Na internetu je plno clanku ktere se "pokouseji" porovnat jazyky, ale vesmes jde o to, ze zalezi, co chces delat a podle toho si vybrat jazyk (hw, 3D, vypocty, okeni aplikace, weby).

p3can
Python › čtení ze souboru
6. 9. 2014   #193648

#36 VitPet
no nejak nevim jak ti mame pomoct s prikazem otevrit soubor.

1. budto soubor neexistuje na dane adrese

2. adresa je spatne

3. nemas tam prava

4. soubor je prazdny

soude podle toho ze to pada az pri pokusu cteni tak typuju na variantu 4 coz uz ti psal kiv

p3can
Python › čtení ze souboru
6. 9. 2014   #193646

#33 Kit
jezis xD. radsi kdybys nepsal zkratky co ani nevis co v praxi znamenaji   

p3can
Python › čtení ze souboru
6. 9. 2014   #193636

#25 VitPet
rozjed si debuger bez toho nemuzes nic programovat. pokud to nerozjedes delej si aspon napr. inkrementalni vypisky do konzole.

p3can
Python › čtení ze souboru
6. 9. 2014   #193634

#19 Kit
zase perlis jo ? xD muzes uvest odkaz na JAKYKOLIV RELEVANTNI zdroj ktery tvrdi ze debugovani je zastarale a objektove jazyky ho nepotrebuji?

a muzes me uvest ty nastroje a postupy ktere se pouzivaji v oop misto debugu ?

p3can
Python › čtení ze souboru
6. 9. 2014   #193628

#17 Kit
zastaraly nastroj jo ? a na tos prisel kde prosimte   

p3can
.NET › Má .NET něco na práci se slo…
6. 9. 2014   #193595

#7 Matěj Andrle
je promin ze sem reagoval. chapu ze sem zaostaly a tak absolutne nechapu o cem pises. sem tak zaostali ze sem si musel googlit co znamena binarni mapa (v cestine to nenaslo nic a v anglictine bych si dovolil rict ze to nenaslo taky nic).

chapu ze sem idiot, ale pokud vim tak se v ramci .net nijak neresi endian (max tak vynucenim encodingu). endian se resi pouze v ramci interoperability s odlisnymi systemy.

p3can
.NET › Má .NET něco na práci se slo…
6. 9. 2014   #193593

#5 Matěj Andrle
no tak misto xml serializeru pouzijes binary serializer pripadne protobuf. a kde je teda problem vlastne?

p3can
.NET › Má .NET něco na práci se slo…
6. 9. 2014   #193591

no ja prave nevim proc resis endian.

pokud je to mala hra tak bych to vsecko nahazel do jednoho xml/json souboru a ukladal nacital pri spusteni aplikace pres serializaci.

pokud je to neco vetsiho tak klasickou databazi a tabulky.

p3can
.NET › Má .NET něco na práci se slo…
6. 9. 2014   #193589

Muzes to vice rozvest? Jake datove struktury chces presne ukladat, kolik ma zhruba jedna velikost, kolik jich zhruba bude celkem a jak casto se k nim bude pristupovat (cteni/zapis).

p3can
Java › Větvení metody pomocí parame…
23. 8. 2014   #193294

#2 Kit
S tím enumem bych souhlasil ale nejak nevim jak stim souvisi polymorfismus ?

p3can
.NET › C# vykreslovani grafů
19. 8. 2014   #193201

nejlepsi je oxyplot

http://oxyplot.org/

akorat to ted prevadeli z codeplexu na git takze tam bude asi zmatek.

p3can
C / C++ › Chci si založit vlastní os.
17. 8. 2014   #193101

#14 Matěj Andrle
libi se mne jak si hezky odpovedel   . ne neznam jazyky a operacni systemy ktere nenajde ani google nebo je vytvoril nekdo v ramci svoji bakalarky/diplomky. a taky mas pravdu v tom ze bych se nemel hadat s clovekem co napise ze si udela OS v SQL   


p3can
C / C++ › Chci si založit vlastní os.
17. 8. 2014   #193095

#12 Matěj Andrle
Me to spis zni spis jako firmware to o cem pises.

Jinak "napsani OS v cemkoli (napr. SQL, PHP)" je totalne uplne nesmyslny blabol.

p3can
C / C++ › Chci si založit vlastní os.
17. 8. 2014   #193089

#10 Matěj Andrle
jako ja nvm ale pro me je pojem OS zhruba to co pisou na wiki

Operační systém je v informatice základní programové vybavení počítače (tj. software), které je zavedeno do paměti počítače při jeho startu a zůstává v činnosti až do jeho vypnutí. Skládá se z jádra (kernel) a pomocných systémových nástrojů. Hlavním úkolem operačního systému je zajistit uživateli možnost ovládat počítač, vytvořit pro procesy stabilní aplikační rozhraní (API) a přidělovat jim systémové zdroje. Operační systém je velmi komplexní software, jehož vývoj je mnohem složitější a náročnější, než vývoj obyčejných programů.

pokud se teda bude jednat o nejaky program ktery se nahraje na nejaky jednocip tak nevim jestli bych to tituloval vyrazem OS.

p3can
C / C++ › Chci si založit vlastní os.
17. 8. 2014   #193083

#8 Matěj Andrle
tak mohl by si sem dat odkaz nebo aspon uryvek z tech tvych 2 os co si napsal?

jo takze staci kdyz mam parser kompilator a interpreter jo   

p3can
C / C++ › Chci si založit vlastní os.
17. 8. 2014   #193079

#6 Matěj Andrle
ok prosim kdyby si nam mohl dat ukazku toho OS v SQL a PHP   

p3can
C / C++ › začátečník - "šablona" pro t…
16. 8. 2014   #193072
p3can
.NET › Pomoc s DLL
12. 8. 2014   #192909

Me to prislo docela jasne popsane xD

Typically, in .Net 4 you just need to remove the 'Class' suffix and compile the code

p3can
.NET › TextBox s chováním jako Cons…
11. 8. 2014   #192837

zalezi jestli listbox wpf nebo winform ale myslim ze i ve winformu to de nastavit (akorat trochu slozitejc)

p3can
.NET › TextBox s chováním jako Cons…
10. 8. 2014   #192833

proc to chces resis textboxem ? podle me chces spis listbox :)

bod1 - resi se architekturou nebo convertorem nebo jinde v kodu

b2 - viz listbox, b3 - listbox umi, b4 - listbox umi.

p3can
C / C++ › C++ = pogramování her v Dire…
7. 8. 2014   #192749

pro zacetecniky a na "univerzalni" hry je nejlepsi Unity. ma to vsechny platformy, jazyk C# a zvlada to jak 2D tak 3D.

ale bez dobrych programatorskych znalosti neni moc realne ze bys tam neco udelal.

p3can
.NET › Výjimky a DLL, nerozumím
5. 8. 2014   #192655

Podle me se ma vetsinou resit jen to "aby aplikace skoncila nejak srozumitelne" coz podle me neni ten pripad ze se ani nespusti   .

To co te teda asi bude zajimat sou 2 eventy.

AppDomain.AssemblyResolve - kdyz vytvaris instanci typu nebo volas staticke fce tak se hleda v jakem dll je ten typ a pokud se to dll nenajde tak se vola tenhle event. ( http://msdn.microsoft.com/….110%29.aspx )

AppDomain.UnhandledException - proste kdyz to nekde spadne a nechytis to tak se vola toto. ( http://msdn.microsoft.com/….110%29.aspx )

p3can
.NET › Výjimky a DLL, nerozumím
5. 8. 2014   #192643

Tak bez kodu ti toho asi moc nereknem :).

Jinak sem moc neslysel ze by se delalo osetrovani na chybejici zakladni soubory aplikace. Jako chapu kdyz je modularni ale moc nevidim smysl kontrolovat zakladni soubory.

p3can
Pascal › Lineární spojovaný seznam -…
1. 8. 2014   #192557

chapes obrazek aspon ? (pls nesmejte se, 2 z vytvarky sem mel ve treti tride   )

Připojen obrázek.

Připojen obrázek.

cislo sem nahradil promenou data typu řetězec pro vetsi nazornost (v realu string myslim nejde musi se pouzit char[] ale to je jedno na vysvetleni to snad staci)

p3can
C / C++ › Chci si založit vlastní os.
30. 7. 2014   #192490

no tak to pro tebe mam presne to co potrebujes. os zalozeny na C#   

http://cosmos.codeplex.com/

p3can
.NET › Visual Studio - formátování if
30. 7. 2014   #192479

#3 Matěj Andrle
Ale on ti pise neco uplne jineho. Pise ti ze nemas pouzivat kraviny kdyz mas projekt pod source controlem, ale mam takovy dojem ze tobe teamova spoluprace nehrozi   

p3can
C / C++ › Podivné optimalizace c++ 11
28. 7. 2014   #192429

predelal jsem to a volam tam i tu funkci

#include "stdafx.h"
#include <math.h>
#include <iostream>
#include <ctime>
#include <thread>

void fce(float* a, float* b, float* c, int from, int to){
	for (int i = from; i < to; i++)
	{
		c[i] = (float)(log(a[i]) / sqrt(b[i]) + exp((a[i] + 1) / (b[i] - 1)));
	}
}

int _tmain(int argc, _TCHAR* argv[])
{
	int p = 0;
	int repeat = 3;
	while (repeat-- > 0)
	{
		int n = 20 * 1000 * 1000;
		auto a = new float[n];
		auto b = new float[n];
		auto c = new float[n];
		

		for (int i = 0; i < n; i++)
		{
			a[i] = i;
			b[i] = i;
		}

		clock_t begin_time = clock();

		for (int i = 0; i < n; i++)
		{
			
			c[i] = (float)(log(a[i]) / sqrt(b[i]) + exp((a[i] + 1) / (b[i] - 1)));
		}

		
		std::cout << "\nres:   " << c[2] << " ela:" << float((clock() - begin_time)) / (CLOCKS_PER_SEC / 1000.0);

		delete[] a;
		delete[] b;
		delete[] c;

		a = new float[n];
		b = new float[n];
		c = new float[n];

		for (int i = 0; i < n; i++)
		{
			a[i] = i;
			b[i] = i;
		}

		begin_time = clock();
		fce(a, b, c, 0, n);
		std::cout << "\nres:F  " << c[2] << " ela:" << float((clock() - begin_time)) / (CLOCKS_PER_SEC / 1000.0);

		delete[] a;
		delete[] b;

		// VLAKNO
		a = new float[n];
		b = new float[n];
		
		auto d = new float[n];

		for (int i = 0; i < n; i++)
		{
			a[i] = i;
			b[i] = i;
		}

		begin_time = clock();
		std::thread t5(fce, a, b, d, 0, n );
		t5.join();
		std::cout << "\nres T: " << d[2] << " ela:" << float((clock() - begin_time)) / (CLOCKS_PER_SEC / 1000.0);
		
		
		delete[] a;
		delete[] b;
		delete[] c;
		delete[] d;
		
	}
	std::cout << "\nALL DONE";
	std::cin >> p;


	return 0;
}


vystup je tento


res:   20.5757 ela:680
res:F  20.5757 ela:346
res T: 20.5757 ela:367
res:   20.5757 ela:668
res:F  20.5757 ela:343
res T: 20.5757 ela:340
res:   20.5757 ela:653
res:F  20.5757 ela:336
res T: 20.5757 ela:333
ALL DONE

pokud ovsem zapoznamkuju kod od poznamky //VLAKNO tak jsou casi res a resF stejne okolo tech 340ms.

jako me jde spis o to, ze jak ma teda pak clovek vytvorit nejaky algoritmus, kdyz na takovehle "kravine" se mu jednou vykona program za 700ms a kdyz to napise ve forme funkce (coz by melo byt logicky o nejakou nanosekundu pomalejsi) tak mu to bezi 2x rychleji (jako kdyby to bylo par % ale 2x tolik). jako jak ma clovek pak neco udelat v tom c++   

p3can
OS - Windows › Jak na hromadnou editaci víc…
28. 7. 2014   #192423

uprimne jednou jsem potreboval program co umi sloucit textove soubory do jednoho a da mezi ne oddelovac novy radek. po 2h hledani takoveho programu na netu sem si ho napsal na par radku jako konzolovku asi za 10 minut, takze doporucuji provest to same   

p3can
C / C++ › Podivné optimalizace c++ 11
28. 7. 2014   #192422

upraveno vysledky porad stejny. nejaky jiny napad?   


#include "stdafx.h"
#include <math.h>
#include <iostream>
#include <ctime>
#include <thread>

 void fce(float* a, float* b, float* c, int from, int to){
	for (int i = from; i < to; i++)
	{
		c[i] = (float)(log(a[i]) / sqrt(b[i]) + exp((a[i] + 1) / (b[i] - 1)));
	}
}

int _tmain(int argc, _TCHAR* argv[])
{
	int p = 0;
	int repeat = 3;
	while (repeat-- > 0)
	{
		int n = 20 * 1000 * 1000;
		auto a = new float[n];
		auto b = new float[n];
		auto c = new float[n];
		

		for (int i = 0; i < n; i++)
		{
			a[i] = i;
			b[i] = i;
		}

		clock_t begin_time = clock();

		for (int i = 0; i < n; i++)
		{
			
			c[i] = (float)(log(a[i]) / sqrt(b[i]) + exp((a[i] + 1) / (b[i] - 1)));
		}

		
		std::cout << "\nres:   " << c[2] << " ela:" << float((clock() - begin_time)) / (CLOCKS_PER_SEC / 1000.0);

		delete[] a;
		delete[] b;
	
		a = new float[n];
		b = new float[n];
		auto d = new float[n];

		for (int i = 0; i < n; i++)
		{
			a[i] = i;
			b[i] = i;
		}



		begin_time = clock();
		std::thread t5(fce, a, b, d, 0, n );
		t5.join();
		std::cout << "\nres T: " << d[2] << " ela:" << float((clock() - begin_time)) / (CLOCKS_PER_SEC / 1000.0);


		delete[] a;
		delete[] b;
		delete[] c;
		delete[] d;
	}
	std::cout << "\nALL DONE";
	std::cin >> p;


	return 0;
}
p3can
C / C++ › Podivné optimalizace c++ 11
28. 7. 2014   #192411

Zdravim,

cely den si lamu hlavu nadtim, proc tento kod:

#include "stdafx.h"
#include <math.h>
#include <iostream>
#include <ctime>
#include <thread>

 void fce(float* a, float* b, float* c, int from, int to){
	for (int i = from; i < to; i++)
	{
		c[i] = (float)(log(a[i]) / sqrt(b[i]) + exp((a[i] + 1) / (b[i] - 1)));
	}
}

int _tmain(int argc, _TCHAR* argv[])
{
	int p = 0;
	int repeat = 3;
	while (repeat-- > 0)
	{
		int n = 20 * 1000 * 1000;
		auto a = new float[n];
		auto b = new float[n];
		auto c = new float[n];
		auto d = new float[n];

		for (int i = 0; i < n; i++)
		{
			a[i] = i;
			b[i] = i;
		}

		clock_t begin_time = clock();

		for (int i = 0; i < n; i++)
		{
			
			c[i] = (float)(log(a[i]) / sqrt(b[i]) + exp((a[i] + 1) / (b[i] - 1)));
		}

		
		std::cout << "\nres:   " << c[2] << " ela:" << float((clock() - begin_time)) / (CLOCKS_PER_SEC / 1000.0);


		begin_time = clock();
		std::thread t5(fce, a, b, d, 0, n );
		t5.join();
		std::cout << "\nres T: " << c[2] << " ela:" << float((clock() - begin_time)) / (CLOCKS_PER_SEC / 1000.0);


		delete[] a;
		delete[] b;
		delete[] c;
		delete[] d;
	}
	std::cout << "\nALL DONE";
	std::cin >> p;


	return 0;
}


ma v release (se zapnutyma sse2, jinak default; visual studio 2013) ma na mem notasu (ivy bridge i7; w8.1) tento vystup:


res:   20.5757 ela:728
res T: 20.5757 ela:329
res:   20.5757 ela:708
res T: 20.5757 ela:329
res:   20.5757 ela:704
res T: 20.5757 ela:332
ALL DONE

abych to popsal tak nechapu jak je mozne za ta stejna funkce kterou volam v cyklu trva prumerne 700ms, zatimco kdyz tuto uplne stejnou funkci spustim v thredu (pouze spustim to same v thredu nic nijak neparalelizuju) tak jak je mozne ze bezi cca 2x tak rychleji?

p3can
C / C++ › CheckBox-po odškrtnutí, vrát…
23. 7. 2014   #192353

ja taky nechapu co tam delas, protoze prece neni mozne aby z c++ programu menil hodnoty adress jineho programu (coz je to o co se asi snazi). a pokud si menis hodnoty pameti ve svem vlastnim programu tak to bude asi neco spatne :).

p3can
Java › podmienka if nevracia true
22. 7. 2014   #192311

protoze delas rekurzi. kdyz prehodis tyto radky naopak

System.out.println("run again " + c);
a(c);

tak budes mit vystup 2 3 4 5

p3can
Java › Kontrola prográmku v JAVE a…
18. 7. 2014   #192267

nvm jak dlouho programujes nebo jake mas skusenosti. na zacatecnika je to podle me relativne dobre. ale chyb je tam docela dost.

1. podle me by ty parsovacky (int.parse) mely byt osetrene tak aby neshodili program (sam to tam mas naznacene pomoci toho default ze bys chtel pri nekorektni volbe zobrazit hlasku "nebyla spravna volba..."

2. ty parsovacky + switche si chtel dat asi do cyklu protoze pokud nekdo provede "konkretni operaci" tak se program ukonci a neni mozne ho pouzit "2x" po sobe

3. celkove si asi moc nepochopil ty objekty protoze tam nejak zmatene pouzivas operator new a vytvariz zbytecne 2x ty same objekty viz jako


Connect_to_DB novyKlient = new Connect_to_DB();

novyKlient.InsertKlient(jmeno,prijmeni,login,heslo,osloveni);

Connect_to_DB kontrolaKlienta = new Connect_to_DB();

kontrolaKlienta.existenceKlienta(login, heslo);
 

u normalnich objektu to "moc" nevadi ale u napr u tridy ktera se stara o databazi je to uz problem. taky nikde neuzaviras to spojeni do databaze.

4. misto lokalnich promenych v metodach pouzivas privatni promene tridy a obcas dokonce prekryjes tu privatni -> lokalni.

5.


if (kontrolaKlienta.getExistenceKlienta() == null)
 

ty tu pouze porovnavas jestli je null a vysledek metody te nezajima, takze te zajimaji 2 stavy true a false, takze metoda by mela vracet bool a nvm jake jsou v jave konvence ale asi by se to melo pak jmenovat getIsClientExist (ten prefix Is pro bool typy)

6.


if ("Ano".equals(debet))
 

tady porovnavas "Ano" s odpovedi na otazku kdyz o vypis vis si napsal ze pripustne hodnoty jsou "[ano/ne]" takze teoreticky nikdy nedostanes true :). navic vyvaruj se primeho porovnani ale vzdy string preved bud na male nebo na velke a porovnavej to tak (metoda .toLowerCase()).

p3can
OS - Windows › Příkazový řádek, dir a UNICO…
17. 7. 2014   #192260

pokud myslis ten obrazek na stackoverflow diskuzi tak tam se nastavuji jen jazyky a ne kodovani.

p3can
OS - Windows › Příkazový řádek, dir a UNICO…
17. 7. 2014   #192249

#12 peter
to "chcp 65001" jsem zkousel i stim zmenenym fontem hned v uvodnim prispevku ale nejde to :(. prave ze ani nevim jestli je mozne vypsat takovy znak vubec do konzole na win   

p3can
C / C++ › Příkaz if ve funkci
16. 7. 2014   #192243

#60 ekral
taky sem to nemohl vydrzet xD

#59 Kit

GC do toho vůbec netahej, s likvidací objektů nemá nic společného. Pouze defragmentuje paměť.

citace z wiki:

The basic principles of garbage collection are:

Find data objects in a program that cannot be accessed in the future.
Reclaim the resources used by those objects.

citace z MSDN (z topicu o zakladech GC):

When a finalizable object is discovered to be dead, its finalizer is put in a queue so that its cleanup actions are executed ....

coz se da cele interpterovat jakoze GC vyhledava neplatne objekty a spousti na nic destruktory.

p3can
C / C++ › Příkaz if ve funkci
16. 7. 2014   #192237

tak to asi tezko xD

php je jazyk interpretovany zatimco c# pouziva JIT (muzeme povazovat za kompilovany). rozdily ve webech mezi php a asp.net nejsou nejak markantni, ovsem co se tyka vypocetnich veci je rozdil drasticky.

rozdil mezi C++ a C#/Java je asi 1.5-3x. rozdil mezi Java a PHP je tak +-50x.

(co clovek najde po zbeznem googleni)

http://www.treehugger.com/clean-technology/facebook-could-eliminate-75-of-its-servers-by-changing-their-programming-code.html

http://blog.famzah.net/2010/07/01/cpp-vs-python-vs-perl-vs-php-performance-benchmark/

http://benchmarksgame.alioth.debian.org/u64q/benchmark.php?test=all&lang=php&lang2=java&data=u64q

http://www.wrensoft.com/zoom/benchmarks.html

p3can
OS - Windows › Příkazový řádek, dir a UNICO…
16. 7. 2014   #192236

no ale jak se to dela na windowsu ?

p3can
C / C++ › Příkaz if ve funkci
16. 7. 2014   #192232

#49 Kit

no C# ma proste jinak resenou spravu objektu. chapu ze v php je to "lepsi" ale C# diky tomu muze nabidnout vyzsi vykon.

p3can
OS - Windows › Příkazový řádek, dir a UNICO…
16. 7. 2014   #192231

muzes me prosim hodit screenshot nebo napsat presne kde je to menu terminál ?

p3can
OS - Windows › Příkazový řádek, dir a UNICO…
16. 7. 2014   #192227

to se dela jak? ja prave nevim jak na to nebo jestli to vubec de.

p3can
C / C++ › Příkaz if ve funkci
16. 7. 2014   #192224

az na to ze destruktory funguji dobre (spatne znamena ze nefunguji nebo buguji, to ze funguji jinak nez chces neznamena ze je to spatne).

a taky az na to ze presne do destruktoru se dava (v destruktoru se vola dispose) to zavirani souboru i C# ale dobry pokus xD

p3can
OS - Windows › Příkazový řádek, dir a UNICO…
16. 7. 2014   #192223

stisknutim tab se to nezobrazi - zobrazi se pouze cerny ctverec. me nejde o to konvertovat nazvy ale potrebuju ten symbol zobrazit na te prikazove radce.

p3can
OS - Windows › Příkazový řádek, dir a UNICO…
16. 7. 2014   #192221

ale ja to potrebuju zobrazit

p3can
OS - Windows › Příkazový řádek, dir a UNICO…
16. 7. 2014   #192217

Mam problem. Je vytvorena slozka ktera v nazvu obsahuje specialni UNICODE symbol a potrebuji tento symbol zobrazit v prikazovem radku (napr. pomoci prikazu dir). Nevite nekdo jak na to?

V exploreru/total comanderu se symbol zobrazuje, ale v prikazove radce ne. Zkousel jsem zmenit charset prikazove radky i font a nepomohlo.

Připojen obrázek.

p3can
.NET › Vyprázdnit frontu tiskárny
16. 7. 2014   #192215

a nejde to ani kdyz spustis celou aplikaci "jako administrátor" pres prave tlacitko mysi? z jakeho typu projektu to volas (silverlight ma treba omezene prava takze to ani myslim nejde napr.)?

p3can
Java › Genericita a dedičnost
16. 7. 2014   #192212

   

if(this.temp instanceof Potomek01Trida) {
		/****** ZDE CHCI MIT PRISTUP U OBJEKTU info k metode getText	
			System.out.println(((Potomek02Trida)info.temp).getText());	// nefunguje
			temp2 = (Potomek02Trida) info.temp;		// nefunguje
		}
p3can
Java › Genericita a dedičnost
16. 7. 2014   #192211

nema byt misto

if(this.temp instanceof Potomek01Trida) {
		/****** ZDE CHCI MIT PRISTUP U OBJEKTU info k metode getText	
			System.out.println(((Potomek02Trida)info).getText());	// nefunguje
			temp2 = (Potomek02Trida) info;		// nefunguje
		}

spis toto ?

p3can
.NET › Vlozenie WinForm formularu d…
16. 7. 2014   #192208

a jak presne si predstavujes to vlozeni wf formulare do wpf okna ?

p3can
C / C++ › Příkaz if ve funkci
15. 7. 2014   #192191

zminovat C# byla chyba   

nvm co resis ze GC v C# funguje spatne kdyz v C# se deterministická destrukce resi pres using ( ale to uz se tu parkrat resilo :) ). GC je pouze k tomu aby ti resil uvolnovani objektu automaticky az uzna za vhodne sam.

Proto se v PHP vyhýbám složitějším výpočtům.

netvrdils este minuly tyden ze v php delas vsecko aj aplikace na klientovi?

p3can
.NET › Jak vypsat Unicode znaky v k…
12. 7. 2014   #192078

(hehe buglo se vkladani prispevku a oseklo mi to prispevek stim charakterem   )

Chtel jsem v konzoli zobrazit jakokoli z techto znaků http://www.charbase.com/block/miscellaneous-symbols

Zkousel jsem menit font conzole z rasteroveho na Consolas nebo Lucida Console ale to vyresilo jen par znaku. V kodu jsem zkousel Console.OutputEncoding na UTF8 nebo unicode a nepomohlo. Misto daneho symbolu se v konzoli vzdy objevi "??". Nevite nekdo co s tim?

p3can
.NET › Jak vypsat Unicode znaky v k…
12. 7. 2014   #192076

Zdravim,

narazil jsem na docela zajimavy problem, ktery vyjimecne nevim jak vyresit. Mam konzolovou aplikaci a chtel bych v ni vypisovat "specialni" unicode znaky jako napr "

p3can
MySQL › databáze podobná RRD
10. 7. 2014   #191958

http://dev.mysql.com/doc/refman/5.6/en/features.html

Support for large databases. We use MySQL Server with databases that contain 50 million records. We also know of users who use MySQL Server with 200,000 tables and about 5,000,000,000 rows.

pokud se bojis o kapacitu tabulky tak bych se asi nebal. a proc ze to neresis pres where klauzuli?

p3can
.NET › Přeakcování/přeeventování vs…
9. 7. 2014   #191910

pokud se ma neco pohybovat ve 2d osvedcili se me vektory pohybu namapovane primo na klavesy. zas pojem "dynamicky kod" co to je ? xD

podle me staci toto

    public class FormView : Form
    {
        private FormPresenter presenter;
        public FormView()
        {
            presenter = new FormPresenter();
            KeyDown += FormView_KeyDown;
        }

        void FormView_KeyDown(object sender, KeyEventArgs e)
        {
            presenter.DoAction(new KeyStroke(e));
        }


    }


    public class FormPresenter
    {
        private Dictionary<KeyStroke, Action> Actions { get; set; }
        public FormPresenter()
        {
            Actions = new Dictionary<KeyStroke, Action>()
            {
                {new KeyStroke(Keys.W), () => MoveTo(new Size(0, -1))},
                {new KeyStroke(Keys.A), () => MoveTo(new Size(-1, 0))},
                {new KeyStroke(Keys.S), () => MoveTo(new Size(0, 1))},
                {new KeyStroke(Keys.D), () => MoveTo(new Size(1, 0))},
                {new KeyStroke(Keys.Space), () => Shot()},

            };
        }

        private Point ActualPosition { get; set; }
        public void Shot()
        { }
        public void MoveTo(Size vector)
        {
            var newpos = Point.Add(ActualPosition, vector);
            if (newpos.X < 0 || newpos.X > 100 || newpos.Y < 0 || newpos.Y > 100)
                return;

            ActualPosition = newpos;
        }

        public void DoAction(KeyStroke key)
        {
            if (Actions.ContainsKey(key))
                Actions[key]();
        }
    }

    public class KeyStroke : IEquatable<KeyStroke>
    {
        public bool IsCTRL { get; private set; }
        public bool IsALT { get; private set; }
        public Keys Key { get; private set; }

        public KeyStroke(Keys key, bool isCtrl=false, bool isAlt=false)
        {
            IsCTRL = isCtrl;
            IsALT = isAlt;
            Key = key;
        }

        public KeyStroke(KeyEventArgs e)
        {
            IsCTRL = e.Control;
            IsALT = e.Alt;
            Key = e.KeyCode;
        }

        public bool Equals(KeyStroke other)
        {
            if (ReferenceEquals(null, other)) return false;
            if (ReferenceEquals(this, other)) return true;
            return IsCTRL.Equals(other.IsCTRL) && IsALT.Equals(other.IsALT) && Key == other.Key;
        }

        public override bool Equals(object obj)
        {
            if (ReferenceEquals(null, obj)) return false;
            if (ReferenceEquals(this, obj)) return true;
            if (obj.GetType() != this.GetType()) return false;
            return Equals((KeyStroke) obj);
        }

        public override int GetHashCode()
        {
            unchecked
            {
                int hashCode = IsCTRL.GetHashCode();
                hashCode = (hashCode*397) ^ IsALT.GetHashCode();
                hashCode = (hashCode*397) ^ (int) Key;
                return hashCode;
            }
        }

        public static bool operator ==(KeyStroke left, KeyStroke right)
        {
            return Equals(left, right);
        }

        public static bool operator !=(KeyStroke left, KeyStroke right)
        {
            return !Equals(left, right);
        }
    }
p3can
MySQL › informace o změně v tabulce
9. 7. 2014   #191909

co vytvorit tabulku logs, do ktere se budou zapisovat tyto zmeny (pokud chces trivialni informace tak staci jednoducha tabulka, pokud bys chtel zaznam co kde kdy tak staci pridat par sloupcu). informace do tabulky bud zapisovat programove, pres stored procedury, nebo trigery.

p3can
.NET › Přeakcování/přeeventování vs…
8. 7. 2014   #191904

jako tady ten "hybrydni nepojmenovany vzor" co sem napsal nevyzaduje "zadne" eventy ani Action (callbacky). kdyz si das do Presenteru referenci na View (pres interface) tak to mas oddelene a muzes interagovat naprimo, zatimco ve View si das Primo referenci na Presenter, takze opet mas primou interakci a tridy jsou relativne oddelene. Pokud vim tak snad ani nejde udelat takove oddeleni aby skutecne doslo k "nezavyslosti" cele vrstvy View nebo cele vrstvy Presenter. Dycky ma nekdo zavislost na nekom.

ale tva otazka jestli misto event/actions pouzivat if me nejak porad neni jasna jak to presne spolu souvisi?

p3can
.NET › Přeakcování/přeeventování vs…
8. 7. 2014   #191902

pojem 3 vrstva aplikace je taky takovy hezky "programatorsky obrat" ...

z popisu se nejspise snazis vytvorit nejakou multiplatformni aplikaci. doporucuji pouzit architekturu MVVM, ve ktere je mozne implementovat aplikace pro desktop/web/tablety/telefony. pokud se pouzije existujici MVVM framework tak je to uplna brnkacka. v MVVM se sdili vrstvy ViewModel a Model (vetsinou pomoci PCL), coz je vetsina bussines/aplikacniho kodu. platforme zavisle veci se dodavaji pomoci DependencyInjection. Vrstva View je vlastne "zakladni projekt" pro danou platformu. Obsahuje implementace Platforme závislých tříd + View třídy.

pokud ti z nejakeho duvodu nevyhovuje MVVM a z tveho skromneho popisu muzu pouze doporucit pouziti MVP nebo PM (ted sem stravil hodinu ctenim tech vzoru ale je v tom takovy zmatek ze fakt neni jasne co co dela, takze bych doporucil variantu, kdy ve View nic neni, secko je v Presenteru, Presenter vola View pres DI a View vyvolava akce na Presenteru primo).

    interface ICustomerView
    {
        void DrawCustomerList(object customersList);
        void DrawCustomerPhoto(int x, int y, object photodata);
    }

    class CustomerController
    {
        private ICustomerView view;
        private object customersList;
        
        public CustomerController(ICustomerView view)
        {
            this.view = view;
        }

        public void ShowCustomers()
        {
            //....
            view.DrawCustomerList(customersList);
            //....
        }

        public void SelectCustomer()
        {
            //....
            view.DrawCustomerList(10, 20, customersList[1]);
            //....
        }
    }

    class CustomerView : Form, ICustomerView
    {
        private CustomerController controller;
        public CustomerView()
        {
            controller = new CustomerController(this);
        }
        public void DrawCustomerList(object customersList)
        {
            throw new NotImplementedException();
        }

        public void DrawCustomerPhoto(int x, int y, object photodata)
        {
            throw new NotImplementedException();
        }

        public event Action Save;

        protected virtual void OnSave()
        {
            Action handler = Save;
            if (handler != null) handler();
        }

        public void OnClickShowCustomers()
        {
            controller.ShowCustomers();
        }
    }
p3can
.NET › Přeakcování/přeeventování vs…
8. 7. 2014   #191900

jak spolu souvisi OOP a akce ? co je to ten pojem "akce". nevim jak souvisi "akce" s eventem a klavesami, kdyz jednim eventem de popsat cela klavesnice vcetne modifikatoru a plno dalsich veci.

je lepsi prikladat zdrojaky nez-li krasopisne popisovati problemy  .

p3can
.NET › Windows Communication Founda…
5. 7. 2014   #191877

a jak si presne poznal ze to nejde pro jineho klienta ?

muzes jeste rozepsat SetBinding() ?

kdyz das break point na server metodu DownloadFile nekde na zacatek a zavolas druhy request behem stahovani prvniho souboru tak se stane co ?

p3can
C / C++ › While a checkBox
4. 7. 2014   #191864

#12 hlucheucho
ty uz znis jak muj Resharper (ktery by ve quick fixu nejspis rekl to same)   .

p3can
C / C++ › While a checkBox
3. 7. 2014   #191851

a coze ma delat ten tvuj program presne ? s jakou pameti presne manipulujes? co to vlastne ma delat ?

pro tebe je nejjednoduzsi pouzit ten casovac nez thread a synchrnizovat to. z toho videa to musi byt jasne.

do timeru ontick napises
SpeedPosuvaci();

z tela te funkce odstranis jak ten cyklus while tak ty sleep

to checked changed zmenis na


if (checkBox1->Checked)
timer1.enabled=true;

else

timer1.enabled=false;

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032018 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý