𝗡𝗶𝗺𝗲𝗼𝗻𝗮 𝗺𝘂𝘂𝗻𝗱𝗼 𝘂𝗹𝗲 𝘂𝗹𝗲 𝘄𝗮 𝗸𝗮𝗻𝘇𝗶𝗱𝗮𝘁𝗮 𝗺𝗮𝗿𝗮 𝘁𝗮𝘁𝘂 𝗹𝗲𝗼

Nimeona muundo ule ule wa kanzidata mara tatu katika kodi yangu leo.

Kwanza, nimeuona kwenye ada.

  • Fee (mzazi: kile ambacho darasa kinadaiwa)
  • FeePayment (mtoto: kila malipo ya mtu binafsi)

Kisha, nimeuona kwenye tathmini.

  • Assessment (mzazi: maelezo ya mtihani, tarehe, na alama ya juu zaidi)
  • AssessmentResult (mtoto: alama ya kila mwanafunzi)

Muundo huu huzuia makosa ya kawaida.

Usipotumia muundo wa mzazi-mtoto, utakabiliwa na matatizo haya:

  • Unarudia data. Unanakili somo na tarehe kwa kila mstari wa mwanafunzi.
  • Unasababisha mkanganyiko. Ni vigumu kujua ni mistari gani inahusika na tukio moja.
  • Unachafua majedwali. Unaweka data za kichwa cha habari kwenye mistari ya wanafunzi ambapo haitakiwi.

Uwezo wa kutambua miundo huongezeka kadiri muda unavyopita.

Mara ya kwanza unapotatua tatizo la muundo, ni marekebisho ya mara moja tu. Mara ya pili unapoona, unatambua muundo. Mara ya tatu, unautumia kabla hata hujakumbana na tatizo.

Bado ninatengeneza na kujaribu edge cases. Bado ninajifunza.

Chanzo: https://dev.to/johnstonkweku/i-spotted-the-same-database-design-pattern-three-times-in-my-own-code-today-4e4d