Zakaj je ukaz "goto" grd?

Vse o programiranju na in za PC

Moderatorji: Kroko, tilz0R

Re: Zakaj je ukaz "goto" grd?

OdgovorNapisal/-a Proteus » 04 Apr 2017, 11:55

Pa dajte no mir, prepričevati nekoga o nesmiselnosti uporabe GOTO je popoln nesmisel.
Posameznik bo prej ali slej sam prišel do tega spoznanja, ko bo dosegel dovolj visok nivo veščin pri programiranju.
Uporabniški avatar
Proteus
 
Prispevkov: 2837
Pridružen: 18 Jan 2015, 01:31
Kraj: Planet Zemlja
Zahvalil se je: 292 krat
Prejel zahvalo: 591 krat
Uporabnika povabil: s54mtb
Število neizkoriščenih povabil: 107

Re: Zakaj je ukaz "goto" grd?

OdgovorNapisal/-a VolkD » 04 Apr 2017, 17:12

Kroko je napisal/-a:Dokler je program tako enostaven, da je lahko diagram na papirju, ga imam lahko tudi v spominu. Takrat me tudi goto ne bo zmedel.
V razmislek. Cel OS za poznani IBM 4331 je bil narejen z diagrami poteka. Šele s tega se je pisala koda.
Za ta računalnik v HLASM. Za 4341 in za 4381 pa se je koda pisala delno v HLASM delno v PL.

Pa še ena zanimiva reč. Nekatere stvari so bile iz diagrama poteka napisane v HLASM in v PL. Primerjava kode je silno zanimiva. V povprečju je bila PL koda po prevodu za okrog 7% daljša. So pa posamezni segmenti, kjer je compiler stvar optimiziral do te mere, da je bila PL koda celo krajša. Mit o tem, da je pri višjih programskih jezikih koda občutno daljša so torej razbili že okrog leta 1975.

Kasneje so PL še izpopolnili v tej smeri in dobili nekaj, kar je bilo precej bolj nerodno in se imenovalo PLI/OPT (naziv verjetno ni točen).

Za simulacijo 4381 pa je bilo večino istega OS spisano v REXX. Izvor je bil še vedno diagram poteka. Napisan in vzdrževan na papirju.

Vsekakor ne gre zanemariti diagram poteka kot način oblikovanja programske ideje.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 41526
Pridružen: 29 Dec 2014, 20:49
Kraj: Kačiče (Divača)
Zahvalil se je: 8987 krat
Prejel zahvalo: 5126 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: Zakaj je ukaz "goto" grd?

OdgovorNapisal/-a s54mtb » 04 Apr 2017, 17:25

Diagram poteka je za cobol in ostale dinozavre. Za realtime kodiranje pa je klasična oblika neuporabna. Po mojih izkušnjah je veliko boljša oblika SA/RT za arhitekturo in UML s sekvenčnimi diagrami za pretok podatkov, pa morda še use case-i če imaš GUI. Če je to dobro pripravljeno, je kodiranje PoK.
Uporabniški avatar
s54mtb
 
Prispevkov: 11178
Pridružen: 15 Jan 2015, 01:10
Zahvalil se je: 1555 krat
Prejel zahvalo: 4050 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: Zakaj je ukaz "goto" grd?

OdgovorNapisal/-a tilz0R » 13 Apr 2017, 13:55

Using goto is not a bad thing, in my opinion. Using it for resource cleanup is just right for it.

Source code as famous as the Linux kernel uses the technique.

Just don't use goto to go backwards. That leads to disaster and confusion. Only jump forward is my recommendation.
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 1814
Pridružen: 18 Jan 2015, 00:12
Kraj: Črnomelj
Zahvalil se je: 229 krat
Prejel zahvalo: 509 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 255

Re: Zakaj je ukaz "goto" grd?

OdgovorNapisal/-a VolkD » 13 Apr 2017, 19:36

tilz0R je napisal/-a:
Using goto is not a bad thing, in my opinion. Using it for resource cleanup is just right for it.

Source code as famous as the Linux kernel uses the technique.

Just don't use goto to go backwards. That leads to disaster and confusion. Only jump forward is my recommendation.
No s tem se pa tudi jaz strinjam.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 41526
Pridružen: 29 Dec 2014, 20:49
Kraj: Kačiče (Divača)
Zahvalil se je: 8987 krat
Prejel zahvalo: 5126 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Prejšnja

Vrni se na Programski jeziki

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 1 gost