Cele mai bune practici pentru modificarea atributelor de colectare funcțional

voturi
14

Sunt curios cum să merg despre punerea în aplicare a unei clase care se supune unor reguli stricte de programare funcționale.

De exemplu, dacă am o clasă care are două atribute și am o metodă care le modifică, cum mi-ar merge despre acest lucru? Atributele ar fi Vals privat, iar metoda ar trebui să se întoarcă o nouă instanță a atributului de fiecare dată când îl modifică. Acest lucru este în regulă, cu excepția aș dori să-l păstrați conținut, ceea ce înseamnă că ar fi nevoie de o modalitate de a seta Val.

Care ar fi cel mai bun mod de a face acest lucru, astfel încât nu am mii de cazuri de zicem, o colecție, plutind în jurul valorii în memorie?

Întrebat 27/07/2014 la 17:27
de către utilizator
În alte limbi...                            


1 răspunsuri

voturi
0

Aceasta este părerea mea, dar; la fel ca în cazul claselor fac, aș pune în aplicare o copymetodă de felul în clasa pentru a face posibilă modificarea păstrând în același timp imuabilitatea, dar există unele cazuri pe care nu le pot ajuta să - l mutabil; de exemplu, atunci când este de așteptat ceva pentru a face operația de copiere prea mare și lent pentru clasa; ca atunci când clasa are atât de mulți membri frecvent modificate. Și nu vă faceți griji cu privire la mii de cazuri în care plutesc în jurul valorii în memorie, deoarece acestea sunt în mod automat GC'ed, deci mai mult problema reală este costul de timp de copiere instanțe al clasei. Te rog spune - mi dacă părerea mea este oarecum gresit :)

Publicat 27/07/2014 la 17:57
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more