<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
span.StylE-mailovZprvy18
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">Otázka je, kdy je třeba program zevnitř ošklivý. Mně se zase nelíbí, když někdo šetří každým bitem aniž by musel (píše třeba pod Windows na současném počítači) a ve verzi 2.0 pak horko těžko cpe devět bitů do osmibitové proměnné, když mohl
 dodržet aligment na qword a nic by ho to nestálo :-)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Aleš Procháska<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt">
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span lang="CS">From:</span></b><span lang="CS"> Hw-list <hw-list-bounces@list.hw.cz>
<b>On Behalf Of </b>Petr Labaj<br>
<b>Sent:</b> Thursday, 07 September, 2023 17:03<br>
<b>To:</b> hw-list@list.hw.cz<br>
<b>Subject:</b> Re: ceckovy kviz 2 (hardcore)<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt">Když jsem jako mladé ucho nastoupil do svého prvního zaměstnání ještě za totáče, tak jsme tam měli jednoho mechanika.<br>
Šikovný a pracovitý borec.<br>
Po odpoledních (po práci) si stavěl malou černobílou televizi.<br>
Vždy jsem obdivoval, jak pěkný vyrobil třeba chladič na nějaký tranzistor dovnitř té bedny.<br>
Když jsem se ho ptal, proč se s tím tak maže, když to stejně vevnitř nebude vidět, tak mi řekl větu, která mě provází celý život.<br>
Řekl: "Udělat to pěkné zvenku umí každý mamlas. Ale profík to má pěkné i vevnitř."<br>
<br>
PL<br>
<br>
*******************<o:p></o:p></p>
<div>
<p class="MsoNormal">Dne 7.9.2023 v 16:52 Pavel Poucha napsal(a):<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">Zdravím, <o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">toto je samozřejmě na velkou diskusi. Pan Procházka ale píše o "jednoúčelovém" programu. <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Taky občas (já nebo nějaký opravdový programátor) podobné prográmky píšu. To jsou třeba programy, které přehází kus databáze informačního systému, nějak upraví data a pak už nikdy nebudou potřeba. Tam je několik možností:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">1) Zadat to kolegyni, a ta to za 3 dny udělá (s rizikem chyb)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">2) Napsat během hodiny program s neoptimalizovaným SQL dotazem, přenosem spoustou zbytečných dat, vyzkoušet ho na vzorku dat, pustit ho na to, a on to provede to během 3 minut<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">3) Napsat optimalizovaný program, den jej ladit, testovat, pustit ho na to, a on to provede to během 10 sekund<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Tím vůbec nehájím nějaké nepěkné a ledabylé psaní programů, i já často kus přepíšu, jen aby to bylo podle zásad atd. <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><br clear="all">
<o:p></o:p></p>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">S pozdravem<br>
ing. Pavel Poucha<br>
jednatel<br>
<a href="mailto:pavel.poucha@papouch.com" target="_blank">pavel.poucha@papouch.com</a><br>
Tel. +420 777 232 485<br>
<br>
Papouch s.r.o. - vývoj<br>
Papouch store s.r.o. - obchod<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Papouch production s.r.o. - výroba<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Workmonitor s.r.o. - monitorování výroby<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Máte-li chuť, navštivte naše stránky <a href="http://www.papouch.com/" target="_blank">
http://www.papouch.com/</a><o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">čt 7. 9. 2023 v 16:18 odesílatel Petr Labaj <<a href="mailto:labaj@volny.cz">labaj@volny.cz</a>> napsal:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class="MsoNormal">Nojo, no. Je to jedno z mých mnoha duševních postižení, že chci, aby
<br>
programy běžely pokud možno rychle a efektivně.<br>
I za cenu toho, že nepůjdu spát už v 5 hodin ráno, ale až o půl šesté.<br>
Spousta lidí to ale zřejmě vidí jinak. Proto mi dneska mnoho programů na <br>
4 GHz mocjádrovém procesoru běží podobně rychle, jako kdysi na 4 MHz <br>
Z-80A. :-(<br>
<br>
PL<br>
<br>
******************<br>
<br>
Dne 7.9.2023 v 16:05 Aleš Procháska napsal(a):<br>
> Budiž, takhle to může fungovat. Ale víc se mi líbí funkce, která vyhodí warning při kopírování příliš velkých proměnných (což člověk skutečně může nechtěně udělat). Samozřejmě potlačitelný, protože nakopírovat tisíckrát sto kilo trvá pět milisekund a kdyby
 mi to mělo ušetřit pár řádků u nějakého jednoúčelového programu, nebudu váhat to využít :-) Nehledě na to, že třeba podle MISRA bych se ani neměl pokoušet použít jinou techniku než přímé kopírování statických proměnných.<br>
><br>
> Aleš Procháska<br>
><br>
>> -----Original Message-----<br>
>> From: Hw-list <<a href="mailto:hw-list-bounces@list.hw.cz" target="_blank">hw-list-bounces@list.hw.cz</a>> On Behalf Of Petr Labaj<br>
>> Sent: Thursday, 07 September, 2023 14:11<br>
>> To: <a href="mailto:hw-list@list.hw.cz" target="_blank">hw-list@list.hw.cz</a><br>
>> Subject: Re: ceckovy kviz 2 (hardcore)<br>
>><br>
>> A věříte, že zrovna tohle mi připadá docela dobré?<br>
>> Zvlášť u programátorů, hodně vzdálených od hardware.<br>
>><br>
>> Pokud v nějakém jiném jazyku můžu napsat "polea=poleb", tak to zdánlivě<br>
>> vypadá jako nějaké přiřazení, kde o nic nejde. Klidně to udělám v cyklu 1000x.<br>
>> Jenže to může znamenat 1000x nakopírovat třeba 100kByte paměti.<br>
>><br>
>> Kdežto když si to musím přesunout nějakým memcpy, tak už si uvědomím, že<br>
>> to asi není tak levná operace, a že bych s nimi měl šetřit.<br>
>><br>
>> PL<br>
>><br>
>> ******************<br>
>><br>
>> Dne 7.9.2023 v 12:51 Aleš Procháska napsal(a):<br>
>>> O jedné krokolomné věci kterou musí používat bych věděl :-), a to je<br>
>> absence pole v céčku. Programátor musí použivat krkolomný workaround<br>
>> typu memcpy (a tedy v každém okamžiku vědět, jestli pracuje s polem nebo<br>
>> strukturou, což třeba já nejpozději do padesátí řádků spolehlivě zapomenu).<br>
>>> Aleš Procháska<br>
>>><br>
>>>> -----Original Message-----<br>
>>>> From: Hw-list <<a href="mailto:hw-list-bounces@list.hw.cz" target="_blank">hw-list-bounces@list.hw.cz</a>> On Behalf Of Petr Labaj<br>
>>>> Sent: Thursday, 07 September, 2023 02:37<br>
>>>> To: <a href="mailto:hw-list@list.hw.cz" target="_blank">hw-list@list.hw.cz</a><br>
>>>> Subject: Re: ceckovy kviz 2 (hardcore)<br>
>>>><br>
>>>> Souhlas.<br>
>>>> Nějaká skákání doprostřed bloků před else (jak tady bylo zmiňováno)<br>
>>>> jistě není to pravé.<br>
>>>> Ale při ošetření různých speciálních stavů často dokáže goto výrazně<br>
>>>> zpřehlednit a zjednodušit kód.<br>
>>>><br>
>>>> Nějaké to nadávání na C často vychází z nepravdivé premisy, že<br>
>>>> protože jazyk umožňuje i krkolomné konstrukce, tak je programátor musí<br>
>> používat.<br>
>>>> Ale to není pravda. Že jazyk něco umožňuje přece neznamená, že to<br>
>>>> využívat musím.<br>
>>>> Čitelnost a štábní kultura závisí v neprosté většině na<br>
>>>> programátorovi, ne na jazyku.<br>
>>>> (samozřejmě v výjimkou toho, když jazyk vyžaduje takovou kravinu,<br>
>>>> jako je psaní textových oddělovačů bloků begin a end ;-) )<br>
>>>><br>
>>>> PL<o:p></o:p></p>
</blockquote>
</div>
</blockquote>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</body>
</html>