More Related Content Similar to Using oop (20) More from Batzorigt Rentsen More from Batzorigt Rentsen (8) Using oop4. Давуу тал
• Reusable - Дахин ашиглагдах
• Maintainable – Засвар өөрчлөлт оруулахад
хялбар
5. Давуу тал
• Reusable - Дахин ашиглагдах
• Maintainable – Засвар өөрчлөлт оруулахад
хялбар
• Testable - Тестлэхэд хялбар (хамгийн чухал!)
6. Давуу тал
• Reusable - Дахин ашиглагдах
• Maintainable – Засвар өөрчлөлт оруулахад
хялбар
• Testable - Тестлэхэд хялбар (хамгийн чухал!)
• Modular – Хамаарал багатай хэсгүүдэд
программыг хувааж болно
7. Давуу тал
• Reusable - Дахин ашиглагдах
• Maintainable – Засвар өөрчлөлт оруулахад
хялбар
• Testable - Тестлэхэд хялбар (хамгийн чухал!)
• Modular – Хамаарал багатай хэсгүүдэд
программыг хувааж болно
• Simple, Readable - Ойлгоход хялбар
8. Давуу тал
• Reusable - Дахин ашиглагдах
• Maintainable – Засвар өөрчлөлт оруулахад
хялбар
• Testable - Тестлэхэд хялбар (хамгийн чухал!)
• Modular – Хамаарал багатай хэсгүүдэд
программыг хувааж болно
• Simple, Readable - Ойлгоход хялбар
• Parallel development – Программ модулиудыг
зэрэгцээ хөгжүүлэх боломжтой
9. Сул тал
• Удаан үргэлжлэхгүй, богино хугацааны, эсвэл түр
зуурын төсөлд тохиромжгүй
• цэвэр тооцооны программд тохиромжгүй
• Паралель программчлалд (web service, back end)
тохиромжгүй
• Программын хэмжээ их болдог, компьтерийн(CPU,
memory) хүчин чадал өндөр байх шаардлагатай
• tool г.м жижиг хэмжээний программ бичихэд
тохиромжгүй
• Бүх зүйлийг объектоор илэрхийлэх боломжгүй - if all
you have is a hammer, everything looks like a nail
10. Яаж зохистой хэрэгжүүлж сурах вэ?
• Хамгийн дөт зам: Өргөн хэрэглэгддэг
тогтсон хэв загварыг (design patterns) авч
ашиглах
• Түүгээр дамжуулан ОХП-ын талаарх
ойлголтоо баяжуулах, бататгах
11. Design patterns- Зохиомжын хэлбэр
• Хөгжлийн явцад хуримтлагдсан сайтар
шалгагдаж, батлагдсан ноу хау
• Ер нь олон янзын зохиомж байдаг
• “Design Patterns: Elements of Reusable
Object-Oriented Software”- Энэ номонд
өргөн хэрэглэгддэг 23 загварыг ангилж, нэр
оноосон байдаг
12. Design Patterns
• Оновчтой шийдлийг богино хугацаанд гаргах
боломжтой
• Бусадтай хялбархан ойлголцож болно
• ОХП, зохиомжийн талаарх мэдлэгээ ахиулах
• Энгийн ойлгомжтой, засвар өөрчлөлт хийх,
тестлэхэд хялбар программ бичиж сурна
• Өмнө бичсэн программыг хөндөлгүйгээр
шинэ боломж-өөрчлөлтийг амархан нэмж
болно
13. Нийт 23 загвар буй
Gang of 4 эдгээрийг 3 хэсэгт хуваажээ
• Creational - Объектыг үүсгэхтэй холбоотой 5
• Structural - Бүтэцтэй холбоотой 7
• Behavioral – Үйл хөдлөлтэй холбоотой 11
15. Singleton
• Инстансыг нь нэгээс илүү үүсгэх боломжгүй классыг Singleton
класс гэнэ.
• Singleton-г ихэвчлэн дараах байдлаар хэрэгжүүлдэг:
- Байгуулагч функцыг гаднаас дуудах боломжгүй
- Инстанс үүсгэгч классын функц буюу static factory
method-той байна
- Инстанс-г хадгалах гаднаас хандах боломжгүй
классын хувьсагчтай байна
18. Singleton
Хурдан, олон газраас зэрэг хандах үед найдвартай ажиллах боловч
getInstance method дуудагдахаас өмнө Singleton класс ачаалагдаж санах ой
хуваарилагдна.
19. Singleton
Хурдан, олон газраас зэрэг хандах үед найдвартай ажиллана. getInstance
method дуудагдах үед л SingletonHolder класс ачаалагдаж санах ой
хуваарилагдна. Singleton класс хэн нэгнээс удамших шаардлагатай бол
энэ арга хамгийн зөв, оновчтой хувилбар.
20. Singleton
Singleton класс хэн нэгнээс удамших шаардлагагүй бол энэ арга хамгийн
хялбар бөгөөд зөв, олон асуудлыг шийдсэн (serializing, thread safe, non
blocking) оновчтой хувилбар (Effective Java (2nd Edition) [Joshua Bloch]).