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

Stran: 1 ... 29 30 [31] 32 33 ... 43
451
Vývoj / Re:Abstrakce u OOP
« kdy: 12. 06. 2020, 15:32:57 »
Tak náhodně :
https://github.com/unclebob/fitnesse/blob/master/src/fitnesse/testrunner/CompositeFormatter.java Nějaký listener, který distribuuje ty události dál. Akorát jsem tam nenašel nic, co by vypadalo jako formátování.
https://github.com/unclebob/fitnesse/blob/master/src/fitnesse/testrunner/ClassPathBuilder.java Podle názvu sestavuje nejaké cesty k nějakým třídám. Jaké cesty k jakým třídám? Takhle by to mohl být skoro SomethingDoer a vyšlo by to na stejno.

Mohl bych pokračovat dál a dál. Snažil jsem se být férový a najít nějakou výjimku, ale nenašel jsem nic. Nenašel jsem jedinou třídu, o které bych byl schopný vlastními slovy říct, co vlastně dělá. Jedná každá třída v tom projektu postrádá stručný komentář, který by říkal k čemu slouží. A z kódu jsem to nepoznal.

Představa, že bych měl tenhle kód udržovat, mě upřímně děsí.

Jsem rád, že nejsem sám, kdo se v tom ztratil. Podotýkám, že nejsem javista a nevěnoval jsem tomu moc času, ale tohle mít ve firemním repozitáři, asi bych se dost vyděsil. Komentáře jsem nenašel prakticky žádné, když nepočítám 6 řádků copyright v každém souboru. A když ano, bylo to něco jako:


Kód: [Vybrat]
// REFACTOR The fixture path is really the only part of this

452
Vývoj / Re:Abstrakce u OOP
« kdy: 12. 06. 2020, 13:35:38 »
Komentar v kodu beru jako svoje selhani pri snaze napsat sebevysvetlujici kod. Snazim se jich mit co nejmin a ostatni k tomu nabadam taky.
Osvedcilo se mi to.

No tak si to užij. Akorát si dovolím podotknout, že tady nikdo netvrdil, že kód má být nepřehledný a že komentář je od toho, aby to kompenzoval.

Taky sem nerekl, ze to nekdo tvrdil. byla to reakce na to ze "komentujeme hodne". To mi rika, ze je neco spatne....

EDIT: Muzes sem treba dat kus kodu, ktery podle tebe vyzaduje byti hodne okomentovan. Rad bych ho videl.

Nemůžu, ani kdybych chtěl. Je pravda, že se u nás nacházejí oblasti kódu, kde některé komentáře jsou nadbytečné a je to jistě i věc názoru. Máš Ty nějaký vzorový kód, kde je komentářů "akorát"? Nemusí být vlastní, klidně nějaký profláknutý open source.

453
Vývoj / Re:Abstrakce u OOP
« kdy: 12. 06. 2020, 13:10:43 »
Komentar v kodu beru jako svoje selhani pri snaze napsat sebevysvetlujici kod. Snazim se jich mit co nejmin a ostatni k tomu nabadam taky.
Osvedcilo se mi to.

No tak si to užij. Akorát si dovolím podotknout, že tady nikdo netvrdil, že kód má být nepřehledný a že komentář je od toho, aby to kompenzoval.

454
Vývoj / Re:Abstrakce u OOP
« kdy: 12. 06. 2020, 11:19:12 »
Budu asi trochu slovíčkařit, ale jedna část je IMO silně zavádějící.

Program bez bodů 3 a 4 sice zatím funguje, ale je to časovaná bomba, která dříve či později bouchne. A až se tak stane tak za sebou nechává pochroumané trosky firem co na ten program spoléhaly a vyhořelé duše ubožáků, co ten binec museli udržovat a flíkovat.

Nejsme ve při. U nás v práci komentujeme hodně. A hodně se zlobím, když se někdo nesnaží vcítit do chudáka kolegy, který za pár let bude muset bádat, proč je někde něco nějak.

455
Vývoj / Re:Abstrakce u OOP
« kdy: 12. 06. 2020, 09:40:18 »
Nedostatků formálních jazyků je habaděj. Např.: z definice jsou vymyšlené tak, aby měly přesnou sémantiku, čili (1) ta sémantika je nějak "ořezaná" (odstraní se nejednoznačnosti apod.) a tím jazyk získává přesnost na úkor expresivnosti. Typicky je taky formální jazyk (2) ušitý na míru nějaké doméně - opět ztrácí obecnou expresivnost. Prakticky vždycky je taky (3) formální jazyk konstruovaný tak, že některé koncepty, které v přirozeném jazyce vyjádřit umíme, v něm vyjádřit nejdou (záměrně - protože jejich vyjádření by jazyk neúměrně zkomplikovalo a buď by bylo složité s ním pracovat strojově, nebo by byl těžko srozumitelný pro lidi).

Pokud by nebyl programovací jazyk míň expresivní než přirozený, komentáře by nebyly potřeba, protože sám program by vyjadřoval všechno, včetně záměru autora, kontextu volby algoritmu apod. Tak to ale není, komentáře potřeba jsou, abych tam třeba dovysvětlil, že "toto řešení se mi zdá rozumnější, protože je sice míň efektivní, ale je líp čitelné a nejsme v kritické sekci programu" (případ (1)), "tohle je quick&dirty, protože zákazník je ve finanční tísni a potřebujeme to rychle dotáhnout, není čas na hrdinství" (2) nebo "tento kód je teď jenom placeholder pro kontroller, plnou implementaci dodělám, až bude čas" (případ (3) - vyjádření časově závislé individuové role je docela obtížně formalizovatelné).

Vidím to poněkud jinak. Program může obsahovat v zásadě čtyři skupiny informací:

CO se má stát. (Nutné, proto tu ten program je).
JAK se to má stát. (V ideálním světě si to překladač nějak odvodí z deklarace, ale v tom reálném se mu musí pomáhat).
PROČ se to má stát. (Zasazení kusu kódu do kontextu, aby se v tom programátor lépe orientoval).
A PROČ SE TO DĚLÁ ZROVNA TAKHLE. (Vysvětlení konkrétního rozhodnutí pro danou implementaci).

První dvě skupiny jsou "mezi počítačem a člověkem" a zde je myslím obecně přijímáno, že formální jazyk je ideální prostředek, protože je úsporný a jednoznačný. Zbylé dvě skupiny informací jsou jednak volitelné (program bez nich funguje dobře) a jednak slouží pouze pro referenci, když programátor potřebuje. V ostatních případech je to šum, který pouze odvádí pozornost a kdyby se i nakrásně povedlo formalizovat komentář, stroji by to nepomohlo (informace pro něj není určena) a lidem by to překáželo, protože TLDR, že ano.

Jinými slovy, programovací jazyk výborně slouží účelu, ke kterému je navržen a komentář slouží dobře ostatním účelům. To není známka nedokonalosti formálních jazyků. V obecném slova smyslu jistě platí, že formalizovaná komunikace mezi lidmi není efektivní, ale v rámci naší původní debaty to myslím nehraje roli.

456
Vývoj / Re:Abstrakce u OOP
« kdy: 11. 06. 2020, 16:12:34 »
Slovní komentáře jsou prakticky nenahraditelné pro dovysvětlení záměru nebo kontextu.

V čem jsou slovní komentáře nenahraditelné? Od toho tu jsou přece názvy věcí, aby vysvětlily vše potřebné.

Ony vysvětlí, proč jsi použil bubble sort namísto quick sortu, viď. Nebo proč nějaký vstup od 3. strany ošetřuješ zrovna takhle, když posílá jiný formát odpovědi, než říká dokumentace.

457
Vývoj / Re:Abstrakce u OOP
« kdy: 11. 06. 2020, 15:28:10 »
Komentáře jsou psané přirozeným jazykem. Sémantika toho programovacího jazyka bývá taky popsaná přirozeným jazykem.
Troufnu si tvrdit, že veškeré nedostatky formálních jazyků flíkujeme právě tím přirozeným. Což je pro mně dostatečný důkaz toho, že slovní popisy fungují.

pouzivani slovnich komentaru je na ustupu, nahrazuji je doctesty, typove anotace.

Slovní komentáře jsou prakticky nenahraditelné pro dovysvětlení záměru nebo kontextu. Nechápu, proč pořád chrlíš nějaké zjednodušující rezolutní závěry.

Naopak nevím, co myslel předřečník tím nedostatkem formálních jazyků.

458
Vývoj / Re:Abstrakce u OOP
« kdy: 11. 06. 2020, 10:33:35 »
a vsecko tohle uz me na C++ pekne stve. kazdy primicha do kodu jinou metodologii a pak aby clovek umel vsecko.
proto zacinam pokukovat po Go, zas se neco zjednodusi a struktury s interface staci.
Proč ne raději Rust? Výkonově srovnatelný s C++, podobné koncepty (RAII apod.)?
Třeba kvůli gorutinám a kanálům.

Tebe jsem se neptal, sorry.

459
Vývoj / Re:Abstrakce u OOP
« kdy: 11. 06. 2020, 08:42:29 »
a vsecko tohle uz me na C++ pekne stve. kazdy primicha do kodu jinou metodologii a pak aby clovek umel vsecko.
proto zacinam pokukovat po Go, zas se neco zjednodusi a struktury s interface staci.

Proč ne raději Rust? Výkonově srovnatelný s C++, podobné koncepty (RAII apod.)?

460
Studium a uplatnění / Re:Vývojář bez znalostí
« kdy: 30. 05. 2020, 15:44:02 »
Vyhozené peníze, měli by je všechny pozavírat. Za ušetřené peníze by se mohly koupit třeba koblihy, ti, co je žerou, už VŠ mají (života).
to jsem nepsal... Jen jsem psal, že z pohledu praxe je VŠ jen teorie v praxi nepoužitelná. To je celé. Vycházím z vlastní zkušenosti. VŠ rozšíří obzory, člověk to může chápat i z jiné roviny, ale pak přijde praxe tam to v drtivé většině je jinak.

Ano, "jen teorie" bývá v praxi nedostatečná, to platí ve všech oborech. Ale na odborných školách bývají různé seminárky a projekty. To už není "jen teorie", ale základ praxe.

461
Studium a uplatnění / Re:Vývojář bez znalostí
« kdy: 30. 05. 2020, 12:06:14 »
No a umíš aspoň něco? Měli jste základy programování, ovládáš dobře Excel včetně maker?

462
Tak jsem se rozhodl to považovat za bug v ubuntu balíčcích. Jako nejjednodušší řešení jsem zvolil nainstalovat nové ubuntu.

Asi logicke reseni, ale podle rychleho testu update na verzi 4.6 (z Groovy Gorilla) situaci resi taky - prece jenom je to modul v cistem Pythonu. Nevylucuju, ze to rozbije nejaky zavisly balicek, ale podle me se to da risknout.

Aha, Groovy Gorilla je 20.10, Focal Fossa je srovnatelny. Ale uz mam ten novejsi.

463
Tak jsem se rozhodl to považovat za bug v ubuntu balíčcích. Jako nejjednodušší řešení jsem zvolil nainstalovat nové ubuntu.

Asi logicke reseni, ale podle rychleho testu update na verzi 4.6 (z Groovy Gorilla) situaci resi taky - prece jenom je to modul v cistem Pythonu. Nevylucuju, ze to rozbije nejaky zavisly balicek, ale podle me se to da risknout.

464
Pomalu bych zacal uvazovat nad 20.04, tam je 3.8 default. Virtualni prostredi je samozrejme moznost vzdycky.

465
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 03. 04. 2020, 20:28:45 »
Heh, v mym textu neni ani stopy despektu vuci mladym, tam je despekt vuci hloupym.
A vez, ze z mladyho blba bude stary blb a stary blb byl mladym blbem.

Kdyz mi nekdo realne zduvodni, proc je muj nazor mylny, nemam problem to uznat.
Uvažuješ úplně špatně, protože to, že do IT přicházejí lidé, kteří mají stále nižší IQ je důvodem rozmachu IT. Kdyby Bill Gates a Jobs nestrčili počítač do ruky každému blbcovi (když použiji tvůj arogantní slovník), tak by se IT nerozvíjelo tak dynamicky.

Nejsme schopni zajistit, aby se rodilo větší procento dětí s vysokým IQ, abychom těmito dětmi dokázali obsadit ty statisíce nových IT pracovních pozic, které vznikají. Tvoje arogance je stejná, jako kdybys viděl 5leté dítě jak si ťuká na tablet a začal mu nadávat, že dnes na počítači dělá kdejaký blb a kdeže jsou ty časy kdy na obsluhu počítače byly potřeba 2 vysoké školy.

Vy myslíte politicky, Halík!

Stran: 1 ... 29 30 [31] 32 33 ... 43