Əsas Fərq – Məlumatların Gizlədilməsi vs Enkapsulyasiya
Obyekt yönümlü Proqramlaşdırma (OOP) proqramlaşdırmada əsas paradiqmadır. O, obyektlərdən istifadə edərək proqramı və ya proqram təminatını inkişaf etdirməyə kömək edir. Obyektlər plandan istifadə etməklə yaradılır. Buna sinif deyilir. Sinif obyektə daxil edilməli olan atribut və davranışlardan ibarətdir. Sinif məlumat üzvlərini və metodlarını ehtiva edir. Məlumat üzvləri obyektin atributlarını, metodlar isə obyektin davranışını təsvir edir. Məlumatların Gizlədilməsi və İnkapsulyasiya OOP-un iki anlayışıdır. Məlumatların gizlədilməsi sinif üzvlərini icazəsiz girişdən qorumaq prosesidir, Encapsulation isə məlumat üzvlərini və metodlarını vahid vahidə yığmaq prosesidir. Bu, məlumatların gizlədilməsi və inkapsulyasiya arasındakı əsas fərqdir. Məlumatların gizlədilməsi sistemin mürəkkəbliyini gizlədərkən məlumatların təhlükəsizliyinə diqqət yetirir. İnkapsulyasiya əsasən sistemin mürəkkəbliyini gizlətməyə yönəlib. İnkapsulyasiya məlumatların gizlədilməsinə nail olmaq üsuludur.
Məlumatların gizlədilməsi nədir?
Sinif data üzvləri və metodları ehtiva edir. Məlumatların gizlədilməsi sinif üzvlərinin qorunması prosesidir. Buna görə də bu, təhlükəsizliyin yaxşılaşdırılması mexanizmidir. Java kimi proqramlaşdırma dillərində giriş dəyişdiricilərindən istifadə edin. Onlar ictimai, özəl və qorunandır. Ümumi məlumat üzvləri və metodları digər siniflərin obyektləri tərəfindən əldə edilə bilər. Qorunan üzvlərə eyni sinifin və onun alt sinifinin obyektləri tərəfindən daxil olmaq mümkündür. Şəxsi üzvlər sinif daxilindəki obyektlər tərəfindən əlçatandır.
Proqramçı proqrama uyğun olaraq bu giriş dəyişdiricilərindən istifadə edə bilər. Üzvlərə girişi məhdudlaşdırmaq lazım deyilsə, o, ictimai dəyişdiricidən istifadə edə bilər. Varislik OOP anlayışıdır. Proqramı əvvəldən yazmaq əvəzinə, proqramçı artıq mövcud olan siniflərdən istifadə edə bilər. Mövcud sinif super sinif, yeni sinif isə alt sinif adlanır. Proqramçı 'qorunan' istifadə edərək sinif üzvlərini yalnız həmin sinif və əlaqəli alt siniflər üçün əlçatan edə bilər. Sinifdən kənar məlumatlara girişi məhdudlaşdırmaq tələb olunarsa, “özəl” dəyişdiricisindən istifadə edilə bilər.
Məlumatların gizlədilməsi digər obyektlərin müəyyən sinfin üzvlərinə daxil olmasının qarşısını almaq üçündür. Buna görə proqramçı şəxsi giriş dəyişdiricisindən istifadə etməlidir. Sonra məlumat üzvlərinə yalnız metodlar vasitəsilə daxil olmaq mümkündür. Hesab adlı sinif varsa və o, balans kimi məlumat üzvünü ehtiva edirsə, həmin məlumat üzvü yalnız həmin sinif üçün əlçatan olmamalıdır. Buna görə də şəxsi üzv olan balansı edə bilər. İndi yalnız sinif daxilində əlçatandır. Bu, məlumat təhlükəsizliyini yaxşılaşdırır.
Enkapsulyasiya nədir?
OOP-da proqram və ya proqram obyektlərdən istifadə edərək modelləşdirilə bilər. Hər bir obyektin atributları və davranışları var. Atributlar məlumat üzvləri və ya xassələri, davranışlar isə metodlardır. Hər bir obyekt bir sinifdən istifadə edərək yaradılır. O, obyektlərin qurulması üçün plan və ya təsviri təqdim edir. İnkapsulyasiya OOP-a aid olan əsas sütunlardan biridir. Bu, məlumat üzvlərinin və metodlarının vahid vahiddə birləşdirilməsi prosesidir.
Məlumat üzvlərinin və metodlarının bu qruplaşdırılması proqramı idarə oluna bilər və həmçinin mürəkkəbliyi azaldır. Rectangle sinifində en, uzunluq kimi məlumat üzvləri ola bilər. Onun getDetails, getArea və display kimi üsulları ola bilər. Bütün məlumat üzvləri və metodları Rectangle adlı vahid sinifdə birləşdirilir. Encapsulation-da özəl, qorunan, ictimai dəyişdiricilərdən istifadə edilə bilər. Giriş modifikatorları məlumatların qorunmasına kömək edir. İnkapsulyasiya məlumatların gizlədilməsinə nail olmaq üsulu kimi müəyyən edilə bilər.
Məlumatların gizlədilməsi və inkapsulyasiya arasında oxşarlıq nədir?
Həm Məlumat Gizlətmə, həm də İnkapsulyasiya Obyekt yönümlü Proqramlaşdırma (OOP) ilə əlaqəli anlayışlardır
Məlumatların Gizlədilməsi və İnkapsulyasiya Arasındakı Fərq Nədir?
Məlumatların Gizlədilməsi vs Enkapsulyasiya |
|
Məlumatların gizlədilməsi nəzərdə tutulmayan və ya nəzərdə tutulan dəyişikliklərin qarşısını almaqla sinif üzvlərinə və layihələr obyektinin bütövlüyünə eksklüziv məlumat girişini təmin edən prosesdir. | Enkapsulyasiya datanı həmin data üzərində işləyən metodlarla birləşdirən OOP metodologiyasıdır. |
Əsas Fokus | |
Məlumatların gizlədilməsi mürəkkəbliyi gizlədərkən məlumatın təhlükəsizliyinə diqqət yetirir. | Enkapsulyasiya sistemin mürəkkəbliyini gizlətməyə diqqət yetirir. |
Metodika | |
Məlumatın gizlədilməsi məlumatların qorunması prosesidir. | Enkapsulyasiya məlumatların gizlədilməsinə nail olmaq üsuludur. |
Giriş Dəyişdiriciləri | |
Data gizlədilməsi şəxsi giriş dəyişdiricisindən istifadə edir. | Enkapsulyasiya şəxsi, qorunan, ictimai giriş dəyişdiricilərindən istifadə edir. |
Xülasə – Məlumatların Gizlədilməsi vs Enkapsulyasiya
Məlumatların Gizlədilməsi və İnkapsulyasiya OOP-un iki anlayışıdır. Məlumatların gizlədilməsi sinif üzvlərini icazəsiz girişdən qorumaq prosesidir. İnkapsulyasiya məlumat üzvlərinin və metodlarının vahid vahidə yığılması prosesidir. Məlumatların gizlədilməsi ilə inkapsulyasiya arasındakı fərq budur. İnkapsulyasiya məlumatların gizlədilməsinə nail olmaq üsuludur.