タグ

programmingとProgrammingに関するshiworkのブックマーク (48)

  • 型推論 - Wikipedia

    型推論(かたすいろん、英: type inference)とはプログラミング言語の機能の1つで、静的な型付けを持つ言語において、変数や関数シグネチャの型を明示的に宣言しなくても、変数宣言における初期化のための初期値や、関数呼び出しにおける実引数などといった、周辺情報および文脈などから自動的に(暗黙的に)各々の型を決定する機構のこと。言語によってはtype deductionと呼ばれることもある。 推論に失敗するとその時点でエラーを報告できるため、少なくとも誤った型を用いることによるバグは回避できる。また、アルゴリズムの記述に集中できるのでプログラムの抽象度が上がるというメリットもある。型名が長大な場合に、型推論による省略によってコード全体の見通しをよくすることにもつながるが、一方で統合開発環境による支援(コードエディター上のツールチップなど)が得られない環境では、一見して型が分からないこと

  • 苦しんで覚えるC言語

    [全ページ目次] 苦しんで覚えるC言語(苦C)は、初心者を対象としたC言語入門サイトです。 C言語の基機能を体系立てて解説しており、市販書籍と同等以上の完成度です。 初めての人は 前書き から読み始めて下さい。 キーボードの矢印キーか、右下の進む>で次のページに移動します。 コンパイラ入手:基礎編:応用編:標準ライブラリ 全文検索:ダウンロード版:苦Cアンケート:ミス報告:掲示板で質問 [  更新情報  ] 01月22日 : Visual C++ 2005 Express Edition 10月30日 : Borland C++ BuilderX Personal 10月07日 : 掲示板に寄せられたQ&A項目を作成 03月10日 : ドラッグへの対応 ※ミス報告で報告されたミスの修正は約100回以上行っています。 苦Cについて 苦Cの使用法(特に読まなくても良い

  • JSON

    JSON (JavaScript Object Notation)は、軽量のデータ交換フォーマットです。人間にとって読み書きが容易で、マシンにとっても簡単にパースや生成を行なえる形式です。 JavaScriptプログラミング言語 (ECMA-262標準第3版 1999年12月)の一部をベースに作られています。 JSONは完全に言語から独立したテキスト形式ですが、C、C++、C#、JavaJavaScriptPerlPython、その他多くのCファミリーの言語を使用するプログラマにとっては、馴染み深い規約が使われています。これらの性質が、 JSONを理想的なデータ交換言語にしています。 JSONは2つの構造を基にしています。 名前/値のペアの集まり。様々な言語で、これはオブジェクト、レコード、構造体、ディクショナリ、ハッシュテーブル、キーのあるリスト、連想配列として実現されています。

  • ハル研究所 プログラミングコンテスト2009

    プロコントークを更新しました。前・実行委員長へのインタビューを掲載しています。 (2009/11/19) 日よりエントリーの受付を開始しました。プロコンに参加希望の方は、まずはお早めにエントリーをお願いします。なお、エントリーをいただいた方には、問題発表日の2009年11月26日(木)が近づきましたら、お知らせのメールをお送りします。 (2009/11/19)

  • 参照はポインタと比べるべきではない - みねこあ

    協力会社のデキるプログラマを次々と切り、代わりにあまりものの正社員が投入されてしまった現在の我が開発チームのレベルは低く、殆どプログラミング専門学校のような様相を呈しています。可愛い男の子が「わかりませーん」というのは萌えますが、30台後半のおじさまが「わかりませーん」というのは殺意が沸きます。 自称 「STLは使ったこと無いけど、C++ 自体は解ってます」な方なのですが、「C++出来ます」の自己申告は危険です。たとえば、曰く、参照がわからない、ですとか。・・・・テケスタ。テケスタ。 ただ、参照には教え方にコツがあるのではないかと思いました。 Cのポインタが文法も概念も引っかき回していった後だけに、他の言語では何でもない「参照」がこんがらかりやすいのは事実です。そういう風に思い直して、こんな解説をしてみました。 * * * C++ の参照と対になるのは、ポインタではなく、通常の変数です。C

    参照はポインタと比べるべきではない - みねこあ
  • 今日からできる!Googleコード規約! - peroon's diary

    Google C++スタイルガイド日語訳 を参考にしました。 その中から私が理解したもの、 いいなと思ったものだけを紹介します。 関数の引数の書き方 f(hoge, foo, var)左右の括弧と変数の間にスペースをはさまないこと。 定数にはkを先頭につける const int kDaysInAWeek = 7;何のkだろう?(追記:konstant) クラス名はキャメルケース class HumanBody { ... };ラクダのこぶのように。 メソッド、関数は大文字からはじめる void MyFunction(); 変数名は小文字とアンダーバー float my_variable; 列挙子には大文字とアンダーバー enum color { RED_COLOR, GREEN_COLOR, BLUE_COLOR };この命名法で定数と列挙子も区別している? 定数、メソッド、クラス変数の

    今日からできる!Googleコード規約! - peroon's diary
  • Visual Studio Marketplace

    One place for all extensions for Visual Studio, Azure DevOps Services, Azure DevOps Server and Visual Studio Code. Discover and install extensions and subscriptions to create the dev environment you need.

    Visual Studio Marketplace
  • Windows 7の新機能を利用できるライブラリ「Windows API Code Pack」v1.0が公開

  • Big Sky :: ReverseHttpで誰よりも速く「はてなブックマーク」に反応するツール書いた。

    ReverseHttp面白いですね。 ReverseHttp Tunnel HTTP over HTTP, in a structured, controllable, securable way. Let programs claim part of URL space, and serve HTTP, all by using an ordinary HTTP client library. http://www.reversehttp.net/ ただ勘違いされやすいのが「何がReverseなの」という部分。通常ブラウザからリクエストが送信され、それに対する応答がサーバから返されます。ReverseHttpはサーバで何かアクションが起きた場合に、ブラウザ側がその通知を受信する...なんて事が出来るプロトコルです。仕組みはcometというlong pollに似た仕組みで、サイトのdemo

    Big Sky :: ReverseHttpで誰よりも速く「はてなブックマーク」に反応するツール書いた。
  • ディレクトリの中にある大量の小さなファイルを高速に読み込む方法 - 射撃しつつ前転 改

    ディレクトリの中にある大量のファイルを高速に読み込む方法が知りたかったので、実験してみた。想定しているシチュエーションは、一つ一つのファイルは数KB程度だが数が多い、という場合である。適当な順番でアクセスすると、ランダムアクセスになってしまいとても時間がかかる。個々のファイルを読み込む順番はどうでも良く、すべてのファイルを処理することさえできればいいので、原理的にはシーケンシャルアクセスで処理できてしかるべきである。 まず、ファイルシステムについて。HDDやSSDなどのハードウェアにアクセスする際には、ファイル名などという概念はもちろん存在しない。ファイル名と実際のディスク上の対応を管理するのがファイルシステムの主な役割である。ファイルシステムは、ファイル名からそのファイルに対応するブロック番号(メモリアドレスみたいなもんだな)を調べて、そのブロック番号を指定してHDDやSSDにアクセスす

    ディレクトリの中にある大量の小さなファイルを高速に読み込む方法 - 射撃しつつ前転 改
  • プロ・アマ・プログラミング言語を問わずに今までの4倍のスピードで学習する方法 - Craftworks Tech Blog - Branch

    私が実践して、とても効果が上がった学習方法を紹介します。 どんなプログラミング言語でも関係なく通用するやり方だと思います。 この学習方法に切り替えてからの 1 年の学習量は、それ以前の 4 年分に匹敵すると感じています。 以下にその方法を紹介します。 ソーシャルブックマークのホッテントリのフィードを購読する 特に気になったサイトの人気エントリにざっと目を通す 特に気になったブログを個別に購読する 流行のライブラリ、フレームワーク、アプリケーションのソースコードを読む カンファレンスなどのスライドに目を通す 特に気になった人のブックマークをお気に入り登録する 得た情報を元に実際にコードを書いてみる 評判の書籍を読む ソーシャルブックマークのホッテントリのフィードを購読する ホッテントリとは人気の記事のことを言います。沢山ブックマークされ、それだけ注目度が高いということです。 特定分野の人気記

    プロ・アマ・プログラミング言語を問わずに今までの4倍のスピードで学習する方法 - Craftworks Tech Blog - Branch
  • カッコをつけたコードはカッコわるいのか論争:プログラマで、生きている:エンジニアライフ

    プログラマならC/C++を知らなくても、 if (buffer == null) {return;} と if (buffer == null) return; は同じ動作をするということはお分かりかと思います。 正式な言い方があるのか分かりませんが、「省略が許可されている記述」というやつです。 わたしは「省略が許可されてても省略しない派」(←どういう派閥?)なので、常にカッコでくるむのですが、わたしのコードを読んだ人が「これってこういう書き方していいんだよ」とご丁寧にもカッコをはずしてしまったことがありました。 「それくらい知ってるんですけど」 「なら、なんでわざわざカッコつけてんの?」 「どっちでもいいんならカッコをつけた方が安全じゃないですか」 「どういうこと?」 当時、わたしは結合テストで出てきたバグの原因調査をよくやらされていた(他の連中はテストで出たバグをつぶすのに忙しかったか

    カッコをつけたコードはカッコわるいのか論争:プログラマで、生きている:エンジニアライフ
  • 株式会社エス・スリー・フォー » COMからのイベントを捕まえる方法

    COMからのイベントを捕まえる方法 "見てくれ"を持たないCOMからのイベントの受理 Visual C++が提供してくれるATL(Active Template Library)を使うと、COM(Component Object Model)を簡単に作ることができます。 COMに発生した状態の変化をイベントとしてCOM利用者(Client)に通知したいことがあるでしょう。 この機能が提供されていないと、COMの状態変化を知りたいClientはCOMに対してメソッドもしくはプロパティを定期的にコール/取得しなければなりません。 Clientに対してイベントを発行する機能を持ったCOMを作るには、dispinterface(ディスパッチ・インタフェース)と呼ばれる接続ポイントを用意します。接続ポイントには、COMが発行できるイベントを定義しておきます。このイベントは、実際にはイベント毎にユニー

  • Winsock Programmer's FAQ

    このページは、Winsock Programmer's FAQ の日語訳です。この FAQ の原文はWarren Young 氏によるもので、Winsock Programmer's FAQのサイトで公開されているものです。このページで公開してい る日語訳は、同氏の許可を得て、私(Keisuke MORI)が翻訳、公開して います。この FAQ のオリジナルの歴史や著者については、序文 の章を参照して下さい。 現時点では、まだ全部の章の翻訳は完了していません。未訳の章は 原文のままで残っていますのでご了承ください(実はこの翻訳は、かな り以前から着手していたのですが、どうも遅々として進まないので:-) まずはできたところから公開することにしました)。 なお、この日語訳FAQは、常に最新であるという保証はできません ので、最新の情報については適宜オリジナルのFAQを参照してくださる よ

  • iPhoneSDK他 開発メモのまとめと言うか目次 - 電子趣味の部屋

    最新版はこちらです。 http://d.hatena.ne.jp/uosoft/20091231/1262186194 そろそろネタがたまってきたので、まとめます。 アプリの作り方 iPhoneでのOpenGLの簡単な遊び方 HTMLJavaScriptiPhoneアプリを簡単に作る方法 Android SDK インストールからHello World実行まで iPhone SDKでOpenGLに挑戦 立方体を表示してみよう センサー等ハードウェア関連 iPhoneSDKでスリープさせない方法 iPhoneの加速度センサの使い方 画面操作関連 iPhoneSDKのUIViewアニメーション iPhoneSDKでインジケータ(待ち等に表示する回転画像)を簡単に表示する方法 iPhoneで画像のサイズ変更方法(UIImage) iPhone SDK 画面方向の変え方 サウンド関連 iPhon

    iPhoneSDK他 開発メモのまとめと言うか目次 - 電子趣味の部屋
  • スマホの通話料金が高額にならないための節約方法 – スマートフォンユーザーのための情報共有サイト

    月々の携帯料金を如何に高額にならない様にする方法としては、最初に有料のサイトの課金や従課金サイトに登録は行わない事です。特に気を付けたいのが初月無料とされているサイトなどで一旦登録すると初月は完全に無料にはなるのですが翌月になると料金が発生する事になります。 そこで初月無料のサイトを多数登録するとうっかり解約するのを忘れてしまったり中には解約の仕方が分からないなどの問題が発生したりする事もあります。 次に主にスマホなどを使われている方には誰もが該当する事になりますがスマホのゲームアプリになります。これらは基無料で遊べるアプリですが一旦ハマりだしてしまうと中には課金などもして強くなりたいと思う方も出て来ると思います。 そこで気をつけたいのが各キャリアの決済で手軽に課金を行えるのですがここで一歩間違えるととんでもない金額になったりするのでオススメは出来ません。 次に各キャリア決済におけるネッ

    shiwork
    shiwork 2009/05/29
    WindowsMobileのIMEの制御をC#でするためのTIPS
  • バグを生まないコーディング法、10個の規則でソフト開発を効率化(1/3) ― EE Times Japan

    ソフトウエア開発にはバグがつきものだ。ただし、バグの発生を最小限にい止める方法がある。コーディング規則を適用してコードを記述することだ。バグが発生してからそれを発見し、修正するという通常の開発手順に比べて、簡単に、しかもコストをかけずにバグをつぶせる。 ここでは、ZigBeeを利用したセキュリティ・システムから医療機器にわたる筆者の組み込みソフトウエア開発の経験から得た、バグをなるべく発生させないコーディング規則を紹介する。 なぜコーディング規則が必要か コーディング規則は、ソフトウエア開発者に対して、コードを記述する上での規則をまとめたものである。英語のライティング教として著名な「The Elements of Style」(William Strunk Jr.、E. B. White著)の、プログラミング言語版のようなものだ。 組み込みソフトウエアにも、きれいで、正しく、簡

  • そろそろUnicodeについて一言いっておくか - 未来のいつか/hyoshiokの日記

    文字コードの標準化について日記を書いたのだが、内容がいまいちだったのでボツにして気を取り直してUnicodeについて一言いっておくことにする。先日、といっても昨年(2008年)の10月なんだけど、その中でちょと文字コードの標準化について話をしている。*1 もう1つ自分の経験としてあるのが、漢字の文字コードがあるんですけど、番号で言うとJIS X 0208とか0212とか規格の番号で皆言うわけなんですけど、実は1988年にその日語の文字コードの改正の委員会にいたんですね。 その当時、私は 30歳ぐらいなんですけど、「富士通」とか「日立」とか「NEC」の部長さんぐらいの偉い人たちが来てて、私なんか外資系で且つ30前後のぺーぺーだから、全然格下なんですよ。 そういうところで議論の主軸を担ってるのは、「富士通」「日立」「NEC」「日IBM」「東芝」「沖」、外資でいえば「ユニシス」とかの錚々たる

    そろそろUnicodeについて一言いっておくか - 未来のいつか/hyoshiokの日記
  • 「物理法則を自力で発見」した人工知能 | WIRED VISION

    前の記事 「衛星成功に総書記は涙」:北朝鮮の核再開宣言とミサイル輸出 「物理法則を自力で発見」した人工知能 2009年4月15日 Brandon Keim Image credit: Science、サイトトップの画像はフーコーの振り子。Wikimedia Commonsより 物理学者が何百年もかけて出した答えに、コンピューター・プログラムがたった1日でたどり着いた。揺れる振り子の動きから、運動の法則を導き出したのだ。 コーネル大学の研究チームが開発したこのプログラムは、物理学や幾何学の知識を一切使わずに、自然法則を導き出すことに成功した。 この研究は、膨大な量のデータを扱う科学界にブレークスルーをもたらすものとして期待が寄せられている。 科学は今や、ペタバイト級[1ペタバイトは100万ギガバイト]のデータを扱う時代を迎えている。あまりに膨大で複雑なため、人間の頭脳では解析できないデータセ

  • Why MIT switched from Scheme to Python - 月の塵

    MIT の計算機科学の入門コース 6.001 はなぜ SICP + Scheme から Python に移行したかという話。 原文: Why MIT switched from Scheme to Python | Wisdom and WonderConstanza 氏が Sussman 氏に MIT がなぜプログラミング入門コース 6.001 で Scheme を使うのをやめたのかを尋ねた。これは宝石だった。 Sussman 氏はこう答えた。その理由は 1980 年代の工学が 90 年代中盤から 2000 までのそれとは異なったからである。 1980 年代においては、よいプログラマは考えることに多くの時間を使い、それから動くであろうと自身が考える簡潔なプログラムを書いた。コードはカナモノに近いところで動き、上から下まですべて理解することができた。 Scheme で書かれていても、だ。抵