タグ

プログラムに関するhackedのブックマーク (12)

  • 標準出力に色を付ける - matabii's blog

    CUIで一覧表示するプログラムを作った時なんかに便利です。NG行だけ色をつけるとか。 http://search.cpan.org/~rra/ANSIColor-1.12/ANSIColor.pm use Term::ANSIColor; print color ’bold blue’; print "This text is bold blue.\n"; print color ’reset’; print "This text is normal.\n"; print colored ("Yellow on magenta.\n", ’yellow on_magenta’); print "This text is normal.\n"; print colored [’yellow on_magenta’], "Yellow on magenta.\n"; use Term::ANS

    標準出力に色を付ける - matabii's blog
  • シリコンバレーで働いて最もメリットある日本人の職種

    まぁ、いまさら言うまでもないと思いますが、それはソフトウェアエンジニアです。コードが書ける人。日米の給与格差も大きいし、お金以外での尊敬・尊重のされ方もまったく違う。ソフトウェアエンジニア様のために会社の福利厚生・人事制度ができている会社がいかにたくさんあることか。 しかも、「スーパーな人」である必要はまったくなし。「日で普通に通用してる人」だったらOK。 一方、外資系コンサルとか投資銀行とかで働いているようなタイプの人や、「ハイエンド手に職系」な弁護士・会計士などといった人たちは、アメリカに来ると給料も下がり、希少性も下がり、やりがいのある仕事に就ける確率が下がる、といったことも多々あり。もちろん、トライするのを止めないし、その中でも成功してる人もたくさんいますが。 しかし、しつこいようですが、「日で普通のソフトウェアエンジニア」がもっともシリコンバレーのメリットを享受できると思いま

    シリコンバレーで働いて最もメリットある日本人の職種
  • 遺伝的プログラミングによるラムダ式の生成

    遺伝的プログラミングって何? 簡単に言うと、遺伝的プログラミング (Genetic Programming, GP) とは コンピュータ自身にプログラムを作らせる方法です。 でもどうやって? それは、自然界にいる生物の進化過程を真似て、プログラムを「進化」させるのです。 たくさんのプログラム(たいていは千とか一万とか)をランダムに生成して、第1世代にする。 どのプログラムが「よい」かを評価する。 「よくない」プログラムを捨てる。 残ったプログラムをランダムに組み合わせたり(交叉)一部を変えたり(突然変異)して次の世代を作る。 2に戻る。 これを何度も何度も繰り返す(だいたいは数千回とか)ことで、 十分「よい」プログラムが得られるという寸法です。 つまりプログラムが生物(あるいは遺伝情報)で、淘汰されつつ進化していくわけです。 遺伝的プログラミングでは普通、われわれが普段使うようなプログラミ

  • C言語講座:初級から中級まで

    C言語講座>サイトマップ C言語講座:初級から中級まで プログラム言語は、自然言語とコンピュータ言語との間にある人工的な言語です。この講座では、C言語を学びます(開 設:2000.09.01)。 [サイトマップ][ガイダンス][C言語講座の出入り口][アルゴリズム研究室][ソースのコンパイル][C言語の作法][”C言語流”文章作成講座][お断り][使えるリンク集] [言葉は記憶の彼方へ] 死語、半死語、現行語、専門用語、業界用語、隠語。 [ハイテク昔話] 古い経験を、ただ古いだけの私がご紹介します。 [英単語に見える16進数] 病気か?死ぬの? [絵のない絵式乗馬教室] 頭の中に馬を飼ってみませんか。 [プロフィール] [パクられました。][またパクられました。][またまたパクられました。] リンクはご自由に。メールはfujinoy@+cts.ne.jp(”+”を削除)へ。 C言語講座>

  • 404 Blog Not Found:プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10

    2007年11月26日18:15 カテゴリMathLightweight Languages プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10 ぎくっ あなたが一番好きなアルゴリズムを教えてください。 また、その理由やどんな点が好きなのかも教えてください。 - 人力検索はてな なぜぎくってしているかというと、実はすでにアルゴリズムの発注を受けているからなのだ。いつまでも伏せておくのもなんなので、ここにえいやっとdiscloseしてしまうことにする。 アルゴリズム大募集! C&R研究所 - トップページ その下書きもかねて、そこでも紹介しないわけに行かないメジャーなアルゴリズムをとりあえず10個紹介しておくことにする。 ユークリッドの互除法(Euclidean algorithm) その昔(数百年ほど前)は「アルゴリズム」といえば、「手順一般」を指すのではなく、この「互除法

    404 Blog Not Found:プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10
  • UDPソケットプログラミング

    1.1 プログラムの仕様 前回のTCPソケットに続いて、UDPソケットを利用した簡単なechoコネクションのサーバ/クライアントプログラムを作成します。 仕様内容はTCPとUDPの違いのみですが、この大きな違いはTCPはコネクション型ですが、UDPはコネクション・レス型であることです。 よってサーバとクライアントのソケット(UDPの場合はデータグラム・ソケットと呼びます)を作成したら、即データ送受信は可能となります。 echoコネクションの方法は前回のTCPの方法と同じです。 (--> TCPソケットプログラミング ) サーバとクライアントのプログラムのクラスは UdpServer、 UdpClient とします。 全体では次のような流れになります。 サーバのクラス(UdpServer)を起動し、データグラム・ソケットを作成する。 クライアントのクラス(UdpClient)を起動し、

  • VB コントロールの鳥瞰 〜 全標準コントロールの簡単な紹介

    Visual Basic 中学校 > 初級講座 > 第16回 コントロールの鳥瞰 今回からは数回にわたって「コントロール」に焦点をあてて解説をします。今までで既にボタンやテキストボックス・ラベルなどいくつかのコントロールが登場しましたが、今回はそれらも含めてすべての標準コンロールについて使い道や機能、具体的な使用方法を説明します。 1.コントロールとは コントロールはVBのプログラムになくてはならない重要な部品です。代表的なものに、テキストボックスやラベル、ボタンなどがあります。フォームもコントロールの一種です。またコントロールはクラスの一種です。 コントロールにはフォームに貼り付けて使うものと、フォームに貼り付けないで使うものがあります。たとえば、テキストボックスやボタンなどは当然フォームに貼り付けて使いますが、タイマーやOpenFileDialog(読み方:OpenFileDial

  • キミのコードが汚い理由 ― @IT情報マネジメント

    リスト1は、同じ処理を繰り返すようなコードで初心者プログラマーがよく使う幼稚なスタイルで書かれている。必ずしも複雑ではないが、筆者には散らかっていて効率が悪く見える。リスト2の方が複雑な条件になっているが、Javaを理解していれば、かなり読みやすい。唯一疑問を抱くかもしれないとしたら、最後の「else if」の中にある条件の最初の部分だけだ。このクローズに来るということは、どちらかのプレーヤーが勝ったことを意味する。 いずれのインプリメンテーションも間違ってはいない。実際、これらはどちらも非常に小さく、つまらない例にすぎないので、これらのリストでコードがいかにクリーンか論ずるのはあまり有益ではない。ただ、何をもってインプリメンテーションがクリーンなのかについて読者の興味を深めることはできるだろう。 クリーンなコードについて扱った記事、Webサイト、書籍は多数存在する。何をもってコードをクリ

  • Eclipseで使えるメトリクス計測ツール

    23種類という豊富なメトリクスの計測ができます。もう1つの特長はEclipseへの対応です。すべてのメトリクスの計測結果をEclipseのビュー上で確認でき、Eclipseの問題ビューに、メトリクスの値が悪いソースだけを表示させることもできます。また、この場合に警告表示させるためのメトリクスの許容値を自由に変えることが可能です。 ・XML形式での結果出力 メトリクスの計測結果をXML形式で出力しますので、XSLを使ってHTML形式にするなど、お好みのレポートを作成できます。 ・依存関係の解析 パッケージ間およびクラス間の依存関係を図で確認できます。また、依存関係が循環しているパッケージやクラスの検出を行います。 入手方法 Eclipse Metrics Plugin(Frank Sauer)を利用する場合は、Eclipseのアップデート機能を用いたインストールを行います。[ヘルプ]→[ソフ

    Eclipseで使えるメトリクス計測ツール
  • cron(crontab)で月末で指定する方法 - ぎじゅっやさん

  • 階層アーキテクチャの利点は、複雑さの減少 ― @IT

    個々のコンポーネントを組み上げて、どのようなシステムを構築するか。構造(アーキテクチャ)によって、できあがるシステムの性質が変わってくる。作り手側の視点に立てば、どのようなアーキテクチャを採用するかによって、作り方も変わってくる。いままで連載した記事を通して、わたしたちは、個々のコンポーネントの作り方を学んできた。今回からは、コンポーネントをいかに組み上げるか、という課題に知恵を絞ることになる。コンポーネントの利点を最大限に生かすこと。それがアーキテクチャ設計の現実的な意味の1つだ。そして、1つの有効なアプローチに階層化アーキテクチャがある。 前回「使いやすくて、変化に強いコンポーネント」までにサブシステムなどを利用したコンポーネントの作り方についてお話ししてきました。それでは、コンポーネントは実際どのような単位で作り上げていけばよいのでしょうか。 コンポーネントの単位として考えられるのは

    階層アーキテクチャの利点は、複雑さの減少 ― @IT
  • Programing Topics

    CodeRally CodeRally(コードラリー)は、ラリーカーゲームのプログラミングを通じて、 Javaを学習するゲームです。Robocodeと同じく、IBMから無償で提供されています。 統合開発環境Eclipseのプラグインになっているので、Eclipseの勉強にもなります。 ■ 起動画面 ■ゲーム画面 参加者は、ラリーカーの動きをプログラミングします。 チェックポイントを通過してポイントを競います。 ■ 統合開発環境Eclipse <>VisualBasicのような統合開発環境Eclipse。 これも、IBMから無償で配布されています。 ■資料 CodeRally APIリファレンスの非公式日語訳(みたいな) ■リンク集 IBM alphaworks CodeRally(家・英語) IBM develpersworks CodeRally解説 Ueyan CodeRally

  • 1