Hirdetés

Keresés

Új hozzászólás Aktív témák

  • maestro87
    őstag

    Beszélgessünk a goto-ról!

    Általános vélemény a goto-ról, hogy kerülni kell, mint egyszeri kockának a napfényt, különben lesül a képünk. Sokan viszont azt mondják, hogy a goto használata bizonyos esetekben egyszerűsíti és átláthatóbbá teszi a kódot, és egyáltalán nem lesz tőle spagettikód, ha ésszel használjuk. Ugyanúgy, ahogy a continue és a break is. Utóbbinál szerencsétlen, hogy ciklusoknál és switch-nél tök mást jelent, úgyhogy az szerintem is a gonosztól származik.

    Nekem erről egyértelmű a véleményem, de előbb halljuk, mit mondtok ti :D

    Én ugyan C-ben még nem használtam goto utasítást, de sosem értettem, hogy miért félnek tőle az emberek. :N Még talán assembly-ben is megkérdőjelezik a használatát, pedig ott tudtommal más megoldás nem nagyon van ciklusok létrehozására.

    Viszont a continue utasítást valaki eltudná magyarázni, mert ebből nem nagyon értem. Ugyanaz lesz a kimenet continue-val és nélküle is, akkor meg minek bele? :F

  • EQMontoya
    veterán

    Beszélgessünk a goto-ról!

    Általános vélemény a goto-ról, hogy kerülni kell, mint egyszeri kockának a napfényt, különben lesül a képünk. Sokan viszont azt mondják, hogy a goto használata bizonyos esetekben egyszerűsíti és átláthatóbbá teszi a kódot, és egyáltalán nem lesz tőle spagettikód, ha ésszel használjuk. Ugyanúgy, ahogy a continue és a break is. Utóbbinál szerencsétlen, hogy ciklusoknál és switch-nél tök mást jelent, úgyhogy az szerintem is a gonosztól származik.

    Nekem erről egyértelmű a véleményem, de előbb halljuk, mit mondtok ti :D

    Szerintem C-ben lehet értelme, mert nem tudsz annyira egységbe zárni, és emiatt az adott ponton a lényegre koncentráló kódot írni, C++-ban szigorúan tilos, még akkor is, ha nem használunk exception-t.

  • ToMmY_hun
    senior tag

    Beszélgessünk a goto-ról!

    Általános vélemény a goto-ról, hogy kerülni kell, mint egyszeri kockának a napfényt, különben lesül a képünk. Sokan viszont azt mondják, hogy a goto használata bizonyos esetekben egyszerűsíti és átláthatóbbá teszi a kódot, és egyáltalán nem lesz tőle spagettikód, ha ésszel használjuk. Ugyanúgy, ahogy a continue és a break is. Utóbbinál szerencsétlen, hogy ciklusoknál és switch-nél tök mást jelent, úgyhogy az szerintem is a gonosztól származik.

    Nekem erről egyértelmű a véleményem, de előbb halljuk, mit mondtok ti :D

    Nekem az a tapasztalatom, hogy a spagetti kód nem a goto miatt lesz olyan, amilyen. A megfelelő szépérzékkel és odafigyeléssel bizonyos esetekben valóban szebb és átláthatóbb kódot lehet írni vele, de amiatt, mert nagyon nagy odafigyelést igényel, a használata nem célszerű. Viszont vannak olyan programnyelvek, amelyeknél a goto megkerülhetetlen. Ilyen például a VBA (Visual Basic for Applications), amelyben a hibakezeléshez biztosan, de ha jól emlékszem bizonyos esetekben a continue helyett is csak goto használható. Egyébként egy jól formázott és strukturált kódnál nem hiszem hogy nagy jelentősége lenne a kérdésnek. Nem szokás több száz soros függvényeket írni, sokkal célszerűbb kisebb darabokra vágni azokat, hiszen így sokkal átláthatóbb és nem utolsó sorban könnyen tesztelhető kód lesz az eredmény.

Új hozzászólás Aktív témák