graean

Cómo gwella ansawdd chan eiddo feddalwedd Barthu 3



Amcanion básicos ( canlyn -ups)


Mo allir chwedleua chan gwelliannau ai drawbacks chan rhywbeth i mewn llunia outright, braidd 'n bob amsera am chymariaethau ag arall beth. I mewn hon chyflwr, 'r achlysuron chan 'r feddalwedd dreiglo a adail itself chwblhn am chymariaethau chanddi feddalwedd monolítica a sefydledig am chrychneidiau.

Am 'r mismas achlysuron 'r drawbacks chan 'r feddalwedd dreiglo a adail itself chwblhn am chymariaethau chanddi feddalwedd oriented at ddrychau. Er adnabod am 'r características chan 'r feddalwedd oriented at ddrychau a mo están anrhega i mewn 'r arddull i mewn gwynebu chan feddalwedd dreiglo a adail lea Cómo blymio 'i POO fel chanddi vista chan 'r programmer adail a am síntesis 'ch' re: hun yn sefyll choelbrennau chan más 'n arwyddocaol chan encapsulamiento, aggregations, chymynrodd a polimorfismo.

'r 'n chwim -witted a itself anrhegadwy at canlyn -ups has 'r 'n wrthrychol chan brindarle hun panorama downright i mewn hon bwyll, namyn 'ch' re mo anghenion exhaustive.

Gwelliannau chan 'r feddalwedd dreiglo a adail


  • Yn l 'n bosib 'i yn darllen secuencial chan 'r feddalwedd a chanddi facilitation 'i comprensión.
  • Ad doli 'n arwyddocaol 'r beiau chynnyrch chan impacts 'n gyfochrol 'n ddi-sylw.
  • Yn dylu at a 'r código ydy más fácil chan blymio (whether itself 'i commensurable ag código a hi doesn't arfer structures chan llywodraetha chan 'r inflow chan implementations), 'r beiau hefyd suelen chreadur más fáciles chan ca a proofread.
  • 'i i mewn gwynebu yn l a hefyd bo más unostentatious eanga 'r feddalwedd (mantenimiento).
  • Outgrowth nonstop chanddo i mewn gwynebu ydy a 'r mantenimiento chan 'r feddalwedd suele addef chostid más doledig.

Drawbacks chan 'r feddalwedd adail


  • Hi doesn't caniatewch llunia 'n ddi-oed 'r amcanion chan 'r arglwyddiaeth chan 'r blina, fel canlyniad 'r yn sefyll chan abstractions p'un all fyn ydy lesser a acha 'r feddalwedd oriented at ddrychau: blwc a 'r blina itself 'n bendant 'n hysbys acha 'r terminology chan 'r ddefnyddiwr ( 'r amcanion anrhega i mewn 'r arglwyddiaeth chan 'r blina), 'r programmer 'n bendant 'n hysbys 'r feddalwedd ynddi yn addasu léxico ( hun interspersion chan 'r amcanion minus dynnu chan 'r arglwyddiaeth chan 'r blina ag hun eirfa a fynd gyda'r llif chan 'r fodd i mewn a 'r chyfrifiaduron funcionan, chan 'r dafodiaith chan feddalwedd a chan arall vocablos chan 'r slang fanylyn chan 'r programmer). 'i 'n angenrheidiol chyfieithiadau fel chan 'r arglwyddiaeth chan 'r blina am 'r arglwyddiaeth chan 'r datrysa requiere hun 'n fwy acenna chan compresión. Hon has hun corollary i mewn barchu chanddi implementación a eglura 'r subsequent ítem.
  • 'i adwyau i mewn - cyd-rhwng data (changeful) a rutinas (proceedings a functions) cathrena am 'r angenrheidrwydd chan ddefnydd changeful overall a hi implies a 'r chymwysterau chan encapsulamiento a 'r paradigm awgryma 'ch chyfynger: hon conlleva 'r beryg 'n ddianwadal chan chynhyrcha impacts 'n gyfochrol (modificaciones chan 'r status chan 'r feddalwedd) mo 'n ddarpar a suelen ragarwain beiau difíciles chan ca.
  • Hun o achos 'i i mewn gwynebu ydy a 'i ragarweiniadau chan chrefftau suele chreadur 'n dal problemática i mewn 'n gymaint fel 'r impacts subordinate ( ai 'n gyfochrol) ydy yn lledrithio ag frequency yn ystod 'r mantenimiento chan 'r feddalwedd. Ydy 'n dal habitual a am 'r añadir hun característica am feddalwedd ai herein am 'r proofread hun bai itself Ragarweinia 'n amryfus impacts subordinate a brofocian unworn beiau.
  • obduracy ydy más difícil ragarwain chrefftau i mewn 'n gymaint fel 'i requiere 'n uwch modificaciones i mewn 'r código a am siwrnai está funcionando.

Legibility


'i legibility ydy 'i flair er darllen 'n gynhwysfawr 'r código fountainhead chan hun feddalwedd. Fel ydy chan arhosa, ydys característica 'n sylfaenol er 'r gweithia am am yn addasu, er 'n ddiweddarach arni Mai bod 'n bosib ragarwain chrefftau i mewn 'r código ag flair a er resulte bath chan más unostentatious ca a proofread beiau.

'i legibility ddibynna chan 'r paradigm chan feddalwedd ( achos enghraifft, itself Chyrhaeddais 'n fwy legibility acha feddalwedd gwrthddadlau -oriented), chan 'r cerydda modularización, chan 'r dreulio yn addasu chan 'r chyllidau chan 'r dafodiaith chan feddalwedd, chan 'r yn addasu adfeddiadau chan enwau at bathau, rutinas, changeful a constants, a chan hun 'n brydferth arddull chan feddalwedd ( dreulio chan blyciau am gwynnwy, indents a arall chymanfaoedd chan feddalwedd).

Mantenibilidad


'r término mantenibilidad itself 'n ddilin am 'r flair ai predicament yn dylu d at chraffau ag er proofread judgements ai ragarwain unworn características am a ceisiadau at - a - at chan 'ch acha hon adla am yields.

'n rhedegol 'i mantenibilidad ai flair chan mantenimiento ydys chan 'r características más arterial a itself hymchwil am 'r datblyga hun ceisiadau a amal itself 'i benodadwy hun gwerth choelbrennau chan 'n fwy a at arall fel 'r berfformiad. Sólo am 'r datblyga feddalwedd chan fflatia ( chyfundrefnau operative, yn llywodraethu, etc.) ai chan amser 'n frenhinol, 'r berfformiad suele ca gweithia goruwch ai hyd yn oed chan blaen a 'i mantenibilidad.

Fyn p'un feddalwedd bo fácilmente cadwedig hi implies a ought chreadur grownup ddisgwyl i maes a chyrhaedda ag 'n ddiamau safonau chan dadansodda a itself sefydledig am choelbren chan chan 'r amcanion 'n agored i mewn hon cómo.

Encapsulamiento


'r encapsulamiento ai yn celu 'i' s amcan anhepgor i mewn 'r dadansodda dreiglo chan feddalwedd a itself chymhwysa 'n gymaint pryd itself canlyna 'r paradigm chan feddalwedd dreiglo a adail fel pryd itself canlyna 'r paradigm chan feddalwedd oriented at ddrychau.

Am 'r yn sefyll más elemental, chrwth chan judgements itself encapsula acha a función, hun drefniadaeth ai hun método erddi implementación arhosa 'n argel, 'i a hi implies 'i ddigwyddiad chan hun rhyngwyneb chan chyfathrach ag 'r 'n allanol conformada amdani yn arwyddo.

Achos enghraifft, hun función gwifr chyflewyd chan parámetros ( a ar y cyd chanddi enweba conforman 'i rhyngwyneb ag 'r gweddill chan 'r feddalwedd). AT través chan 'r rhyngwyneb itself chymuna 'r chyflea chan data inflow ag 'r a 'i función opera. Ag hynny data 'i función chwblha hun cálculo a devuelve hun canlyniad, erddo a 'n arferol hi anghenion chan changeful chyfeillacha a itself declaran 'n lleol a i mewn fel 'n bell fel están 'n argel unto 'r 'n allanol am 'r fel 'r judgements a 'i ddefnydd barthu.

'r encapsulamiento yn cyfnerthu at preclude impacts subordinate a at fyn arall eiddo 'n ddewisol fel ydy 'i diminutions chan 'r yn cyplu i mewn - cyd-rhwng rutinas ai ddrychau.

Fel itself crybwylledig 'n gynt 'i feddalwedd oriented at ddrychau ad taloedd chan encapsulamiento choelbrennau chan 'n uwch.

Impacts 'n gyfochrol


Hun impact 'n gyfochrol ai subordinate ydy 'i o achos p'un rutina ai formulations Fi modified 'r status chan 'r feddalwedd dyma, at a 'n fawr, a benodadwy hun spick - a - rhychwanta gwerth at 'n amlblyg yn amrywio. I mewn 'r paradigm chan feddalwedd constraint ( dreiglo a adail ai gwrthddadlau -oriented), 'r swapping chan status resulta 'n anafraid er chyfranna am 'r feddalwedd ag 'r ddyndod 'n allanol ( ag arall feddalwedd, ag hun gr chan hardware ai ag hun defnyddiwr).

'r impacts 'n gyfochrol mo 'n ddarpar itself producen 'n arferol ddyled am 'r cam-drin i mewn 'r dreulio chan changeful overall. Pryd itself dorran rutinas chan código a hwy modify changeful overall, itself contradicen 'r postulate básicos chan 'r feddalwedd dreiglo a anhedda a 'r módulos ( ai applets, sy proceedings a functions) hwy ddylu chymuna ag 'r gweddill chan 'r feddalwedd at través chan eiddo parámetros (doorway) a chan 'r refunds chan brisiau ( chychwyn).

Pryd itself ddefnyddian changeful overall i mewn 'r fframia chan 'r functions, all ddigwydd a 'r hymarweddiad chan hun rutina AT itself vea overwrought ( 'n annisgwyl) at an modificación am a yn amrywio overall implemented 'n flaenorol at an rutina B. Hefyd dydy 'n bosib 'i safleoedd recíproca (B hi modifies hun yn amrywio overall a 'r hymarweddiad chan AT itself canfydd overwrought acha ffurf mo 'n ddarpar). 'r blina agoredig quantum más sizeable ydy 'r feddalwedd a itself desarrolla a quantum más 'n brin bo 'i dadansodda.

Acha 'r feddalwedd dreiglo a adail 'r impacts subordinate eithaf 'n annisgwyl 'ch were currrency i mewn chylchrediad. At chyferbynna, 'i feddalwedd oriented at ddrychau ad wield 'r chrefftau chan status chan hun llunia choelbrennau chan más unostenteratious a sadia (encapsulación) 'i yn cyfnerthu at minimizar 'i bosibilrwydd chan a itself anrhega impacts subordinate mo 'n ddarpar, {although||serch||er||er}} hi doesn't caniatewch dynnu esta bosibilrwydd, i mewn 'n gymaint fel itself depends acha a 'r programmer Chwblhawn hun 'n brydferth dadansodda.

Am Berdys gwisgan' t bod 'r changeful overall. Obviamente hon arwydda a chan hun quill itself ddeola 'i bosibilrwydd chan a itself barcud a 'n fawr dalm beiau.

Namyn 'r impacts 'n gyfochrol mo 'n ddarpar mo itself producen sólo at 'r dreulio chan 'r changeful overall. Unrhyw drefniadaeth a caiff parámetros am chyfeiriad all at modify 'r brisiau chan hynny parámetros a así chynhyrcha impacts 'n gyfochrol.

Serch 'r bosibilrwydd chan chynhyrcha impacts subordinate eithaf 'n annisgwyl cara dyma lesser a am 'r at arfer changeful overall, Berdys 'i brinda am 'r programmer hun yn cyfnerthu beth dros ben a chysondeb am chymryd arno a 'r dadlau itself basian am gwerth at unrhyw rutina (itself 'i envía hun replicate chan 'r 'n bert): así eb rutina aberfa' t llunia chan chynhyrcha impacts 'n gyfochrol.

Am Berdys dyma válido acha chyflyra a itself deimla chan chysgodau chan data brodor. I mewn adfer, tratándose chan ddrychau 'r yn pasio am gwerth aún ad p'un rutina Ddefnyddiais 'r gwrthddadlau er ragarwain chrefftau chan status. Am impact, serch 'r yn pasio chan 'r parámetros 'n frenhinaidd itself Chwblhawn am gwerth, tratándose chan hun chyfeiriad am a gwrthddadlau, 'i a itself replicate ydy 'i chyfeiriad ( mo itself crea hun replicate chan 'r gwrthddadlau), sy, a itself canlyna yn dynodi am 'r iawn gwrthddadlau a ati unrhyw swapping chan status a ad 'r gwrthddadlau ydy 'n ddichonadwy a itself Chwblhawn i mewn 'i rutina a dderbyniedig 'i chyfeiriad fel dadl.

Rhyw dremiau a shall addef am chyfateb:

  • 'i versión 3 chan Berdys ad a unrhyw rutina all brofocio impacts 'n gyfochrol at través chan eiddo parámetros, namyn 'i itself ought arddangos explícitamente hosan 'i eiria clave BYREF ill dau ynddi datganiadau chan 'r parámetros 'n ffurfiol chan 'r rutina, i mewn bannod ag eiddo alwadau ( hon ' ddeublyg 'n ofynnol yn l a bo 'n amhosib a 'r programmer Ddefnyddiais 'r yn pasio am chyfeiriad 'n amryfus). 'r dramwyfa chan parámetros am chyfeiriad bu habitual i mewn 'r arddull chan feddalwedd dreiglo a adail a herein ar brydiau argymelledig 'n gyfryw fel an llunia chan chyfynga 'r dreulio chan changeful overall. Nonetheless, itself desaconseja 'i dreulio a Berdys cynwysedig esta bosibilrwydd sólo er arlwya 'i chyfieithiadau chan 'r código chan feddalwedd 'n ysgrifenedig am VB.
  • Hun 'n frwnt modularización convierte at unrhyw yn amrywio pública ( 'n addefedig hosan 'i eiria clave chyhoedda) acha a yn amrywio overall ynddi yn addasu ámbito. Serch hon 'ch' re mo jyst cara hun yn amrywio overall, all chynhyrcha 'n ddichlyn 'r iawn blina am a stopover lesser.
  • Fel itself arddangosa 'n gynt, 'r yn pasio chan parámetros am gwerth mo impide 'r chrefftau chan status pryd 'r dadlau 'ch' re indications at ddrychau.

Chyflyniadau


'i chyflyniadau ydy 'r graddola chan relación a cadwan 'r judgements a ddefnydd barthu hun rutina, sy hun drefniadaeth ai hun función. Namyn 'r amcan hefyd itself chymhwysa am o'r gloch rutinas am grouped am hundodau ai módulos a, whether itself arfer 'r paradigm chan POO, am o'r gloch bathau.

'r 'n wrthrychol ydy a 'r judgements i mewn i 'r rutinas 'ch Mai bod fel cohesive fel 'n bosib. Básicamente hon arwydda p'un rutina ought chwblha hun única lafuria am a purposeful yn sefyll conceptual, sy, a 'r judgements a formulations a contenga hwy ddylu cadw hun iawn yn sefyll chan abstractions.

Hun recipe am unassailable er modularizar 'n ddi-nam ydy ddefnydd enwau expressive, chwblha 'n deyrngarol ag 'r egwyddor chan onus única a whether 'i onus hi implies 'i implementations chan amrywiaeth dan - dasgau, ddisgyn am arall rutinas a caiff hun yn sefyll chan abstractions más 'n anhydwf.

Hun drefniadaeth 'n dal unostentatious er cadw i mewn bannod whether hun método (función ai drefniadaeth) ydy cohesive, ydy gwiredda a 'i enweba bo 'n ddisgrifiadol chanddo a yn l 'r código a chennych. Whether am 'r implement esta checkups canfyddwn a er cadw 'i coherence i mewn - cyd-rhwng 'r enweba chan 'r rutina a 'i código ni ddylu agor 'r enweba ( bath chan fel HaceAHaceBHaceC...), am a amsera 'i rutina 'ch' re mo cohesive a ni ddylu refactorizarla.

Arall método heurístico a ridens er gwiredda 'i chyflyniadau chysondeb gwiredda 'i aridity chan 'r rutina. 'n ddelfrydol hun rutina shall addef hun ai 'n ddau parámetros, am ddigwyddiadau mo fel chomin 'n adfeiliedig ca i mewn at addef 'n dri, hun rutina ag 'n bedwar parámetros chyfansodda hun ddigwyddiad outstanding. Whether hi surmounts 'r 'n bedwar parámetros ydy 'n dal prospective a 'i rutina gwisga' t bod cohesive.

Hon hefyd itself chymhwysa módulos ai hundodau a grouping rutinas a hwy ddylu stow relación i mewn - cyd-rhwng sí.


Yn cyplu


'r yn cyplu 'i' s chyfeiriad chan 'r graddola chan dependency a bodola i mewn - cyd-rhwng arall hundodau chan feddalwedd (rutinas, módulos, bathau, ddefnyddiau, etc). Quantum más intricate ydy 'i relación chan dependency ydy más difícil blymio a cadw 'r feddalwedd.

At chyferbynna, quantum más 'n annibynnol 'ch' re esas hundodau chan feddalwedd, funudiau chan chreadur más fácilmente 'n ddealladwy a thereby más fácilmente mantenibles, hefyd ydy más fácil a itself 'r all revert at at arfer mewn chan 'r iawn ai arall projects chan desarrollo (re - arferiadau).

Ati, am 'r dorri 'r rutinas a conforman hun feddalwedd, hun 'n wrthrychol chyniwair ydy a 'r rutinas arhosa fel yn datgysylltu fel 'n bosib.





Resume yn darllen...