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で作成されます。



All Articles