Projekat

Općenito

Profil

Akcije

Podrška #25736

Zatvoren

refactor privatne => local vars - primjer: FillKMinRad

Dodano od Ernad Husremović prije više od 14 godina. Izmjenjeno prije više od 14 godina.

Status:
Zatvoreno
Prioritet:
Normalan
Odgovorna osoba:
Saša Vranić
Početak:
16.12.2011
Završetak:
% završeno:

100%

Procjena vremena:
Akcije #1

Izmjenjeno od Ernad Husremović prije više od 14 godina

prolazeći po update_rec_server_and_dbf mjestima naišao sam na funkciju FillKminRad:

iako je u njoj pravljen major upgrade, privatne varijable su ostavljene:

ispravio

https://github.com/knowhow/F18_knowhow/commit/7aba09dad2f1ada4d1371867230d5a844bb14281#L21R697

zaključak: ovo je obavezna operacija

Akcije #4

Izmjenjeno od Ernad Husremović prije više od 14 godina

  • Odgovorna osoba promijenjeno iz Ernad Husremović u Saša Vranić
  • % završeno promijenjeno iz 0 u 70

prvo pitanje koje ti se postavi kada gledaš funkciju odakle dolazi varijabla _kminrad.

ovo je kod podložan errorima, uz to teško čitljiv.

Akcije #5

Izmjenjeno od Saša Vranić prije više od 14 godina

LD je sav u fazonu

scatter()

  ... pa se radi nešto po podacima

gather()

recimo ta funkcija se poziva sa samog unosa obračuna, nakon što se desio scatter() i nakon što imamo sva polja tabele kao varijable

_brbod
_usati
_kminrad
itd...

https://github.com/knowhow/F18_knowhow/blob/f2383316b536425d4d7/ld/ld_obracun_unos.prg#L340

Akcije #6

Izmjenjeno od Ernad Husremović prije više od 14 godina

Ne razumijem zašto to navodiš nakon što sam to isto ja uočio i dao smjernice za refactoring u ovim situacijama

Šta ovim komentarom želiš reći ?

Je li ti jasno zašto i šta trebaš mijenjati kada naiđeš na ove situacije ?

Akcije #7

Izmjenjeno od Saša Vranić prije više od 14 godina

ma samo navodim radi toga što će biti još more tih stvari, to je baš karakteristično za LD, OS, SII module

Akcije #8

Izmjenjeno od Ernad Husremović prije više od 14 godina

rezime

bez obzira da li se radi o privatnim ili globalnim varijablama koje se koriste svaka funkcija mora imati paramtere kojima se te varijable prosljeđuju.

Time se postiže:
  1. preglednost koda
  2. mogućnost da se te privatne/gobalne varijable jednostavno zamjene lokalnim
Akcije #9

Izmjenjeno od Saša Vranić prije više od 14 godina

  • Status promijenjeno iz Dodijeljeno u Zatvoreno
  • % završeno promijenjeno iz 70 u 100
Akcije

Također dostupno kao Atom PDF