タグ

programmingに関するhirocuekiのブックマーク (62)

  • 2005-06-30 - トーフサロン

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

  • git - 簡単ガイド

    アッド & コミット 変更されたファイルを選択します。 git add <filename> git add * を実行するとIndexに追加されます。 これは基的な作業の一つです。 変更を実際に適用するには git commit -m "Commit message" を実行します。 変更がHEADに入りましたが、 リモートリポジトリには未だ入っていません。 変更のプッシュ この時点で、変更がローカルリポジトリのHEADに適用されました。この変更をリモートリポジトリに適用するには git push origin master を実行し、masterの代わりに適用のブランチ名を入れます。 もし既存リポジトリをクローンせずに使用した場合 git remote add origin <server> を実行すると、リモートリポジトリを登録する事が可能です。 これで変更を特定なリモートリポジト

  • サンプルコードによるPerl入門

    文字列 数値をASCII(アスキー)コードに対応する文字に変換するには、chr関数を使用します。 #!/usr/bin/perl use strict; use warnings; # ASCII文字コードでは65,66,67はそれぞれ 'A','B','C'に対応する。 my $a_num = 65; my $b_num = 66; my $c_num = 67; print chr( $a_num ), "\n"; print chr( $b_num ), "\n"; print chr( $c_num ), "\n"; __END__ 続きを読む

  • Perlの正規表現をマスターしよう - Perl入門ゼミ

    Perl › 正規表現 Perlの正規表現の解説です。この記事を読めば、日常で利用する正規表現のすべてを短時間でマスターすることができます。正規表現を使えば、文字列の集合を表現することができ、正規表現にマッチする文字列を検索したり、置換したりすることができます。 正規表現を使って文字列の集合を表現できます。たとえば「a」「aa」「aaa」という三つの文字列を正規表現で表現してみましょう。連続する文字の個数を表現する正規表現「{}」を使って次のように書くことができます。 a{1,3} 「a」「aa」「aaa」という文字列の集合をひとつの正規表現「a{1,3}」で表しています。{}は量指定子と呼ばれるもので、連続した文字を表現することができます。 a aa -> a{1,3} aaa 正規表現の例をもう一つみてみましょう。「p1」「q1」「r1」という文字列の集合をひとつの正規表現「[pqr]

    Perlの正規表現をマスターしよう - Perl入門ゼミ
  • COM インスタンスを作成する

    ここの備忘録は、あくまでも走り書き程度のメモ的なものですので気をつけてください。 そのままでもちゃんと動くもの、手を加えないとだめなものなど、未完成レベルのコードです。ので、そのまま引用してしまうなど、プログラムを理解する知識のない方は利用しないでくださいね。 今回は Visual Studio .NET の Visual C++ 7.0 で作成した ComTest という COM コンポーネントを同じく Visual C++ 7.0 のプログラム内で使用するという感じのお話です。VC++ 6.0 とは少しやり方が違ったようなので、まとめて見ました。 ComTest というコンポーネントには、IComTest インターフェイスと、CComTest という CoClass が用意されているものとします。タイプライブラリファイルは _ComTest.tlb です。

  • 第4回 オブジェクト指向の本質 | gihyo.jp

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

    第4回 オブジェクト指向の本質 | gihyo.jp
  • RubyKaigi2010で「本当のアジャイル」を学んだ - 基本へ帰ろう

    Rubykaigi2010参加して当に良かった。運営の皆様、スポンサーの皆様、参加してくださった皆様、Rubyを普段から支えてくださっている皆様。当に有難う御座います。私もRubyに大変お世話になっていますので、少しでも私に出来ることはないかと思い、個人スポンサーとなって参加させて頂きました。そしてこのブログを残します。 当のアジャイル 私がRubyKaigi2010に参加して一番痛感したことは、「今までの私はアジャイルをやっていなかったこと。むしろウォーターフォールに近いことをやっていた」と思い知らされたことです。 ウォーターフォールを御存知ですか?半年や1年の開発見積りを行い、それに従って開発を進めるが、見積りが合わなくなり(大抵は見積が足りない)、しかし見積は変えず、デスマーチと呼ばれる慢性的な長時間残業を行うようになり、自分への投資技術の学習等)を行う時間を犠牲にする開発体

    RubyKaigi2010で「本当のアジャイル」を学んだ - 基本へ帰ろう
  • 第5回 JavaScriptの基礎知識#2:クロージャ編 | gihyo.jp

    こんにちは、太田です。前回はJavaScriptの基礎的な部分を解説しました。今回はJavaScriptのクロージャについて解説します。クロージャはJavaScriptでは使用頻度が高く(意識して使用していなくとも、ほとんどの場合クロージャが使われています⁠)⁠、今後の連載の中でも積極的に使っていきますのでここで確実に理解してしまいましょう。 クロージャとは クロージャはその定義を説明されてもなかなか理解できないため、難しいものだと思われがちです。しかし、ソースコードを中心に見方を少し工夫すればすんなりと理解できると思います。 さて、クロージャの前に確認しておくべき基事項があります。それは、JavaScriptでは関数を入れ子にできる、という点です。ある関数の中に別の関数を定義することができます。基中の基ですが、これがクロージャにおいてもっとも重要です。 では、それを踏まえて次のコー

    第5回 JavaScriptの基礎知識#2:クロージャ編 | gihyo.jp
  • JavaScript初心者におくる24のグレイトなtips - 三等兵

    私が作ったわけではなく海外の記事です。自分も学習してみました。 phpスポーツ啓発日誌や、コカトリスさんや、アイスクレアームパラダイスさんのような、品質の良い訳は私にはできませんので見出しは意訳もしくは誤訳、文章は無視して訳してません。かつ、私がいろいろコードや文章つけたしてます。内容的にはほとんどズレてはないと思いますが、適当なのでおかしいところがあるかもしれません。 うっとうしい場合は原文をどうぞ。 24 JavaScript Best Practices for Beginners 1. 等価演算子で==使うなよボケ===だろナスチン野郎 ひぃぃぃ。 ==|!= だとねー、型は自動に変換されるんすよねー。ねー。 s = '1'; i = 1; alert(s == i); // true alert(s === i); //false えーと、==は「わし、数値も文字列も中身が一緒だ

    JavaScript初心者におくる24のグレイトなtips - 三等兵
  • FAQ形式によるJavaScriptの本質がわかる超入門 - 風と宇宙とプログラム

    はじめに JavaScriptは簡単な言語のようでいて、実は奥が深く、初心者にとってなかなかその質がわかりにくい言語です。ここでは、JavaScriptの言語的エッセンスを理解できるようなものをFAQ形式で書いてみました。ご意見や誤り等を指摘してもらえたら嬉しいです。 なお、JavaScriptの標準化であるECMAScriptは、今年末にEdition 5 がリリースされる予定です。このFAQは、現在のバージョンであるEdition 3をベースにしています。 ECMAScriptって何ですか? ECMAはEuropean Computer Manufacturer Association(欧州電子計算機工業会)の略で、標準化団体です。NetscapeのJavaScriptMicrosoftのJScriptをベースに、純粋なプログラム言語部分を抽出したものをECMAで標準化したスクリプ

    FAQ形式によるJavaScriptの本質がわかる超入門 - 風と宇宙とプログラム
  • データ & アナリティクス | アクセンチュア

    データ分析から導き出されたインサイト無しにAI人工知能)の活用は始まりません。私たちは、各業界知識とデータ・アナリティクス技術を駆使しデータドリブン経営を強力に支援します。 データ、アナリティクス、AIは企業にとって競合他社との差別化を図るかつてないほど大きな要因になっています。今日の経営幹部が効率を向上しながら新たな収益源を開拓し、新しいビジネスモデルをタイムリーに構築する方法を模索する中、価値を生み出し成長を続ける企業には「データ活用」という共通項があります。私たちは、無数のデータから企業にとって当に必要なデータを活用するための方法を知っています。 将来を見据えたオペレーション体制を備えている企業の半数以上(52%)は、すでにデータとアナリティクスを大規模に活用しています。データとAIに関する取り組みをビジネス戦略に沿って実施することで投資利益率を迅速に最大化し、最終的にはAIをビ

    データ & アナリティクス | アクセンチュア
  • C++の便利ツール・ライブラリ - DO++

    フルタイムで働きはじめて4ヶ月。 いろんなことがありました。 今日はインターンが来ているということもあり日頃のC++コーディングライフの中で大変重用しているツールを紹介します。といってもどれも有名なツールでググれば解説がでてくるとは思いますので、一言ずつだけ紹介してみます。みなさんも何かよさげなライブラリ・ツールがありましたら教えてください。 - valgrind/callgrind/cachegrind プログラムの実行結果を解析するツール群。まぁ、王道であえて紹介する必要はないかもしいませんが.。valgrindはプログラムのどこかでメモリが漏れているかどうかのチェックに使います.コードのどの部分で確保した領域がどこで漏れているかまで追跡することができます valgrind --leak-check=full command プログラムのどのが計算量的にボトルネックになっているかを調べ

    C++の便利ツール・ライブラリ - DO++
    hirocueki
    hirocueki 2010/08/17
    便利なツールがあるのは知ってたけど、簡潔にまとめられていていいですね!使ってみよう、ありがとう!
  • 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++の話(本当にあった怖い話)
  • C++のクラスをマスターしよう(前編)(1/5) - @IT

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

  • はてなブログ | 無料ブログを作成しよう

    トルコ水紀行 -前編 イスタンブール- みなさんこんばんは、地図子です!8月は久しぶりに毎月更新にしようと思います。今までずっと名古屋について書いてきましたが、ワープして・・・ トルコについて書きたいと思います。 2024年6月に念願のトルコに行ってきました。いつからトルコに行きたかったかわから…

    はてなブログ | 無料ブログを作成しよう
  • Small Basic

  • Mac OSXでPerlの環境を整える | Heart Beat

    *2010/08/12追記 まずはMacportsのインストール PerlのインストールにもMacportsを使うと/opt/local以下にインストールしてくれるのでオススメします。 MacのデフォルトのPerlのインストールディレクトリを汚さないですし、アンインストールやアップグレードなどのバージョン管理もできるパッケージ管理ツールです。 MacPortsとは? MacPorts(旧名DarwinPorts)というのはパッケージ管理ツールで、UNIX向けのオープンソースソフトウェアをダウンロード、configure、make、インストール、そのパッケージ使用するのに必要な他のパッケージも一緒にインストールなど面倒な作業をすべて代わりにやってくれる便利なソフト。 source: Macports – Macの手書き説明書 事前にXcodeTools、X11をMacに付属しているインストー

  • 第4回 Any::Moose:なにがどうでもムースはムース | gihyo.jp

    CPANTSは情報の宝庫 Perlを使う最大の利点といわれるCPANですが、CPANは単なるモジュール置き場ではありません。CPANはまたPerlの利用状況を知るうえで不可欠な統計情報を得る場でもあります。そのような統計情報のいくつかは、いわゆるCPAN検索サイトからも確認できますが、より突っ込んだ情報が欲しい場合はCPANTS(CPAN Testing Service)と呼ばれるサイトを確認するのが便利です。 国内ではnipotanこと谷口公一氏が始めた「輝け!全日最強 CPAN Author 決定選手権」のネタ元として知られていますが、このサイトでは個々の作者やモジュールの品質だけでなく、そのモジュールが実際にどこで使われているかという情報を得ることもできます。 たとえば前回取り上げたロール関連のモジュールの利用状況を調べてみると、古き良きExporterを依存モジュールとして取り上

    第4回 Any::Moose:なにがどうでもムースはムース | gihyo.jp
  • ウノウラボ Unoh Labs: Pythonでメールを送信したい人のためのサンプル集

    chihiroです。 最近Pythonでのメールを送受信に試行錯誤することがあり、ようやく分かってきたので、ここにまとめておきたいと思います。 Pythonでメールを送信する Python標準ライブラリでメールを送信する場合、 emailパッケージを使ってMIME文書を作成 smtplibを使って送信 という手順を踏みます。 emailパッケージははじめはとっつきにくいのですが、 各クラスのインターフェイスは統一感があり、よく練られているので、一度分かってしまえば明快です。 国際化されたヘッダーやテキスト以外のコンテンツの扱いに関しても問題ないので、 "battery inside"なPythonのありがたみを実感できるパッケージだと思います。 基的な例 テキスト形式のメッセージをlocalhost:25から送信する例です。 # -*- coding: utf-8 -*- import

  • Perl基礎文法最速マスター - Perl入門ゼミ

    Perl › 基礎文法 ITの現場でPerlが必要になって、今勉強しているという方はおられませんか? 他の言語をある程度知っている方が「Perl基礎文法最速マスター」を読めば、Perlの使い方の基礎をマスターしてPerlを書くことができるようになっています。 基礎 文法チェック 文法をチェックを厳しくするために最初に必ず次の2行を書くようにします。 use strict; use warnings; 「use strict」と「use warnings」という2行を加えることで事前に文法チェックが行われるので、ソースコードを記述する作業は速くなり、コードの品質が上がります。 print関数 文字列を出力するにはprint関数を使用します。 print "Hello world"; Perlでは標準関数や事前に定義されている関数で括弧を省略することができます。 コメント Perlのコメントで

    Perl基礎文法最速マスター - Perl入門ゼミ