w parseData zostawiasz tylko petle, reszte przenosisz do parseElement, Zawartosc ifow przenosisz do oddzielnych metod parseSingleElement (lub cos takiego), parseMultiElement i parseCOstamElement
@sylwke3100: Nie. Twój kod nie spełnia pierwszej zasady. Jesteś w stanie jednym zdaniem napisać co robi metoda parseData? Parsuje dane? Nie, to nie jest dobra odpowiedź.
@sylwke3100: Hmm... dlaczego by nie? Generalnie refactoring jest trudny. Trzeba mieć pomysł a jak się go nie ma to trzeba stosować metodę małych kroków. Szukaj najpierw takich małych kawałków kodu po parę linijek które robią to samo, robią coś co ma dać rezultat który można opisać jednym zdaniem. Z tych paru linijek można zrobić metodę która spełnia zasadę single-responsibility.
Ale tak patrzę na szybko i nie widzę oczywistych metod. Więc spróbujmy
#programowanie #parser #cpp #cristallparser
w parseData zostawiasz tylko petle, reszte przenosisz do parseElement, Zawartosc ifow przenosisz do oddzielnych metod parseSingleElement (lub cos takiego), parseMultiElement i parseCOstamElement
http://en.wikipedia.org/wiki/SOLID_(object-oriented_design)
Ale tak patrzę na szybko i nie widzę oczywistych metod. Więc spróbujmy
pos to jest pozycja string aktualna a po to jest to pozycja stringa gdzie jest pierwszy znak wykrytego wyrażenia np
Jakiś tekst</ala>
Z tymi warunkami to właśnie głównym problemem jest ich nazwa i lokacja czy tworzyć nnową klase czy lokować w DetectTools/CristallParser
for