abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 4
    včera 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 1
    včera 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    včera 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    24.4. 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 12
    24.4. 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    24.4. 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (73%)
     (9%)
     (2%)
     (17%)
    Celkem 763 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Programovani v C - vyuka

    15.10.2014 08:36 Lubomir
    Programovani v C - vyuka
    Přečteno: 879×
    Mame pocitacovou ucebnu s linuxem (xfce). Chteli bychom vyucovat programovani v C. Existuje nejaky vhodny nastroj pro vizualni programovani ? Resp. co byste doporucili pro vyuku programovani v C v prostredi X ?

    Odpovědi

    15.10.2014 10:28 graviton
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Co v tomto kontextu znamena vizualni programovani?

    GUI programovani v C & X11 bych nedoporucoval, to zavani zlocinem proti lidskosti. Leda tak nejakou jednoduchou gamesu v SDL, to by mohlo byt i zazivne.

    Co do nastroju, idealni je nejaky textovy editor. Muze byt i ponekud programatorsky, chute jsou ruzne, sve priznivce maji jiste: vim (unixova tradice), jedit (chova se spis podle konvenci win), qtcreator (nejen pro qt), eclipse (pokud mate hodne RAM).
    15.10.2014 10:41 DarkKnight | skóre: 26
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Ja bych zvolil klasiku, code::blocks
    15.10.2014 11:31 lofcek
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Len dufam, ze to nie je na strednej skole.Myslim, ze vyucovat stredoskolakov jazyk C ako prvy programovaci jazyk by mala byt trestnym cinom.
    15.10.2014 18:16 lawtroll
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Vsak ono je, dalo by se to chapat jako skutkova podstata §215 TZ.
    15.10.2014 20:06 Petr | skóre: 29
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Nejak nechapu...?
    vlastikroot avatar 15.10.2014 20:59 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Je to dobry jazyk na pochopeni zakladu. Problem je jen v tom, ze vetsina stredoskolaku opravdu programovat nechce a je to pro ne jen otrava.
    We will destroys the Christian's legion ... and the cross, will be inverted
    pavlix avatar 16.10.2014 11:03 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Taky si myslím, že přeskakovat assembler je zločin.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    17.10.2014 00:13 ...
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    cheatengine... idealni vyukova pomucka. akorat se minula systemem.
    15.10.2014 16:25 Petr | skóre: 29
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Taky nerozumim terminu "Vizualni programovani" ale shodnu se s predeslymi prispevky: Bud trosku "hardcore" - v terminalu vim + c.vim skript na zvyraznovani syntaxe + gcc (make), nebo IDE editor a v tom pripade je dobry code::blocks. Samozrejme prvni varianta pobezi i bez Xek :-)
    Josef Kufner avatar 15.10.2014 17:59 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Zaslechl jsem nějaké vcelku dobré reference na Code::Blocks. Jako docela dobrá volba mi přijde také Qt Creator.

    Určitě bych se vyhnul přeplácaným IDE, jako je Eclipse, Netbeans, Visual Studio a vůbec vše takové podobné. Pokud s programováním nemají žádné zkušenosti, zaručeně se v tom ztratí a není šance, že by pochopili, co se děje za tou kopou tlačítek. Proto bych někde na začátku udělal hello world jen s textovým editorem, make a gcc. Asi tak někde po probrání úplných základů, jakmile budou schopní napsat a zavolat funkci. Jakmile pochopí jednoduchý makefile, IDE bych jim vrátil, ale pokud si tím neprojdou, budou jen mačkat zelený trojúhelníček.
    Hello world ! Segmentation fault (core dumped)
    Josef Kufner avatar 15.10.2014 18:01 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    ... A pokud ti jde o GUI, tak jednoznačně Qt + Qt Creator. Ale to až mnohem, mnohem později – napřed musí pobrat základy OOP.
    Hello world ! Segmentation fault (core dumped)
    15.10.2014 19:18 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Rozhodně v první řadě obyčejný akceptovatelný editor (klidně i vim), dokud nenapíše „hello universe“ s nějakými dalšími samostatnými filesi a nepoužije překlad a linkování, tak nepouštět dál. Potom bych se asi přimlouval za code::blocks, Eclipse stejně jako Netbeans není rozumná výuková platforma.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    15.10.2014 21:06 Odin
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Vim jako editor na stredni skole? Rada nad zlato ;-)

    Jinak c povazuji pro stredni skolu za spatnou volbu. Idealni je imho netbeans a java.
    Josef Kufner avatar 15.10.2014 21:14 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    C má jednu obrovskou výhodu: Nepotřebuješ hned začínat s OOP. Další výhodou je, že takový program můžeš nahrát do AVR a ovládat s tím nějakou hračku, což pak lze napojit na elektroniku a další odvětví. A navíc to je něco, co děti bude bavit.

    Java je příliš zkriplený jazyk, než aby byla do začátku vhodná a hlavně její IDE jsou příliš komplikované a neprůhledné. Pokud učit vyšší jazyk, tak Python, ale až po úvodu v C.
    Hello world ! Segmentation fault (core dumped)
    15.10.2014 21:19 Odin
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Java jako jazyk mi prijde naopak velice vhodna. Syntax se snadno pamatuje a je to jazyk vhodny pro uceni oop. C mam rad, ale mam pocit,mze vetsina dnesnich programatoru se s nim v komercni praxi nesetka. Take mi neprijde, ze by napr. Netbeans bylo nejak extra neprehledne, ba naopak. Pro vyuku javy lze take dobre pouzit prostredi blueJ nebo proste jen CLI, kde bych ale doporucil pouzit mcedit nebo nano misto nadrecnikem navrhovaneho vimu ;-)
    vlastikroot avatar 15.10.2014 21:35 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Ucit jako prvni jazyk javu je jako ucit nekoho ridit tank, kdyz neumi jezdit ani na kole.
    We will destroys the Christian's legion ... and the cross, will be inverted
    15.10.2014 21:47 odin
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Proc? Cim je java tankem? :-)

    Ja si naopak myslim, ze ucit jako prvni jazyk C je jako ucit nekoho provadet na aute vymenu motoru, kdyz ani neumi ridit. ;-)
    vlastikroot avatar 15.10.2014 22:21 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Ja proti Jave nic nemam, programuje se v ni podobne jako treba v pythonu, C++ nebo C#. Uplny zacatecnik s programovanim by se mel naucit poskladat z par zakladnich principu neco komplexniho. Vyhrabat z komplexu neco pouzitelneho a slepit, je trochu jiny typ ukolu, ktery by se mel ucit az potom.

    Takze treba zacit na ASM/C, naucit se to se vsim vsudy a pak se poohlizet po neco min low-level, jako je treba C++ nebo Java.

    Ve skole se ma clovek naucit premyslet, neni primarni cil si tim hned zacit vydelavat.

    We will destroys the Christian's legion ... and the cross, will be inverted
    Josef Kufner avatar 15.10.2014 22:38 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Jde o jednoduchost, nikoliv o low-levelnost. Assembler je v tomhle nevhodný, neboť potřebuješ znalost komplikovaného hardware, i když samotný jazyk je v podstatě triviální. C tě této závislosti na hardware zbavuje, ale přitom ještě není zatížen složitostí vyšších jazyků. Proto je také tak populární a má své pevné místo i po 40 letech.
    Hello world ! Segmentation fault (core dumped)
    vlastikroot avatar 15.10.2014 22:50 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Je to tak, cim jednodussi jazyk, tim slozitejsi a neprehlednejsi program, pokud resim komplexni problem. Mezi C a ASM je dost primocary preklad, takze se da lehce vysvetlit, proc ty veci jsou jak jsou. Napr. k popisu funkci, stacku, promennych atd. neni nic lepsiho, nez okomentovany ASM kod. Vsechno to pak zacne zapadat do sebe.

    C je urcite nejlepsi volba, ale nesmeroval bych vyuku GUI smerem, ale spis k algoritmizaci. Az pak OOP, C++ a QtCreator.

    We will destroys the Christian's legion ... and the cross, will be inverted
    Josef Kufner avatar 15.10.2014 21:44 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Syntax je prakticky stejná jako v C.

    Java je navržená tak, aby se používala s IDE a bez něj to je utrpení. Což nás přivádí zpět k tomu, že úplný začátečník bude muset vedle základních konstrukcí (cykly, funkce) vstřebat ještě OOP, kopec knihoven (srovnej s stdio.h), neprůhledný build systém a komplikované IDE.

    Vedle toho v C může začít s jednoduchým editorem, příkazem "gcc main.c -o main && ./main" v terminálu a dokumentací k stdio.h. S tímhle vysvětlit hello world kompltně a bez děr ("toho public static si nevšímej") je na půl hodinky.
    Hello world ! Segmentation fault (core dumped)
    15.10.2014 21:55 odin
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Syntax je prakticky stejná jako v C.

    Vicemene souhlasim.

    Java je navržená tak, aby se používala s IDE a bez něj to je utrpení.

    Prace s javou bez ide je obdobna jako prace bez ide s jinym jazykem. Alespon podle meho.

    Vedle toho v C může začít s jednoduchým editorem, příkazem "gcc main.c -o main && ./main" v terminálu a dokumentací k stdio.h. S tímhle vysvětlit hello world kompltně a bez děr ("toho public static si nevšímej") je na půl hodinky.

    Ja si nemyslim, ze by to v jave bylo slozitejsi na pochopeni. Vzdyt helloworld v jave a v c je o hodne podobnejsi. Snad jen, ze System.out.println mi prijde lepsi k pochopeni nez printf... To, jestli je pred mainem int nebo public static void, mi take prijde celkem jedno. V C je navic argc a argv, ktere byva perfektne zapsano jako "*argv[]", coz budete imho vysvetlovat dele nez "public static".

    Kazdopadne dekuji za nazory. :-)
    Josef Kufner avatar 15.10.2014 22:55 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    U hello world v C můžeš během té půl hodiny vysvětlit každé slovo. Student pak bude mít před sebou příklad, kterému zcela rozumí. Parametry main lze vynechat a probrat později, přičemž v kódu nebudou strašit. Stačí se vyhnout pointerům (a tedy i stringům v proměnných) během výkladu cyklů a můžeš mít na konci každé hodiny 100% kódu pokrytých výkladem, aniž by jsi něco výrazněji ošidil.

    V případě "System.out.println" si vylámeš zuby už na těch tečkách uprostřed. Tedy pokud ti nějaké zbydou po "public static". Student před sebou bude mít pár řádek, kterým rozumí a okolo toho kopec bordelu, který tam je protože proto.
    Hello world ! Segmentation fault (core dumped)
    15.10.2014 21:15 Petr | skóre: 29
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Sice je to asi flame, ale proc C na SS ne? - Nehadam se, jen me to zajima. A o SS autor nehovoril, takze nevime na jake skole chce to C vyucovat (i kdyz asi to ta SS bude).
    15.10.2014 21:32 odin
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Sice je to asi flame, ale proc C na SS ne?

    Z me strany to flame neni. Ja mam ciste C moc rad. Myslim si vsak, ze se na stredni skolu proste nehodi. V 21. stoleti by imho bylo dobre programovani vyucovat v objektovem jazyce a doprat studentum luxus garbage collectoru ;-) Java je imho vhodna pro vyuku oop, ale i pro vyuku algoritmizace, zakladnich algoritmu a datovych struktur.

    Dalsi roli imho hraje velmi nizka pravdepodobnost toho, ze by se student zivil v budoucnu jako programator v C, ktere se dnes pouziva jen na specializovane veci. Kolik firem poptava programatory v jave a kolik v cistem C? Uz jsem z toho trosku vypadl, ale pred peti-sesti lety byla situace zjevna...

    A o SS autor nehovoril, takze nevime na jake skole chce to C vyucovat

    Na zaklade stylu polozeneho dotazu jsem to pochopil nejak automaticky. Ale moc jsem nad tim nepremyslel. Hned mi do hlavy skocila predstava skupiny nactiletych lidi, kteri se snazi ucit vim a C. Nevim jak vy, ale ja mel v techto letech opravdu jine zajmy. A dale si myslim, ze java je proste zabavnejsi a lide se ji nauci rychleji nez C. Vzdyt s minimalni znalosti budou schopni pouzit veci jako swing a canvas. ;-)
    15.10.2014 21:26 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Sice nevím čím se například gvim tak liší od běžného editoru, ale mohou použít klidně gedit.

    C je jednoznačně lepší volba než Java, na Javě je rozhodně šílenost někomu vysvětlovat základy programování a pouštět fazole pro začátek je druhá šílenost.

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    15.10.2014 21:38 odin
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Gedit by sel, to je pravda.

    C je jednoznačně lepší volba než Java

    Procpak? Nemyslim si, ze by java byla nejak menecenna.

    na Javě je rozhodně šílenost někomu vysvětlovat základy programování

    Proc? Proc by tento jazyk byl nevhodny na vyuku programovani? Na rozdil od C se nemusi student zaobirat alokaci pameti a jako bonus ma k dispozici OOP, ktere dnes k vyuce programovani proste patri. Dale hraje roli fakt miry poptavky na pracovnim trhu.

    Nebo si myslite, ze je zbytecne studenta obtezovat s OOP? Ja si to nemyslim, ale i kdyby, tak java ma prece take primitivni typy ;-)

    pouštět fazole pro začátek je druhá šílenost.

    Opet se musim zeptat proc? Vzdyt se zaklad prace s netbeans da naucit behem par desitek minut ;-)

    16.10.2014 08:33 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Nevím proč rozděluješ věci, které ti vzájemně odpovídají. C je jednoznačně lepší volba než Java, protože je šílenost na ní někomu vysvětlovat základy programování.

    Několik základních důvodů „proč“ vypsal Josef Kufner, a rozhdoně se není třeba hned zaobírat dynamickou alokací paměti, ale v určitém stadiu znalostí je to něco na čem pochopí lehce, jak to funguje a bez této znalosti nelze dobře programovat - je to základ.

    OOP by měl být rozhodně až druhý a ne vždy nutný krok, první je třeba základy strukturovaného programování.

    Poptávka - dobrý vtip - sorry, ale škola, kde učí programátory, má svůj program a neptá se takto v diskuzi (a tam je tento stejně nutný).

    Pouště fazole je šílenost, protože se budou učit ovládat fazole a ne programovat.
    Pár desítek minut je jedna vyučovací hodina a pak 3× zopakovat něco, co vůbec nepotřebují a co dělá spoustu věcí za ně a při tom ne rychleji „jen to prostě nevědí“.

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    rADOn avatar 16.10.2014 13:58 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Tobe Odine uplne unika co to je _vyuka_. Nahrnout co nejvic informaci najednou, to muzes udelat zkusenymu programatorovi (ktery bude rad ze neplytvas casem) ale ne cloveku ktery neumi napsat cyklus. Nebo ani nevi co to je. Na to prisel uz blahe pameti Komensky ze uceni ma byt postupne, od jednoducheho ke slozitejsimu. Predstav si takovy ukazkovy prvni helloworld v cecku:
    #include <stdio.h>
    void main(void) {
        printf("hello world\n");
    }
    
    Pokud se na to dokazes podivat jako neprogramator, tak uvidis proc je cecko pro vyuku hrozne blbe: i uplne primitivni program obsahuje makro preprocesru, escape sekvence, funkce a nepouzite datove typy. I kdyz je dobre ze ten jazyk vsechno tohle umi, jsou to veci ke kterym by ses mel dostat postupne a ne je nahrnout vsechny najednou. Jak by to vypadalo v Jave si umis predstavit sam : totez v blede modrem plus jeste navic objekty, staticke metody a balicky. Naprosta pakarna. To nemuze skoncit jinak ze lidi bezmyslenkovite opisujou neco cemu (zatim) nemuzou rozumet coz je antiteze dobre vyuky.
    Nebo si myslite, ze je zbytecne studenta obtezovat s OOP?
    Rozhodne. OOP je neco k cemu se i chytry a motivovany zak nedostane driv nez za nekolik mesicu. A behem tech mesicu presne ty vlastnosti Javy ktery pro tebe jako profika jsou uzitecny budou zacatecnika mast a prekazet mu.

    BTW ja o tomhle mam jistou predstavu pacz shodou okolnosti prvni jazyk ktery jsem se seriozne ucil bylo C… a byla to tragedie. Helloworld je jeste v pohode, ale to ze se ani printf() neda pouzivat bez znalosti pointeru je silene. I kdyz mam cecko rad (podstatne vic nez Javu) tak jako prvni jazyk bych ho nikomu nepral. Spis bych sahnul po nejakem interpretru – python, lua, tcl… klidne i perl. Python by byl asi idelani, ma spravu pameti, silne datove typy, objekty…muzes na nem ucit vsechno stejne co v jave (a hromadu veci o kterych se javistum nesni) – postupne.

    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    David Watzke avatar 16.10.2014 14:16 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    nepouzite datove typy
    Jenže ty sis tam vymyslel, správně to je int main() a chybí ti tam return 0 :-) Ten void argument je k ničemu.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    rADOn avatar 16.10.2014 15:18 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Jo pravda, ten argument se muze zrusit. Ale navratovy kod je dalsi vec ktera je v helloworld programu nadbytecna a muze pockat na dalsi lekci, takze ten prvni void tam byt musi.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    16.10.2014 15:24 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Main by měl mít návratovou hodnotu int (myslím ale, že se připouští i ten void) a return by tam měl být (ale opět C99, pokud není tak tam bude 0, nicméně nedávat return je hodně špatný začátek). Ale s tím void bych si nebyl tak jistý, je to fce jak každá jiná a to „void“ není k ničemu. int func() nebo int func(void) je určitý ( někdy zásadní) rozdíl.

    Zkus si gcc -kuk.c -o kuk && ./kuk

    #include <stdio.h>
    
    /* uncomment "void" and try compile */
    void func(/*void*/){
      printf("func\n");
    }
    
    int main() {
      printf("hello worldi\n");
      func(10);
      return 0; /* comment this line and add -std=C99 to compile command */
    }
    

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    pavlix avatar 16.10.2014 17:19 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Pokud se na to dokazes podivat jako neprogramator, tak uvidis proc je cecko pro vyuku hrozne blbe: i uplne primitivni program obsahuje makro preprocesru, escape sekvence, funkce a nepouzite datove typy.
    Nikoliv. Pokud se na to díváš jako začátečník, tak tam není makro preprocesoru ale magická formule, která ti zpřístupňuje funkci printf() nebo ještě lépe magická formule, která se píše na začátek programu.
    escape sekvence
    V tomhle je třeba Python přístupnější.
    nepouzite datove typy
    Nevím, jestli bych to takto nazval, ale holt céčko.
    Jak by to vypadalo v Jave si umis predstavit sam : totez v blede modrem plus jeste navic objekty, staticke metody a balicky.
    Java je na tohle hodně zlá.
    Helloworld je jeste v pohode, ale to ze se ani printf() neda pouzivat bez znalosti pointeru je silene.
    Proč by se nedal používat bez znalosti pointerů?
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    rADOn avatar 16.10.2014 19:11 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Pokud se na to díváš jako začátečník, tak tam není makro preprocesoru ale magická formule…
    Presne tak. A chces aby clovek veci chapal nebo jen bezduse opisoval nabiflovany moudra?
    Helloworld je jeste v pohode, ale to ze se ani printf() neda pouzivat bez znalosti pointeru je silene.
    Proč by se nedal používat bez znalosti pointerů?
    To ti muzu popsat z prvni ruky:

    1. lekce – helloworld. Par magickych formuli ale da se.

    2. lekce – promeny, mozna i cykly. Aby to bylo videt tak pritlacime na pilu: prinf("i=%d", i);

    3. lekce – vstup. Pro zacatek to nejjednodussi co muze byt – precist text a vypsat ho zpatky. Cili logicky pokracujeme: printf("zadal jsi: %s", s);… BÁC. Vyucujici po dlouhem drbani na hlave prohlasil neco ve smyslu "proste tam to ampersanditko musi byt, to pochopite casem". Mel pravdu, pochopil jsem to o nejakych sest let pozdeji.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    rADOn avatar 16.10.2014 19:41 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    BTW ted jsem zrovna zahledl uplne luxusni kokotinu:

    http://programujte.com/clanek/2007042601-java-tutorial-hello-world-2-dil/

    Stranky a stranky magickych formuli (cca pulka celeho textu), jenom aby priblbe klikaci ide neco udelalo. A na zaver perla: Jestliže výstup končí větou BUILD SUCCESSFUL, gratulujeme! Úspěšně jste zkompilovali váš první program! …a o programování jste se pritom dozvedeli hovno.

    Tedy, on ten text neni vubec spatny – clovek ktery ma pod opaskem rocnik nebo dva v nejakem vyukovem jazyce by podle toho asi mohl celkem hladce prejit na "opravdove" programovani.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    Josef Kufner avatar 16.10.2014 21:35 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Pokud třetí lekcí budou pointery a hrátky s pamětí, žádné BÁC se konat nebude. V C skoro nic jiného než pointer a funkce není, takže to nemá smysl odkládat. Vstup je celkem nepodstatný, ten pár lekcí počká a pak se může probrat spolu se soubory. Do té doby si vystačí s mírně magickým printf, které dokud vypisuje jen čísla až tak magické není.
    Hello world ! Segmentation fault (core dumped)
    pavlix avatar 16.10.2014 22:39 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Mel pravdu, pochopil jsem to o nejakych sest let pozdeji.
    Tak to zabolí. Ale je to značně individuální, já jsem začínal na pascalu a při přechodu na C jsem zjistil jak moc mě pascal zdržoval a jak moc mi komplikoval život oproti C. A to je to opěvovaný výukový jazyk. Ale kdybych měl předtím základy assembleru, tak by mi to dalo možná ještě víc.

    Ale neprogramátorům spíše sedí Python, ale zase tam mám potíže s výukou v tom smyslu, že v Pythonu je ta magie sice jednodušší, zato jí je tam strašně moc.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    15.10.2014 21:35 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Odkdy je vim akceptovatelný editor? Je to editor určený ke komunikaci robotů s počítačem, když zrovna nemají jiné rozhraní než klávesnici. Není ale určený lidem, natož někomu, kdo začíná programovat v C.

    15.10.2014 21:37 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Pokud vím, tak na výšce se v něm psali i emaily ;-)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    vlastikroot avatar 15.10.2014 21:39 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Od ty doby, kdy clovek pochopi, ze je to stavovy editor. Kdyz clovek umi prepnout stav, neni na tom hur nez treba v tom mceditu.
    We will destroys the Christian's legion ... and the cross, will be inverted
    15.10.2014 21:51 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    S mceditem bych asi nic nesrovnával — ten nemá primárně sloužit jako editor pro vývoj kódu nebo dlouhodobé psaní. Každopádně je na tom uživatel s vimem zhruba o dvacet poznání hůř než s obyčejném KWrite, o pokročilejších editorech nemluvě. Kdyby roboti chtěli používat například Kate, taky by si přišli na své. Jenže Kate má navíc ještě spoustu možností určených pro lidské uživatele, jaké (g)vim zkrátka nezná.

    pavlix avatar 16.10.2014 11:05 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Mám s vimem takovou zkušenost, že si ho lidé velice rychle oblíbí, pokud nejsou přespříliš zvyklí na něco jiného.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    15.10.2014 21:43 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Vřele doporučuji KDevelop. Celkem mě překvapuje, že tento návrh tu nepadl jako jeden z prvních. (V souvislosti s tím může prospět vyhození XFCE a instalace KDE, což by bylo jedině dobře.) Nevím sice, co má znamenat pojem „vizuální programování“, ale lepší nástroj na programování v C a C++ než KDevelop se mezi relativně „lightweight“ prostředími hledá těžko. Auto-completion, integrace s Doxygenem a systém automatických odkazů mezi deklaracemi, definicemi a použitím identifikátorů je funguje zhruba stejně jako v Eclipse, jen to běží svižně, protože nejde o žádný odporný Java-centric moloch.

    16.10.2014 08:43 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Mě to napadlo, ale nikdy mi nefungoval spolehlivě (samozřejmě z tvého pohledu historické verze), oproti code:blocks, kde mi to šlape.

    Ale napsat, že KDevelop funguje zhruba jak Eclipse, ehm ano slouží ke stejnému (pod)účelu, ale komplexností je mnohem níže a nastavit si jej podle sebe taky moc nelze. Ano odezva java-centric-molocha je někdy horší, ale obvykle ne v těch věcech, které používáš často. Díky své „jednoduchosti“ a jednotnosti, je určitě vhodnější na výuku, než Eclipse nebo Fazole.

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    17.10.2014 18:31 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Já přece netvrdím, že KDevelop je stejně dobrý jako Eclipse na Javu, Python, PHP nebo na spoustu dalších jazyků. To pravděpodobně ne. Nicméně pokud si chci co nejrychleji otevřít nějaký projekt v C nebo C++ založený na CMake a okamžitě mít nějaké context-aware automatické doplňování a všechny možné vychytávky, nic lepšího než KDevelop jsem zatím neviděl. (Klasický Makefile by asi fungoval taky — koneckonců se dá nakonfigurovat téměř jakýkoliv custom build.) Pak existuje ještě QtCreator, ale s tím nemám příliš dobré zkušenosti. Nějaká forma eclipsího CDT existuje taky pro fazole i pro IntelliJIdea (což je další zajímavé IDE, na Javu prý mnohem lepší než Eclipse), ale to jsou všechno prostředí, u kterých jsem leckdy musel nastavit Xmx8g, aby mi to rozumně fungovalo, :-D což mi sice při 16 GB RAM moc nevadí, ale stejně je to divné. KDevelop žádnou takovou nenažranost nevykazuje.

    17.10.2014 19:59 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Všimni že jsem ho na závěr označil „…je určitě vhodnější na výuku, než Eclipse nebo Fazole.“

    OT: Doma mám stále 4GiB RAM a Core2Duo a Eclipse šlape jak hodinky s CDT (a spoustu dalších), jen na PDT je lepší malý RAM-disk na určitou část, nebo se to uchlastá (výkonově, ne paměťově), nebo mám Galileo, kterému sice něco chybí, ale nemá problém ani z dlouhými soubory a velkým projektem. Já holt používám ti staré věc (Eclipse Juno, Lunu mám rozchozenou, ale zatím jsem nepřešel) a staré OS, které nic nežerou a stačí jim pár set mega ;-).
    Nechci Eclipse (java-pomelého-molocha), nicméně zatím mi žádné Open/Free IDE nebylo schopné nabídnout to co Eclipse.

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    16.10.2014 11:45 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Zkusil jsem si Geany a připadalo mi sympatické, protože bylo velmi svižné. Nepoužívám ho, protože mám Vim.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    Fuky avatar 16.10.2014 13:41 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Jako úplný základ bych doporučil jet podle knížek Pavla Herouta a jakmile studenti vstřebají C, nechal bych je ať se pokouší implementovat věci z Pavel Töpfer - Algoritmy a programovací techniky.

    Dbal bych na to, aby pochopili každý krok který dělají, tj. v žádném případě nepoužívat složité vývojové prostředí, ale jednoduchý textový editor, kde si vše napíši sami včetně Makefile. S manuálem od Pavla Satrapy zvládnou používat GVim velice rychle, a když budou mít chuť, záleží jen na nich, jak moc budou využívat jeho možností. Další dobrý zdroj kde čerpat informace pro výuku je kniha Linux Začínáme programovat.

    Pak se můžete vrhnout na tvoření GUI, nejlépe v Gtk, nejprve ručně, poté pomocí Glade.

    Javu bych nechal až budou mít plně pod kontrolou výše uvedené. Díky vstřebání předchozího, jim dojde spousta souvislostí a uvidí v čem je přínost OOP.

    Zkušenost se studenty na VŠ, kteří se učili programovat rovnou v Javě a Eclipse je taková, že kolikrát neměli tušení co se děje mezi editací zdrojového kódu a spuštěním programu. Stačilo jim Eclipse sebrat, nechat dělat v obyčejném editoru všechny kroky ručně, tím si je osahaly, zažily a pochopily. Kdyby začínaly v C, měli by ještě mnohem lepší představu jak věci vnitřně fungují.

    Zkrátka, složitý problém je třeba rozbít na co nejmenší dílky a ty dokonale pochopit, teprve poté z dílků složit něco většího a posunout se o level výše.

    Josef Kufner avatar 16.10.2014 21:46 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Použít na GUI jako první toolkit Gtk je zvrhlé. GUI je krásný příklad pro použití OOP a je škoda to takle zabít.
    Hello world ! Segmentation fault (core dumped)
    pavlix avatar 16.10.2014 22:40 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    GTK mi přijde na začátky s GUI podobně vhodné jako kterýkoli jiný toolkit. OOP v GTK mi přijde srovnatelné s OOP kdekoli jinde.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Josef Kufner avatar 17.10.2014 00:22 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Je tam neskutečně moc bordelu tím, jak to staví OOP v ne-OOP jazyku. To na výuku není.
    Hello world ! Segmentation fault (core dumped)
    pavlix avatar 17.10.2014 02:49 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Je tam neskutečně moc bordelu tím, jak to staví OOP v ne-OOP jazyku.
    V závislosti na tom, jak to používáš, tě to může nebo nemusí trápit. A pokud jde o výuku OOP v C, tak jednu výhodu to má, je tam vše řešeno explicitně, nikoli implicitně.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    FrostyX avatar 16.10.2014 16:01 FrostyX | skóre: 27 | blog: Frostyho_blog | Olomouc
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    No nevím, nechtěl bych se někoho dotknout, některé rady mi přijdou vcelku mimo. Nebylo sice řečeno o jakou školu se jedná, ale řekl bych, že tu stejně všichni (včetně mě) předpokládají technickou střední školu, nebo gympl.

    Umíte si představit, kolik hodin týdně je pro takový předmět k dispozici? Taky že v případě toho gymplu nemáte ve třídě pouze samé technicky nadané lidi, které to bude bavit. Navíc ani nemůžete udávat tempo výuky podle těch lepších studentů, ale podle průměru (nemůžete prostě nechat půlku třídy propadnout). A teď taky může nastat situace, že to programování budete vyučovat pouze jeden-dva roky.

    Java - V tak ukecaném jazyce se bez IDE píše dost těžko a ty jsou tak přeplácané, že se půlka času stráví jen vysvětlováním, jak něco konkrétního udělat v IDE. Navíc pro Javu je typický overengineering, takže místo aby psali jednoduchá, přímočará řešení, budou je sáhodlouze obkecávat. Navíc budete muset spousty informací zatajovat.

    C - To se dá psát bez IDE, ale Vim - wtf? Osobně mám závislost na Vim-like ovládání a používám ho téměř na všechno, ale vnuťte ho člověku, který o něj sám neprojevil zájem a bude vás ze srdce nenávidět. Psaní Makefilů ... hm, takže než vlastně začnou psát v jednom jazyce, tak se musí naučit ještě nějaký speciální syntax pro Makefile, práci s gcc, .. no a pak se někdy na konci roku naučí jak teda vypsat "hello world". Super, to budou šťastní. Hlavní problém Céčka k výuce programování ale vidím v něčem jiném, zásadnějším. Vy zadáte příklad, ale absolutně nikdo nebude přemýšlet nad tím, jak ho vyřešit. Všichni se budou soustředit na to, jak se v tom vlastně píše ta věc co oni chtějí (cyklus, pole, struktura, ...).

    Pusťte je ze začátku třeba na Python. Interaktivní mód se spustí jedním příkazem, tím samým příkazem se nechá vyhodnotit i skript v souboru, všechno je absolutně přímočaré a stupidně jednoduché. A přitom se nejedná o jazyk, který by se v praxi nedal použít. Spíš naopak. Jako editor poslouží naprosto cokoliv podporující zvýrazňování syntaxe.

    FrostyX.cz | 1984 was not supposed to be an instruction manual.
    vlastikroot avatar 16.10.2014 16:34 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Naucit nekoho (kdo chce programovat) zaklady C je tak na tyden. Dalsich par mesicu trva, nez si to ten clovek posklada v hlave a zacne chapat, jak z tech zakladu skladat slozitejsi veci. Ale vyucovat C znamena ho znat perfektne od ASM az po linkovani. Ucitel, ktery se to sam uci, bude ucit C rok a nenauci nic.

    Python je super, ale jeho syntaxe je trochu zvlastni, napr. pouzivani odsazovani na scope mi neprijde jako moc dobry napad ucit.

    We will destroys the Christian's legion ... and the cross, will be inverted
    FrostyX avatar 16.10.2014 16:55 FrostyX | skóre: 27 | blog: Frostyho_blog | Olomouc
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    napr. pouzivani odsazovani na scope mi neprijde jako moc dobry napad ucit.
    Proč ne? Je to jednoduché a odsazovat je stejně potřeba. Takže je to zase jednodušší než C, protože místo závorek a odsazení, stačí jen odsadit. Zase o jednu věc, která se musí dělat, míň. Stejně tak středníky, ...
    FrostyX.cz | 1984 was not supposed to be an instruction manual.
    vlastikroot avatar 16.10.2014 17:21 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Je dulezite pochopit, jak to funguje se strednikama a zavorkama, pak teprv si clovek muze dovolit to opustit. Clovek si ty scope musi predstavit.
    We will destroys the Christian's legion ... and the cross, will be inverted
    pavlix avatar 16.10.2014 17:22 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Zase o jednu věc, která se musí dělat, míň. Stejně tak středníky, ...
    Hned dvakrát výhra. Nebudou zapomínat středníky ani závorky a uvidí jak kód opravdu poběží.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    16.10.2014 17:49 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    K běží jak má - ehm - mně tedy rozhodně ne :(
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    pavlix avatar 16.10.2014 18:36 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Výkřik do tmy?
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    16.10.2014 19:02 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Ne, už se mi to stalo nejednou, protože při rychlých úpravách něčího Python zmatku, který si používá v části tabulátory v části kódu čtyři mezery a já všude výhradně dvě mezery, se tomu rozhodí sandál velmi rychle a šup najednou podmínky dělají něco jiného.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    16.10.2014 19:10 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Ve Vimu se mi to nestává, protože mi to hlídá.

    Kromě toho při dodržování pravidla max. čtyř úrovní odsazení se krásně dá udržet přehled.

    Doporučení pro Python zní: 4 mezery. Stejně mám raději tabulátory.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    16.10.2014 19:35 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    No a to je pro mě noční můra 4 mezery nebo jeden tabulátor a evidentně pro spoustu lidí taky, protože to není zas taková výjimka, že když kód opravdu zobrazíš, tak vidíš, že tam jsou někde taby a někde mezery a on ten mišmaš definuje funkčnost - ne! pro mně je to děs :(. A sorry na 4-mezerové a 8-mezerové kódy se odmítám dívat, naštěstí u ostatních jazyků stisknu „format“ a mám to jak chci a funkčnost to nerozhodí.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    16.10.2014 20:43 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Jaké 8mezerové kódy? Jaký mišmaš? Všechno mám jednotně a do repa to nahrávám přesně tak, jak to má vypadat. Tentýž kód vypadá slušně i když ty taby mám 2, 3, 4 nebo 8 mezer. Vždy se na to koukat dá a vždy je to přehledné.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    16.10.2014 21:23 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Mišmaš vzniká pokud se používají tabulátory, dřív nebo později se to nakombinuje s mezerami a pokud není nic co by to zachytilo, což je často případ skriptů a jednoduchých věcí, tak stačí mít zobrazený jinak tabulátor a pak i sfiňa by se z teho zblula.

    Jinak gratuliji, ale já má taky všechno svoje jednotně (2 mezery, tab neexistuje) a klidně to vysypu jinak, pokud si to někdo bude přát (problém by mi možná vznikl v aplikacích používajících OpenGl, tam jsem kdysi používal odsazení sudé {na kód} a liché na sekvence/bloky OpenGl).

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    pavlix avatar 16.10.2014 22:44 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Přijde mi, že se hledá problém tam, kde žádný není. Míchání mezer a tabulátorů na odsazení kódu je vždy špatně a dělá to problémy u všech projektů, mezi Pythonem a C není v tomhle zásadní rozdíl.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    rADOn avatar 16.10.2014 19:56 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Takova uprava je prasarna v jakymkoliv jazyce. Vazne, kdybych v praci pushnul nejaky "vyhradne" vlastni odsazeni tak me sezerou ceckari stejne jako pythonyri. A to uz bych byl pekne ohlodanej od toho jak by me sezrali kdybych commitnul kombinaci tabu a mezer.

    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    16.10.2014 20:06 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    K tomu je taky definovaná „kultúra“ projektu/firmy.

    Ale hold existují ohlodaní úpraváři - ono stačí málo, rychlá oprava, jeden copy&paste ze dvou různých projektů kde v jednom jsou mezery a druhém tab-y, normálně „nekultúra“ v Pythonu průser.

    Jinak to zbytečný flame, já díky tomu nemám rád Python a někomu se právě proto libí.

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    16.10.2014 20:46 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Na to jsou určeny filtry clean a smudge v Gitu. Můžeš dělat pro hodně firem, každá může mít jinou firemní/projektovou kulturu, budeš psát po svém a přesto vyhovíš všem.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    16.10.2014 21:11 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Takový filtry existovaly, než vůbec vznikl nápad udělat git ;)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    16.10.2014 21:24 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Samozřejmě. Git je však udělal natolik transparentními, že můžeš v klidu zapomenout na to, že je máš.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    16.10.2014 21:27 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    No možný to je, doposud jsem ho nepoužil nijak než jen z minimální nutnosti.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    16.10.2014 21:36 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Aby nedošlo k omylu: Ty filtry nejsou součástí Gitu. Jsou to externí programy typu indent či astyle. V konfiguráku Gitu si jen nastavíš jejich parametry při spuštění.

    Jedná se tedy o tytéž programy, které máš na mysli, Git je pouze jejich wrapperem.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    rADOn avatar 16.10.2014 21:38 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    A uvedomujes si ze ted vypadas jako nejvetsi prasopisec? :-)

    Srsly, pokud nejsi opravdovy prase tak je to jen zvyk <flejm>ve tvoji hlave </flejm>. Kdyz bys dejme tomu v jave vyprasil dve tridy do jednoho souboru tak te to proste zjebe a nezkompiluje. I kdyz je to uplne zbytecnej vymysl. Kazdy jazyk ma svoje specialitky. Ale kdyz mas jazyk kterej ma skutecnych i umelych omezeni minimum a da se v nem prasit skoro jako v perlu, tak ti bude zatezko nastavit si odsazovani? To proste nedava smysl.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    16.10.2014 21:47 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    V každém javovském souboru mám dvě veřejné třídy. Java s tím nemá žádný problém.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    16.10.2014 22:06 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Java ne, ale některá IDE pro Javu ano, takové fazole, pokud si pamatuji, měly/mají daleko víc problémů než vlastní jazyk.

    Já jsem toto blbé pravidlo (1:1), převzal do C++ (není-li dáno jinak), je to docela fajn a poruším to opravu jen výjimečně.

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Josef Kufner avatar 16.10.2014 22:24 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Tohle pravidlo je také vynucováno v PHP, neboť class loadery obvykle s ničím jiným nepočítají.
    Hello world ! Segmentation fault (core dumped)
    16.10.2014 22:37 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    V PHP mi to velmi dobře vyhovuje. Pouze u interface se cítím trochu trapně s těmi čtyřřádkovými includy, ale na druhou stranu je všechno na svém místě.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    16.10.2014 22:01 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka

    Já? proč?, já v Pythonu nepíšu a nebudu, jen velmi ojediněle opravuji co někdo zplodil a když to zrovna otevřu ve vim-u, který je jinak nastavený a vidím něco jiného něž co to dělá bez záchytného bodu, tak je to radost.

    Když někdo doprasí formátování třeba céčka tabulátory a mezerami, tak si řeknu „to je vůl“, ale furt se mám čeho chytit, nebo si s tisknu „Format“ (pokud to otevřu třeba v Eclipse), ale u Pythonu mám prostě oprávněný strach cokoliv udělat.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    pavlix avatar 16.10.2014 17:22 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Python je super, ale jeho syntaxe je trochu zvlastni, napr. pouzivani odsazovani na scope mi neprijde jako moc dobry napad ucit.
    Potom, co jsem kdysi viděl spolužáky vyrábět špatně odsazený kód mám přesně opačný názor. Naučit je odsazovat v Pythonu by bylo stokrát jednodušší, nehledě na to, že se syntax oproti třeba Pascalu odsazuje úplně krásně.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    vlastikroot avatar 16.10.2014 17:48 vlastikroot | skóre: 24 | blog: vlastikovo | Milevsko
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Pokud pouziju nejaky normalni editor, tak se C osazuje skoro automaticky. Staci jen naznacit, ze je to dulezite a proc. Ale whitespace je proste whitespace, neni to znak, kdyz si predstavim, ze bych misto whitespace pouzil #, tak budu mit pred kazdou radkou tolik # kolik mam zanoreni. To je trochu primitivni, proto normalni jazyky maji neco jako begin a end.
    We will destroys the Christian's legion ... and the cross, will be inverted
    pavlix avatar 16.10.2014 18:40 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Staci jen naznacit
    Pobavilo. Ale zbytek textu jsou prázdné kecy, na to nemá smysl nějak víc reagovat.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    Josef Kufner avatar 16.10.2014 21:44 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Jo, tohle jsem také viděl. Napíše nudli bez odsazení a diví se, že se v tom nevyzná. Ale představa, že takový člověk udrží správné odsazování v trochu větším kousku kódu je celkem ftipná. Ty závorky hodně pomáhají.
    Hello world ! Segmentation fault (core dumped)
    pavlix avatar 16.10.2014 22:47 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    Ty závorky hodně pomáhají.
    V tom se neshodneme.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    16.10.2014 22:47 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Programovani v C - vyuka
    "větší kousky kódu" vůbec nemají vznikat. Dávám si záležet na správném odsazení i u desetiřádkových metod. Vlastně nemusím. Vim to dělá za mne a pomocí odsazení mi hlídá i závorky.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.