問題タブ [dynamic-typing]
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.
java - Pythonの扱い方〜静的型付け?
私は Java の世界から来ましたが、コードのコンパイル中にエラーが発生しないこと以外に、Python の動的型付けの優れた点は何でしょうか?
Python のタイピングは好きですか? 大きなプロジェクトで役に立った例はありますか? ちょっとミスしやすいんじゃない?
instantiation - Haxe で文字列名からクラスのインスタンスを作成する
として作成したクラスの名前を取得するとしString
ます。その文字列に含まれる名前でクラスをインスタンス化するにはどうすればよいですか? 特定の親クラスから派生することはわかっていますが、実際のクラスは異なります。
c# - 動的型の設計時のコード補完を取得することは可能ですか?
私は動的に型を生成することを検討しています。TypeBuilder
, Reflection.Emit
.. そのような作成された型の設計時のコード補完を取得することは可能ですか? つまり、タイプ名の認識、「obj1.
」と入力した後のプロパティのリストなどです。
フル コンテキスト: 実行時にデータベース テーブルに対応するエンティティとデータ アクセス オブジェクトを生成しようとしています。コード生成はオプションですが、それなしでできるかどうかを確認したかったのです。リフレクションの経験はある程度ありますが、reflection.emit の方法で型を構築する経験はありません。
iphone - 異なるviewControllerを動的に選択する
おそらく簡単だと思う問題がありますが、頭を包み込むことができないようです。
NSDictionariesの配列からロードするテーブルビューがあります。各ディクショナリには、タイトル(行に表示)と、行が選択されたときにスタックにプッシュする必要があるビューコントローラを表す関連するnssstringがあります。つまり、行「A」を選択すると「aViewController」のインスタンスを初期化してスタックにプッシュする必要があり、行「B」を選択すると「bViewController」のインスタンスを初期化してスタックにプッシュする必要があります。
私は元々、すべての可能な値をdidSelectRowにハードコーディングしました。しかし、viewControllerを動的に動的に生成できるようにしたいと思っています。同様の問題のC++の例をいくつか見つけたので、以下のコードにたどり着きました。しかし、私はそれを正しく理解できないようであり、Objective-Cソリューションの正しい軌道に乗っているかどうかはわかりません。誰か考えがありますか?
動作していないdidSelectRowコードは次のとおりです。
c++ - C# 4.0 の "dynamic" キーワードに相当する C++ は?
C# 4.0 では、実行時まで不明な型のプレースホルダーとして "dynamic" キーワードを使用できます。これが非常に便利な動作である特定のまれなケースがあります。おそらくC++0x機能またはRTTIを使用して、C++でこのようなものをエミュレートすることは可能ですか?
c# - Linq to Entities - NotSupportedException - 動的型 - string.Format
Linq-to-SQL から Linq-to-Entities に切り替えていますが、変換の過程で "LINQ to Entities はメソッド 'System.String Format(System.String, System.Object) を認識しません" というエラーに遭遇しました。 、System.Object)' メソッドであり、このメソッドはストア式に変換できません。」次のコードが原因です。これは、以下で使用している動的型生成を使用する必要があることを理解しています。動的タイプを引き続き使用し、L2E を使用するにはどうすればよいですか?
編集:
OK、@John Hartsockが簡単な解決策を示した後、少しばかげていると感じます...
もっと複雑な文字列操作をしたい場合はどうなりますか?
c - 純粋な ANSI-C: ジェネリック配列を作成
純粋な ANSI-C でジェネリック配列を複製することは可能ですか?
配列(現時点ではフロート用)と、サイズや配列内の突然変異の容量などのいくつかの変数を保持するこの構造体があります。
私はこの構造体を使用するので、アイテムを追加/削除したり、必要に応じて配列サイズを動的に拡張したりできる純粋な C で配列を作成できます。C のみで作成されることを除いて、「標準」配列が行うすべてのことです。そして今、この構造体を初期化するときに、保持する必要がある要素のデータ型を設定できるようにしたいと考えています。現時点では、float データ型しか格納できませんが、任意のデータ型を格納できるようにしたいと考えています。 /その他の構造体。しかし、これが可能かどうかはわかりません。
現時点で、この配列を作成する関数は次のとおりです。
データ型をパラメーターとして指定して、そのデータ型のメモリを割り当て、配列内の特定のデータ型として動的にキャストすることはできますか?
前もって感謝します、
マルニクス・ファン・ライスワイク
php - Ioc コンテナーと動的言語 (Take 2)
私は、依存性注入、制御の反転、および IoC コンテナーについて多くのことを調べてきました。また、主に動的言語 (職場では PHP、家庭では Python) でプログラミングしています。ここに私が見つけたものがありますが、すべてをつなぎ合わせると、埋めなければならない多くのギャップが残ります。
だから私が読んでいるのは、動的言語でDIを実行する方がはるかに簡単であるため、静的言語ではIoCコンテナーがはるかに大きな取引であるということです。しかし、DI をはるかに超えた利点も提供します。たとえば、依存関係を管理したり、多数のオブジェクトを手作業でつなぎ合わせる必要がなくなるなどです。ついでに言うと、これらは複雑なので、自分でやろうとしないでください (ただし、PHP には適切なものはありません)。
この情報は私をちょっと…行き詰まらせているように感じます。どうすればいいですか?私は非常に複雑な依存関係を持つ非常に大規模なコードベースで作業しています (おそらくリファクタリングが強く必要ですが、それは別の問題です)。これまで DI の実装は非常にうまくいっていませんでしたが、私は本当に正しい方向に向かわせようとしています。動的言語と IoC (または少なくとも IoC コンテナー) に関しては何もないようです。
当分の間、依存関係を「手でつなぐ」方が良いでしょうか。原則をより適切に処理した後、後でコンテナーで自動化することを心配しますか? 独自の単純な IOC コンテナーを実装する価値はありますか? それとも、最終的に PHP のコストに見合うだけのメリットが得られないのでしょうか?
c#-4.0 - 動的タイプでは暗黙的な変換が機能しない
動的タイプの1つを暗黙的に変換しようとすると、問題が発生します。次のような定義を持つ2つのアセンブリがあります。
Configuration.dll:
このdllには、(クラスをシングルトンにするために)Configuration
というメンバー変数で呼び出される別のクラスがあります。Instance
この変数はConfigurationValue
、ディクショナリ内のインスタンスを保持し、動的タイプです。これにより、次のことが可能になります。
Server.dll:
SecurityLevelが辞書にあると仮定します。このifステートメントは私のコードでは逐語的に表示され、常に次のエラーで失敗します。
{"Operator'!='は、タイプ'System.Dynamic.DynamicObject'および'string'"}のオペランドには適用できません。
以前は、これら2つのクラスが同じアセンブリにある場合、このコードは正常に機能していました。誰かが私がここで間違っていることを教えてもらえますか?
ありがとう、
マックス
java - Java アノテーションの動的型キャスト
XA と YA の 2 つの Java 注釈タイプがあります。どちらにもいくつかのメソッド()があります。ソース コードを解析し、Annotation オブジェクトを取得します。ここで、アノテーションを実際の型に動的にキャストして、method() を呼び出せるようにしたいと思います。instanceof
声明なしでどうやってそれを行うことができますか?スイッチのようなソースは本当に避けたいです。私はこのようなものが必要です:
?_? myAnnotation タイプが何であるかわからないことを意味します。注釈の継承が許可されていないため、XA および YA 注釈に基本クラスを使用できません。それとも何とかできるのでしょうか?
提案や助けをありがとう。