ロースト オプション 1: eval()、parse()、再帰、メタプログラミングの冒険 - JMP ユーザー コミュニティJed Cambell (システム エンジニア、JMP US) より
こんにちは、マリアさん
以下に、ローストする可能性のあるコードを示します: Eval()、Parse()、および再帰、メタプログラミングの冒険 - JMP ユーザー コミュニティ
会議に参加できない場合でも、自由に使用してください(少なくとも録画は見たいです)。コメントでは変数名の二重使用について説明し、Eval(Parse()) ではなく Expr() を使用する方が良いと思います。
最高、
ジェド
Re: ロースト オプション 1: eval()、parse()、再帰、メタプログラミングの冒険 - JMP ユーザー コミュニティこれは、スクリプトをローストするためのベースとして機能します。Jed のスクリプトは、そのスクリプトがどのように構築されたかに関する「プロセス」ですが、最後の部分だけを取得すれば、機能します (私の意見では)。
つまりこの部分:
//determine number of parts
New Window ("How many parts?",
<< Modal,
neb = Number Edit Box (10),
Button Box ("OK", numParts = neb << Get;)
);
show(numParts);
listParts = {};
//Build first portion of script for modal window
//Escape character sequence for " is \!"
a = "
New Window(\!"Get Pass/Fail List\!",
<<MODAL></MODAL>
<P>このスクリプトでは、次のような「焙煎」ポイントが考えられます。</P>
<UL>
<LI>最初は名前はデフォルトでここに(1)</LI>
<LI>スクリプトのヘッダーがありません</LI>
<LI>変数参照がありません</LI>
<LI>ユーザーは最初のモーダルウィンドウで「終了」できるべきだと思います</LI>
<LI>部品番号に 0、.、および負の値を許可します (これらは後で空のウィンドウを作成するだけで、アプリケーションをクラッシュさせることはありません)</LI>
<LI>変数名が説明的ではない</LI>
<LI>Evil(Parse()) を使用すると、さまざまな(潜在的な)問題が発生する</LI>
<LI>選択できるオプションが 2 つ (合格または不合格) しかない場合にテキスト編集ボックスを使用する<UL><LI>コンボボックス/ラジオボックス/チェックボックスの方が一般的には良いでしょう</LI></UL></LI>
<LI>合格は適切なデフォルト値ですか? 一般的には、不合格をデフォルト値として設定します (または、ユーザーが選択したことを確認するために、「空」、「未選択」のほうがさらに良いでしょう)</LI>
<LI>これをJMP18スクリプトと考えると(JMP18用に構築されていないことは承知しています)、モーダルウィンドウを更新して<<TYPEを使用します>
</TYPEを使用します></LI><LI>参照と値を収集するにはリストを使用する必要があるでしょうか?<UL><LI>それは簡単ではありませんが、簡単な方法です</LI></UL></LI>
</UL>
<P> </P>
<P>また、このスクリプトの正確な目的もわかりません。2 つのモーダル ウィンドウが必要ですか? 2 番目のモーダルを作成する前にパーツ数を決定する必要がありますか、それとも同じウィンドウに配置できるか、またはユーザーがボタンを押してパーツを追加できるか。ただし、これらはロースト ポイントと見なすこともできます。これに取り組み始める前に適切な仕様がありましたか? どの問題が解決されますか?</P>
<P> </P>
<P>よく見かける非常に基本的なスクリプトも作成できます (私も、始めた頃に似たようなスクリプトを書いたことがあります)。データ (SQL クエリ、テーブルを開く、Excel など) を取得し、数式列をいくつか追加し、要約テーブルを作成してから、いくつかのレポートを含むウィンドウを作成します。最後に、インタラクティブな .html として保存します。</P>
<P> </P>