プログラミング

プロおよび熱狂的プログラマーのためのQ&A

23
ブランチとトランクのどちらで開発を続けますか?[閉まっている]
現在のところ、この質問は、Q&A形式には適していません。事実、参考文献、専門知識によって回答が裏付けられることを期待していますが、この質問は、討論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問が改善され、場合によっては再開できると思われる場合は、ヘルプセンターにアクセスしてください。 8年前に閉鎖。 定期的にリリースされるソフトウェア製品を開発しているとします。ブランチとマージに関するベストプラクティスは何ですか?定期的なリリースブランチを公開して(または顧客が誰であっても)スライスし、トランクでの開発を継続するか、トランクを安定版と見なし、定期的にリリースとしてタグ付けし、ブランチで実験的な作業を行います。トランクは「ゴールド」または「サンドボックス」と見なされていると思いますか。

11
「self.x = x; self.y = y; __init__のself.z = z”パターン?
次のようなパターンが表示されます def __init__(self, x, y, z): ... self.x = x self.y = y self.z = z ... かなり頻繁に、多くの場合、より多くのパラメーターを使用します。このような退屈な繰り返しを避ける良い方法はありますか?クラスはnamedtuple代わりに継承する必要がありますか?

2
シンボルの配列の文字表記はありますか?
文字列の配列に対するこのリテラル式が好きです。 %w( i can easily create arrays of words ) シンボルの配列を取得するためのリテラルがあるかどうか疑問に思っています。私はできることを知っています %w( it is less elegant to create arrays of symbols ).map( &:to_sym ) しかし、リテラルを使用するだけでとても素晴らしいでしょう。

8
マルチサイズの.icoファイルを作成/取得する方法は?[閉まっている]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 3年前休業。 この質問を改善する 複数のサイズのアイコン画像が含まれる.icoファイルが欲しいだけです。クロスプラットフォームのデスクトップアプリケーションで使用したいのです(たとえば、Windowsでは、16x16サイズがアプリのトップバーに使用されますが、Alt-タブ)。その.icoファイルを取得したら、ウィジェットツールキット内でそれを使用してこの効果を得る方法を知っていますが、それを取得する方法はわかりません。 このようなファイルを作成するには、どのプロセスを使用すればよいですか?
170 icons 


11
指定された名前付き接続が構成に見つからないか、EntityClientプロバイダーでの使用を意図していないか、無効です
1つのエンティティフレームワークオブジェクトがあり、プロジェクトにconnectionstring 追加するapp.configと、connectionstringセクションに追加されますが、新規に作成entitycontextしてこれを使用したい場合connectionstring、このエラーが表示されます

8
バージョン管理にコミットする必要があるVisual C ++ファイルの種類はどれですか?
バージョン管理にコミットする必要があるVisual Studio \ Visual C ++ファイルタイプはどれですか。 私のプロジェクトでは、次のファイルタイプがあります。 aps cpp exe filters h ico idb ipch lastbuildstate lib log manifest obj pch pdb rc rc2 res sdf sln suo tlog txt user vcxproj それぞれについて短い推論をいただければ幸いです。それらのいずれかが物議を醸している場合は、それを注意してください。完全を期すために、些細なファイルタイプも意図的に含めています。 編集 一方では、将来的にプラットフォームに依存しないことを望みます。一方、近い将来、同様の設定でチームメンバーと協力したいと考えています。セットアップ間のフォルダーの互換性は確かにオプションであるため、ワークフローを容易にする場合は、パスを保持する構成ファイルを含めることができます。繰り返しますが、私はきっと何が何であるかの説明に感謝します。


5
ASP.NET MVC:UrlHelperを使用するユニットテストコントローラー
私のコントローラーアクションの1つであるAjaxリクエストで呼び出されるアクションは、リダイレクトを実行できるようにクライアント側にURLを返します。私は使用Url.RouteUrl(..)していController.Urlますが、ユニットテスト中にパラメーターが事前入力されていないため、これは失敗します。 私は、スタブにしようと他の人の間で、多くのことを試してみましたUrlHelper手動で作成し、(失敗した)UrlHelperとRequestContextスタブ持っているHttpContextBase(上の失敗したRouteCollection.GetUrlWithApplicationPathコール)。 私はGoogleを検索しましたが、事実上何も見つかりませんでした。Url.RouteUrl私のコントローラーアクションで信じられないほど愚かなことをしていますか?もっと簡単な方法はありますか? さらに悪いことに、ユニットテストで返されたURLをテストできるようにしたいのですが、実際には、正しいルートにリダイレクトされていることだけを知りたいのですが、ルート、解決されるURLを制御したいと思います(例:stubbedを使用してRouteCollection)-しかし、最初にテストに合格させていただきます。

7
技術的には、なぜErlangのプロセスはOSスレッドよりも効率的ですか?
アーランの特徴 以下からのErlangプログラミング(2009): Erlangの並行性は高速でスケーラブルです。そのプロセスは軽量であり、Erlang仮想マシンは、作成されたすべてのプロセスに対してOSスレッドを作成しません。これらは、基盤となるオペレーティングシステムに関係なく、VMで作成、スケジュール、および処理されます。その結果、プロセスの作成時間はマイクロ秒のオーダーであり、同時に存在するプロセスの数とは無関係です。これをJavaおよびC#と比較してください。すべてのプロセスについて、基盤となるOSスレッドが作成されます。Erlangが両方の言語よりもはるかに優れているため、いくつかの非常に競争力のある比較が得られます。 同時実行アーラン(PDFファイル)に指向プログラミング (スライド)(2003年): Erlangプロセスの作成にかかる時間は1µsから2,500プロセスまで一定であることがわかります。その後、最大30,000プロセスで約3µsに増加します。JavaとC#のパフォーマンスは、図の上部に示されています。少数のプロセスでは、プロセスの作成に約300µsかかります。2,000を超えるプロセスを作成することは不可能です。 最大30,000プロセスの場合、2つのErlangプロセス間でメッセージを送信する時間は約0.8µsであることがわかります。C#の場合、メッセージごとに約50µs、最大プロセス数(約1800プロセス)までかかります。Javaはさらに悪く、最大100のプロセスでメッセージあたり約50µsかかった後、約1000のJavaプロセスがあるとメッセージあたり10msに急速に増加しました。 私の考え Erlangプロセスが新しいプロセスの生成においてはるかに効率的であり、プロセスごとのメモリフットプリントがはるかに小さい理由を技術的に完全には理解していません。OSとErlang VMの両方は、スケジューリング、コンテキストスイッチを実行し、レジスタの値を追跡する必要があります。 単に、OSスレッドがErlangのプロセスと同じ方法で実装されていないのはなぜですか?彼らはもっと何かをサポートする必要がありますか?そして、なぜ彼らはより大きなメモリフットプリントを必要とするのですか?そしてなぜ彼らは産卵とコミュニケーションが遅いのですか? 技術的に、スポーンと通信に関して、ErlangのプロセスがOSスレッドよりも効率的であるのはなぜですか?また、OSのスレッドを同じ効率的な方法で実装および管理できないのはなぜですか。また、OSスレッドのメモリフットプリントが大きく、生成と通信が遅いのはなぜですか? もっと読む SMPに焦点を当てたErlang VMの内部(2008) JavaとErlangでの並行性(pdf)(2004) JavaのスレッドとErlangのプロセスのパフォーマンス測定(1998)

10
静的クラスとインスタンス化されたクラスを使用する場合
PHPは私の最初のプログラミング言語です。静的クラスとインスタンス化されたオブジェクトのどちらを使用するか、頭を悩ませることはできません。 オブジェクトを複製して複製できることを理解しています。しかし、phpを使用している間は常に、オブジェクトまたは関数は常に単一の戻り値(配列、文字列、整数)の値またはvoidとして返されていました。 私はビデオゲームのキャラクタークラスのような本の概念を理解しています。carオブジェクトを複製して新しいものをredにします。これはすべて理にかなっていますが、phpおよびwebアプリでのアプリケーションではありません。 簡単な例。ブログ。ブログのどのオブジェクトが静的またはインスタンス化されたオブジェクトとして実装されるのが最適ですか?DBクラス?グローバルスコープでdbオブジェクトをインスタンス化しないのはなぜですか?代わりにすべてのオブジェクトを静的にしないのはなぜですか?パフォーマンスはどうですか? それはすべてスタイルだけですか?これを行う適切な方法はありますか?
170 php  oop  class 

8
Pythonのmath.ceil()およびmath.floor()操作が整数ではなく浮動小数点を返すのはなぜですか?
誰かがこれを説明できますか(ドキュメントから直接-私の強調): math.ceil(x)xの上限をfloatとして返します。これは、x 以上の最小の整数値です。 math.floor(x)xの下限をfloatとして返します。これは、x以下の最大の整数値です。 なぜ浮動小数点数が整数を計算することになっているのに、浮動小数点数.ceilを.floor返すのでしょうか? 編集: まあ、これはなぜ浮動小数点数を返す必要があるのか​​について非常に良い議論があり、@ jcolladoが実際には Python 3でintを返すことを指摘したとき、私はちょうどそのアイデアに慣れていました...
170 python  math 

4
通知システムの構築[終了]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 2年前休業。 ロックされています。この質問とトピックへの回答はロックされています。質問はトピックから外れていますが、歴史的に重要です。現在、新しい回答や相互作用を受け入れていません。 私はFacebookスタイルの通知システム(ソーシャルゲームタイプ)の構築を始めており、そのようなシステムを設計するための最良の方法を調査しています。通知をユーザーにプッシュする方法やそのようなものには(今のところは)興味はありません。サーバー上でシステムを構築する方法(通知の保存方法、保存場所、フェッチ方法など)を調査しています。 だから...私たちが持っているいくつかの要件: ピーク時には、約1,000人の同時ログインユーザー(およびさらに多くのゲストがいますが、通知はないためここでは重要ではありません)で、多くのイベントが生成されます 通知にはさまざまなタイプがあります(ユーザーAがあなたを友達として追加し、ユーザーBがあなたのプロフィールにコメントし、ユーザーCがあなたの画像を気に入った、ユーザーDがゲームXであなたを打ち負かした、など) ほとんどのイベントは1人のユーザーに対して1つの通知を生成します(ユーザーXは画像を気に入っています)。ただし、1つのイベントが多くの通知を生成する場合があります(たとえば、ユーザーYの誕生日です)。 通知はグループ化する必要があります。たとえば、4人の異なるユーザーが何らかの画像を好む場合、その画像の所有者は、4人のユーザーが4つの個別の通知ではなく(FBのように)画像を気に入っていることを示す1つの通知を受け取る必要があります わかりましたので、私が考えていたのは、イベントが発生したときにイベントを格納するキューのようなものを作成することです。次に、そのキューを確認し、それらのイベントに基づいて通知を生成するバックグラウンドジョブ(gearman?)があります。このジョブは、ユーザーごとに通知をデータベースに保存します(したがって、イベントが10人のユーザーに影響する場合は、10個の個別の通知があります)。次に、ユーザーが通知のリストを含むページを開くと、私は彼のためにそれらすべての通知を読み取り(これを100件の最新の通知に制限することを考えています)、それらをグループ化して、最後に表示します。 私がこのアプローチで心配していること: 地獄のように複雑:) データベースはここで最高のストレージです(私たちはMySQLを使用しています)、または他のものを使用する必要があります(redisも適しているようです) 通知として何を保存すればよいですか?ユーザーID、イベントを開始したユーザーID、イベントのタイプ(グループ化して適切なテキストを表示できるようにするため)ですが、通知の実際のデータ(たとえば、URLと画像のタイトル)を保存する方法がわかりません好きだった)。通知を生成するときにその情報を「ベイク」するか、影響を受けるレコードのID(画像、プロファイルなど)を保存し、通知を表示するときにその情報をDBからプルする必要があります。 通知ページを表示するときに100の通知をオンザフライで処理する必要がある場合でも、ここではパフォーマンスは問題ありません。 未読の通知の数をユーザーに表示する必要があるため、すべての要求でパフォーマンスの問題が発生する可能性があります(通知をグループ化するため、それ自体が問題になる可能性があります)。オンザフライではなく、バックグラウンドで通知のグループ化された場所で通知のビューを生成した場合、これは回避できます。 では、私の提案するソリューションと私の懸念についてどう思いますか?ここで関連する他のことについて言及する必要があると思われる場合は、コメントしてください。 ああ、私たちはページにPHPを使用していますが、ここでそれが大きな要因になることはないと思います。

3
複製されたリモートリポジトリと元のリモートリポジトリのgit diff
githubリポジトリのクローンを作成し、ローカルで変更を加えていません。Githubリポジトリは、同じブランチのコミットで前進しました。 ローカルリポジトリと元のgithubリポジトリの差分を見つけるにはどうすればよいですか? 作業コピーと元のgithubリポジトリの違いを見つけるにはどうすればよいですか? ローカルリポジトリと同じプロジェクトの別のgithubリポジトリの違いを見つけるにはどうすればよいですか?

6
キャッチされないJava例外?
私はtry-catch構文に小さな理論上の問題があります。 昨日、Javaに関する実践的な試験を受けましたが、次の例が理解できません。 try { try { System.out.print("A"); throw new Exception("1"); } catch (Exception e) { System.out.print("B"); throw new Exception("2"); } finally { System.out.print("C"); throw new Exception("3"); } } catch (Exception e) { System.out.print(e.getMessage()); } 質問は、「出力はどのように見えるか?」でした。 私はそれがAB2C3であるとかなり確信していましたが、驚きです、それは真実ではありません。 正解はABC3です(テスト済みで、実際にはそうです)。 私の質問は、Exception( "2")はどこに行ったのですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.