プログラミング

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


17
SVN:ファイルを「コミットしない」としてマークする方法はありますか?
TortoiseSVNを使用すると、ファイルをcommit-on-commitチェンジリストに移動できるので、ツリー全体をコミットしても、そのファイルへの変更はコミットされません。 svnコマンドラインツールを使用してそのようなことをする方法はありますか? 編集:を使用するための提案をありがとうsvn:ignore、しかしそれは私が探していたものを完全には行いません。 svn:ignoresvn add&などに影響しsvn importます。無視するファイル名パターンのリストを提供します。 既にソース管理下にあるファイルがありますが、そのファイルに一時的な変更を加えたいので、後でソースツリー全体をコミットするときにコミットしたくありません。私は他にも多くの変更を加えており、ツリーにコミットする前にそのファイルを元に戻すように指示するメッセージをモニターに貼り付けることができますが、svnが自動的にそのファイルをスキップできればよいでしょう。
153 svn  command-line 

5
規則によってどのREST PUT / POST / DELETE呼び出しが返すべきですか?
「RESTイデオロギー」によると、PUT / POST / DELETEリクエストのレスポンス本文には何を含める必要がありますか? 戻りコードはどうですか?でHTTP_OK十分? そのような慣習がある場合、その理由は何ですか? 私は、POST / PUTの違いを説明良い記事を見つけた:POST PUT対 しかし、それはまだ私の質問に答えていません。
153 rest  http  post  http-delete 

8
PreferenceFragmentは意図的に互換性パッケージから除外されましたか?
3.0と3.0以前のデバイスの両方に適用できる設定を書きたいと思っています。PreferenceActivity非推奨のメソッドが含まれていることがわかったため(これらは添付のサンプルコードで使用されています)、PreferenceFragement問題を解決するために互換性パッケージを調べました。 ただし、PreferenceFragment互換性パッケージには含まれていないようです。これが意図的であったかどうか誰かに教えてもらえますか?もしそうなら、私は簡単にデバイスの範囲をターゲティングできますか(例:3.0未満および3.0以上)、またはフープをジャンプする必要がありますか?意図的に除外されていなかった場合、互換性パッケージの新しいリリースを期待できますか?または、安全に使用できる別の回避策はありますか? 乾杯 ジェームズ


11
Ruby:require vs require_relative-Ruby <1.9.2と> = 1.9.2の両方で実行する回避策のベストプラクティス
私がしたい場合はベストプラクティスであるrequireRubyで相対ファイルと私はそれが両方は1.8.xおよび&gt; = 1.9.2で動作するようにしたいですか? いくつかのオプションが表示されます: ただやれば$LOAD_PATH &lt;&lt; '.'、すべてを忘れる 行う $LOAD_PATH &lt;&lt; File.dirname(__FILE__) require './path/to/file' RUBY_VERSION1.9.2未満かどうかを確認し、require_relativeとして定義しrequire、require_relative後で必要な場所すべてで使用する require_relativeすでに存在するかどうかを確認し、存在する場合は、前のケースと同様に続行してください。 次のような奇妙な構造を使用してください-残念ながら、Ruby 1.9では完全に機能していないようです。require File.join(File.dirname(__FILE__), 'path/to/file')$ cat caller.rb require File.join(File.dirname(__FILE__), 'path/to/file') $ cat path/to/file.rb puts 'Some testing' $ ruby caller Some testing $ pwd /tmp $ ruby /tmp/caller Some testing $ ruby tmp/caller tmp/caller.rb:1:in 'require': no such …
153 ruby  ruby-1.9  ruby-1.8 

9
Cでは、ブレースはスタックフレームとして機能しますか?
中括弧の新しいセット内に変数を作成した場合、その変数は閉じ中括弧のスタックからポップされますか、それとも関数の最後までハングしますか?例えば: void foo() { int c[100]; { int d[200]; } //code that takes a while return; } ウィルd中にメモリを占有するcode that takes a whileセクション?
153 c  memory  stack 

5
IXmlSerializableを実装する適切な方法は?
プログラマがを実装することを決定したら、IXmlSerializableそれを実装するためのルールとベストプラクティスは何ですか?私がいることを聞いたことがGetSchema()返す必要がありますnullし、ReadXml戻る前に、次の要素に移動する必要があります。これは本当ですか?またWriteXml、オブジェクトのルート要素を記述する必要がありますか、それともルートがすでに記述されていると想定されていますか?子オブジェクトはどのように扱われ、記述されるべきですか? これが私が今持っているもののサンプルです。良い反応が得られたら更新します。 public class MyCalendar : IXmlSerializable { private string _name; private bool _enabled; private Color _color; private List&lt;MyEvent&gt; _events = new List&lt;MyEvent&gt;(); public XmlSchema GetSchema() { return null; } public void ReadXml(XmlReader reader) { if (reader.MoveToContent() == XmlNodeType.Element &amp;&amp; reader.LocalName == "MyCalendar") { _name = reader["Name"]; _enabled = Boolean.Parse(reader["Enabled"]); …

5
マップタイリングアルゴリズム
地図 私は、perlinノイズハイトマップを使用してJavascriptでタイルベースのRPGを作成し、ノイズの高さに基づいてタイルタイプを割り当てています。 マップはこのように見えます(ミニマップビューで)。 画像の各ピクセルからカラー値を抽出し、タイル辞書のタイルに対応する(0〜255)の間の位置に応じて整数(0〜5)に変換するかなり単純なアルゴリズムがあります。次に、この200x200の配列がクライアントに渡されます。 次に、エンジンは配列の値からタイルを決定し、それらをキャンバスに描画します。つまり、山、海など、リアルな外観の特徴を持つ興味深い世界ができあがります。 次に、私がしたかったのは、隣人が同じタイプでない場合にタイルを隣人にシームレスに混ぜ合わせるようなある種のブレンドアルゴリズムを適用することでした。上記のサンプルマップは、プレーヤーがミニマップに表示するものです。画面上に、白い長方形でマークされたセクションのレンダリングバージョンが表示されます。タイルは、単色のピクセルとしてではなく、画像とともにレンダリングされます。 これは、ユーザーがマップに表示するものの例ですが、上記のビューポートが示す場所とは異なります! この見方で、私は移行を起こしたいと思っています。 アルゴリズム 異なるタイプのタイルの隣にある場合、ビューポート内のマップをトラバースし、各タイルの上部に別の画像をレンダリングする単純なアルゴリズムを思いつきました。(マップは変更しません!いくつかの追加画像をレンダリングするだけです。)このアルゴリズムのアイデアは、現在のタイルの近傍をプロファイルすることでした: これは、エンジンがレンダリングする必要のあるシナリオの例です。現在のタイルはXでマークされたタイルです。 3x3配列が作成され、その周りの値が読み込まれます。この例では、配列は次のようになります。 [ [1,2,2] [1,2,2] [1,1,2] ]; 私のアイデアは、可能なタイル構成の一連のケースを考え出すことでした。非常に単純なレベルで: if(profile[0][1] != profile[1][1]){ //draw a tile which is half sand and half transparent //Over the current tile -&gt; profile[1][1] ... } これはこの結果を与えます: そこから遷移として働く[0][1]の[1][1]ではなく、から[1][1]の[2][1]、どこのハードエッジが残ります。したがって、その場合はコーナータイルを使用する必要があると考えました。私は2つの3x3スプライトシートを作成し、必要なタイルのすべての可能な組み合わせを保持すると考えました。次に、ゲーム内にあるすべてのタイルについてこれを複製しました(白い領域は透明です)。これは、タイルのタイプごとに16タイルになります(各スプライトシートの中央のタイルは使用されません)。 理想的な結果 したがって、これらの新しいタイルと正しいアルゴリズムを使用すると、サンプルセクションは次のようになります。 私が行ったすべての試みは失敗しましたが、アルゴリズムには常にいくつかの欠陥があり、パターンは奇妙になってしまいます。私はすべてのケースを正しくすることができないようで、全体的にそれを行うには悪い方法のようです。 解決策? したがって、この効果をどのように作成できるか、またはプロファイリングアルゴリズムを作成するための方向性に関する代替ソリューションを誰かが提供できるとしたら、私は非常に感謝します!

10
HashSetとLinkedHashSet
それらの違いは何ですか?そんなこと知ってる LinkedHashSetは、すべての要素にわたって二重にリンクされたリストを維持する、HashSetの順序付きバージョンです。反復順序を気にする場合は、HashSetの代わりにこのクラスを使用してください。HashSetを反復処理する場合、順序は予測できませんが、LinkedHashSetを使用すると、要素が挿入された順序で要素を反復処理できます。 しかし、LinkedHashSetのソースコードには、HashSetの呼び出しコンストラクターしかありません。では、二重リンクリストと挿入順序はどこにあるのでしょうか。

8
「while(1);」を最適化する C ++ 0x
更新されました、以下を参照してください! C ++ 0xを使用すると、コンパイラーが次のスニペットの「Hello」を出力できるようになる #include &lt;iostream&gt; int main() { while(1) ; std::cout &lt;&lt; "Hello" &lt;&lt; std::endl; } スレッドと最適化機能に関係しているようです。しかし、これは多くの人を驚かせる可能性があるようです。 許可するためにこれが必要だった理由について誰かが良い説明をしていますか?参考までに、最新のC ++ 0xドラフトは次のように述べています。6.5/5 forステートメントの場合のfor-init-statementの外側のループ ライブラリI / O関数を呼び出さない。 揮発性オブジェクトにアクセスまたは変更しない、および 同期操作(1.10)またはアトミック操作(29節)を実行しない 実装は終了すると想定できます。[注:これは、終了が証明できない場合でも、空のループの削除などのコンパイラ変換を可能にすることを目的としています。—エンドノート] 編集: この洞察に満ちた記事は、その標準テキストについて述べています 残念ながら、「未定義の動作」という言葉は使用されていません。ただし、標準で「コンパイラはPを想定している可能性があります」と記載されている場合は常に、not-Pプロパティを持つプログラムはセマンティクスが未定義であることを意味します。 それは正しいですか、コンパイラは上記のプログラムの「バイ」を出力することを許可されていますか? ここにはさらに洞察に満ちたスレッドがあります。これはCへの類似の変更に関するもので、上記のリンクされた記事を書いた人によって開始されました。他の有用な事実の中で、それらはC ++ 0xにも適用されると思われる解決策を提示します(更新:これはn3225ではもう機能しません-下記を参照してください!) endless: goto endless; コンパイラはループではなくジャンプなので、それを最適化することはできません。別の男はC ++ 0xとC201Xで提案された変更を要約します ループを書き込むことによって、プログラマがアサートされているいずれかのループは、可視挙動を有するもの(実行I / O、アクセス揮発性オブジェクト、または実行同期または原子操作)をしていること、 またはそれが最終的に終了すること。副作用のない無限ループを作成してその仮定に違反すると、コンパイラーに嘘をついてしまい、プログラムの動作は未定義になります。(運が良ければ、コンパイラーが警告するかもしれません。)この言語は、目に見える動作なしで無限ループを表現する方法を提供していません(提供していませんか?)。 2011年3月31日にn3225で更新:委員会はテキストを1.10 / 24に移動し、 実装は、すべてのスレッドが最終的に次のいずれかを実行すると想定する場合があります。 終了、 …

17
SQL Serverオペレーティングシステムエラー5:「5(アクセスが拒否されました。)」
私はSQLを学び始めており、作業用のデータベースを提供する本を持っています。以下のファイルはディレクトリにありますが、問題はクエリを実行するとこのエラーが発生することです。 メッセージ5120、レベル16、状態101、行1物理ファイル「C:\ Murach \ SQL Server 2008 \ Databases \ AP.mdf」を開けません。オペレーティングシステムエラー5: "5(Access is denied。)"。 CREATE DATABASE AP ON PRIMARY (FILENAME = 'C:\Murach\SQL Server 2008\Databases\AP.mdf') LOG ON (FILENAME = 'C:\Murach\SQL Server 2008\Databases\AP_log.ldf') FOR ATTACH GO 本の中で著者はそれはうまくいくはずだと言っていますが、私の場合はうまくいきません。調べたのですが、何が問題なのかよくわからないので、この質問を投稿しました。
153 sql  sql-server 


4
Docker-Swarm、Kubernetes、Mesos、Core-OSフリート
私はこれらすべてに比較的新しいですが、リストされたテクノロジーの中で明確なイメージを得るのに苦労しています。 ただし、これらはすべてさまざまな問題を解決しようとしますが、共通点もあります。共通点と相違点を教えてください。少数の組み合わせが最適である場合、それは何ですか? 私はそれらのいくつかを質問と一緒にリストしていますが、誰かがそれらすべてを詳細にリストして質問に答えてくれるとすばらしいでしょう。 KubernetesとMesos: このリンク ApacheのMesosとGoogleのKubernetesの違いは何ですか 違いについての洞察は得られますが、KubernetesがMesosの上で実行される理由を理解できません。それは、2つのオープンソースソリューションを組み合わせることと関係がありますか? Kubernetes対Core-OSフリート: Kubernetesを使用する場合、フリートは必要ですか? Docker-Swarmは上記のすべてにどのように適合しますか?

15
Android Studioで不明なエラーが発生し、AppCompat ActionBarを読み込めませんでした
以下は私のxmlファイルです。プレビューには、「不明なエラーでAppCompat ActionBarを読み込めませんでした」と「複数のクラスをインスタンス化できませんでした」という2つのエラーがあります。どのようにしてアプリを実行できますか?しかし、アプリがクラッシュし、Logcatにエラーは表示されません。 これは私のプレビューのスクリーンショットです &lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:openDrawer="start"&gt; &lt;include layout="@layout/app_bar_main" android:layout_width="match_parent" android:layout_height="506dp" /&gt; &lt;LinearLayout android:id="@+id/layout_main" android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:weightSum="1" tools:context=".Activity.MainActivity"&gt; &lt;LinearLayout android:id="@+id/main_layout" android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="0.7" tools:context=".Activity.MainActivity"&gt; &lt;!-- our tablayout to display tabs --&gt; &lt;android.support.design.widget.TabLayout android:id="@+id/tabLayout" android:layout_width="match_parent" …

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