タグ

プログラミングに関するhirocuekiのブックマーク (47)

  • 「UNIXという考え方」を読んだ - その手の平は尻もつかめるさ

    「UNIXという考え方」をAmazonのwish listに入れていたらid:kenjiskywalkerさんが贈ってくださったので読みました.お陰でUNIXという考え方を学べました.ありがとうございます! 書では一貫して「プログラムを小さく作る」という事と「1つのプログラムには単一のことだけを上手くやらせる」という事について言及されています. プログラムを小さく作るということによって,そのプログラムはコンピュータのリソースに対して優しくなり,なおかつ巨大なプログラムと比較して人間が理解するのが簡単になるので保守がしやすくなり,かつ他の部品と組み合わせやすくなるという論旨です. プログラムを小さく作ると,必然的にそのプログラムは多くの責務を負えなくなる為,自然とプログラムは単一の機能のみを持つようになります.従ってこれら2つの考え方は対になっていると言えるでしょう. 書で言われている「

    「UNIXという考え方」を読んだ - その手の平は尻もつかめるさ
  • Perlの食えない事情 - 演算子編 - アリ

    Perlえない事情 より おっと、そうです、Perlには演算子が多すぎるのでした。せっかくの機会なので、Perlの演算子を紹介します。 ビーナス演算子: 0+, +0 数値として評価してくれます。意外とよく見かけますね。 なぜこの演算子を使う必要があるのかというと、Perlは文字列と数値を明確に区別できないからです。scalarを文字列として解釈するならば文字列として、 print 0+ '10'; #=> 10 print 0+ '123b'; #=> 123 print '1.2e3' +0; #=> 1200 print [] +0; #=> 4303367864 ちなみに、文字列として評価するときにはこのようにするとかっこいいと言われています。 $obj.q(); 一見メソッド呼び出しのように見えますが $obj . ''; と等価です。 ベビーカー演算子: @{[ ]} 文字

    Perlの食えない事情 - 演算子編 - アリ
  • 2005-06-30 - トーフサロン

    mixi日記を見ていて「ああそうそう」と共感してたもんで、ちょっと考えてみた。 あまりパターンパターンと言うのは好きじゃないんだけど、まあいいや。 中には必ずしもアンチパターンな状況に結びつくとは限らないものも、個人的な見解のものもあります。 おまけに自分でもちょくちょくやってしまっているものもあります。 ※追記 (2006/4/17): Objective-Cにおけるクラス命名パターンというのも書いてみました。こちらも合わせてどうぞ。 すべてはオブジェクト 概要 クラス名に "Object" をつける。 傾向 言われなくてもオブジェクトなんだからつける意味がない。 対策 ルートクラスやシステム特有の概念を表すクラス以外に "Object" をつけない。 器用貧乏 概要 クラス名に "Manager", "Controller" など管理や制御に関連する一般的な単語をつける。 傾向 どんな

  • プログラマーが泣けるジブリのセリフ20撰。 - このブログは証明できない。

    「飛ばねぇプログラマーはただのプログラマーだ」(紅の豚) 「夢だけど、バグじゃなかった!」(となりのトトロ) 「見ろ!人員がゴミのようだ!」(天空の城ラピュタ) 「前は何も考えられなくなって、飛べたの」(魔女の宅急便) 「40秒でコミットしな!」(天空の城ラピュタ) 「ようやく守らなければならないものができたんだ。納期だ」(ハウルの動く城) 「ポニョ、ソースコード!好きー!」(崖の上のポニョ) 「ヤな部長! ヤな部長!! ヤな部長!!!」(耳をすませば) 「黙れ小僧!お前にサンが救えるか?」「わからない。だが、オラクルと共に生きることはできる!」(もののけ姫) 「逝ってしまわれた…」(風の谷のナウシカ) 「違う部署で働かせてください!」(千と千尋の神隠し) 「変数名を大切にしないやつなんて大っ嫌いだ!」(ゲド戦記) 「あの子を解き放て!あの子はプログラマーだけど人間だぞ」(もののけ姫) 「

    hirocueki
    hirocueki 2012/07/25
    「ほら、コンパイルできない…」がジワジワくる
  • 開発者が知っておくべき、6つのUIアーキテクチャ・パターン - @IT

    .NET開発者中心 厳選ブログ記事 開発者が知っておくべき、6つのUIアーキテクチャ・パターン ―― 「matarillo.com」より ―― 猪股 健太郎 2011/12/15 「.NET開発者中心 厳選ブログ記事」シリーズでは、世界中にある膨大なブログ・コンテンツの中から、特にInsider.NET/.NET開発者中心の読者に有用だと考えられるブログ記事を編集部が発掘・厳選し、そのブログ記事を執筆したブロガーの許可の下、その全文を転載・翻訳しています。この活動により、.NET開発者のブログ文化の価値と質を高め、より一層の盛り上げに貢献することを目指しています。 Martin Fowler氏の『GUI Architectures』を訳して公開しようと思ったのだが、FAQページに「PofEAAの続編などは商業出版する予定なので翻訳はしないでほしい」と書いてある。なので翻訳の公開はやめて、「

  • NSView と UIView

    こんにちは、iOS/Mac アプリ開発担当の宮です。 最近は、Sleipnir Mobile for iPhone と Sleipnir for Mac を開発しています。 Sleipnir for Mac の開発では、UIKit と AppKit の違いに苦戦しています。 出てくるクラス名も接頭辞が違うだけのものが多いので、ほとんど変わらないと思っていたのですが、ふたを開けてみると全くの別物でした。 今回は、その中でベースのビューとなるクラス NSView と UIView の違いについて紹介します。 これから Mac アプリを開発する方は参考にしてみてください。 ■ NSView には見た目に関するプロパティが全然ない NSView のクラスリファレンスを見るとビックリするぐらい UIView にあるプロパティがありません。最初、backgroundColor がないのには驚きました

    NSView と UIView
  • 通勤中でも寝る前でも!iPhoneプログラミングを勉強出来る簡単な方法! » SHINGOLOG

    Appleから提供されているiOSのプログラミングガイド。日語に翻訳されたiOSのドキュメントがあります。iOSデバイス向けのアプリを開発するにあたっては、必読の内容となっています。 これらは全てPDFで提供されています。 ですのでiPhonePDFを開き、iBooksで保存することが出来ます。 このように、持ち運んで空き時間に勉強できるんです。 PDFのリンクは下記にまとめていますので、iPhoneでご覧ください! iOSのドキュメント一覧(2011.8.20現時点) Audio & Video AV Foundationプログラミングガイド iOSカメラプログラミングトピックス Audio Session プログラミングガイド Core Audio の概要 iPodライブラリアクセス プログラミングガイド Tools & Languages Objective-C

  • 私がプログラミングで最も楽しいと思える作業 = リファクタリング - 達人プログラマーを目指して

    リファクタリング―プログラムの体質改善テクニック (Object Technology Series) 作者: マーチンファウラー,Martin Fowler,児玉公信,平澤章,友野晶夫,梅沢真史出版社/メーカー: ピアソンエデュケーション発売日: 2000/05メディア: 単行購入: 94人 クリック: 3,091回この商品を含むブログ (312件) を見るファウラーのあまりにも有名なで既にいろいろなところでも言及されていますが、ブログの趣旨からしてもいつかは紹介させていただきたいと思っていました。特にJavaプログラマーとしては必読書であり、言語の基的な文法を理解したレベルから、達人プログラマーへと成長する過程で欠かせないリファクタリングの知識を学ぶことができます。かなり古いであり、扱っているJavaのバージョンも古いのですが、「メソッドの抽出」「クラスの抽出」「メソッド名の

    私がプログラミングで最も楽しいと思える作業 = リファクタリング - 達人プログラマーを目指して
  • こだわりのある職人プログラマーほど、無駄なコードを少なくしたいものという事実を理解してほしい - 達人プログラマーを目指して

    ちょっと興味深いエントリが目に留まりました。「プログラミングへのこだわり」を方向づける: 設計者の発言基的に、この方自身もプログラマーや開発者をされているようですし、他のエントリを読んでも「プログラマーの地位向上をすべき」ということで、私にとっても非常に共感することをおっしゃっているのです。それでも、ちょっとこのエントリの内容については疑問に思うところがあったので、勝手ながら私の意見を書かせていただきたいと思います。 業務システムの生産性や保守性を高めるための基は「コードを1行でも減らす」である。なぜなら、コーディングとこれにともなうテスティングこそが、開発作業の中でもっとも人手のかかる作業だからだ。個別案件においては、良いコードだろうが悪いコードだろうが少なければ少ないほどよい。 これは、まさにおっしゃる通りですね。もちろん、可読性ということもあるため、厳密には最少のコードが最良とい

    こだわりのある職人プログラマーほど、無駄なコードを少なくしたいものという事実を理解してほしい - 達人プログラマーを目指して
  • プログラミングは「名前」が9割。 - このブログは証明できない。

    プログラミングというのは、名前をつける行為なんだと思う。 プログラミングで一番大切なこと。 もしも、プログラマーじゃない人に、「プログラミングで一番大切なことは?」と聞かれたら、迷わず「名前」だと答える。もちろん、人それぞれだし、自分はスキルの高いプログラマーじゃないよ、と前置きして。 名前が9割と言ったときの、9割という部分は人によってだいぶ差があるんだと思う。もっと小さいかもしれない。けれど、名前が重要だという点に関しては、反対するプログラマーはいないんじゃないだろうか。 時代や環境で変わる名前。 いま僕がイメージしてる名前というのは、変数名だったり関数名だったりクラス名だったり、とにかくいろいろ。さらに、JavaScriptとか高階関数をバリバリ使うような場合など、名前をつけないという選択肢もある。 なんとなくJavaScriptと書いたんだけど、名前はプログラミング言語や開発環境や

    プログラミングは「名前」が9割。 - このブログは証明できない。
  • Code Recipe - 連載! とことん VC++

    連載! とことん VC++ プログラミング言語の奥深さを楽しく理解するための達人による連載記事です。 執筆者: エディフィストラーニング株式会社 矢嶋 聡 この一連のシリーズの記事では、今後、Visual C++ プログラミングで利用できる様々なテクノロジを有効活用するためにも、普段何気なく使用しているこれら機能の基を振り返り足元固めするほか、 Windows 7 の新機能に関わる API など、比較的新しい機能についてもいくつか取り上げていきます。 1993 年に Visual C++ 1.0 が登場して以来、Visual C++ がバージョン アップする過程で、Visual C++ におけるプログラミング環境には、様々なテクノロジやライブラリが導入されてきました。また、1 つ 1 つのライブラリ (たとえば、MFC や ATL など) にしても、その量は膨大です。そのような状況の中で

    Code Recipe - 連載! とことん VC++
  • 第4回 オブジェクト指向の本質 | gihyo.jp

    エンジニアとして良い仕事をするために必要なこと ソフトウェア業界で日米を往復しながら仕事をしていると、世界中のさまざまなエンジニアに会う。私のように「プログラミングを心底楽しんでいる」人から、「⁠新3K」(⁠きつい・厳しい・帰れない)を身をもって体験している人までさまざまだが、共通して言えることは、エンジニアとしての基礎がしっかりできている人とできていない人では、その生産効率に大きな開きがあり、それが結果的には、会社での労働環境や待遇に、そして結果として自分自身にとっての「仕事の充実度」に、大きな影響を与えているということである。 いつも締め切りに追われている、毎回バグで苦しんでいる、徹夜の連続で体力に限界がきているなど、「⁠仕事がきつい」理由はいろいろとあると思うが、会社や上司の悪口を言う前に、自分自身がプロフェッショナルなエンジニアとしてこの業界で勝負をするうえで必要な最低限の基礎がで

    第4回 オブジェクト指向の本質 | gihyo.jp
  • google appengine に関してひと言

    ここ数日、Twitter上で appengine に関する発言をたくさん目にする。それを見る限り、「注目をされてはいるが、手を出しかねている人が多い」というのが現状だろう。そこで、私からもひと言。 App Engine は純粋なソフトウェア・エンジニアにとっての天国 私自身、色々な開発環境を試して来たが、私のようにプログラミングが大好きで、新しい言語や環境を学ぶのが楽しくて仕方が無いエンジニアにとっては、「App Engineは天国」というのが正直な感想。SQLRailsのように一見開発効率を良くしてはくれるが、直感的に実行効率とかが把握できない「補助輪付きプログラミング」と違い、App Engine上でのプログラミングは、ちょっと手を抜くとすぐに実行効率の悪さとして跳ね返ってくる「一輪車プログラミング」。 新しい言語を学ぶのが苦ならApp Engineは避けた方が良い 現時点で、Pyt

  • Silverlight/WPFで使える逆引きTips集 ――オートコンプリート機能編

    はじめに この連載ではSilverlightとWPFで使える、逆引きTipsを紹介していきます。今回は、Silverlightで使えるオートコンプリート機能(AutoCompleteBoxコントロール)について取り上げます。 対象読者 Visual Basic、Visual C#、および、Silverlight/WPFのプロジェクト作成方法、XAMLについて基礎的な知識がある方を対象としています。 必要な環境 下記を使ってプログラミングできる環境(筆者はこの環境で検証し執筆しています)。 Visual Studio 2010 Microsoft Silverlight 4 Tools for Visual Studio 2010 Microsoft Silverlight 4 Tools for Visual Studio 2010は、Microsoftダウンロードセンターより入手できます

    Silverlight/WPFで使える逆引きTips集 ――オートコンプリート機能編
  • わんくま同盟 横浜勉強会#03でしゃべってきました - Faith and Brave - C++で遊ぼう

    「Boostのあるプログラミング生活」というタイトルでしゃべってきました。 資料は以下になります。 Boostのあるプログラミング生活View more presentations from faithandbrave.

    わんくま同盟 横浜勉強会#03でしゃべってきました - Faith and Brave - C++で遊ぼう
  • C++の話(本当にあった怖い話)

    The document discusses C++ and its history and features. It describes C++ as an extension of C with object-oriented features like classes. It provides information on the creator of C++, Bjarne Stroustrup, and the evolution of C++ since its introduction as a way to add object-oriented programming to C. It also includes sample C++ code demonstrating the use of arrays and includes from the Boost libr

    C++の話(本当にあった怖い話)
  • 第2回 「締め切りは絶対に守るもの」と考えると世界が変わる | gihyo.jp

    「締め切りを守ること」の大切さ 今までたくさんの日米のエンジニア仕事をしてきた。その中には私よりも明らかに「賢いエンジニア」もいたし、ものすごい生産性でプログラムを作ってくれる「馬力(ばりき)のあるエンジニア」もいた。しかし、そんな中でも、私がものを作るうえで最も大切だと考えている「あること」をキチンとこなせる人は100人に1人もいなかった。その「あること」とは、「⁠常に締め切りを守れるように仕事をすること」である。 チームで仕事をする場合、どうしてもお互いが担当するタスク(=作業)の間に依存関係が生じる。そんなときに、どれか一つのタスクの完了の遅れが、ほかのタスクの完了に波及し、それがタスク間の競合を引き起こして全体のスケジュールがさらに遅れる、という事態はソフトウェア開発の現場ではよく見られる。そんな状況をできるだけ回避するには、プロジェクトに関わる人全員が、自分に割り当てられたタス

    第2回 「締め切りは絶対に守るもの」と考えると世界が変わる | gihyo.jp
  • Life is beautiful: 「時間に余裕があるときにこそ全力疾走で仕事し,締め切りが近づいたら流す」という働き方

    かれこれ30年以上もこの業界でプログラムを毎日のように書いて来た私。当然、自分なりの働き方のノウハウみたいなものも会得して来たつもりだ。以前ここに「私のとっておきのプログラミングスタイル」というエントリーを書いたので、まだ読んでいないプログラマーの方にはぜひとも読んでいただきたい。 ちなみに、そんな中でも後輩とか部下に教えるのが一番難しいのが、「スタートダッシュでできるだけはやくめどをつける」という仕事スタイル。どのエンジニアも、ちゃんと説明すればこの働き方の効用は理解してもらえるのだが、実際の現場でちゃんと実行できる人は100人に1人もいない。 「人はみな怠惰だから、締め切りに迫られなければがんばれないんだ」と言ってしまえばそれまでだが、「まがりなりにもプロとして仕事をする限りは、ペース配分ぐらいはちゃんと考えて仕事をすべき」というのが私の主張。トップクラスのマラソンランナーでペース配分

    hirocueki
    hirocueki 2010/07/20
    考えるとしんどい、が、やってみるとラク。
  • C++のクラスをマスターしよう(前編)(1/5) - @IT

    書籍転載 文法からはじめるプログラミング言語Microsoft Visual C++入門 C++のクラスをマスターしよう(前編) ―― 第10章 クラス~オブジェクト指向プログラミング(前編) ―― WINGSプロジェクト 矢吹 太朗(監修 山田 祥寛) 2010/05/19 コーナーは、日経BPソフトプレス発行の書籍『文法からはじめるプログラミング言語Microsoft Visual C++入門』の中から、特にInsider.NET読者に有用だと考えられる章や個所をInsider.NET編集部が選び、同社の許可を得て転載したものです。基的に元の文章をそのまま転載していますが、レイアウト上の理由などで文章の記述を変更している部分(例:「上の図」など)や、図の位置などをサイトのデザインに合わせている部分が若干ありますので、ご了承ください。『文法からはじめるプログラミング言語Micros

  • オブジェクト指向プログラムのためのパターン言語の使用

    以下の文章は、Kent Beck、Ward Cunninghamによる「Using Pattern Languages for Object-Oriented Programs」の日語訳である。 Ward Cunningham氏の許可を得て、ここに掲載する。 Kent Beck, Apple Computer, Inc. Ward Cunningham, Tektronix, Inc. Technical Report No. CR-87-43 September 17, 1987 Submitted to the OOPSLA-87 workshop on the Specification and Design for Object-Oriented Programming. 概要 オブジェクト指向プログラミングへのパターン言語の適合について概説する。ウィンドウ・ベースの