Sobes.tech
Middle

Flutter кайсы архитектуралык катмектерге бөлүнөт?

sobes.tech AI

AIден жооп

Flutter төмөнкү архитектуралык катмарларга бөлүнөт:

  1. Embedder: Операциялык тутум менен өз ара аракеттенүүнү камсыз кылат. Платформага өзгөчө кирүү пунктун камсыз кылат: беттин көрүнүшүн чийүү, жеткиликтүүлүк кызматтарына, колдонуучу кирүүсүнө жана жашоо циклин башкарууга. Embedder конкреттүү платформа үчүн ылайыкталган тилде жазылган (Android үчүн Java, iOS үчүн Objective-C/Swift, Windows/Linux/macOS үчүн C++).
  2. Engine: Фреймворктун негизги бөлүгү. негизинен C/C++ тилдеринде иштелип чыккан. Төмөнкү деңгээлдеги функцияларды камсыз кылат: Skia (2D графикалык китепкана), Text (текст менен иштөө китепкана), IO (кирилүү/жазуу), Dart Runtime, Flutter Engine (тапшырмаларды пландаштыруу, чийүү жана композитингти башкаруу).
  3. Framework: Dart тилинде жазылган. Бул Flutter иштеп чыгуучулары түздөн-түз иштете турган Dart API. Бир нече деңгээлдерден турат:
    • Foundation: Негизги класстар жана утилиттер.
    • Widgets: Flutterдеги UIдин негизги бөлүгү. Виджеттер интерфейс элементтеринин конфигурациясын сүрөттөйт.
    • Rendering: Чийүү үчүн абстракциялар, чийүү дарактарын куруу үчүн төмөнкү деңгээлдеги объекттерди камсыз кылат.
    • Painting, Gestures, Animation, etc.: Чийүү, кыймылдарды иштетүү, анимациялар жана башка функцияларды камсыз кылган деңгээлдер.
    • Material/Cupertino Libraries: Material Design жана iOS Cupertino дизайн системдерин ишке ашырган виджеттер топтому.

Мына такыр жөнөкөйлөштүрүлгөн иерархия:

[Сиздин колдонмо кодуңуз (Dart Виджеттери)]
        |
    [Framework (Dart)]
        |
    [Engine (C/C++)]
      /        \
[Embedder]    [Skia]
   |            |
[Операциялык тутум]