Browse Source

chore: updates README.md

e22m4u 2 years ago
parent
commit
1d83199630
1 changed files with 24 additions and 22 deletions
  1. 24 22
      README.md

+ 24 - 22
README.md

@@ -57,35 +57,31 @@ console.log(myDate3); // Sun May 05 2030 03:00:00
 Пример:
 Пример:
 
 
 ```js
 ```js
-// создадим сервис сообщений Messenger
-class Messenger {
-  // и метод выводящий полученное сообщение
-  send(message) {
-    console.log(`[Messenger] ${message}`);
+import {Service} from '@e22m4u/service';
+
+class Foo extends Service {
+  method() {
+    const bar = this.getService(Bar);
+    // ...
   }
   }
 }
 }
 
 
-// создадим сервис приветствия Greeter
-// наследуя поведение класса Service
-class Greeter extends Service {
-  // и приветствующий метод hello
-  hello(name) {
-    // в котором получим сервис Messenger,
-    // используя унаследованный метод getService
-    const messenger = this.getService(Messenger);
-    // и отправим наше приветствие методом send
-    messenger.send(`Hello ${name}!`);
+class Bar extends Service {
+  method() {
+    const foo = this.getService(Foo);
+    // ...
   }
   }
 }
 }
 
 
-// создадим экземпляр сервиса Greeter
-const greeter = new Greeter();
-
-greeter.hello('Peter');
-// [Messenger] Hello Peter!
+class App extends Service {
+  method() {
+    const foo = this.getService(Foo);
+    const bar = this.getService(Bar);
+    // ...
+  }
+}
 
 
-greeter.hello('Jesse');
-// [Messenger] Hello Jesse!
+const app = new App();
 ```
 ```
 
 
 В примере выше мы не заботились о создании экземпляра
 В примере выше мы не заботились о создании экземпляра
@@ -93,6 +89,12 @@ greeter.hello('Jesse');
 эта логика инкапсулирована в классе `Service` и его методе
 эта логика инкапсулирована в классе `Service` и его методе
 `getService`
 `getService`
 
 
+Метод `getService` обеспечивает существование единственного
+экземпляра запрашиваемого сервиса, а не создает каждый раз
+новый. Тем не менее при передаче дополнительных аргументов,
+сервис будет пересоздан с передачей этих аргументов
+конструктору.
+
 ## Тесты
 ## Тесты
 
 
 ```bash
 ```bash