問題タブ [program-flow]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
65 参照

url - Web で mvc をルーティングする

アプリケーションの各「セクション」へのルーティング (および/またはアーキテクチャ) を改善する方法について、誰かが私にアドバイスを提供できるかどうか疑問に思っていました。(私はPHP5で書いていて、厳格なMVCを使おうとしています)

基本的に、私はアプリ用の一般的なインデックス ページを持っています。それは jquery や css などの定型文を吐き出し、サイト全体のメイン ナビゲーションも生成しますが、接続するための最良の方法についてはわかりません。 「メイン メニュー」項目 (ハイパーリンク) とそれに関連付けられたコントローラー。これまでは、URL に文字列を追加し、'switch' ステートメントを使用して正しいコントローラー (およびビュー) に分岐し、'$GET[]' から文字列を抽出して、対応するコードを実行させていました。アクション。たとえば、顧客データの基本的な crud システムがある場合、顧客の詳細を編集する URL は「www.example.com/index.php?page=customer&action=edit&id=4」のようになります。

このようにすることでセキュリティ上の問題が発生するのではないかと心配しています。また、ユーザーがリンクをクリックすると、メインの「index.php」ファイルをアクションごとに正しいコントローラーに分岐する代替手段がわかりません。

コントローラーの名前を偽装するために mod_rewrite を使用した方がよいでしょうか? または、関連するコントローラーを取得するために各 URL がフィルター処理される個別のルーティング システムがある ASP MVC フレームワークと同様のシステムを作成するには?

乾杯!

0 投票する
6 に答える
66 参照

language-agnostic - このコードをどのようにフォーマットすればよいですか?

callscript(疑似コードで)呼び出す 2 つの方法を次に示します。

重複呼び出しの使用

追加の変数を使用する

条件

  • スクリプトが呼び出されるときでflagあることを確認する必要があります。false
  • また、flag値を元の値に戻す必要があります。

これら2つよりもこれを行うためのより良い方法はありますか? そうでない場合、これらのうちどれがより良い選択ですか?

0 投票する
3 に答える
77 参照

javascript - Javascriptでwhileループを破った条件に基づいて分岐する最もクリーンな方法は何ですか?

私はこのループを持っているとしましょう

4 つの条件のいずれかが false になると壊れる可能性があり、どの条件であるかに基づいて異なるコードを実行したいと考えています。理想的には、絶対に必要以上にそれらすべてを評価したくありません。仮定するとbrowseReddit()、それらすべてを再度評価する必要があります。

ループの後に if チェーンを置くことは、私が現在行っている方法です。よりクリーンな方法はありますか?あなたの答えでは何よりも簡潔さを大切にしてください。

0 投票する
4 に答える
588 参照

programming-languages - ELSEキーワードのないプログラミング言語-もっと複雑ですか?

Karelをベースにした、子供向けの簡単なプログラミング言語に取り組んでいます。プログラムフローを制御するために、私は現在これらの機能を(擬似コードで)提供しています:

  • パラメータなしの手順の定義
  • [ない]表現ステートメントの場合
  • 一方[ない]表現ステートメント

手続きから戻る手段がなく、声明も出さない。else

例として、次のコードを取り上げます。

コードの実行はに流れ、 trueの場合ifに実行されます。次に、 trueでないかどうかをテストし(ただし、プログラムの状態が変更されました!)、を実行します。これにより、両方のテストが成功する可能性があります。statement1somethingsomethingstatement2

これはプログラマーを制限しますか?これまでのところ、if... if not...を使用するか、if not最初にを使用してから、を使用するだけで、すべての例の問題を解決することができましたif

だから、私の質問は: ステートメントを追加する必要がありますか?elseキーワードが増えると、言語が少し複雑になります。より複雑ではありますが、ステートメントを使用して解決できるすべての問題は、elseステートメントがなくても解決できますか?

それとも、ステートメントを省略すると、else実際に言語がより複雑で直感に反するものになりますか?

0 投票する
1 に答える
1090 参照

jquery - each-loop の完了後に関数を実行する

やあ、私は ajax-request と setTimeout を含む jQuery each()-loop に取り組んでいます。それは私にプログラムの流れにいくつかの問題を与えています。

私の問題は、最後の行の console.log() がすぐに起動されることです (ループがまだデータを処理している間)。ループが終了するのを待つ簡単な可能性はありませんか? \:

よろしくお願いします!

0 投票する
4 に答える
415 参照

c - 明確化または最適化の理由で冗長なプログラムフローステートメントを作成しますか?

私はこれをCとしてタグ付けしていますが、確かに多くの言語に適用されます。この理由は、コンパイラに依存する最適化を扱う質問の一部です。

プログラムでこのような状況に遭遇することがあります。

elseおそらくお分かりのように、ここでのブロックは厳密には必要ありません。同じことが他のプログラムフロー制御構造でも発生します。一部の「通常の」構成は、特別な条件のために冗長になります。問題は、これらの冗長なコードブロックを作成する理由はありますか?明快さ?状況が十分に複雑な場合、それはコンパイラーの最適化に役立つ可能性がありますか?

0 投票する
1 に答える
81 参照

java - 奇妙なプログラムの流れ

私は次のコードに本当に困惑しています:

コード行をステップ オーバーすると、次の順序で実行されます。

さらに奇妙なのは、GetResponseContentText関数に入っていないことです。私は本当に混乱しています。誰でもこれに光を当てることができますか?

また、if ステートメントをコメントアウトすると、正常に動作します (GetResponseContentText_GZip関数に入ります)。

0 投票する
3 に答える
758 参照

java - リクエストごとの統計とプログラムフローを表示するJavaプロファイラー

理想的にはプログラムフローに沿って(通常のスレッド呼び出しスタックではなく)、要求ごとのプロファイリング統計をサポートするプロファイラーを探しています。つまり、基本的に、プロファイラーの呼び出しスタック+単一の要求ごとの順次呼び出しビューは、次のようになります。

どのクラス/メソッドがプロファイリングされるかは、何らかの方法で構成されます。各メソッド呼び出しを処理するトレースプロファイラーの場合、これはもちろん使用できません。

私はdynaTraceを知っており、使用しています。その「PurePath」機能(http://www.dynatrace.com/en/architecture-tame-complexity-with-purepath.aspx)はこれをサポートしていますが、小規模なプロジェクトで使用でき、初期投資とセットアップが少なくて済みます。

「クラシック」プロファイラー(YourKitなど)はこれをサポートしていますか?私はこの機能を見落としていましたか?

補遺:背景を提供する:主な目標は、実稼働中のシステムの監視と分析のための統計を取得することです。何よりもまず、リクエストにかかる時間のライブ統計を取得し、応答時間が長くなった場合に特定の(タイプの)リクエストのデータを取得することです(JETM + xを考えてください)。

リクエストごとのプロファイリング統計により、一部のリクエストだけが遅い理由を詳細に分析できます。たとえば、リクエストの10%が平均の10倍の時間がかかる場合などです。集計された統計では、これを解決するのは非常に困難です。

プログラムフローに沿って呼び出しをレンダリングするプロファイリング統計についても同じことが言えます。これは、リクエストのどこに問題があるかを簡単に特定できるためです。たとえば、メソッドが10個のDBクエリを実行すると、各呼び出しは10個だけでなく単一の呼び出しとして表示されます。集約された呼び出し。

理想的には、測定ポイントは実行時に構成および有効化/無効化されます。

0 投票する
5 に答える
2119 参照

c# - C# で例外がスローされた後のプログラム フロー

こんにちは、古い C# コードを見ていて、次のようなコードがたくさんあることに気付きました。

else ブロックが必要になる場合があるかどうか知りたいですか? 影響なしでコードをこれに安全に短縮できますか?

デフォルトでは、例外はこのメソッドからプログラム フローをスローする必要があります。しかし、DotNet で未処理の例外をどのように処理するかを微調整する方法があるかどうか疑問に思っているだけです。