PHPチャットを学ぶ

コミュニケーションについて。


すべての人々は独立しています(またはほとんど)! すべての人がコミュニケーションを取ります!
誰もが人々の間のコミュニケーションの儀式、その原因を知っています。 彼女について必要な情報を入手するには、特定の人でなくてもかまいません。 誰かが答えを知っているかどうか、いわば空中で尋ねてください-彼は答えます。

JavaScriptとQtについて。


JavaScriptが大好きです。 その柔軟性が気に入っています。 私は彼のイベントシステムが好きです。
私は自分をC ++プログラマーとは考えていませんが、Qtは好きです。 彼(彼女?)の信号/スロットシステム。

言語とライブラリを覚えているのはなぜですか? 彼らは通信できるので、彼らを際立たせます。

アイデアについて。


すべてのモジュールは独立(またはほぼ)です! すべてのモジュールが通信します!
私が考えたとき:なぜ私の別の好きな言語を伝えることを学ぶ必要があるのですか? PHP
すべてのコンポーネントが互いに独立しており、さらに互いを知らないシステムを想像しました。
彼らは通信します。
-誰でも変数xxxの値を持っていますか?
-はい、もちろん、それを保持します。
-誰かが最後の10件のコメントをくれますか?
-問題ありません。


実装について。


この問題に関する情報を少し探した後、PHPでQtを実装する試み-QPHPを見つけましたが、これは私が望んでいたものではありません。 ezComponentsフレームワークにはシグナル/スロットの実装もありますが、そうではありません。 したがって、私は将来のライブラリの中核を設計し始めました。
私の想像では、彼女は次のように見えました。
画像
図からわかるように、すべてのメッセージ/イベントはカーネルを通過するため、すべてのシステムコンポーネントはカーネルのみに依存しています。
カーネルに含めることにしたもの:
私の意見では、これで十分です。

実装コードは近日公開予定です。

使用について


典型的な使用方法は、次のようなものです。
  1. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  2. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  3. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  4. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  5. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  6. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  7. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  8. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  9. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  10. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  11. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  12. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  13. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  14. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  15. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  16. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  17. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  18. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  19. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  20. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  21. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  22. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  23. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  24. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  25. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  26. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;
  27. <?php class module_test_1 extends module { public function __construct ( ) { // , , $this -> emit ( new signal ( 'config.getvar' , array ( 'var' => 'varname' , 'callback' => array ( $this , 'write' ) ) ) ; $this -> emit ( new signal ( 'module_test_1.run' ) ) ; } public function write ( $val ) { echo "varname = $val " ; } } class module_test_2 extends module { public function __construct ( ) { $this -> connect ( new slot ( 'module_test_1.run' , array ( $this , 'write' ) ) ) ; } public function write ( ) { echo "module_test_1 -> run" ; } } $test_2 = new module_test_2 ( ) ; $test_1 = new module_test_1 ( ) ;


______________________
テキストは、©SoftCoder.ruのHabr Editorで作成されます。

Source: https://habr.com/ru/post/J61692/


All Articles