エンジニアが発信する【C/C++/C#】の記事を集めました

エンジニアが作る最新ITブログ トップ>エンジニアの発信する【C/C++/C#】

2009年06月25日

まつもとゆきひろコードの正解、

少し読んでいるが、面白い点を見つけた。

P38 Mix-in(ミキシン)
ミキシンは以前、別の本で聞いたことのある概念だったが、この本でもっと詳しく
説明されている。
どうも、多重継承の使用方法のルール(制限)のようで、多重継承で問題になる
菱形継承(?)の問題を少しでも軽減するもののようだ。
C++ではプログラマがミキシンを意識して使わなければならないようだ。Rubyで
は言語がサポートしているらしい。
これは、継承のタイプ、インターフェース(仕様)継承と実装継承にも関係している
ようだ。ミキシンは実装継承のようだ。
 ちょっと困惑気味だが、以前は継承を再利用のために使うことを進めている本が
あり、ここ最近は、実は継承にこの再利用のための継承(実装継承)はしてはならない
ようなことを聞くようになった。それはIs a関係にない場合の継承は後々問題になる
からやめるように聞いた。
しかし、この本のミキシンについてはどうも多重継承でその実装継承を使うことをすす
めていて、ミキシンとしての継承は複数あっても、本当のIsa関係(?)の継承は1つのみにするような
ことを書いているようだ。
ただ、まだ、いまいちはっきり理解できていないようだ。

P64 文脈依存の実現
この部分はかなり興味深い内容だった。
文脈(コンテキスト)という概念はゲームプログラムをしていてかなり重要な概念だと認識して
いたからだ。ある関数について、ある部分では有効だが、別の部分では決して実行してはなら
ないということがあるからだ。
 C++などで組んでいるとどうしてもグローバルな関数などはどこからも使えてしまうということが
あるが、ある範囲は有効である範囲では使えないというようなことを管理するべきだと感じつつ
あった。

P65 語彙の実現
すべてのアプリケーションを作る過程は結局言語をデザインすることである」だそうだ。
アプリケーションを作ることは、そのアプリケーションの問題領域の語彙をどんどん定義していき、最後にその語彙を使って問題解決手段を記述することにほかなりません。

P66 DSL(DommainSpecificLanguage)
コードジェネレータ:STL、マクロ、C++コードを生成するアプリケーション
インタプリタ:スクリプト、XMLはJava界のDSLである。
















2009年05月19日

[ C# ] generics

いままで C++ とほとんど変わらない ( lambda 式とか入ったりしたけど ) コードしか書いていませんでしたが
C#4.0 を機に generics とかも勉強始めました。

C#2.0 を見たときは、あまりよく思わなかった generics ですが、今見てみると便利なものに感じます。
概要を教えてくれた havana に感謝。

2009年03月23日

C# の三項演算子、DataRow、DBNull.Value

_Activated は DateTime? な変数で、row は DataRow で。。。 if (row["Activated"] == DBNull.Value) { _Activated = null; } else { _Activated = (DateTime)row["Activated"]; } 上の書き方だと行数を喰うので一行で下...

2009年03月16日

Symbian OS、半年毎に新版リリースへ

Symbian OS、半年毎に新版リリースへ

Symbian Foundationが向こう数年の計画を明らかにしました。それが半年毎の新版リリース。
ちょっと頻繁過ぎないかな~。開発者はどこをターゲットにすればよいんだろう??


Symbian OSマルチメディアプログラミング

Symbian OSマルチメディアプログラミング




Symbian OS コミュニケーションプログラミング

Symbian OS コミュニケーションプログラミング

  • 作者: イアン・キャンベル; Iain Campbell
  • 出版社/メーカー: 翔泳社
  • 発売日: 2008/02/13
  • メディア: 大型本



Symbian OS C++プログラミング 第2版

Symbian OS C++プログラミング 第2版

  • 作者: リチャード・ハリソン
  • 出版社/メーカー: 翔泳社
  • 発売日: 2007/10/19
  • メディア: 大型本



Symbian OS Architecture 携帯電話OSの設計と進化

Symbian OS Architecture 携帯電話OSの設計と進化

  • 作者: Ben Morris
  • 出版社/メーカー: 翔泳社
  • 発売日: 2008/07/31
  • メディア: 大型本


2009年03月09日

訃報:石田晴久氏

日本のUNIX普及に尽力された石田晴久氏が亡くなられました

会社に入社してからコンピュータプログラミング、コンピュータネットワークの世界に入った私でもそのお名前はよく知っていました。C言語翻訳本には大変お世話になったものです。

大変残念です。ご冥福をお祈りいたします。


プログラミング言語C―UNIX流プログラム書法と作法 (1981年)

プログラミング言語C―UNIX流プログラム書法と作法 (1981年)

  • 作者: D.M.リッチー
  • 出版社/メーカー: 共立出版
  • 発売日: 1981/07
  • メディア: -



Cプログラミング入門

Cプログラミング入門

  • 作者: 石田 晴久
  • 出版社/メーカー: 共立出版
  • 発売日: 1988/08
  • メディア: 単行本



入門 ANSI‐C

入門 ANSI‐C

  • 作者: 石田 晴久
  • 出版社/メーカー: 実教出版
  • 発売日: 1997/02
  • メディア: 単行本



コンピュータの名著・古典100冊

コンピュータの名著・古典100冊

  • 作者: 石田 晴久
  • 出版社/メーカー: インプレス
  • 発売日: 2003/10/29
  • メディア: 単行本



インターネット安全活用術 (岩波新書)

インターネット安全活用術 (岩波新書)

  • 作者: 石田 晴久
  • 出版社/メーカー: 岩波書店
  • 発売日: 2004/10
  • メディア: 新書


2009年03月01日

C# の三項演算子、DataRow、DBNull.Value

_Activated は DateTime? な変数で、row は DataRow で。。。 if (row["Activated"] == DBNull.Value) { _Activated = null; } else { _Activated = (DateTime)row["Activated"]; } 上の書き方だと行数を喰うので一行で下...

2009年02月24日

『ドメイン駆動』

「ドメイン駆動設計(DDD:Domain Driven Design)」 についてのガイドブックですが、"デザインパターンへの適用法" というサブタイトルが付いていて、O/Rマッパーとの組み合わせ方などが論じられています。 関連情報・ドメイン駆動 [それはBooks]・「ドメイン駆動  デザインパターンへの適用法」 - TAKUYA’s CODE RECORDER ・[ 技術講座 ] Domain-Driven Designのエッセンス -目次-・ドメインロジックの実装方法とドメイン駆動設計 p.s.サンプルコードが C# で書かれています。この点だけはちょっと残念に思いますが、内容を理解するのにそれほど問題とはならないでしょう。

2009年02月10日

C++ に string 型があったとは!

自分のパソコンのファイルを整理するにあたり、ある条件で振り分けるプログラムを作ろうと考えた。フリーソフトとかではないのかな。探すのも面倒だし・・。

.NET Framework に依存するのも嫌だし、先々linuxに移植することも考えて C か Delphi でも使うか。が、Unix系のDelphi である Kylix はもうないらしい・・。じゃあCか。ク ラスファイルが使える方がいいので C++にすることにした。ちなみに手元のコンパイラは VC++2005。

Cで面倒なのは char 型の操作。どうやるんだっけかと調べていると、C++ では string 型が使えるそうだ。

早速やってみた。

・includeを追加

#include
using namespace std;

・定義の際

string str;

てな具合。上記の using 句がなければ string の定義時に名前空間が必要で

std::string str;

となる。

おお、良い感じである。入出力の書き方は好きではないものの、従来の char に比べたら断然使いやすい。

今後C++でごちゃごちゃと実装する機会も増えそうだ。




同じテーマの最新記事

2008年12月23日

キー割り当て

key

Visual Web Developer と Visual C# でキー割り当てが異なるのは
無料版でなく有償版を買いなさいってことなのか。。。苦しい。

2005 は 自宅用に Team Edition for Software Developers 買ったけど、
2008 は無償版を使う私。






2008年12月01日

キー割り当て

Visual Web Developer と Visual C# でキー割り当てが異なるのは 無料版でなく有償版を買いなさいってことなのか。。。苦しい。 2005 は 自宅用に Team Edition for Software Developers 買ったけど、 2008 は無償版を使う私。

エンジニアが作る最新ITブログ トップ>エンジニアの発信する【C/C++/C#】

メンバー紹介

タグパネル

ランキング

エンジニアが作る最新ITブログ DODA