{"id":645,"date":"2020-07-08T16:46:09","date_gmt":"2020-07-08T09:46:09","guid":{"rendered":"https:\/\/www.marketenterprise.vn\/blog\/?p=645"},"modified":"2021-12-20T18:23:46","modified_gmt":"2021-12-20T11:23:46","slug":"tinh-dong-goi-trong-lap-trinh-huong-doi-tuong","status":"publish","type":"post","link":"https:\/\/www.marketenterprise.vn\/blog\/tinh-dong-goi-trong-lap-trinh-huong-doi-tuong.html","title":{"rendered":"T\u00ednh \u0111\u00f3ng g\u00f3i (Encapsulation) trong l\u1eadp tr\u00ecnh h\u01b0\u1edbng \u0111\u1ed1i t\u01b0\u1ee3ng"},"content":{"rendered":"<h1 class=\"article-content__title\">4 \u0111\u0103\u0323c ti\u0301nh cu\u0309a l\u00e2\u0323p tri\u0300nh h\u01b0\u01a1\u0301ng \u0111\u00f4\u0301i t\u01b0\u01a1\u0323ng (OOP)<\/h1>\n<ol>\n<li id=\"_tinh-dong-goi-encapsulation-0\"><strong>Ti\u0301nh \u0111o\u0301ng go\u0301i (Encapsulation)<\/strong><\/li>\n<li><a href=\"https:\/\/www.marketenterprise.vn\/blog\/tinh-ke-thua-inheritance-trong-lap-trinh-huong-doi-tuong.html\"><strong>T\u00ednh k\u1ebf th\u1eeba (Inheritance)<\/strong><\/a><\/li>\n<li><a href=\"https:\/\/www.marketenterprise.vn\/blog\/tinh-da-hinh-polymorphism-trong-lap-trinh-huong-doi-tuong.html\"><strong>T\u00ednh \u0111a h\u00ecnh (Polymorphism)<\/strong><\/a><\/li>\n<li><strong>T\u00ednh tr\u1eebu t\u01b0\u1ee3ng (Abstraction)\u00a0<\/strong><\/li>\n<\/ol>\n<p>Trong b\u00e0i vi\u1ebft n\u00e0y, ch\u00fang ta c\u00f9ng nhau t\u00ecm hi\u1ec3u v\u1ec1 &#8220;T\u00ednh \u0111\u00f3ng g\u00f3i (Encapsulation)<\/p>\n<h2>Kh\u00e1i ni\u1ec7m v\u1ec1 t\u00ednh \u0111\u00f3ng g\u00f3i<\/h2>\n<p><b><\/b><b><\/b><b><i>T\u00ednh \u0111\u00f3ng g\u00f3i (Encapsulation)<\/i><\/b><i><span style=\"font-weight: 400;\"> \u0111\u01b0\u1ee3c hi\u1ec3u \u0111\u01a1n gi\u1ea3n c\u00e1c <\/span><\/i><b><i>d\u1eef li\u1ec7u (data)<\/i><\/b><i><span style=\"font-weight: 400;\"> v\u00e0 c\u00e1c <\/span><\/i><b><i>h\u00e0m\/ph\u01b0\u01a1ng th\u1ee9c (functions\/methods)<\/i><\/b><i><span style=\"font-weight: 400;\"> c\u00f3 li\u00ean quan \u0111\u1ebfn nhau <\/span><\/i><i><span style=\"font-weight: 400;\">\u0111\u01b0\u1ee3c <\/span><\/i><b><i>\u201c\u0111\u00f3ng g\u00f3i\u201d<\/i><\/b><i><span style=\"font-weight: 400;\"> th\u00e0nh c\u00e1c l\u1edbp <\/span><\/i><b><i>(class)<\/i><\/b><i><span style=\"font-weight: 400;\"> \u0111\u1ec3 ti\u1ec7n cho vi\u1ec7c qu\u1ea3n l\u00fd v\u00e0 s\u1eed d\u1ee5ng.<\/span><\/i><\/p>\n<h2>\u00dd ngh\u0129a c\u1ee7a vi\u1ec7c s\u1eed d\u1ee5ng t\u00ednh \u0111\u00f3ng g\u00f3i trong OOP<\/h2>\n<p><span style=\"font-weight: 400;\">a. \u0110\u00f3ng g\u00f3i \u0111\u1ec3 ti\u1ec7n l\u1ee3i cho vi\u1ec7c qu\u1ea3n l\u00fd v\u00e0 s\u1eed d\u1ee5ng. T\u1ee9c l\u00e0 m\u1ed7i \u201cg\u00f3i\u201d \u0111\u01b0\u1ee3c x\u00e2y d\u1ef1ng \u0111\u1ec3 th\u1ef1c hi\u1ec7n m\u1ed9t nh\u00f3m ch\u1ee9c n\u0103ng \u0111\u1eb7c tr\u01b0ng c\u1ee7a ri\u00eang \u201cg\u00f3i\u201d \u0111\u00f3.<\/span><b><\/b><br \/>\n<span style=\"font-weight: 400;\">b. \u0110\u00f3ng g\u00f3i c\u00f2n \u0111\u1ec3 che gi\u1ea5u m\u1ed9t s\u1ed1 th\u00f4ng tin v\u00e0 chi ti\u1ebft c\u00e0i \u0111\u1eb7t n\u1ed9i b\u1ed9 \u0111\u1ec3 b\u00ean ngo\u00e0i kh\u00f4ng th\u1ec3 nh\u00ecn th\u1ea5y <\/span><b>(Data Hiding)<\/b><span style=\"font-weight: 400;\">. Vi\u1ec7c cho ph\u00e9p m\u00f4i tr\u01b0\u1eddng b\u00ean ngo\u00e0i t\u00e1c \u0111\u1ed9ng l\u00ean c\u00e1c d\u1eef li\u1ec7u, h\u00e0m, ph\u01b0\u01a1ng th\u1ee9c c\u1ee7a m\u1ed9t \u0111\u1ed1i t\u01b0\u1ee3ng theo c\u00e1ch n\u00e0o l\u00e0 ho\u00e0n to\u00e0n t\u00f9y thu\u1ed9c v\u00e0o ng\u01b0\u1eddi vi\u1ebft m\u00e3. \u0110\u00e2y l\u00e0 t\u00ednh ch\u1ea5t \u0111\u1ea3m b\u1ea3o s\u1ef1 to\u00e0n v\u1eb9n, b\u1ea3o m\u1eadt c\u1ee7a \u0111\u1ed1i t\u01b0\u1ee3ng. Ng\u01b0\u1eddi l\u1eadp tr\u00ecnh c\u00f3 th\u1ec3 d\u1ef1a v\u00e0o c\u01a1 ch\u1ebf n\u00e0y \u0111\u1ec3 ng\u0103n ng\u1eeba vi\u1ec7c g\u00e1n gi\u00e1 tr\u1ecb kh\u00f4ng h\u1ee3p l\u1ec7 v\u00e0o th\u00e0nh ph\u1ea7n d\u1eef li\u1ec7u c\u1ee7a m\u1ed7i \u0111\u1ed1i t\u01b0\u1ee3ng.<\/span><\/p>\n<h2>V\u00ed d\u1ee5 minh ho\u1ea1 01.<\/h2>\n<p><span style=\"font-weight: 400;\">Khi b\u1ecb b\u1ec7nh ch\u00fang ta t\u1edbi b\u1ec7nh vi\u1ec7n \u0111\u1ec3 kh\u00e1m. Sau khi kh\u00e1m b\u00e1c s\u0129 n\u00f3i ch\u00fang ta b\u1ecb c\u1ea3m c\u00fam, v\u00e0 k\u00ea cho ch\u00fang ta m\u1ed9t \u0111\u01a1n thu\u1ed1c, trong \u0111\u01a1n thu\u1ed1c c\u00f3 danh s\u00e1ch c\u00e1c lo\u1ea1i thu\u1ed1c, li\u1ec1u l\u01b0\u1ee3ng c\u1ee7a m\u1ed7i lo\u1ea1i v\u00e0 th\u1eddi gian u\u1ed1ng thu\u1ed1c.<\/span> <span style=\"font-weight: 400;\">\u0110\u1ecdc \u0111\u01a1n thu\u1ed1c ch\u00fang ta ch\u1ec9 bi\u1ebft l\u00e0 c\u00f3 nh\u1eefng lo\u1ea1i thu\u1ed1c \u0111\u00f3 v\u00e0 li\u1ec1u l\u01b0\u1ee3ng c\u1ee7a m\u1ed7i lo\u1ea1i thu\u1ed1c nh\u01b0 th\u1ebf n\u00e0o u\u1ed1ng v\u00e0o th\u1eddi \u0111i\u1ec3m n\u00e0o. N\u1ebfu u\u1ed1ng \u0111\u00fang lo\u1ea1i thu\u1ed1c, \u0111\u00fang li\u1ec1u l\u01b0\u1ee3ng \u0111\u00fang th\u1eddi gian th\u00ec ch\u00fang ta s\u1ebd h\u1ebft c\u1ea3m c\u00fam, c\u00f2n c\u1ee5 th\u1ec3 b\u00ean trong m\u1ed7i lo\u1ea1i thu\u1ed1c \u0111\u00f3 ch\u1ee9a nh\u1eefng ho\u1ea1t ch\u1ea5t g\u00ec, t\u1ea1i sao ch\u00fang ta ph\u1ea3i u\u1ed1ng li\u1ec1u l\u01b0\u1ee3ng nh\u01b0 v\u1eady, t\u1ea1i sao ph\u1ea3i u\u1ed1ng \u0111\u00fang gi\u1edd \u0111\u01b0\u1ee3c ch\u1ec9 \u0111\u1ecbnh, ch\u00fang ta c\u0169ng ho\u00e0n to\u00e0n kh\u00f4ng bi\u1ebft.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u0110\u1ee9ng tr\u00ean c\u01b0\u01a1ng v\u1ecb l\u1eadp tr\u00ecnh vi\u00ean ta c\u00f3 th\u1ec3 hi\u1ec3u:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u00f3 m\u1ed9t class t\u00ean l\u00e0 <\/span><i><span style=\"font-weight: 400;\">DieuTriCamCum{}<\/span><\/i><span style=\"font-weight: 400;\">. Trong class n\u00e0y c\u00f3 <\/span><i><span style=\"font-weight: 400;\">d\u1eef li\u1ec7u (Data)<\/span><\/i><span style=\"font-weight: 400;\">\u00a0 l\u00e0 c\u00e1c lo\u1ea1i thu\u1ed1c, <\/span><i><span style=\"font-weight: 400;\">c\u00e1c h\u00e0m\/ph\u01b0\u01a1ng th\u1ee9c (function\/method)<\/span><\/i><span style=\"font-weight: 400;\"> l\u00e0 li\u1ec1u l\u01b0\u1ee3ng c\u1ee7a m\u1ed7i lo\u1ea1i thu\u1ed1c v\u00e0 th\u1eddi gian u\u1ed1ng thu\u1ed1c.<\/span><\/p>\n<h2>V\u00ed d\u1ee5 minh ho\u1ea1 02.<\/h2>\n<p><span style=\"font-weight: 400;\">M\u1ed9t v\u00ed d\u1ee5 \u0111\u01a1n gi\u1ea3n n\u1eefa v\u1ec1 t\u00ednh \u0111\u00f3ng g\u00f3i nh\u01b0 sau: Tr\u01b0\u1edbc ti\u00ean c\u00e1c b\u1ea1n h\u00e3y xem qua \u0111o\u1ea1n code TODOS APP vi\u1ebft b\u1eb1ng PHP sau \u2192<br \/>\n<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-642 size-full\" src=\"https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2020\/07\/08161641\/Screen-Shot-2020-07-03-at-1.26.05-PM.png\" alt=\"Encapsulation2\" width=\"451\" height=\"508\" srcset=\"https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2020\/07\/08161641\/Screen-Shot-2020-07-03-at-1.26.05-PM.png 451w, https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2020\/07\/08161641\/Screen-Shot-2020-07-03-at-1.26.05-PM-266x300.png 266w\" sizes=\"auto, (max-width: 451px) 100vw, 451px\" \/><\/span><\/p>\n<p><span style=\"font-weight: 400;\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-643 size-full\" src=\"https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2020\/07\/08161643\/Screen-Shot-2020-07-03-at-1.26.43-PM.png\" alt=\"Encapsulation3\" width=\"450\" height=\"687\" srcset=\"https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2020\/07\/08161643\/Screen-Shot-2020-07-03-at-1.26.43-PM.png 450w, https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2020\/07\/08161643\/Screen-Shot-2020-07-03-at-1.26.43-PM-197x300.png 197w\" sizes=\"auto, (max-width: 450px) 100vw, 450px\" \/><\/span><\/p>\n<p><span style=\"font-weight: 400;\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-644 size-full\" src=\"https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2020\/07\/08161644\/Screen-Shot-2020-07-03-at-1.26.55-PM.png\" alt=\"Encapsulation 1\" width=\"451\" height=\"432\" srcset=\"https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2020\/07\/08161644\/Screen-Shot-2020-07-03-at-1.26.55-PM.png 451w, https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2020\/07\/08161644\/Screen-Shot-2020-07-03-at-1.26.55-PM-300x287.png 300w\" sizes=\"auto, (max-width: 451px) 100vw, 451px\" \/><\/span><\/p>\n<p><span style=\"font-weight: 400;\">T\u00ednh \u0111\u00f3ng g\u00f3i th\u1ec3 hi\u1ec7n \u1edf \u0111o\u1ea1n code tr\u00ean l\u00e0 vi\u1ec7c k\u1ebft h<\/span><span style=\"font-weight: 400;\">\u1ee3p c\u00e1c d\u1eef li\u1ec7u v\u00e0 c\u00e1c ph\u01b0\u01a1ng th\u1ee9c x\u1eed l\u00fd v\u1ec1 qu\u1ea3n l\u00fd c\u00f4ng vi\u1ec7c trong TODOS APP \u0111\u01b0\u1ee3c \u201cg\u00f3i&#8221; v\u00e0o m\u1ed9t class c\u00f3 t\u00ean l\u00e0: <\/span><b><i>UserTasks.<\/i><\/b><\/p>\n<p><b><i>Vi\u1ec7c che d\u1ea5u d\u1eef li\u1ec7u (Data Hiding)<\/i><\/b><span style=\"font-weight: 400;\"> \u0111\u01b0\u1ee3c th\u1ec3 hi\u1ec7n \u1edf vi\u1ec7c class <\/span><b><i>UserTasks<\/i><\/b><span style=\"font-weight: 400;\"> che gi\u1ea5u \u0111i c\u00e1c h\u00e0m <\/span><i><span style=\"font-weight: 400;\">get_task_by_id(), get_task_by_name(), <\/span><\/i><span style=\"font-weight: 400;\">c\u00e1c properties <\/span><i><span style=\"font-weight: 400;\">$task_id, $table<\/span><\/i><span style=\"font-weight: 400;\"> (\u1edf d\u1ea1ng <\/span><i><span style=\"font-weight: 400;\">private<\/span><\/i><span style=\"font-weight: 400;\"> ho\u1eb7c <\/span><i><span style=\"font-weight: 400;\">protected<\/span><\/i><span style=\"font-weight: 400;\">) \u0111\u1ec3 \u0111\u1ea3m b\u1ea3o r\u1eb1ng c\u00e1c d\u1eef li\u1ec7u \u0111\u00f3 s\u1ebd \u0111\u01b0\u1ee3c truy c\u1eadp \u0111\u00fang m\u1ee5c \u0111\u00edch,\u00a0 \u0111\u00fang c\u00e1ch th\u00f4ng qua c\u00e1c h\u00e0m\/ph\u01b0\u01a1ng th\u1ee9c <\/span><i><span style=\"font-weight: 400;\">public<\/span><\/i><span style=\"font-weight: 400;\"> m\u00e0 <\/span><i><span style=\"font-weight: 400;\">class<\/span><\/i> <b><i>UserTasks<\/i><\/b><span style=\"font-weight: 400;\"> cung c\u1ea5p.<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><br \/>\nTrong v\u00ed d\u1ee5 tr\u00ean:<\/span><\/p>\n<p><i><span style=\"font-weight: 400;\">Class<\/span><\/i> <b><i>HasExtends<\/i><\/b><span style=\"font-weight: 400;\"> \u0111\u01b0\u1ee3c k\u1ebf th\u1eeba t\u1eeb <\/span><b><i>UserTasks<\/i><\/b><span style=\"font-weight: 400;\"> v\u1eady n\u00ean function <\/span><i><span style=\"font-weight: 400;\">hasExt()<\/span><\/i><span style=\"font-weight: 400;\"> c\u00f3 th\u1ec3 truy xu\u1ea5t \u0111\u01b0\u1ee3c nh\u1eefng <\/span><i><span style=\"font-weight: 400;\">properties\/function<\/span><\/i><span style=\"font-weight: 400;\"> \u1edf d\u1ea1ng <\/span><i><span style=\"font-weight: 400;\">public<\/span><\/i><span style=\"font-weight: 400;\"> v\u00e0 <\/span><i><span style=\"font-weight: 400;\">protected<\/span><\/i><span style=\"font-weight: 400;\">,\u00a0 kh\u00f4ng truy xu\u1ea5t \u0111\u01b0\u1ee3c c\u00e1c <\/span><i><span style=\"font-weight: 400;\">properties\/function<\/span><\/i><span style=\"font-weight: 400;\"> \u1edf d\u1ea1ng <\/span><i><span style=\"font-weight: 400;\">private<\/span><\/i><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0<\/span><i><span style=\"font-weight: 400;\">Class<\/span><\/i> <b><i>NoExtends<\/i><\/b><span style=\"font-weight: 400;\"> kh\u00f4ng \u0111\u01b0\u1ee3c k\u1ebf th\u1eeba n\u00ean function <\/span><i><span style=\"font-weight: 400;\">noExt()<\/span><\/i><span style=\"font-weight: 400;\"> ch\u1ec9 truy xu\u1ea5t \u0111\u01b0\u1ee3c c\u00e1c <\/span><i><span style=\"font-weight: 400;\">properties\/function<\/span><\/i><span style=\"font-weight: 400;\"> \u1edf d\u1ea1ng <\/span><i><span style=\"font-weight: 400;\">public<\/span><\/i><span style=\"font-weight: 400;\">, kh\u00f4ng th\u1ec3 truy xu\u1ea5t \u0111\u01b0\u1ee3c c\u00e1c <\/span><i><span style=\"font-weight: 400;\">properties\/function<\/span><\/i><span style=\"font-weight: 400;\"> \u1edf d\u1ea1ng <\/span><i><span style=\"font-weight: 400;\">private\/ protected<\/span><\/i><span style=\"font-weight: 400;\">.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u00e1c <\/span><i><span style=\"font-weight: 400;\">properties\/function<\/span><\/i><span style=\"font-weight: 400;\"> \u1edf d\u1ea1ng <\/span><i><span style=\"font-weight: 400;\">private<\/span><\/i><span style=\"font-weight: 400;\"> th\u00ec ch\u1ec9 trong class <\/span><b><i>UserTasks<\/i><\/b><span style=\"font-weight: 400;\"> m\u1edbi g\u1ecdi \u0111\u01b0\u1ee3c. T\u1eeb ngo\u00e0i kh\u00f4ng th\u1ec3 g\u1ecdi v\u00e0o. \u2192\u00a0 \u0110\u00f3 ch\u00ednh l\u00e0 <\/span><b>Data Hiding<\/b><span style=\"font-weight: 400;\">.<\/span><\/p>\n<h2>T\u1ed5ng k\u1ebft.<\/h2>\n<p><span style=\"font-weight: 400;\">V\u1eady l\u00e0 m\u00ecnh \u0111\u00e3 chia s\u1ebb xong v\u1edbi m\u1ecdi ng\u01b0\u1eddi v\u1ec1 t\u00ednh \u0111\u00f3ng g\u00f3i (Encapsulation) trong OOP.\u00a0 Th\u00f4ng qua nh\u1eefng ki\u1ebfn th\u1ee9c trong b\u00e0i vi\u1ebft v\u1ec1 t\u00ednh \u0111\u00f3ng g\u00f3i (Encapsulation), hy v\u1ecdng c\u00e1c b\u1ea1n c\u00f3 th\u1ec3 hi\u1ec3u th\u00eam v\u1ec1 t\u00ednh \u0111\u00f3ng g\u00f3i (Encapsulation), \u0111\u1ec3 c\u00e1c b\u1ea1n c\u00f3 th\u1ec3 v\u1eadn d\u1ee5ng t\u00ednh \u0111\u00f3ng g\u00f3i m\u1ed9t c\u00e1ch ch\u00ednh x\u00e1c tri\u1ec7t \u0111\u1ec3 v\u00e0 hi\u1ec7u qu\u1ea3 trong c\u00f4ng vi\u1ec7c c\u1ee7a c\u00e1c b\u1ea1n.<\/span><\/p>\n<h2>T\u00e0i li\u1ec7u tham kh\u1ea3o.<\/h2>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Object-oriented_programming\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">https:\/\/en.wikipedia.org\/wiki\/Object-oriented_programming<\/span><\/a><\/p>\n<p><a href=\"https:\/\/stackify.com\/oop-concept-for-beginners-what-is-encapsulation\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">https:\/\/stackify.com\/oop-concept-for-beginners-what-is-encapsulation\/<\/span><\/a><\/p>\n<p><a href=\"https:\/\/press.rebus.community\/programmingfundamentals\/chapter\/encapsulation\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">https:\/\/press.rebus.community\/programmingfundamentals\/chapter\/encapsulation\/<\/span><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>L\u1eddi M\u1edf \u0110\u1ea7u.<\/p>\n<p>Nh\u1eafc t\u1edbi l\u1eadp tr\u00ecnh h\u01b0\u1edbng \u0111\u1ed1i t\u01b0\u1ee3ng (OOP) ngay l\u1eadp t\u1ee9c ch\u00fang ta s\u1ebd ngh\u0129 t\u1edbi 4 t\u00ednh ch\u1ea5t \u0111\u1eb7c tr\u01b0ng \u0111\u00f3 l\u00e0: Ti\u0301nh \u0111o\u0301ng go\u0301i (Encapsulation), T\u00ednh k\u1ebf th\u1eeba (Inheritance), T\u00ednh \u0111a h\u00ecnh (Polymorphism) v\u00e0 T\u00ednh tr\u1eebu t\u01b0\u1ee3ng (Abstraction). Nh\u01b0ng ch\u00fang ta h\u1ea7u nh\u01b0 ch\u1eb3ng m\u1ea5y khi quan t\u00e2m \u0111\u1ecbnh ngh\u0129a ch\u00ednh x\u00e1c n\u00f3 l\u00e0 g\u00ec. G\u1ea7n \u0111\u00e2y m\u00ecnh c\u00f3 tham m\u1ed9t bu\u1ed5i seminar v\u1ec1 OOP trong \u0111\u00f3 c\u00f3 t\u00ednh \u0111\u00f3ng g\u00f3i. M\u00ecnh nh\u1eadn th\u1ea5y r\u1eb1ng tr\u01b0\u1edbc gi\u1edd m\u00ecnh ch\u01b0a t\u1eebng quan t\u00e2m \u0111\u1ebfn \u0111\u1ecbnh ngh\u0129a t\u00ednh \u0111\u00f3ng g\u00f3i l\u00e0 g\u00ec. Do \u0111\u00f3 m\u00ecnh \u0111\u00e3 t\u00ecm hi\u1ec3u v\u00e0 \u0111\u00fac k\u1ebft l\u1ea1i t\u00ednh \u0111\u00f3ng g\u00f3i th\u00e0nh m\u1ed9t kh\u00e1i ni\u1ec7m d\u1ec5 hi\u1ec3u nh\u01b0 sau: <\/p>\n","protected":false},"author":16,"featured_media":646,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[34,22],"class_list":["post-645","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technology","tag-marketenterprise-vietnam","tag-technical"],"_links":{"self":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/posts\/645","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/users\/16"}],"replies":[{"embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/comments?post=645"}],"version-history":[{"count":0,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/posts\/645\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/media\/646"}],"wp:attachment":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/media?parent=645"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/categories?post=645"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/tags?post=645"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}