タグ

programmingに関するamagasa99のブックマーク (17)

  • Pythonでゲーム作りますが何か? - 人工知能に関する断創録

    このサイトでは、プログラミング言語PythonPythonゲーム用ライブラリPygameを用いてゲーム制作の過程やテクニックをまとめています。主に自分の知識の整理に使うつもりですが、これからPythonを学んでゲームを作ってみようという方の参考になれば幸いです。 Pygameは知らなくても大丈夫ですが、Pythonの基は知っていることを前提にしています。 Pythonで書いたプログラムはWindowsでもMacでもLinuxでも動きます。 ソースコードの著作権を主張することはないので自由に使ってください。 記事下方にあるナビゲーションはほとんど役に立ちません。このページを起点としてリンク先へ、読んだら戻るといった使い方が楽だと思います。 NEW! 全ソースコードをGitHubのリポジトリとして公開しました。右下のDownload ZIPからまとめてダウンロードできます(2014/9

  • 「プログラムの書き方は知っているが、何をプログラムしていいか分からない」 | POSTD

    新人の開発者が繰り返し突き当たるテーマがあります。プログラム言語を1~2種類勉強するのに時間を費やしたり、プログラミングの演習を行ったりすることに関して問題はないと感じていても、学んだことをどう応用していいのか分からずにいるのです。このことは、次のようなフレーズとしてよく耳にします。「プログラムの書き方は知っているが、何をプログラムしていいのか分からない」と。これに対する答えは、一般的に、「プログラミングの課題を行いなさい」、「オープンソースプロジェクトに貢献しなさい」、または、「ゲームを作りなさい」というようなものです。 プログラミングの課題を行うことは、知的ないい訓練にはなります。しかし新しいプログラムの開発方法を学ぶのにはあまり役立ちません。オープンソースプロジェクトに貢献するのは確かにステップアップになります。実際のプロジェクトがどのように構成されているか学び、プログラム言語の技術

    「プログラムの書き方は知っているが、何をプログラムしていいか分からない」 | POSTD
  • 2017 年 GitHub でスターの多かった Python リポジトリ

    2017 年もいよいよ終わり、間もなく 2018 年ですね。 今年 1 年の振り返りのために 2017 年にリリースされた人気の GitHub リポジトリ についてまとめてみました。具体的には「 GitHub に認識されているリポジトリの言語が Python で」「スター数が 2500 以上のもの」をリストアップしてみました。 結果、引っかかったリポジトリの数は合計 32 個です。個人的には、マシンラーニング(機械学習)関連のリポジトリが非常に多いのが印象的でした。 以下私なりにかんたんな説明と description の翻訳を付けています。 1. system-design-primer 大規模システムの設計方法について紹介したドキュメントです。 リポジトリ名

    2017 年 GitHub でスターの多かった Python リポジトリ
  • 江添亮の詳説C++17

    はじめに 書は2017年に規格制定されたプログラミング言語C++の国際規格、ISO/IEC 14882:2017の新機能をほぼすべて解説している。 新しいC++17は不具合を修正し、プログラマーの日々のコーディングを楽にする新機能がいくつも追加された。その結果、C++の特徴であるパフォーマンスや静的型付けは損なうことなく、近年の動的な型の弱い言語に匹敵するほどの柔軟な記述を可能にしている。 人によっては、新機能を学ぶのは労多くして益少なしと考えるかもしれぬが、C++の新機能は現実の問題を解決するための便利な道具として追加されるもので、仮に機能を使わないとしても問題はなくならないため、便利な道具なく問題に対処しなければならぬ。また、C++の機能は一般的なプログラマーにとって自然だと感じるように設計されているため、利用は難しくない。もしC++が難しいと感じるのであれば、それはC++が解決すべ

  • すばらしいビット | POSTD

    unsigned int v; //only works if v is 32 bit v--; v |= v >> 1; v |= v >> 2; v |= v >> 4; v |= v >> 8; v |= v >> 16; v++;

    すばらしいビット | POSTD
  • Cコンパイラをスクラッチから開発してみた(日記)

    以前に8ccというCコンパイラをゼロからひとりで開発していたときのログです。40日でセルフコンパイルできるところまで到達しています。日付はすべて2012年です。コードとヒストリはすべてGitHubで見れます。 3月4日 というわけでコンパイラを作っているわけだけど、1000行くらい書いたらそれなりに動き始めてきた。こんなのも動くし: int a = 1; a + 2; // => 3 こういうのも通る。 int a = 61; int *b = &a; *b; // => 61 文字列は文字の配列として扱っていて、配列をポインタに成り下げる振る舞いも実装しているので、こういうのも通る。関数呼び出しもある。 char *c= "ab" + 1; printf("%c", *c); // => b 前回もこのあたりはがんばって実装したからここまで作るのはわりと単純作業かも。二回目だから配列とか

    Cコンパイラをスクラッチから開発してみた(日記)
  • Googleの肩に乗ってShellコーディングしちゃおう - Qiita

    はじめに GoogleさんがShellスタイルガイドを共有していたので、いくつか気になった点をピックアップしました。 自分のShellスタイルはかなり我流なので、自省の意味も込めてコメントも併記します。 Googleスタイルガイドの元ネタ (Python/C++/Java/Rとかだけでなくdocumentガイドなど色々あります) https://github.com/google/styleguide Shellスタイルガイド (今回はこちら) http://google.github.io/styleguide/shell.xml 当は人間がチェックするのではなくcpplintのためXML定義なのかもですが、気にしない気にしない。 (見たところcpplintc++だけだと思ってます) commitフックでshell系のlint走らせろっていうのが今風なのかもしれませんが、キニシナイキ

    Googleの肩に乗ってShellコーディングしちゃおう - Qiita
  • Big Sky :: Matz の「言語のしくみ」を読んだ。

    Twitter で「言語のしくみ」読みたいなって呟いたら Matz 人から「献しましょうか」とメンション頂いて即答でお願いしました。ありがとうございます。 ひさびさ紙のを通勤電車の中で立ちながら読んだので手がだるくなりました。なんだか懐かしい感じがしました。 さてこのですが、一言で言うとこんなです。 Ruby のパパこと Matz が雑誌の連載に追われながら試行錯誤して作ったプログラミング言語「Streem」を解説する 聞こえが悪かったらすみません。言いたいのはこの「試行錯誤」がとても良いエッセンスになっている点なのです。実際にはその連載記事をまとめた物に対して、この当時はこの様に考えていたが後になってみると実は良く無かったといった振り返り「タイムマシンコラム」で構成されています。 この連載が1つのに纏められた事でプログラミング言語設計者の葛藤が非常に良く表されているな、そう

    Big Sky :: Matz の「言語のしくみ」を読んだ。
  • RubyでRubyVMを実装してRubyVMの気持ちになってみる - Qiita

    はじめに この記事は「ほんのちょっとだけRubyが動くVMをRubyで実装してみて、Rubyが実行される仕組みを理解しよう」という趣旨のゆるふわな記事です。 こんなコードを実行できるVMを実装します。 この記事ではRuby 2.3.3を使います。 注意点 記事にでてくる用語は厳密な定義とかは気にせずゆるくふんわりと使ってます VMの実装はRubyを使うので結構ずるい感じです 構文解析、コンパイルはしません クラス定義、メソッド探索、コントロールフレームなどの概念はでてきません なのでRubyを題材にしてますが、Rubyの特徴的な機能にはあまり触れていません 対象読者 Rubyが好き 普段Webプログラミングとかしてる プログラミング言語の処理系としてのVMが気になる まえおき VMとは RubyJavaやErlangなどと同じようにRuby用のVM(仮想マシン)上で実行されます。 C言

    RubyでRubyVMを実装してRubyVMの気持ちになってみる - Qiita
  • 超手軽にランダムウォークを鑑賞するGem作ったヨ! - Qiita

    あいさつ まあ当にたまになんですけども、適当な確率過程の遷移をふと鑑賞したい時って絶対あると思うんですよ、 特に疲れているとかは単純マルコフ過程で癒されたいみたいなは割とネタじゃなくてオススメです. なんか癒されるのは遷移が画する軌道がその時の状態にしか依らないので比較的頭を使わないで済むからですかね. 個人的にはなんかめっちゃ気に入っていて毎日5, 6回は鑑賞しています. 乱択には単純にRubyのArray#sampleを使っているので、ちょっとアレですがとにかく簡単にランダムウォーク鑑賞出来ます. 5秒で完了! ランダムウォークの描画まではたった2コマンドで到達出来る. (Ruby環境があればね)

    超手軽にランダムウォークを鑑賞するGem作ったヨ! - Qiita
  • Clojure 超入門 - Qiita

    Ubuntu での Clojure と Leiningen 超入門 JDK は既に用意出来ているものとしますね.sudo apt-get install openjdk-7-jdk とでもしておけば大丈夫なんじゃないでしょうか? (ダメだったら教えて) まず lein を取ってきてどこかパスの通ったところに設置します.そして実行権限を付与して実行します. # パスとかなんのこっちゃ勢向けコピペ用コマンド # これ実行するだけでとりあえず動かせまっせ export PATH=$HOME/local/bin:$PATH if [ ! -d $HOME/local/bin ]; then mkdir -p $HOME/local/bin; fi # ダウンロード & インストール cd $HOME/local/bin wget https://raw.github.com/technomancy

    Clojure 超入門 - Qiita
  • 優秀なJavaScriptの開発者になるための5か条 | POSTD

    (注記:7/15、いただいた翻訳フィードバックを元に記事を修正いたしました。) 子供の頃、私の興味は互いに関係性のない様々な分野に及んでいました。数学歴史も大好きでした。 ルネッサンスマン 、つまり 博学者 と言う、複数の分野に秀でた人になりたいと思っていました。これはとても難しい課題で、私は突如として、器用貧乏な人になってしまう危機に直面したのです。 私は特定の分野に特化しなくては、と考え始めました。そうすればたとえルネッサンスマンにはなれなくても、少なくとも、器用貧乏にならなくても済むと思ったのです。どうしたらソフトウェア開発をするのに必要な広い知識を保ちながら、1つの分野で専門性を高めることができるのでしょうか。 この記事では、過去5年間、私が良いJavaScript開発者になるために使ったテクニックとリソースの概要をお伝えしようと思います。 最近の多くのWeb開発者は、ある共通の

    優秀なJavaScriptの開発者になるための5か条 | POSTD
  • dfltweb1.onamae.com – このドメインはお名前.comで取得されています。

    このドメインは、お名前.comで取得されています。 お名前.comのトップページへ Copyright © 2020 GMO Internet, Inc. All Rights Reserved.

    dfltweb1.onamae.com – このドメインはお名前.comで取得されています。
  • [lib] モックとスタブの違い

    TEST http://d.hatena.ne.jp/devbankh/201001 モックやスタブを使った効率的なユニットテスト http://d.hatena.ne.jp/devbankh/201002 モックとスタブの違い コミュニケーション http://d.hatena.ne.jp/devbankh/20051124 簡単かつ効果的に話すために "モックオブジェクト"という言葉は、テストのために物のオブジェクトをまねる特殊なオブジェクトを表す言葉として定着した。しかしモックという言葉は元々スタブをキャッチーにしたものでなく、[スタブを使ったのとは別の] ユニットテスト方法を用いるためのものなのだ。この記事では、モックオブジェクトのファンに好まれる相互作用中心のテストと、よく行わている状態中心のテストスタイルとの違いを説明するために、モックとスタブの違いについて掘り下げる。 目次

    [lib] モックとスタブの違い
  • ソースコードを読むための技術

    $Id: readingcode.html,v 1.13 2003/12/06 00:01:08 aamine Exp $ 2006-05-02 gonzui 追加。thanks: 冨山さん 2003-12-03 ltrace と sotrace を追加 2003-12-03 ツールのところに DDD を追加。thanks: 和田さん 2003-05-27 VCG, SXT などについて追加。thanks: 梅沢さん 2003-05-27 これもすっかり忘れていた strace, ktrace, truss, etags などについて追加 2002-08-30 すっかり忘れていた ctags を追加 2002-07-07 匿名希望さんからメールでいただいた情報を追加 (動的コールグラフ) 2002-06-13 日記経由でいただいた意見をもとに文章を追加。thanks: 柳川さん、まつもとさ

  • shogi programming journal

    _ GPW2008 予告 来る11月6-8日にゲームプログラミングワークショップ2008が開催されます。現在プログラムはまだ発表されておりませんが、沢山の面白い発表が予定されていますのでご期待ください。 また、コンピュータ将棋のイベントとして、(先手)激指 対(後手)清水上さん、(先手)加藤さん 対(後手)棚瀬将棋 の対戦も企画されているとのことです。詳細がいずれ発表されると思いますので、こちらもご期待下さい。 Before... _ うぉっちゃ [単純に乱数でやればそのくらいばらつくでしょう。 Floodgateの運用上は問題ありでしょうけど。] _ うぉっちゃ [ところで。 最近マイムーブが回線断->切れ負けをしばしば見せていますが、回線断を検出可能ならばabnormal扱い..] _ マイムーブ西村 [不利になったらわざと回線を切ることもできるので(そんな人はいないでしょうが)、

  • 初心者でもほぼ無料で楽しくRubyを学べるコンテンツ10選 - paiza times

    Photo by HeatSync Labs こんにちは。谷口です。 プログラミングをこれから学ぼうとしている方で、「人気のRubyを勉強してみたい!」という方は多いと思います。 Rubyは『オープンソースの動的なプログラミング言語で、 シンプルさと高い生産性を備えています。 エレガントな文法を持ち、自然に読み書きができます』とされています(オブジェクト指向スクリプト言語 Ruby)が、やはり「プログラミング経験ゼロからいきなり勉強を始めるには敷居が高いな……」と思っている方も多くいらっしゃるのではないでしょうか。また「できれば独学じゃなくてスクールに通いたいけど、コストは押さえたいんだよな……」という方もいらっしゃるかと思います。 そこで今回は、プログラミング未経験~初心者の方が、なるべくコストをかけずに楽しくRubyに触れられて、学習に役立てられるコンテンツを10件ご紹介していきます。

    初心者でもほぼ無料で楽しくRubyを学べるコンテンツ10選 - paiza times
  • 1