問題タブ [legacy]

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 に答える
1037 参照

python - Python 2.3ロギングメッセージのフォーマットを設定するにはどうすればよいですか?

Python 2.4以降では、より基本的なフォーマットを持つようにロギングモジュールを構成するのは簡単です。

logging.basicConfig(level = opts.LOGLEVEL、format = "%(message)s")

しかし、Python 2.3をサポートする必要のあるアプリケーションの場合、ロギングAPIがPy2.4でオーバーホールされたため、より難しいように思われます。特に、basicConfigは引数を取りません。Py2.3ドキュメントの唯一の例のバリエーションを試してみると、次のようになります。

しかし、Py2.3でこのルートロガーを呼び出す、例えば

重複した出力を提供します:

Py2.3のルートロガーの既存のハンドラーの形式を変更する方法が見つかりません(上記の「except」ブロック)。したがって、重複した出力を生成する「addHandler」呼び出しがあります。この重複なしにルートロガーのフォーマットを設定する方法はありますか?ありがとう!

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

ruby-on-rails - ActiveRecordをレガシーのパーティション化/シャーディングされたデータベース/テーブルで動作させる方法は?

最初に時間を割いていただきありがとうございます...グーグル、github、そしてここで検索した後、大きな単語(パーティション/シャード/フェドレート)についてもっと混乱しました、私は私が遭遇した特定の問題を説明し、周りに尋ねなければならないと思います。

私の会社のデータベースは大量のユーザーと注文を処理するため、データベースとテーブルをさまざまな方法で分割します。その一部を以下に説明します。

基本的な概念は、データベースとテーブルがフィールド(必ずしも主キーではない)に従って分離され、データベースとテーブルが多すぎるため、データベースとモデルごとに1つのdatabase.yml構成を作成または魔法のように生成することです。各テーブルについては不可能であるか、少なくとも最善の解決策ではありません。

drnicの魔法のソリューション、datafabric、さらにはアクティブレコードのソースコードを調べました。ERBを使用してdatabase.ymlを生成し、フィルター周辺でデータベース接続を行うことができます。また、named_scopeを使用してテーブル名を動的に決定することもできます。検索しますが、更新/作成操作は「self.class.quoted_table_name」にバインドされているため、問題を簡単に解決できませんでした。また、テーブルごとに1つのモデルを生成することもできます。これは、その量が最大で30であるためです。

しかし、これはドライではありません!

私が必要としているのは、次のDSLのようなクリーンなソリューションです。

誰かが私を啓発できますか?どんな助けでも大歓迎です~~~~

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

architecture - 誰が「古い」システムを学ぶべきですか?

私は、基本的に「古い」システムを「新しい」システムに置き換えるいくつかのプロジェクトに携わってきました。常に、「新しい」システムを構築するチームの誰も、「古い」システムについて実際の知識を持っていないというパターンがありました。私がこれに疑問を呈するたびに、これは意図的なものだと言われました...「古い」システムを知らないことで、チームは異なる考え方をすることができ、そこでのやり方に制限されなくなりました。そのため、「古い」システムについて何かを知っているのは通常、チーム内に 1 人か 2 人だけであり、「古い」システムがどのように機能したかについて質問があるたびに、彼らに相談します。

しかし、「新しい」システムが配信された後、「新しいシステムでは (古いシステムでは簡単だった) X をどのように行うのですか?」という形式のユーザーからの質問が常に発生するように思われます。開発者にとって、X のことを初めて耳にすることがよくあります。そのため、X とは何かを調査する必要があり、多くの場合、開発者がユーザーに返す答えは、「できません」または「できますが、本当に厄介です」。

これは私には正しくないように思えます...「新しい」システムのすべての開発者に「古い」システムをよく知ってもらうことで多くのことが得られるように思われます。彼らはまともな設計と開発のスキルを持っています。

どのアプローチが最適かについて何か考えはありますか?

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

vb6 - VB6 および Crystal Reports 7、「レコード スタイル」エクスポート オプションをプログラムで設定する

CR7 レポートの内容を「レコード スタイル」形式でダンプするように一部のレガシー ソフトウェアを変更しています。これは、基本的に各可視データ フィールドを固定長のテキスト ファイルにダンプします。これは、1 つの例外を除いて、すべて問題ありません。一部の数値で小数点以下 2 桁を表示する必要がある場合、すべての数値が最も近い整数に丸められます。レポート自体では、数値フィールドは正しくフォーマットされています (小数点以下 2 桁を表示し、2 桁に四捨五入するように設定されています)。

VB6 プログラムから (Crystal Reports OCX コントロールを使用して) レポートをエクスポートすると、これらの数値の小数部分が切り捨てられます。

Crystal Reports 7 IDE からレポートをエクスポートすると、Crystal Reports OCX コントロールを使用してレポートをエクスポートしたときに表示されないプロンプトが表示されます。

数値および日付形式ダイアログ: レポートと同じ数値形式、レポートと同じ日付形式 http://www.nezumisoftware.com/ubaset-pics/cr_dialog.jpg

これらのオプションの両方が選択されている場合、エクスポートされたファイルは完璧です。

これらのオプションをプログラムで設定する方法や、レポート ファイルでデフォルトとして設定する方法が見つからないようです。これを達成する方法はありますか?

追加するために編集: 切り捨てられるフィールドは、Access 2000 データベースでは single 型ですが、CR7 の single 型の既定の形式は常に小数点以下 2 桁を表示するため、これはまだ私を驚かせます。

0 投票する
2 に答える
413 参照

perl - 従来のPerlコードをUTF-8に移行する場合、どのような問題が予想されますか?

これまで、私が作業しているプロジェクトでは、ソースコードでのみASCIIを使用していました。utf8I18N領域での今後のいくつかの変更と、テストでいくつかのUnicode文字列が必要なため、プラグマを使用しながら、弾丸を噛んでソースコードをUTF-8に移動することを検討しています( use utf8;

現在、コードはASCIIであるため、コード自体に問題はないと思います。ただし、環境(perl5.8.8、Apache2、mod_perl、FreeTDSドライバーを備えたMSSQL Server)を考慮すると、発生する可能性のある副作用についてはよくわかりません。

過去にそのような移行を行ったことがある場合:どのような問題が予想されますか?どうすればそれらを管理できますか?

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

c# - C# マルチスレッド環境でレガシー COM コンポーネントを使用する

私はレガシー COM コンポーネントを持っています。私の使命は、COM をラップし、同時ノンブロッキング呼び出しを可能にする Web サービスを作成することです。

まず、COM オブジェクト自体がステートレスであるため、[ThreadStatic] 属性を使用して、各スレッドが独自の COM オブジェクトのインスタンスを持ち、lock { } ステートメントの使用を防ぎ、実際の同時処理を有効にすることにしましたが、すべての呼び出しがまだ同期的に処理されているようです。

for { }ループと同期してCOMコンポーネントからメソッドを実行するテストコードを作成し、まったく同じことを行う2番目のスレッドをCOMオブジェクトの別のインスタンスに追加しましたが、変更は見られず、X呼び出しは常にYを消費しますタイムスパン、スレッド数に関係なく。静的ロックか何かがあるようです...

それにもかかわらず、別々のプロセスがそれぞれの呼び出しを実際に同時に処理できます。別のスレッドが同じように動作するのを妨げるものは何ですか?

COM コンポーネントへの実際の同時呼び出しを有効にするにはどうすればよいですか?

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

architecture - 従来の互換性に関するベスト プラクティス

私の経験からすると、後方/前方互換性への取り組みは、ソフトウェア エンジニアリング業界の金色の檻です。これは特に、ドキュメント ファイル形式とプログラミング言語/API の場合に当てはまります。顧客やパートナーは、既存のデータやコードが破損することを嫌います。ただし、互換性を壊すことがなければ、長期的には革新する能力が大幅に制限される可能性があります。

古い機能を段階的に廃止する以外に、この問題の解決策はありますか? Windows 7 の XP Mode のような仮想化は、1 つの刺激的な可能性のようです。他にもありますか?

また、可能な限り将来を見据えた新しいシステムを設計したいと考えている私たちにとって、業界で犯した過去の過ちからどのような教訓を学べるでしょうか?

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

mercurial - Mercurial で顧客間で複数の開発ラインを維持するにはどうすればよいですか?

私は、複数の顧客のために同じ e コマース Web アプリを維持することに取り組んでいます。

当初は、顧客のカスタマイズの残りすべてが過去に派生した標準的な一連のページがありました。

最近、私が働いている場所では、バージョン管理に Mercurial を使用することにしました。彼らはまた、私たちの電子商取引の標準的なページ セットを作り直し、それらを開発のメインライン/ベースラインにすることを決定しました。

ただし、バージョン管理 (hg) にまだ入力されていない、ベースラインのページ セットの前に行われた既存のカスタマイズが各顧客に存在すると言われています。

概要

各顧客の既存のカスタマイズを維持しながら、開発のベースラインからの変更を各顧客の個別の開発ラインにマージする最良の方法は何ですか?

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

nhibernate - このレガシーテーブルを NHibernate (Fluent) でマップするにはどうすればよいですか?

NHibernate の新機能。この従来のテーブルをマップする方法に頭を悩ませています。

Person クラスにマップした「CmnPerson」テーブルもあります。Person クラスに Addresses のリストを含める必要があります。objectType 列には「CmnPerson」が含まれ、objectId フィールドは Person.Id ("CmnPerson.personId") フィールドと一致します。

また、後で、objectType 列に「CmnContact」が含まれる Addresses のリストも含む Contact クラスを作成する必要があります。

サブカラムを区別して Any マッピングまたは class-hierarchy-per-table を使用する必要があるかどうかを判断するのに非常に苦労していますか? または、それらのいずれかが私のニーズを満たしている場合。

この Address クラスをマップする方法を誰かに教えてもらえますか? 流暢な構成が望ましいでしょう。

追加情報:

次のクラスとマッピングはほとんど機能しますが、Addresses リストは、objectType フィールドの値に関係なく、一致する objectId を持つ CmnAddress テーブルからすべての行を返します。Person.Addresses の HasMany マッピングで ApplyFilter を使用できると思いますが、それは「正しい」方法ではないようです。

追加情報: DiscriminateSubClassesOnColumn(...) の呼び出し後に AlwaysSelectWithValue() をチェーンすることで、この最後の問題を解決できました。

0 投票する
2 に答える
235 参照

legacy - 1 つの Web サイト、1 つのドメイン、しかし 2 つの異なるテクノロジですか?

アドバイスが必要です。

昔からあるサイトを引き継ぎました。このウェブサイトは、Google から多くのオーガニック トラフィックを獲得しています。ビジネスおよび Web サイトの所有者は、サイトをアップグレードして、コンテンツをより管理しやすくしています。現在、wordpress CMS がサイトの半分を占めています。サイトの残りの部分は、物理的な html ページで構成されています。要約は次のとおりです。

1) ガイド セクションは、 http://mysite.com/guideにある php wordpress 駆動のブログで構成されています。ガイド セクションの個々のページには、http://mysite.com/guide/4930-hello-worldhttp://mysite.com/guide/489-welcome-to-my-siteなどの URL があります。ビジネス オーナーは、これらのページの作成に 2 か月を費やしたため、別のシステムのために破棄することに消極的です。

2) 千の静的/物理的な製品ページで構成される電子商取引セクション。製品ページは動的に駆動されず、URL 書き換えルールは含まれません。ページには、 http://mysite.com/products/239123-sofa.htmlやhttp://mysite.com/products/23-office-desks.htmlなどの URL があります

所有者は、PHP 以外の ERP または CRM ソリューションを使用して、Web サイトの e コマース セクションを強化し、ビジネスの経理、在庫、マーケティング、およびワークフロー オペレーションの一部を合理化したいと考えています。

これまで ERP や CRM を扱ったことはありません。私が持っているいくつかの質問は次のとおりです。

1) 1 つのドメインの下に 1 つの Web サイトを 2 つの異なるテクノロジーで駆動するのは良い考えですか? Wordpress は http://mysite.com/guide/4930-hello-world などのページを管理し、Microsoft アプリケーションは http://mysite.com/products/239123-sofa.html などのページを管理します。前述のように、ビジネス オーナーはワードプレスを廃棄することに消極的です。

2) url-rewrite ルールを実装すると、どのような課題が発生しますか? ウェブサイトのページ ランクと SEO 機能が維持されるようにする必要があります。

3) どのようなサーバー構成の問題が発生しますか?

この規模のレガシー システムを自分で交換したことはありません。アドバイスやフィードバックをいただければ幸いです。また、他に調べるべきことがあれば教えてください。

ありがとう