タグ

programmingに関するc255のブックマーク (11)

  • Windows 10のウィンドウキャプチャAPI - Qiita

    Windows.Graphics.Capture 自分のプロセスから参照できるウィンドウだけでなく、OS上で表示されている他のプロセスのウィンドウの内容をキャプチャしたい場合、従来であれば太古のGDI関数(もはやまともに動くか怪しい)や、DwmGetDxSharedSurface(隠しAPIなのでお行儀が悪い上にDWM内で同期が取れていないのか取得できるイメージが中途半端)などが利用されてきたようですが、Windows 10 version 1803でキャプチャ専用のAPIがWinRTに用意されました。 Screen capture Starting in Windows 10, version 1803, the Windows.Graphics.Capture namespace provides APIs to acquire frames from a display or app

    Windows 10のウィンドウキャプチャAPI - Qiita
  • cURL as DSL — cURL as DSL 1.0 documentation

    cURL as DSL¶ github repository Target: Curl Command: Generate Code Reset Result code is printed here. Usage¶ Select target envirionment and type curl command in above text box. You get source code that works as same as curl command. Enjoy! Supported Options¶ It doens’t support fully options of cURL. It supports only options for http 1.x in the following list: [supported options:] --basic Use HTTP

  • プログラムの難しさの階層 - きしだのHatena

    プログラムを理解するのは、まあ難しいです。 でも、その難しさには階層があります。 よく、変数は箱だとか箱じゃないとか議論になりますが、何人か初心者に教えた感じでは、変数自体でつまづくことはあまりないので、実際はそんな例えをしなくても「変数は変数だ」で充分だったりします。 デバッガでステップ実行しながら変数の内容を見ればいい。 で、条件分岐くらいは結構つまづくことはなくて、単純な演算と条件分岐だけが必要なプログラムであればまあそれなりに書けるようです。 ぼくも、一番最初に自分の意図で作ったプログラムは input "ワカレミチガアル。ドウスル? 1:ミギ 2:ヒダリ"; a if a = 1 then print "ガケニオチテシニマシタ" else print "ライオンニカマレテシニマシタ" みたいなものでした。こういった条件分岐をたくさん並べてアドベンチャーゲームっぽいものを作った人は

    プログラムの難しさの階層 - きしだのHatena
  • Go の interface 設計 - Block Rockin’ Codes

    history 13/3/31 Tag について追加 intro Go を触ってて interface を用いた設計がまだまだよくわかってなかったので、一旦まとめることにしました。 Go には明示的な継承の機能は無く、 interface も例えば Java のそれとはかなり毛色が違うので、(Class ではなく) Struct の設計に結構癖があると感じます。 Go の interface は言語設計的にもかなり尖っていて、 Go という言語を強く特徴付けていると同時に、 Go 言語自体の開発者たちもこの機能をかなり重要視しています。 例えば、 Go の開発者の一人である Russ Cox 氏によれば Go's interfaces―static, checked at compile time, dynamic when asked for―are, for me, the most

    Go の interface 設計 - Block Rockin’ Codes
  • Unity のシェーダの基礎を勉強してみたのでやる気出してまとめてみた - 凹みTips

    はじめに 近年の GPU の進化に伴い 3D 周りの表現力がとても豊かになりました。そしてこの多彩な表現を可能としているのはシェーダによるところが大きく、シェーダを理解して書くことが出来ると、表現できることの幅がとても広がります。 Unity では素晴らしいことにシェーダを強力にサポートしていて、多様なデフォルトのシェーダに加え、カスタムシェーダを簡単に作るための土台が用意されています。しかしながら、パッとリファレンスや色々なサイトを見ただけでは、何がどうなっていて何をどうすれば良いのかなかなか分からないところがあります。 そこで、これから始める人の参考になればと思い、勉強しながら理解したことをまとめておこうと思います。調べながら書いているので、間違いなども多々あると思いますが、見つけた際はコメントや Twitter などでご指摘いただけると嬉しいです。 シェーダで色々出来る例 Unity

    Unity のシェーダの基礎を勉強してみたのでやる気出してまとめてみた - 凹みTips
  • C99の仕様

    長い歴史を持ちながら、依然として人気の高いC言語。その最新仕様の情報にキャッチアップするための連載スタート。今回は1999年に策定された「C99」を取り上げる。 連載 INDEX 次回 → C言語(以降、単にC)はDennis Ritchieによって1969~1973年の間にベル研にて開発されたプログラミング言語である。長い歴史を持つと共に非常にポピュラーな言語で、プログラマーでCを知らない人はまずいないと言っていいだろう。プログラミング言語のシェアを調査しているTIOBEでも、ここ最近は常に1、2位を占めている。 Cの言語仕様は今から25年近く前である1989年に初めて規格化され、これは一般に「ANSI-C」と呼ばれている。ANSI-Cは長らくCの言語仕様のスタンダードの位置を占め、世の中の大半のプログラマーは、このANSI-Cに慣れ親しんでいることだろう。しかし、実はCの言語仕様はその

    C99の仕様
  • Wandbox

  • VSTホストを作ろう! - hwm's blog

    VSTホストを作ろう! @hotwatermorningです。 この記事は、C++ Advent Calendar 2013の5日目の参加記事です。 はじめに 今回は、VSTiという種類のプラグインを読み込んで音を鳴らす、「VSTホスト」の作り方について紹介します。 VSTホストの画面を作るにあたり、「balor」というC++Windows GUIライブラリを使用しました。balorについてはリンク先をご参照ください。 この記事の内容について、筆者がVST規格について勘違いしている点があるかもしれません。 ご了承ください。 VSTとは VSTとは簡単に言うと音楽製作ソフトのプラグイン周りの規格です。Wikipediaでは、以下のように解説されています。 Steinberg's Virtual Studio Technology(一般的にはVST)とは、ソフトウェア・シンセサイザーやエフェ

    VSTホストを作ろう! - hwm's blog
  • プログラムに証明が付く日 | RANDMAX

    この記事は「Theorem Prover Advent Calendar 2013」6日目の記事です。 http://qiita.com/advent-calendar/2013/theorem_prover 神田「野らぼー」にて、地下の薄暗い店内で… 「そう言えばこないだ隣で起こってたポインタオーバーラン、対応大変そうだったですけどちゃんと家に帰れてたんでしょうかね、新婚なのに…」 「ヌルポとかポインタオーバーランとか、どうして無くならないんだろうね。その時はみんな手を抜いてるつもりなんて毛頭なくて、一生懸命考えて大丈夫だと思ってるはずなんだけどね。レビューもして、それでも起こった後でみんなでソース見てみると、なんで気づかなかったんだよ!ってことになる。」 「人間って、そういうの苦手なんでしょうねきっと。ほら、『何かほかにありませんか』って聞かれても出てこないじゃないですか。静的な解析っ

    プログラムに証明が付く日 | RANDMAX
  • [気合で理解する C 言語ポインタ入門]不完全型

    久しぶりに書き足します. 今度は不完全型について解説します. 不完全型は,型の定義が不完全でありポインタの取得のみが可能なデータ型のことです.実際にこれがどういうものかというと,たとえば構造体のタグ名のみを宣言したもの: struct incomplete; // 不完全型 struct incomplete の宣言 struct incomplete i; // コンパイルエラー struct incomplete* p; // OK などがあたります.ただし,関数はこれに含まれません. これがなぜ不完全なのかというと,コンパイラがこのデータ型のデータを格納するのに必要な領域の大きさを知らない(または知ることができない),つまりその型の情報が不完全であるからです.変数(または構造体のメンバ変数)として宣言するためにはコンパイラがそのデータ型の大きさ(や,そのメンバの配置)を知っていなけれ

    [気合で理解する C 言語ポインタ入門]不完全型
  • Scalaのトレイトは実はトレイトじゃなくただのミクスイン - Smalltalkのtは小文字です

    タイトルは釣りです。 まずおおざっぱに用語の整理をさせていただくと、ここで「トレイト」は、シェルリ(Nathanael Schärli)らが2002年頃に発表したTraitsやそれ用のエンティティ(trait)を指し、「ミクスイン(Mixin, mixin)」は従来からある実装の多重継承方法のひとつ、具体的には継承機構を使ってメソッドを定義したクラス様エンティティ(クラスでも構わない)を継承パスに差し込むことで対象となるクラスにメソッドを追加する機構(特別な機構を要しないときは単なるクラスの運用方法)、そのときに用いるクラスあるいはクラス様エンティティ(例えばRubyならモジュールとか)を指すことにします。 トレイトやその機構について説明すべきことはいろいろありそうですが、詳しくはシェルリらの論文(Traits: Composable Units of Behaviour など)を読んでい

    Scalaのトレイトは実はトレイトじゃなくただのミクスイン - Smalltalkのtは小文字です
  • 1