🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.c
Article #247012

Re: ile czasu trzeba aby sie nauczyc c++?

#247012
From: (fir)
Date: Mon, 10 Apr 2017 19:42
59 lines
5906 bytes
W dniu poniedziałek, 10 kwietnia 2017 19:51:00 UTC+2 użytkownik (fir) napisał:
> 
> zarysuje przyklad,->  masz gre ktora ma zalczony pod-stan 
> dodatkowy ekran (np z ekwipunkiem) ktory obslugujesz z klawiatury (wciskasz klawisze i cos tam sie dzieje na ekranie z ekwipunkiem) - ten pod-stan gry przejmuje klawisze z handlera eventow "key down" (tj jest podpiety
> pod ten globalny handler)  teraz wyobraz sobie ze
> z tego ekranu chesz sie przelaczyc na jakis inny ekran
> (ktory tez przechwytuje klawisze, czyli tez podpinasz 
> ten drugi pod glowny handler eventow (i wybierasz ktory jest aktualnie wlaczony po jakims incie czy enumie (ktoray ja nazywam selektorem)).. i tu pojawiaja sie problemy.. nie wiem co tu jest nie tak (zeby wiedziec musialbym sie glebiej zastanowic) ale mozje pobieżne obserwacje wykazuja ze cos tu jest nie tak..

mocno zaluje ze nie potrafie uchwycic co tu jest naprawde problemem, (bo do tej pory czasem tylko natykalem sie na
pewne zreby i konsekwencje problemu ale nigdy nie chcialo mi sie tego do konca rozkminic bo tez jest to dosyc trudno uchwytne)

nie wiem czy np problemem jest juz sam ze tak to nazwe 'selektor' czyli cos w tym stylu


void mian()
{
  for(;;)
  {
         if(selektor==dragon) AnimateDragon();       
    else if(selektor==dog) AnimateDog();
    else if(selektor==cat) AnimateCat();

  }
 
}

czy tez problem wywoluje dopiero dolaczenie do tego 
eventow

to powyzej byc moze juz jest pewnym problemem w okreslonych sytuacjach, kiedys rozmyallem czy problemem 
jest to jesli stan prgoramu nie jest zapisany wyraznie w 
ramie (jako dostepne dane) tylko chowa sie gdzies w 
strukturze 

to powyzej moze np tworzyc problemy ale małe, zwiazane z tym ze kolejnosc wykonywania tych animacji (w sensie z-order, co przykrywa co) jest jakby narzucona z góry i czasem moze miec jakis niekorzystny wplyw na dzialanie) wtedy wlasnie zrobienie z tego explicite stanu w ram byloby wlasnie lepsze

animation list_of_animations[] = {cat, dragon, dog};

void main()
{
  for(;;)
  {
    AnimateThings(list_of_animations);
  }
  
}

byloby niewatpliwie lepsze (moze eventy robia z tym problem ze nie da ich sie chyba w ten sposob przepisac, jako narzuconych z gory?)

a moze problemem jest to ze w przypadkach ktore mgliscie mam na mysli ten wyzszy pociom (czyli wartosc selektora) jest zmieniana spod podrzednych funkcji (czyli zmienia ja np AnimateDragon())

nie wiem, ale jest to jakies zaburzenie jasnego prostego stylu kodowanie, bo normalnie kod w c (przynajmniej taki jaki ja lubie jest doskonale liniowy jest po prostu listą
tysiecy operacji wykonywanych doskonale liniowo i ew zapetlonych w petle, w takim wypadku jak tutaj ta liniowosc jest jakos zaburzona)

[co prawda gdy wczesniej pisalem o tzw 'krzaku' ;-( mialem bardziej na mysli to ze kody to implementujace sa rozrzocone po kliku miejscach w projekcie (unlike wlasnie zwykle liniowe kody), nie wiem czy to przypadkowa zbieznosc czy wynika to z eventow czy moze z kombinacji 
tych selektorów+eventy) i dont know

w kazdym razie cos tutaj jest temetem do rozkminy
Technical Details
Message-ID: <46d5d7c5-c037-4b20-8e1e-b188bf9ad953@googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!c45no712035qtb.1!news-out.google.com!w25ni976qtc.0!nntp.google.com!c45no712030qtb.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
References: <451e90e7$0$17965$f69f905@mamut2.aster.pl> <df81b585-523e-4ed7-a9b1-3eb3a980639d@googlegroups.com> <almarsoft.37215651928186221@news.v.pl> <f52db3b6-cba3-4c7a-9d02-2fa8105dab31@googlegroups.com> <almarsoft.666605623275236501@news.v.pl> <6dec90fc-996e-4eba-b0ad-39c85cf63178@googlegroups.com> <almarsoft.186316786733941680@news.v.pl> <c6e6f8be-305e-4dc4-aa68-ae78a6092d41@googlegroups.com> <almarsoft.8711069852850737226@news.v.pl> <11d70a66-0d3b-4b34-9c05-41682a0df8b1@googlegroups.com> <58e7df3c$0$645$65785112@news.neostrada.pl> <b8c15b18-beea-4ff2-984c-448475cf3d01@googlegroups.com> <58e7e6fe$0$654$65785112@news.neostrada.pl> <15a4c9b8-7ff6-4f1e-b5f4-3a0900c12e8a@googlegroups.com> <a2c9b678-c678-4772-a328-543b9cf1f2bf@googlegroups.com> <58e885dc$0$662$65785112@news.neostrada.pl> <8698e521-a9e6-4ca1-93e1-63ba3774f83e@googlegroups.com> <32d9c13f-c8fc-4d6f-a13d-a01775b57294@googlegroups.com> <b112e438-d604-403e-81fe-1a529ec3cd82@googlegroups.com> <58e8ddf6$0$5159$65785112@news.neostrada.pl> <5c5b62fe-cf04-4a41-a6d2-9cb4bbc26431@googlegroups.com> <d3e48384-7b53-41ba-9eb2-245824936fbe@googlegroups.com> <411d3d82-a0e2-474a-8f73-995093825954@googlegroups.com> <67bc3a39-cb5c-43d4-8862-1a911eb9aa84@googlegroups.com> <c2f92d40-00b8-4b9b-959b-ca59ec303956@googlegroups.com> <6fa9a74c-667c-486f-88c9-4a8e49bcedda@googlegroups.com> <91f911c1-27fd-4613-ae53-bef4a95878f6@googlegroups.com>

Show Full Headers
Complete Article Headers
X-Received: by 10.13.250.130 with SMTP id k124mr1339634ywf.39.1491853346821;        Mon, 10 Apr 2017 12:42:26 -0700 (PDT)
X-Received: by 10.157.84.12 with SMTP id j12mr544701oth.19.1491853346776; Mon, 10 Apr 2017 12:42:26 -0700 (PDT)
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!c45no712035qtb.1!news-out.google.com!w25ni976qtc.0!nntp.google.com!c45no712030qtb.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.lang.c
Date: Mon, 10 Apr 2017 12:42:26 -0700 (PDT)
In-Reply-To: <91f911c1-27fd-4613-ae53-bef4a95878f6@googlegroups.com>
Complaints-To: groups-abuse@google.com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=5.172.255.114; posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
NNTP-Posting-Host: 5.172.255.114
References: <451e90e7$0$17965$f69f905@mamut2.aster.pl> <df81b585-523e-4ed7-a9b1-3eb3a980639d@googlegroups.com> <almarsoft.37215651928186221@news.v.pl> <f52db3b6-cba3-4c7a-9d02-2fa8105dab31@googlegroups.com> <almarsoft.666605623275236501@news.v.pl> <6dec90fc-996e-4eba-b0ad-39c85cf63178@googlegroups.com> <almarsoft.186316786733941680@news.v.pl> <c6e6f8be-305e-4dc4-aa68-ae78a6092d41@googlegroups.com> <almarsoft.8711069852850737226@news.v.pl> <11d70a66-0d3b-4b34-9c05-41682a0df8b1@googlegroups.com> <58e7df3c$0$645$65785112@news.neostrada.pl> <b8c15b18-beea-4ff2-984c-448475cf3d01@googlegroups.com> <58e7e6fe$0$654$65785112@news.neostrada.pl> <15a4c9b8-7ff6-4f1e-b5f4-3a0900c12e8a@googlegroups.com> <a2c9b678-c678-4772-a328-543b9cf1f2bf@googlegroups.com> <58e885dc$0$662$65785112@news.neostrada.pl> <8698e521-a9e6-4ca1-93e1-63ba3774f83e@googlegroups.com> <32d9c13f-c8fc-4d6f-a13d-a01775b57294@googlegroups.com> <b112e438-d604-403e-81fe-1a529ec3cd82@googlegroups.com> <58e8ddf6$0$5159$65785112@news.neostrada.pl> <5c5b62fe-cf04-4a41-a6d2-9cb4bbc26431@googlegroups.com> <d3e48384-7b53-41ba-9eb2-245824936fbe@googlegroups.com> <411d3d82-a0e2-474a-8f73-995093825954@googlegroups.com> <67bc3a39-cb5c-43d4-8862-1a911eb9aa84@googlegroups.com> <c2f92d40-00b8-4b9b-959b-ca59ec303956@googlegroups.com> <6fa9a74c-667c-486f-88c9-4a8e49bcedda@googlegroups.com> <91f911c1-27fd-4613-ae53-bef4a95878f6@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <46d5d7c5-c037-4b20-8e1e-b188bf9ad953@googlegroups.com>
Subject: Re: ile czasu trzeba aby sie nauczyc c++?
From: "(fir)" <profesor.fir@gmail.com>
Injection-Date: Mon, 10 Apr 2017 19:42:26 +0000
Lines: 82
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit