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 - Kozzi

Stran: [1]
1
Vývoj / Re:Použití příkazu GOTO v jazyku C
« kdy: 19. 08. 2019, 13:07:15 »
https://godbolt.org/z/elNcJ8

Jeste doporucuji si pohrat s argumentama pro kompilaci napriklad uz i pri -O1 se kompletne zrusi ten cyklus, jelikoz kompilator vi ze muze rovnou vypsat cislo 5

2
Vývoj / Re:Použití příkazu GOTO v jazyku C
« kdy: 19. 08. 2019, 13:02:39 »
Kdyz tedy pouziji goto uvnitr nejakeho bloku kodu a vyskocim z tohoto bloku, povazuje prekladac zmineny blok kodu (ze ktereho jsem vyskocil) za ukonceny? Nebo ho nechava nejak otevreny? Viz tento priklad:

Kód: [Vybrat]
int i, j;

for(i = 0; i < 10; ++i) {
for(j = 0; j < 20; ++j) {
if(j == 5)
goto vylez_z_cyklu;
}
}

vylez_z_cyklu: printf("j je rovno %d\n", j);

Co vám brání si to zkompilovat a pak to disasseblovat, aby jste viděl, jak to dopadlo?

Tak teoreticky mu muze chybet znalost ASM ;-)

https://godbolt.org/z/elNcJ8

3
Vývoj / Re:Použití příkazu GOTO v jazyku C
« kdy: 19. 08. 2019, 12:24:27 »
Kdyz tedy pouziji goto uvnitr nejakeho bloku kodu a vyskocim z tohoto bloku, povazuje prekladac zmineny blok kodu (ze ktereho jsem vyskocil) za ukonceny? Nebo ho nechava nejak otevreny? Viz tento priklad:

Kód: [Vybrat]
int i, j;

for(i = 0; i < 10; ++i) {
for(j = 0; j < 20; ++j) {
if(j == 5)
goto vylez_z_cyklu;
}
}

vylez_z_cyklu: printf("j je rovno %d\n", j);

Samozrejme ze za ukonceny, proste si v tom miste odesel. Je to jako by si tam dal break; a za tim vnitrnim forem byl zase break;

4
Vývoj / Re:Použití příkazu GOTO v jazyku C
« kdy: 19. 08. 2019, 10:42:45 »
Obcas, krome uz zminenych pripadu se hodi na vyskakovani z vicenasobne vnorenych smycek. Nekdy dost hodne. Na tom je obcas pekne poznat nezkuseneho programatora, ktery vyrobi strasne slozity a nepochopitelny bazmek, kde na prvni pohled vubec neni poznat co byl zamer, protoze ve skole se dozvedel, ze goto je zlo a ted ma strach ho pouzit. :)
Pouziti GOTO mi pripada jako "ted vyskoc z okna" ono to nejak dopadne. Misto: nech toho co delas, vyjdi dverma, zamkni a sejdi ze schodu dolu.

To je poradny nesmysl,  C++ (nevim jak C, ale predpokladam, ze to bude stejny), je presne definovano jak se to bude chovat. Je to normalni vyskoceni ze vsech zanorenych scope. Zadne vyskakovani z okna, je to primy vychod ven. Promin, ale ty jsi dalsi takovy pripad, o kterem jsem mluvil....

Presne tak, akorat ze tusim u C narozdil od C++ ti to dovoli preskocit inicializace promennych, coz neni zrovna super ale pokud ma clovek zapnute warningy tak si toho vsimne u u toho C

5
Vývoj / Re:Použití příkazu GOTO v jazyku C
« kdy: 19. 08. 2019, 09:22:44 »
Obcas, krome uz zminenych pripadu se hodi na vyskakovani z vicenasobne vnorenych smycek. Nekdy dost hodne. Na tom je obcas pekne poznat nezkuseneho programatora, ktery vyrobi strasne slozity a nepochopitelny bazmek, kde na prvni pohled vubec neni poznat co byl zamer, protoze ve skole se dozvedel, ze goto je zlo a ted ma strach ho pouzit. :)

Tak ono nektere jazyky pro toto maji specialni syntaxi (break: navesti, priapdne break cislo_z_kolika_smycek_vyskocit) aby se nemuselo pouzit to zle skarede goto :-) .

6
Vývoj / Re:Několik nejasností začátečníka s Gitem
« kdy: 27. 03. 2019, 10:31:08 »
Jedna z věcí, kterou potřebuju je centrální úložiště. Část věcí píšu doma, něco v práci, občas je potřeba dělat odkudkoliv na tom co zrovna hoří... A ne vždy je praktické/možné přenášet všechno sebou.

Ano presne na toto je git a podobne systemy idealni nastroj

Takže v práci dělám na projektu A, udělám commit a push na GitHub. Doma pak stáhnu a pokračuju v práci.
Dejme tomu bude potřeba udělat zásah do strého projektu, doma stáhnu, udělám opravy, push na GitHub. Ovšem v práci pak zjistím, že před X měsíci jsem tohle už taky řešil a jen nenahrál na server. Jde to sloučit, nebo jak na to Git upozorní - předpokládám, že zařve a je to rozumně řešitelné.
Tak záleží co je myšleno tím ne-nahrál na server, pokud byla práce v gitu (vše bylo commitnuto) a jen to nebylo pushnuto na server, tak se stím v závislosti na tom jak velké to byly změni git docela dobře popere, pokud člověk používá například pro práci s git i nějaké IDE či grafickou nástvbu, tak řešení případných konfliktů bývá poměrně bezbolestné.

Nebylo by lepší na vývoj z domu mít druhý účet a skládat to jako od dvou vývojářů? Má to nějaké výhody, nebo je to úplný nesmysl?
Tady nevidím moc důvod proč si to tak komplikovat, mít více ůčtů (forků) má zejména význam pokud na projektu dělá více lidí a je třeba jejich práci revidovat a schvalovat před začleněním.

Pokud na projektu pracuje člověk sám, tak nevidím důvod proč si vytvářet fork. Obocně se snažím na jakoukoliv sadu změn vytvářet si vlstní větev a tu pak případně začlenit do hlavní větve.

A nakonec, u webových projektů, se mi prostě nelíbí představa mamutí složky .git na webserveru. Jistě, můžu zakázat přístup do složky, ale...
Tak ono není důvod mít .git součástí těch projektů na serveru, je to jen o způsobu deploy. Osobně bych doporučoval mít nějaký nástroj skript (gitlab má podporu pro deploy), který zajistí nahrání dané verze projektu na dané umístění.

Navíc jak správně řešit když samostatně vyvíjím např. knihovnu pro DB, prezentační vrstvu (hromada SASSy šablon + kompilované styly), hodilo by se spíš řešit Git pro jednotlivé komponenty a pak jenom poskládat hotový projekt z aktuálních verzí. Jak k tomu přistupovat? Nebo prostě .git pro každý web a případné knihovny prostě kopírovat...

Tady záleží na preferencích, někdo preferuje monolitický přístup někdo zase ne. Osobně to řeším tak že mám hlavní repositář a jednotlivé komponenty mají vlastní git a jsou začleněny jako git submoduly do toho hlavniho git projektu. Jednotlive verze projektu pak maji specifikovan presne verze jednotlivych submodulu/komponent

Stran: [1]