プロフェッショナルの胎児とディリータの胎児をプログラム的にどのように区別しているのですか? - ページ 7

 

文字列の機能はすべてコストがかかるものです。

グラフ作成機能はすべて有料です。

グラフの項目が多くなると、動作が遅くなります(ビジュアルモードでの作業を高速化するために、定期的に注文アイコンを削除してください(特に多い場合))。

ここで最も時間がかかるのは、WinowsRedraw()とComment()で、これを呼び出すとチャートも再描画 されるからです。

一見するとこんな感じです。

 

問題は、プロが書いた非常に有能な(コストのかかる機能や設計のない)コードであっても、依頼された絶対的な無意味さを体現してしまうことである。

もう、おもしろくない。

 
Mathemat:

問題は、プロが書いた非常に有能な(コストのかかる機能やデザインを含まない)コードであっても、依頼された絶対的なナンセンスを体現してしまうことです。

もう、おもしろくないんです。

私が思うに、プロのプログラマーは、作家や作曲家のように、自分のために書かなければならないし、また、プロとして、必ずしも本当に良い結果を出すために注文しなければなりません。もう一つは、プログラマーにとってそのアイデアが決定的でないにもかかわらず、顧客のアイデア(TOR)で書いてくれと頼まれた場合、この場合、プログラマーは、顧客がチップで仕事をする可能性は低いと警告するが、顧客はどうしてもというので、プログラマーはその注文を実行 するのである。ここでは仕様が異なり、時の試練に耐える名作がないことは理解していますが、MT5のMarketで全歴史の中で長寿の例(テスターで検証)があることには同意しています。これは、トレーダーが知っているから、方法を知っているからではなく、結果によって、プログラムとプログラマーのプロ意識を判断する出発点になると思います。もちろん、このプロフェッショナルな仕事には、それなりの価格が必要です。また、作家や作曲家がよくやるように、「ズボンを支えるための」強制アルバイトと見下して、粗悪な作品を作ることを禁じている人もいない。率直な意見で申し訳ないのですが、それがなければ、なぜ発言しないのですか?

 
感動は売り物ではありません。でも、原稿は売れるんですよ。
 

ディミトリ アナライザーができることを定義してください。良いコードと悪いコードを見分けるのと、良いアイデアと悪いアイデアを見分けるのは、全く別の仕事だ。そして、前者の場合は自動で解決しようとしますが、後者の場合はマニュアルモードでも難しいし、オートモードでも非現実的としか言いようがないのです。しかし、良いコードと悪いコードを見分けることができるアナライザーについて話し始めたので、このテーマについて議論してみましょう。

そもそも、プロとアマチュアの違いは何でしょうか?私の考えでは、それは言語知識のレベルであり、言語の多様な使用方法によって示されるものである。つまり、開発者が自明でない記法や再帰などのアルゴリズムを使っていれば、プロのプログラマーである可能性が高いのです。これをもとに、コードを解析し、その中で使われている「トリック」の数を計算するようなエキスパートシステムを構築することができる。各チップにはポイントが付きます。逆にマイナスになった場合は、ペナルティーが課せられます。つまり、コード全体を特徴づける数値や総得点が得られるわけです。例えば、重み付け表のようなものを作ればいい。

これがヒントです。
スコア
配列の使用
+1
コードの再利用(コード行数に対する関数の割合)
+4
演算子 += -= /=
+1
演算子 % >> <<
+3
再帰的な関数呼び出し
+5
プリプロセッサー指示文の使用
+3
コード量に対してコメントされた行数
+5
スロー」機能の使用
-3
同じ型の変数を使用:time1, time2, time3, time4
-4

その結果、エキスパートシステムは、各パラメータの重みを計算し、コードの一般的な品質を特徴付ける合計スコアを与えます。

 

みんな、プロのコードと新人のコードの違いを見分けるには、コードの最適 化の結果を知るしかないんだ。100%の最適化を追及することはできないでしょう。その要素の一部をトレースできるに過ぎない。そして、初心者でも部分最適を行うことができます。例えば、「2倍する」操作を「値を自分に足す」操作に置き換える。諦めてください。トラッキングのアイデアは、それが与えることのできる結果に比べて、あまりにもリソースを消費しすぎます。プログに投資しても採算が合わない。丸太からマッチを切り出すようなもので、製品としてのマッチは1本、残りは削りかすになる。

 
drknn:

みんな、プロのコードと新人のコードの違いを見分けるには、コードの最適化の結果を知るしかないんだ。

クソッタレ ))
 

プロフェッショナル・コードのサイン
変数や関数の意味のある名前
ブラウズ可能な プログラム構成が良い
良いコメントです。

そのような機能は、ソフトウェアで手動で検索するしかありません。自動化はうまくいきません。

SZY これはすべて、プログラマーが 自分のために書いた プログラムで探すべきことです。
現代において、自尊心のあるプログラマーは、このコードを第三者に渡すことはないだろう。

 
FAQ:

文字列の機能はすべてコストがかかるものです。

グラフ作成機能はすべて有料です。

グラフの項目が多くなると、動作が遅くなります(ビジュアルモードでの作業を高速化するために、定期的に注文アイコンを削除してください(特に多い場合))。

ここで最も時間がかかるのは、WinowsRedraw()とComment()で、これを呼び出すとチャートも再描画されるからです。

一見するとこんな感じです。


より高速な最適化(テストは別問題)とメモリ消費量の低減に興味があります。
最適化の高速化(テストは別問題)とメモリ消費量の削減の問題。フォーラムで誰かが何気なく、グラフィックの「追加」を防ぐために必要なことだと言っていました。
オブジェクトを最適化します。理論上、最適化ではグラフィックを全く見ないので、そのようなことを想定していました。
ObjectCreate()などのコマンドは、最適化の際に単に無視されるものと思っていました。
ブロックする必要があるのかないのか?
それでも無効にするということは、いちいちチェックを入れなければいけないということです
if(IsOptimization()==false ) {
}
同時に、このようなチェック自体が最適化速度に影響を与える。
状態チェック機能は高価ですか?
変数に代入して、後で使うのは意味があるのでしょうか?
私はほとんど常にComment()を持っています - 最適化中にそれもロックされるべきですか?
AlertとPrintについてはどうですか?(再び - 最適化中)。最適化中にログに書き込まれることはないんですよね?
 
chief2000:

また、それでもブロックする必要がある場合は、その都度、チェックを入れる必要があるということです

いいから

if(IsOptimization()==false ) {
}

а

if( !IsOptimization() ) {
}

でも、こうやってやった方がいいんです。

if ( !IsOptimization() && ( !IsTesting() || IsVisualMode() ) ) {

// ...

}

この条件は一度だけ行い、何らかのフラグの値を設定することで、グラフ上にテキストやグラフィック情報を表示する必要があるかどうかを確認することができる。

PS.

そして、一般的に、なぜあなたはそんなに活発なのですか? トピックスターターは、時々、あなたが...、とダルタニアンから示しています。