Хүрээлэх, хийсвэрлэх хоёрын ялгаа

Хүрээлэх, хийсвэрлэх хоёрын ялгаа
Хүрээлэх, хийсвэрлэх хоёрын ялгаа

Видео: Хүрээлэх, хийсвэрлэх хоёрын ялгаа

Видео: Хүрээлэх, хийсвэрлэх хоёрын ялгаа
Видео: EQ буюу Сэтгэл хөдлөлийн оюун ухааны чадамж 2024, Долдугаар сарын
Anonim

Encapsulation vs Abstraction

Encapsulation болон Abstraction нь OOP (Объект хандалтат програмчлал) хэлэнд байдаг хоёр өөр боловч хоорондоо холбоотой ойлголтууд юм. Encapsulation гэдэг нь өгөгдөл болон зан төлөвийг нэгтгэн нэг аж ахуйн нэгж болгон нэгтгэх тухай ойлголт юм. Нөгөөтэйгүүр, хийсвэрлэл гэдэг нь тухайн байгууллага хэрхэн хэрэгжиж байгаагаас ялгаатай нь хэрхэн биеэ авч явааг\харагдахыг харуулах үйл явц юм.

Encapsulation гэж юу вэ?

Encapsulation гэдэг нь өгөгдөл болон тэдгээрт ажиллаж байгаа үйлдлийг нэг аж ахуйн нэгжид багцлах үйл явц юм. Энэ нь үндсэндээ өгөгдөлд хандахын тулд урьдчилан тодорхойлсон тодорхой аргуудыг ашиглах ёстой гэсэн үг юм. Өөрөөр хэлбэл, капсуллагдсан өгөгдөлд шууд хандах боломжгүй. Энэ нь хэрэглэгч өөрийн хүссэнээр өгөгдөлд шууд хандаж, өөрчлөх боломжгүй тул мэдээллийн бүрэн бүтэн байдлыг хангана. Хэрэглэгчид өгөгдлийн утгыг зөвхөн хэрэглэгчдэд нийтэд нээлттэй аргуудаар дамжуулан авах буюу тохируулах болно. Эдгээр аргууд нь ихэвчлэн өгөгдлийн баталгаажуулалтыг хангадаг бөгөөд ингэснээр зөвхөн тохирох форматтай өгөгдлийг талбарт оруулахыг зөвшөөрдөг. Тиймээс Encapsulation-ийн ашиг тус нь гурав дахин их байдаг. Encapsulation-ийн тусламжтайгаар программист ангийн талбаруудыг зөвхөн унших эсвэл зөвхөн бичих боломжтой. Хоёрдугаарт, анги өөрийн талбарт юу хадгалагдаж байгааг бүрэн хянах боломжтой. Эцэст нь, тухайн ангийн хэрэглэгчид түүний өгөгдөл хэрхэн хадгалагдаж байгаа талаар санаа зовох шаардлагагүй болно. Жава хэл дээр программист бүх жишээний хувьсагчийг хувийн гэж зарлаж, хувийн талбарт хандах, өөрчлөх авах болон тохируулах аргуудыг (олон нийтийн) өгч болно.

Хийсвэрлэл гэж юу вэ?

Хийсвэрлэл гэдэг нь танилцуулгын дэлгэрэнгүйг хэрэгжилтийн дэлгэрэнгүй мэдээлэлээс салгах үйл явц юм. Энэ нь хөгжүүлэгчийг илүү төвөгтэй хэрэгжилтийн нарийн ширийн зүйлээс чөлөөлөхийн тулд хийгддэг. Үүний оронд програмист нь тухайн байгууллагын танилцуулга эсвэл зан үйлийн нарийн ширийн зүйлд анхаарлаа төвлөрүүлж болно. Энгийнээр хэлбэл, хийсвэрлэл нь тодорхой аж ахуйн нэгжийг хэрхэн хэрэгжүүлэхээс илүүтэйгээр түүнийг хэрхэн ашиглахад чиглэдэг. Хийсвэрлэл нь хэрэгжилтийн нарийн ширийн зүйлийг нуун дарагдуулдаг бөгөөд ингэснээр хэрэгжүүлэх аргачлал нь цаг хугацааны явцад өөрчлөгдсөн ч программист энэ нь түүний хөтөлбөрт хэрхэн нөлөөлөх талаар санаа зовох шаардлагагүй болно. Системийг хэд хэдэн давхарга эсвэл түвшинд хийсвэрлэж болно. Жишээлбэл, доод түвшний хийсвэрлэлийн давхарга нь техник хангамжийн дэлгэрэнгүй мэдээллийг харуулах бол өндөр түвшний хийсвэрлэл нь тухайн байгууллагын бизнесийн логикийг л харуулах болно. Хийсвэрлэл гэдэг нэр томьёог аж ахуйн нэгж болон үйл явцын аль алинд нь хамааруулж болох бөгөөд энэ нь зарим нэг төөрөгдөл үүсгэдэг. Үйл явцын хувьд хийсвэрлэх гэдэг нь тухайн зүйл эсвэл бүлэг зүйлийн ач холбогдолгүй нарийн ширийн зүйлийг үл тоомсорлож, чухал нарийн ширийн зүйлийг гаргаж авахыг хэлдэг бол аж ахуйн нэгжийн хувьд хийсвэрлэх нь зөвхөн чухал нарийн ширийн зүйлийг агуулсан аж ахуйн нэгжийн загвар эсвэл үзэл бодлыг хэлнэ. Java хэл дээр программист abstract гэсэн түлхүүр үгийг ашиглан ангиудыг хийсвэр объект гэж зарлах боломжтой бөгөөд энэ нь бодит ертөнцийн объектын үндсэн шинж чанарыг илэрхийлдэг.

Encapsulation болон Abstraction хоёрын ялгаа нь юу вэ?

Хэдийгээр Encapsulation болон Abstraction нь Объект хандалтат програмчлалын хэлэнд байдаг маш их холбоотой ойлголтууд боловч тэдгээр нь үндсэн ялгаатай байдаг. Хийсвэрлэл бол юу харагдах, юуг нуух ёстойг тодорхойлоход тусалдаг техник юм. Капсулжуулалт гэдэг нь харагдах ёстой зүйлийг харагдахуйц болгож, нуух ёстойг нуух үүднээс мэдээллийг савлах арга техник юм. Өөрөөр хэлбэл, Encapsulation нь хийсвэрлэхээс нэг алхам давсан гэж тодорхойлж болно. Хийсвэрлэл нь бодит ертөнцийн объектыг үндсэн тодорхойлох шинж чанарт нь хүргэдэг бол капсулжуулалт нь тухайн объектын функцийг загварчилж, холбох замаар энэ санааг өргөжүүлдэг.

Зөвлөмж болгож буй: