OOPと手続き型プログラミングの比較 - ページ 43

 
Реter Konow:
確かにインテリセンスはとても便利なものですが、どの程度のものなのでしょうか?intellisenseはOOPに依存しますか?OOPがないと動かないのでは?私の知る限り、キーボードを打ち始めるとすぐに、類似したすべての機能名のリストが表示されます。いつもです。

そして、いくつかの関数をラップして、それをファイルに差し込んでみて、インテリセンスが働くかどうかを見てください。正直なところ、全部試すのは億劫なんです。しかし、それは関数の終わりを与える場合でも、その名前の先頭を入力する必要があります、つまり、関数名を再び覚えておく必要があります。

p.s. oopを使うように説得しているわけではなく、ただ今フォーラムに座って何が面白いか見ていて、しばらくの間荒らすことができます :)

 
Alexey Oreshkin:

そこで、いくつかの関数をラッパーの中に入れて、それをファイルに接続し、インテリジェンスが働くかどうか試してみてください。正直なところ、全部試すのは億劫なんです。しかし、たとえそれが関数の終わりを示すとしても、そのためにはその名前の始まりを入力しなければなりません。 これはクラスの場合ではなく、変数名を書き、ポイントの後に利用可能な関数の全体のリストがポップアップ表示されます。

p.s. oopを使うように説得しているわけではなく、ただ今フォーラムに座って、何が面白いか見ているところです。)

関数呼び出しが あるファイルにあり、関数自体が別のファイルにあり、これら2つのファイルが共通の接続を持っていない場合、呼び出しのあるファイルに名前を入力しても、intelligenceはその定義が接続されていない別のファイルにある関数の名前を表示することはありません。
 
Реter Konow:

実戦的な議論に聞こえる。でも、あまり意味がないんですよね。私は、関数内でスタティック変数を使うことはほとんどありません。誰かにとっては大切なことかもしれません。


新しいバーを定義する関数で、バーの時間を格納する静的変数を 内部に取り込むことができます。この機能は、同じロウソクで2回以上使用するようにしましょう。最初の1回以外はうまくいきません。

 
Alexey Oreshkin:

新しいバーを定義する関数を取ることができ、その内部にはバーの時間を格納する静的変数が あります。また、この関数を1回のキャンドルで複数回呼び出すようにしてください。を除くすべての回が動作しません。

なぜうまくいかないのか?
 
Реter Konow:
なぜうまくいかないのか?

というのも、スタティック 変数はすでに更新されているからです。この関数は動作しますが、新しいロウソクが到着したとは言えません。

ちなみに、javaやc#などはopがないと書けません。
同様に、価値ある内定の99%はEoPなしで終了しています。
AoPがないと、交換機への独自のコネクタを書くことはできませんし、plaza2を通して私たちのコネクタを書くこともできません。

 
Alexey Oreshkin:

機能は 動作しますが、新しいキャンドルが到着したことは伝えられません。

ちなみに、javaやc#などでは、opなしでは書けません。
プログラマーとしての仕事のオファーは、99%がOOPなしで締め切られています。
plaza2 を介した私たちのものでさえ、交換機にコネクタを書き込むことはできません。

静的変数を持つ関数が常に同じ場所から呼び出される場合、その変数には常に値が格納されます。クロスコールの場合、値は保存されません。

そんなときは、スタティック変数の代わりにグローバル変数を宣言すればいいのです。シンプルな解決策です。


2つ目の主張は重要だが、開発とは関係ない。他の言語で書いてもかまいません。

コネクターはどうだろう。C++で手続き型アプローチで書けないの?

 
Реter Konow:

静的変数を持つ関数が常に同じ場所から呼び出される場合、その変数には常に値が格納されます。クロスコールでは、値は保存されない。

このような場合、私はスタティック変数の代わりにグローバル変数を宣言するだけです。シンプルな解決策です。- これはもう最悪で、第二に、関数をいろいろなところで呼び出すと、何度もこのグローバル変数を作らなければならないということもあります。

レテグ・コノウ

2つ目の主張は重要だが、開発とは関係ない。他の言語で書いてもかまいません。

どの言語で書くかなんて、誰が気にするんだ。OOPはどこにでもある。



コノウタグ

コネクターはどうだろう。C++で手続き的なアプローチで書くことはできないのでしょうか?


どんな言語でも書けますが、ドキュメントやAPIなどを理解するためには、OOPに精通している必要があります。ところで、plazaのことはよくわからないのですが、アメリカのIBに接続する場合、OOPのことを理解せずに、彼らが与えるすべての例を理解するにはどうしたらよいでしょうか?

 
Alexey Oreshkin:


どんな言語でも書けますが、ドキュメントやAPIなどを理解するためには、OOPに精通していることが必要です。ところで、plazaのことをあまりご存じないようですが、IB on americaに接続する場合、OOPのことを理解せずに、彼らが与えるすべての例を理解するにはどうしたらよいでしょうか?

OOPを知ることが必要です。本当に必要なときだけ使うこと。無駄に人生を複雑にしないために。イミフ。
 
Реter Konow:

....

そんなときは、スタティック変数の代わりにグローバル変数を宣言すればいいのです。シンプルな解決策です。

...


グローバル変数を避ける方法として、スタティック変数を 使った例が挙げられた。しかし、あなたは石器時代に戻れと言っているのです。

一般的な問題は、独立したタスクに分けられるほど解きやすく、戻ってすべてを1つの山にまとめることを提案していますね。何しろ、変数名を考える想像力がないのですから。

 
Renat Fatkhullin:

嬉しさのあまり、Rは「アクセスの区別がないオールインワンのゴミ箱」モードで書かれているのが、なんとも嫌らしい。20年前の古い手法で、可視化、保護、マルチセッションの領域がない。まるで自分だけがそうであるかのように書いています。そうして、プロではない開発者が一人の下でプロジェクトを誕生させたのです。一から書き直さなければならない。少なくとも一度は。

MQL5からRで普通のインターフェースを作るというアイデアもあったのですが、深く掘り下げると、統合しないことを即決しました。データやセッションを保護することは、断固としてできない。


レナート 1つ質問です。

Rを大量に商用製品に導入しているコンソーシアム Rの「素人」たちは、その「いやらしさ」を自覚しているのだろうか。光を当てた方がいい。そうでなければ、彼らは打ちのめされてしまうでしょう。

人を驚かせるのが得意なんですね。

テーマから外れてしまい申し訳ありません。

グッドラック