HyperpolyglotProgramming Languages commonly used features in a side-by-side format Scripting Languages I: Node.js,PHP,Python,Ruby Scripting Languages II:Perl, Lua, GroovyGUI Scripting:JavaScript, Smalltalk, Tcl, AutoHotkey CommandLine Interpreters: POSIX Shell, Cmd.exe, PowerShell Forth and PostScript: Forth, PostScript Prolog, Erlang, Elixir: Prolog, Erlang, Elixir Lisp Dialects: Common L
Boostには、enable_ifというメタ関数がある。このメタ関数の実装は、実はとても短い。とても短いので、分かりやすい。template < bool B, class T = void > struct enable_if_c { typedef T type; } ;tempate < class T > struct enable_if_c< false, T > {} ;template < class Cond, class T = void > struct enable_if : public enable_if_c< Cond::value, T > {} ; きわめてシンプルだ。なお、これの逆をする、disable_ifなるメタ関数もある。まず、語るよりも、例を示そうと思う。そのほうが分かりやすいだろう。 例えば、ある関数の呼び出しを、組み込みの整数型に限りたい
メニューを編集 最近のコメント リンク集 (超お役立ち) 最新の10件 2020-05-07 RecentDeleted2017-04-18 .NET/コントロール/ログを複数行テキストボックスに表示する2015-08-26 時刻操作の比較表2015-06-20MySQL2015-05-20 Unix/find2015-04-03 インクスケープ2015-01-06CeotOS7初期設定2014-11-26 CentOSのメールシステム(sendmail)2014-09-29 Unix/yum2014-09-26 ssh OSのファイルシステムを介さずに、直接CD-ROMやHDDのセクタ単位でデータを読み書きする。 この手のプログラムは危険なのでバーチャルマシン上で実行することをおすすめします。WindowsCreateFileに以下のようなパスを渡すことでダイレクトアクセスできる
CON09-C. ロックフリープログラミングの手法を使うときは ABA 問題を避ける ロックフリープログラミング (Lock-freeprogramming) の手法を用いると、ロックを明示的に使用することなく、共有データ構造を同時に更新することができる。この手法を用いることで、長時間に渡って待機するスレッドがなくなり、プログラムの性能は向上する。 ロックフリープログラミングには下記の利点がある。 割込みハンドラなど、ロックの使用を避ける必要がある場所で使用できる ある程度の負荷がかかっている状況ではロックを使ったアルゴリズムよりも効率的であり、マルチプロセッサマシンにおけるスケーラビリティ向上にも役立つ リアルタイムシステムにおいて優先度逆転を防ぐ ロックフリープログラミングの手法では、CAS (compare and swap) や LL/SC (load linked/store
JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。
インターナショナルチームでプログラミングの仕事をしていると、いろんなところで同僚との差を感じてしまう。いろんな国の人がいて、レベルは人によりそれぞれなんだけど、一般的にいうと、アメリカのプログラマのレベルは平均してとても高い場合が多い。とにかくコードがきれいでシンプルで仕事が早い。 彼らがなぜそれができるのかを観察しているが、一つ気が付いたことについてその対策も含めて書いてみたい。 彼らがプログラマとして優れているところ USにいるとお客様の技術レベルが高いとか、新しいことにチャレンジするとかいろいろ要素はあるのだけど、個人の生産性、コードの美しさをみても、平均値を観察するとアメリカの人が一番に感じる。その他にも、ドキュメントを見てすぐ理解できる能力は、アメリカの人はおろか、ヨーロッパ圏やインドの人と比べても、私は圧倒的に負けていると感じる。 Williams 衝撃の読解力 新しいライブラ
宣伝: 僕が共訳した「Factfulness(ファクトフルネス)10の思い込みを乗り越え、データを基に世界を正しく見る習慣」が日経BP社より2019年1月に発売されました。本気で訳したので、ぜひお手にとってみてください! 「プログラミング」と「プログラミング的思考」の違いを、分かったつもりになれるヒント2016/06/30 学校の先生方へ 前回の記事では、文科省が行った小学生向けプログラミング教育の有識者会議について、記事をいくつか取り上げました。その中のひとつを再度引用します。 13日の会合では委員から「プログラミング言語そのものでなく、コンピューター的な考え方を教えるべきだ」(中略)などの意見が出た。(朝日新聞 / 2016年5月13日) この「コンピューター的な考え方」とはいったい何なのでしょうか? また、なぜそれがプログラミング言語を学ぶことより重要なのでしょうか? 今回はこれらの
今回のゲストは、分散バージョン管理システムGitのメンテナで『入門Git』(注1)の著者、濱野純さんです。Linuxカーネルの開発者、Linus Torvaldsさんから引き継いでGitのメンテナになった経緯から、対談スタートです。 (撮影:武田康宏) Gitに関わった経緯 弾:Gitに関わったきっかけは? 濱:2005年の4月にLinuxカーネルのバージョン管理システムとして使われていたBitKeeperが使えなくなる[2]からということで、Linus君がいろいろありものを探したんだけど、使えるものがなくて、誰かがいいのを作ってくれるまでのつなぎというつもりで、とりあえず自分でもコードを書いた、というアナウンスをしました。それをカーネルメーリングリスト(ML)で見ていたんですが、たまたまボクの本業がプロジェクトとプロジェクトの合間だったんです。なんかおもしろそうなこと始まってるじゃん、
ミス一つで命に関わったり数年の努力が失われたりするような重大なコードを書く場合、どのような点に気を使うべきなのかを、NASAで働くコンピューター技術者のGerard J. Holzmannさんが「The Power of 10」としてまとめています。 The Power of 10: Rules for Developing Safety-Critical Code -Wikipedia https://en.wikipedia.org/wiki/The_Power_of_10:_Rules_for_Developing_Safety-Critical_Code 1.Gotoや再帰など複雑なフローは避ける By atsunori kohsaki 2. 暴走を阻止するため、全てのループに回数上限を設定する By Woplu 3. ヒープ領域のメモリを割り当てない これは、使用済みメモリが
「典型問題」という言葉。競技プログラミングにおいて、皆さん絶対聞いたことがある単語だと思います。少し長くやっている人であれば「典型とか言われているけど全然わからない」みたいなことも、よくあるんじゃないでしょうか? そこで、今回は、「典型問題って何なのか?」みたいな話を、ちょっとしっかり書いていこうかな、と思います。 誰もが「典型問題」と疑わない問題について 例えば、こんな問題が出たら、誰もが「典型問題」という言うでしょう。 N個の地点があり、M本の道路で結ばれている。各道路には、反対側の地点に行くためにかかる時間が与えられている。 A地点からB地点に行くまでの時間を出力しなさい。 これは、最短経路問題そのままですし、ダイクストラ法などのアルゴリズムをそのまま適用して解くことのできる問題です。これが、一番分かりやすい典型問題です。 まとめ:「名前をついているアルゴリズムをそのまま実装」が、一
google-perftoolsというx86,x86_64,ppcなUNIX向けのプロファイラの(cpu-profiler部分)を、armなLinuxに対応させてみました。何かの役に立つかもしれないので、patchおよびpatch作成作業のメモを載せます。arm-v5tアーキテクチャ(ARM9系)向けの移植です。Linux/ARM向けのソフトウェアのパフォーマンスを解析したいなぁと思うことがあったのですが、OProfileはカーネル入れ替えがめんどくさい、gprofはプロファイル専用のバイナリを作成するのがめんどくさい、プロプラな奴は興味ないということで移植しました。移植の方がめんどくさいだろという話もありますが。perftools自体の説明はこちらが便利です。あーそういえばAndroidもARMでしたっけ? パッチ http://binary.nahi.to/google-perfto
[CEDEC 2011]「Ruby」がやがてゲームエンジンに組み込まれるかもしれない。まつもとゆきひろ氏が語る,Rubyの過去と現在,そして未来 ライター:米田 聡 ネットワーク応用通信研究所フェロー,まつもとゆきひろ氏。楽天株式会社楽天技術研究所フェロー,Rubyアソシエーション理事長,Heroku チーフアーキテクトも務める CEDEC 2011の最終日となる2011年9月8日,プログラミング言語「Ruby」の開発者として知られる,まつもとゆきひろ氏の講演が行われた。日本を代表するソフトウェア技術者の一人といっていいほど高い知名度を誇る同氏だが,「Ruby=Webアプリの開発言語」というイメージが強く,ゲームの世界に深い関わりがあるようには思えないかもしれない。 だが,ソーシャルゲームなどのサーバーサイド言語として多くの採用実績があり,また,ゲームエンジンに組み込まれることの多い軽量言
まつもとゆきひろのハッカーズライフ: 第17回 キャズム マーケティングから誕生した概念であるキャズムは、オープンソースソフトウェアとは関係ないと思われるかもしれませんが、そんなことはありません。今回はオープンソースのキャズム論について考えてみたいと思います。(2008/8/1) まつもとゆきひろのハッカーズライフ: 第16回 オープンソースのマーケティングエンジニアやハッカーのような中身が分かっている人々にとって、マーケティングは時として醜悪なものに映るかもしれません。しかし、すべてのマーケティング活動がそうであるとも限りません。今回はマーケティングの側面と、オープンソースにおけるマーケティングについて考えてみましょう。(2008/7/1) まつもとゆきひろのハッカーズライフ: 第15回 後輩からの手紙プログラマーの後輩として、どのようにプログラミングを学ぶべきか――わたしの下に届い
マーティン・ファウラー氏http://martinfowler.com/の以下のページを翻訳したものです。 Mocks Aren't Stubs モックはスタブではない 関連ページ Unit Test More Efficiently with Mock Object Alternatives http://www.devx.com/Java/Article/22599 日本語:モック、スタブ、擬似オブジェクトを使った効率的なユニットテスト http://d.hatena.ne.jp/devbankh/201001 "モックオブジェクト"という言葉は、テストのために本物のオブジェクトをまねる特殊なオブジェクトを表す言葉として定着した。しかしモックという言葉は元々スタブをキャッチーにしたものでなく、[スタブを使ったのとは別の] ユニットテスト方法を用いるためのものなのだ。この記事では、モック
Information About News Tool Suite Supported Platforms The Developers Source Code Current Releases ReleaseArchive Variants / Patches Code Repository Valkyrie /GUIs Documentation Table of Contents Quick Start FAQ User Manual Download Manual Research Papers Books Contact Mailing Lists andIRC BugReports FeatureRequests Contact Summary Commercial Support How to Help Contributing Project Suggestion
懲りずに企画やるみたいです。 あ、どうも、Nafmoです。 CombNaf2決まっちゃいました。告知と中身概要など必要なこと書きます。 待たせたな!!!(待ってない) CombNafSlack なんかできてました。 義務ではないんですが、軽い相談とか流すことあるのでよければどうぞ~()Join CombNaf onSlack!(招待リンク) 懲りずに企画やるみたいです。 CombNafSlack 概要と中身。 日時/場所/タイムテーブル 参加に際して。 LT等について。 中身。 時間。 注意事項 概要と中身。 前回と変わる部分が若干あります。 まず、対象が中高生向けとか言ってましたが、なくなります。 プログラムに興味のある人なら誰でも来てください。お願いします。 あとは、LT等をしてくださる方の話を聞くだけです。 流れは前回同様、LTを聞く、終わり。ですので初めての方でも大丈夫かと
こちらのサイトを見て、テンプレート引数の型が宣言された名前空間もADLの範囲にはいるんだー、へー、と思った。 ADLはAgument Dependent Lookupの略で、実引数依存の名前検索と訳されている。要は、ある名前空間に所属している関数・演算子のオーバーロードを使うとき、 引数の値の型が宣言された名前空間も関数・演算子のオーバーロード捜すときの範囲に含まれるから、わざわざ(名前空間)::(関数名)とか、 (名前空間)::operator(何か)とか書かなくていいね、やったね便利!って感じ。 で、リンク先様のソースとまったく一緒でわざわざ書く必要もあるのか疑問ですが、サンプルソースを出すと… #include <iostream> using std::cout; using std::endl; namespace a { struct hoge{};template<clas
Androidネットワークプログラミング用ライブラリ「Volley」を解説します。 モバイルアプリを開発するにあたってネットワーク通信の知識は欠かせないものとなっている一方、ネットワークプログラミングの世界にはキャッシュや高速化、データ取得やキャンセル処理などプログラミングテクニックが多数存在してます。これらの課題を効率的に解決する方法がVolleyライブラリです。 Volley公式ページ https://android.googlesource.com/platform/frameworks/volley/ Volleyの機能紹介とともにキャッシングやキャンセル処理などネットワークプログラミングに欠かせない処理をVolleyの実装をつかって順番に解説していきます。 非常に長い記事ですので始めに理解を深めるための内部処理を紹介します。APIなど詳細は記事の途中で随時解説します。 ネットワー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く