Sobes.tech
Middle

Observable деген эмне?

sobes.tech AI

AIден жооп

Observable — бул маалымат агымы, ал асинхрондуу түрдө маанилерди чыгара алат. Promissтерден айырмаланып, observable бир маанини гана кайтарбай, нөл, бир же бир нече маанини убакыттын өтүшү менен чыгара алат.

Негизги өзгөчөлүктөрү:

  • Кечиккен: Агым жазылгандан кийин гана иштей баштайт.
  • Болгону болбойт: Агымдан чыгуу мүмкүн, бул анын иштешин токтотуп, ресурстарды бошотууга мүмкүндүк берет.
  • Көптөгөн маанилер: Бир нече маанини чыгара алат, ал эми promises бир жолу гана чечилет.

Негизги компоненттер:

  • Observable: Өзү маалымат агымы.
  • Observer: next, error жана complete ыкмалары бар объект, observable тарабынан чакырылат.
  • Subscription: Observableга жазылуунун жыйынтыгы, чыгууга мүмкүндүк берет.
  • Operators: Observable'ды түрлөргө бөлгөн же бириктирген функциялар (map, filter, merge).

Колдонуу мисалы (RxJS):

import { of } from 'rxjs';
import { map } from 'rxjs/operators';

const source = of(1, 2, 3); // 1, 2, 3 чыгара турган observable түзөбүз

const example = source.pipe(map(x => x + 1)); // map операторун колдонобуз

const subscription = example.subscribe({ // observableга жазылуу
  next: value => console.log(`Next: ${value}`), // Ар бир маанини иштетүү
  error: err => console.error(`Error: ${err}`), // Каталарга иштетүү
  complete: () => console.log('Complete!') // Аягында чакыруу
});

// чыгуу:
// Next: 2
// Next: 3
// Next: 4
// Complete!

// subscription.unsubscribe(); // Жазылуудан чыгуу мүмкүн