問題タブ [program-structure]
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.
oop - 干し草の山から針をどうやって見つけますか?
オブジェクト指向の方法で干し草の山の針検索を実装する場合、基本的に3つの選択肢があります。
どちらが好きですか、そしてその理由は何ですか?
3番目のオブジェクトの導入を回避するため、2番目の選択肢を好む人もいます。ただし、少なくとも「現実の世界」をモデル化することが目標である場合は、3番目のアプローチがより概念的に「正しい」と感じざるを得ません。
この例のサーチャーなどのヘルパーオブジェクトを導入することはどのような場合に正当であると思いますか。また、いつそれらを回避する必要がありますか。
memory - プログラムはメモリ内でどのように見えますか?
プログラム (C や C++ など) は、コンピューターのメモリ内でどのように構成されていますか? セグメントや変数などについては少し知っていますが、基本的に全体の構造をしっかりと理解しているわけではありません。
メモリ内の構造が異なる場合があるため、Windows の C++ コンソール アプリケーションを想定してみましょう。
私が具体的に求めているものへのいくつかのポインタ:
- 関数の概要とその呼び方
- 各関数にはスタック フレームがあり、そこには何が含まれており、メモリ内でどのように配置されているのでしょうか?
- 関数の引数と戻り値
- グローバル変数とローカル変数?
- const静的変数?
- スレッドローカルストレージ..
チュートリアル的なものなどへのリンクは大歓迎ですが、アセンブラなどの知識を前提としたリファレンス的なものはご遠慮ください。
c - 複数の C "プロジェクト" で同様のコードを処理する
小さなウェブサーバーを書いて、いくつかのCコードをいじっています。私がやっていることの目的は、さまざまなネットワーク技術を使用してサーバーを作成し、それらについてもっと学ぶことができるようにすることです (マルチスレッド、マルチプロセス、選択、ポーリング)。コードの大部分は同じままですが、ネットワーク コードを「交換」して、さまざまな手法に対するパフォーマンス テストを実行できるようにしたいと考えています。ifdefs を使用することを考えましたが、コードがすぐに醜くなるようです。助言がありますか?
python - チェリーピー アプリを構築するためのベスト プラクティスは何ですか?
私はチェリーピーアプリを書いていますが、ハンドラーと大規模なアプリケーションのコードを構築するための最良の方法は何だろうと思っていましたか?
割り当てはcherrypy.rootから簡単だと思いますが、ハンドラーを作成して割り当てるためのプラクティスは何ですか?
(私の混乱を証明させてください!) 私が最初に考えたのは、現在の URL またはクラスとメソッドの組み合わせに基づいて実行するテンプレートを推論する標準ハンドラー クラスを作成することです。次に、そのハンドラーの 1 つのインスタンスをパスに複数回割り当てて、ページを作成します。ただし、再帰参照が正しく機能しないため、これが機能しているとは思いません。
ですから、私自身のソース コードがどのように見えるべきかについて既に空白を描いているという事実を考えると、いくつかの指針と例が欲しいです!
明確にするために、いくつかの詳細な質問をしてください。チュートリアルの素材はたくさんありますが、表面をなぞっただけの傾向があります。
programming-languages - プログラムエントリポイントの「main」という名前の由来は?
好奇心から、プログラムエントリポイントの「main」という名前の由来は何ですか?
c - C - プログラム構造 (グローバル変数、インクルードなどを避ける)
私は C (C++ ではない) を使用していますが、グローバル変数の使用を避ける方法がわかりません。
私は C とその構文、および基本的なアプリケーションの書き方についてかなりよく理解していますが、プログラムを構成する適切な方法については確信が持てません。
本当に大きなアプリケーションは、グローバル変数の使用をどのように回避するのでしょうか? 少なくともいくつかは常に必要になると確信していますが、大規模なゲームや C で記述されたその他のアプリケーションの場合、それを行う最善の方法は何ですか?
厳密に C で書かれたオープンソースのソフトウェアで、私が見ることができるものはありますか? 頭に浮かんだことは何も思い浮かびません。それらのほとんどは C++ で書かれているようです。
ありがとう。
編集
これは、別のプロセス内の単なる DLL である単純な API フック アプリケーションでグローバル変数を使用する場所の例です。
このアプリケーションは、具体的には、別のアプリケーションで使用される API 関数をフックします。これは、WriteProcessMemory を使用してオリジナルへの呼び出しを上書きし、代わりに DLL への呼び出しにすることによって行われます。
ただし、API 関数をフック解除するときは、元のメモリ/マシン コードを書き戻す必要があります。
そのため、そのマシン コード用に単純なバイト配列を維持する必要があります。フックされている API 関数ごとに 1 つずつありますが、その配列はたくさんあります。
混乱している場合は申し訳ありません。
architecture - Cocos2d CCDirector クラスをサブクラス化すべきではありませんか?
cocos2d を RPG エンジンとして動作させようとしています。キャラクターの動きやマップのロード/アンロードなどを調整するクラスを作ろうと思っています。これには CCNode を作るべきですか、それとも CCDirector を拡張するだけですか? をサブクラス化しない理由はありCCDirector
ますか?
java - Javaを使用して現在コンピュータで実行されている別のJavaアプリケーションでメソッドを見つけて実行するにはどうすればよいですか?
たとえば、hello.java が (任意に) あるとします。実行中にユーザーがそのアプリケーションでアクセス可能な (プライベートではない) 変数を実行中に入力を提供して変更した場合、このアプリケーションはまだ実行されていない変数とは異なる変数を持つことになります。 . また、別のプログラム (できれば Java) は、そのアプリケーションからその変数に関する更新された情報を取得または表示できます。
c# - Main() でモジュール性を維持していますか?
私は宿題のために単純なカードゲーム「戦争」を書いています。ゲームが機能するようになったので、よりモジュール化して組織化しようとしています。以下はMain()
、プログラムの大部分を含むセクションです。このコースは C# で教えられていますが、C# コースではありません。むしろ、基本的なロジックと OOP の概念を学んでいるので、一部の C# 機能を利用していない可能性があります。
だからここに私の質問があります:
- Main() でループを使用しても、モジュラーと見なすことはできますか?
- カードを引くプロセスは適切に書かれているか、適切に含まれていますか?
- メソッドでメッセージを出力することは悪い習慣と見なされますか (つまり:
determineWinner()
)?
プログラミングを始めて 2 学期しか経っていませんが、この段階で良い習慣を身に付けたいと思っています。任意の入力/アドバイスをいただければ幸いです。
編集:
catchDuplicate() は boolean メソッドになり、呼び出しは次のようになります。
sameCard = catchDuplicate(card1, card2);
@ダグラスに感謝します。
python - Django webapp 全体の図を生成することは可能ですか?
Django サイト全体の図を生成することは可能ですか? たとえば、モデル/データベース構造を理解するために、モデル構造を追跡するのに非常に役立ち、議論に非常に役立つgraphVizを使用します。
完全な Django サイトに同様のものが存在し、urls/models/views/templates
すべてをグラフィカルに表現できるかどうかに興味がありました。それがどのように見えるかはよくわかりませんが、これを行うためのツールが存在するかどうかに興味があります.
これにより、サイトのさまざまな部分間のコード フローを示す図がプログラムで生成されます。