ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

眞鍋かをりさんが、女性向けSNSで「社長」に就任

2006-08-31 21:56:15 | Weblog

ここのニュース
眞鍋かをりが今度は「社長」に 女性向けSNSで
http://www.itmedia.co.jp/news/articles/0608/31/news073.html


ほー、社長。。。といっても、SNSの一番偉い人なのね(^^)
みんな社員なんでしょうか?
部長、課長はいないんでしょうか?




 などというツッコミはさておき、SNSは、やっぱしビジネスモデルは、販売と結びつけるところでしょうかねー。。

 ただ、これが進んで、一歩間違えると、マルチレベルマーケティングになってしまうわけで。。

 たとえば、マイミクの人が買うと何パーセントかキャッシュバック、マイミクのマイミクが。。。とかいいだしたら。。。

 アムウエイあたりがSNSしたら。。。(^^;)


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Javaで基本操作(その7):計算のトピックス(==とequals、instanceofの使い道)

2006-08-31 17:52:57 | JavaとWeb

 Javaで基本操作シリーズその7、今回は、今日のお題は、四則演算、計算ってことで、演算子の話、

 えー演算子には、 算術演算子(+ - * / %)、比較演算子(< > != == )、条件演算子(&& || )、シフト演算子(<< >>)、ビット演算子(& | ^ ~)、代入演算子(=)などがあり、代入演算子は算術演算子等と組み合わせたものもあり(+=など)、それらの優先順位は。。。

 なーんてはなしは、わざわざ書くまでもなく、載っています。いろんなところで。。。
 そこで、もし、興味があったらこんなとこをみるといいと思います。これだけあれば、加減乗除はできます。はい。。




 もちょっと込み入った、絶対値とか、累乗とか、logだとか、三角関数とか、極座標変換(たとえば、座標(X、Y)は、角度にすると、何度か?っていうことは、atan2でもとめる)なんかは、
クラスjava.lang.Mathに関数があります。

 maxとminについては期待しないほうが。。。
 仕様をみて、がっかりするど(^^)

 java.lang.Mathの関数はstaticなので

 なんとか=Math.関数(引数);

みたいな形で使える(newがいらない)




 で、そんな話はいいとして、ここでは、ちょっとTopics的な話題。

お題は

・==とequalsの違い(String以外で)
・instanceofの使い方
・Deepな話(boxingの==とequals)




■==とequalsの違い(String以外で)

 Stringで==とequalsの話は比較演算子のところで教わります。

 文字列の”中身”が正しいかどうかを聞くときに、==で聞いてはいけません。

 もし、==で比較すると、それは、文字列のオブジェクトが正しいか?を聞いていることになり、オブジェクトの中身である文字列が同じでも、オブジェクトは違うのでfalseになります。

 つまり、
 String a1 = new String("a");
 String a2 = new String("a");

if (a1 == a2)

 とかくと、これは、a1のオブジェクト、メモリの何番地かにとられているそのオブジェクトと、
 a2のオブジェクト、メモリの何番地かにとられているそのオブジェクトは、等しいですか?
 と聞いていることになるので、これは、falseになってしまいます。 
 (false=a1のオブジェクトとa2のオブジェクトは、コンピューターのメモリの違う番地にとられています=そのとーり)

 もし、オブジェクトの”中身の”文字列(ここでは、どちらも"a")が正しいかどうか聞きたいなら、
 if ( a1.equals(a2) )

 と聞きなさいと教わります。これは、いいんです。




 で、このことは、Stringだけみたいにおそわるけど、Integerなんかのクラスでも同じです。
 クラスそのものが同じか?と聞く場合(めったにない)は、==で、
 クラスの中身を聞くとき(ふつうこれ)は、equalsで聞きます。

 ただし、クラスではない、プリミティブな型、つまり、int,float,doubleなどは、クラスでないので、==でききます。

 つまり、intなら==,Integerならequalsで中身が一緒かわかります。
 floatdoubleなどでも、同じ話です。

 具体的にいうと
  Integer i1 = new Integer(5);
  Integer i2 = new Integer(5); // 同じ数
  vec.add(i1);
  vec.add(i2);

 のとき

 vec.elementAt(0) == vec.elementAt(1)

 はfalseを返します。オブジェクトはi1とi2で違うので。。。

 だけど、
 vec.elementAt(0).equals(vec.elementAt(1))
 はtrueを返します。中身は5で一緒なので。。。

 ここまでは、わかっていただけると思います(つづきはdeepな話へ)




■instanceofの使い方
 演算子にinstanceofがあります。これの使いみちですが、
 VectorやHashMapでいろんな型の値が入って場合

if ( vec.elementAt(0) instanceof Integer)
{
  //"Integerの処理"
}
else if ( vec.elementAt(0) instanceof Double)
{
  //"Doubleの処理"
}

などと、切り分けるのにも使います。
もっとも、
vec.elementAt(0).getClass().getName()
のように、Objectに対して、.getClass().getName()すれば、クラス名はStringで取得できるのですが。。




■Deepなお話
==とequalsの違いで、newでやったときの話をかきました。
javaの1.5には、boxingが入っています。
つまり
Vector vec2 = new Vector();

vec2.add(1);
vec2.add(1);

と、Integerにしなくて、値を直接入れても大丈夫です。

さて、このとき
vec2.elementAt(0) == vec2.elementAt(1)
と聞いたら、どうなると思いますか?
2通り考えられますよね
  trueになる
  newしたときと同じfalseになる。
結果は。。。




■ソースコード
今回のサンプルは、こんな感じ
import java.util.*;

public class test {

	/**
	 * Java1.5でのテスト
	 * @param args
	 */
	public static void main(String[] args) {
		// Mathのメソッドの例
		System.out.println("2の4乗" + Math.pow(2, 4));

		Vector vec = new Vector();
		Integer	i1 = new Integer(5);
		Integer	i2 = new Integer(5);	//	同じ数

		vec.add(i1);
		vec.add(i2);
		vec.add(i1);

		//	同じ数だが、違うオブジェクトを聞いている
		boolean b = (vec.elementAt(0) == vec.elementAt(1));
		System.out.println("=の場合:"+ b); 

		//	同じオブジェクトを聞いている
		b = (vec.elementAt(0) == vec.elementAt(2));
		System.out.println("=で同じi1の場合:"+ b); 
		
		//	同じ数で、違うオブジェクトだが、オブジェクトの値を聞いている
		b = vec.elementAt(0).equals(vec.elementAt(1));
		System.out.println("equalsの場合:"+ b); 
		
		
		//	instanceofの使い方
		if ( vec.elementAt(0) instanceof Integer)
		{
			System.out.println("Integerの処理"); 
		}
		else if ( vec.elementAt(0) instanceof Double)
		{
			System.out.println("Doubleの処理"); 
		}
		//	ちなみに。。
		System.out.println(vec.elementAt(0).getClass().getName());

		//	Deepなお話
		Vector vec2 = new Vector();
		
		vec2.add(1);
		vec2.add(1);
		b = (vec2.elementAt(0) == vec2.elementAt(1));
		System.out.println("=の場合:"+ b); 

	}

}

(上記< > ¥は、本当は半角です)




■結果
今日は、結果も載せておきましょう(一番最後が、deepな話)
2の4乗16.0
=の場合:false
=で同じi1の場合:true
equalsの場合:true
Integerの処理
java.lang.Integer
=の場合:true




  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

経理、XBRLシステム開発のための財務諸表作成業務の流れ。

2006-08-31 15:11:54 | 業務のモデル化

 最近、基本的なことを書いていたら、見る人が多くなった。
 ってことは、前にXBRLを取り上げたけど、もっと基本的な財務諸表をどうやって作るかという流れとか、そういうほうを書いたほうが、見てくれる人多いのかな?と思って、そっちを書いてみることにしました。




■まず、なにを出力するのか?から考える
 ってことが基本だと昔にブログに書いた記憶がある。

 そもそも、会計学は会社の管理資料を出す管理会計と、財務諸表などを出す会計とにわかれる。
 管理会計においては、会社の設備などの製造間接費をどういう風にプロジェクトに分けるか(製造間接費配賦)とか、プロジェクト、セグメントごとの会計とか、そーいう話題があるが、今回は管理会計の話題でないので、無視する。

 財務諸表をつくる会計は、相手先によって、まだまだ分かれる
   銀行さん=財務諸表の貸借対照表、損益計算書のほかに、計算途中の試算表も
   投資家=財務諸表、決算短信
   税務署=所得税または法人税(財務諸表相当)、消費税

 投資家にだす、つまり、上場企業が出す、財務諸表=有価証券報告書と呼ばれるものと、税務署に出す申告書は、ちと内容が違う。ただし、それは、元となる数字は同じで(同じじゃなきゃ困る。2つ帳簿があったら(>_<!))、その表現の仕方(計算手法が)違うだけである。

 決算短信は、有価証券報告書の一部の数字を抜き出したもの。
 消費税の計算は、財務諸表とは関係ないものの、やはり、これも元となる数字は同じである。




■財務諸表の内訳
ふつうは
 ・損益計算書(PL)
 ・貸借対照表(BS)
 ・キャッシュフロー計算書
 ・利益処分計算書
からなります。このほかに計算書ではないけど、リスク情報をあげる。
また、上記は単体で、グループ会社の場合、連結したものを出すけど、
利益処分計算書に関しては、連結の場合、連結剰余金計算書という。
また、連結でくっつけちゃうと、全体しかわかんないので、セグメント情報を
ながす。

 このほかに、製造業だと、製造原価報告書っていうのがあって、これも付ける場合がある。

 ただし、税金の場合は、すこし項目が、違うケースがある。
 税金の場合、法人税は、別表4、5あたりに、これらの内容を埋めるので、そこを調べればいいことになる。

 個人事業主の場合、法人税になるが、白色と青色で異なる。白色は、PL相当しかいらない。青色はBS,PL,どちらも必要。書く用紙があるので(1表と同時に添えるやつ。A3を2つ折にしたようなやつ)、その用紙に従うことになる。

 会社も個人も、一定の基準を超えると消費税を払う。これは、また違う計算になる(本則と簡易課税でも異なる)。



■業務フロー

これらの計算は、いまでは仕訳を入れるとコンピューターがしてくれる。
なんで、中は、よくわかんなくていいが、昔は、こうやっていた

1.仕訳帳に日々の取引(仕訳)を書く
   (現金)10,000 (売上)10,000
  などなど。。。

2.(大きな会社が手計算してた時代は)1日分の仕訳をまとめ仕訳日計帳に記入する
 →たぶん、今はしないんじゃあ。。(^^;)

3.総勘定元帳をつくる
 →XBRLの世界では、これがXBRL-GLになる。

4.そこから、試算表をつくる
 →TBといわれる。これは、コンピューターならすぐに作れるので、
  銀行で、これを求められることがある。合計試算表、残高試算表の2種類あり

5.決算日のところでしめて(〆て)、財務諸表をつくる
 →まず繰延(くりのべ)・見越(みこし) 処理を行います
  たとえば、12月に買ったものは、翌月払いなら、まだ払っていません。
  これらが未払いとして処理されます
 →ライブドアの総会で、この未払金の内訳は?と聞いていたやつが居たが、
  そんなの、総会の時間で答えきれるわけねーだろ(^^;)
  えーっと、文房具屋さんにいくら、電気代がいくらとか。。いうの。。。
  そーいうのは、総会じゃないところでやってくれ!
 →あと、引当金処理とかして、単体の財務諸表をつくっていきます。
 →(18:00追加)棚卸もします。
  棚卸し処理のためには、入出庫の記録が必要な場合もあります

6.税務署の申告用紙を作る場合、各項目を埋めて(計算して)いきます
 →これはいまは、会計ソフトがやってくれるので、印刷するだけです。
  たいてい毎年変わりますので、バージョンアップが必要です。
  ちなみに、個人がやる場合は別表からつくって、最後に表紙に書き込む
  という手順になります。
  くれぐれもそのとき、用紙を折り曲げたまま、書かないように。
  カーボン紙なので、不必要なところに写っちゃいますよ(^^;)

 →消費税の場合は、計算方法が違います。
  本則の場合はいいんですけど、簡易課税の場合、何類かというのが問題に
  なります。

7.大手企業の場合、単体の決算が全部出たら、連結の決算を出します
 →本支店処理といわれる処理をします。
  これは、単体の合計をあわせた後、
  アップストリーム(子会社から親会社への売り上げなど)、
  ダウンストリーム(親会社から子会社への売り上げなど)
  を消していく操作です

8.決算書をまとめ、株主総会にかけます
  上場会社は、決算書を監査を受けて、株主総会にはかり、利益処分の承認
  を得ます

9.決算短信を作ります
  東証で発表されるときは、財務諸表は、有価証券報告書とよばれますが、
  これが発表されるときに、決算短信というのをつくります。
  →東証のXBRLのページ http://www.tse.or.jp/listing/xbrl/
  にあるXBRLの見本は、決算短信の1枚目です。
  この1枚目の内容が、ロイターやブルームバーグなどですぐに報告され、
  株式相場に影響。。。されるとは限りません。
  なぜなら、株式相場終了後(3時以降)に決算報告する会社も多いからです。




■データ構造として分析するもの

 ということで、財務諸表関係で言えば、ふつうは、

  税務署に出す財務諸表や消費税関係

 それにつけくわえ、上場企業は

  東証で報告する財務諸表(連結も)や決算短信

 の構造を分析するのはもちろんですが、その入力となる仕訳、
銀行に見せる試算表、途中経過の総勘定元帳も分析しないと
いけないことになります。




■これをXBRL的にみると、

 ところが、仕訳の内容で重要なのは、勘定科目です。
 この仕訳の勘定科目にもとづいて、総勘定元帳はできます。
 そして、総勘定元帳をもとに、試算表は計算できます。

 ということは、XBRL的にみれば、

 総勘定元帳のXBRL=XBRL-GLと
 税金のためのXBRLや、
 証券市場用の財務諸表/決算短信のXBRLの

構造を調べ、XBRL-GLからそれぞれ変換できるようにして、タクソノミを決めれば、
あとは、仕訳に勘定科目、金額、日付以外になにを備考として記入するか、
税務署に提出するのに、他に必要な事項は何か(これは、申告書をみれば書いてあるはず)
を分析するといいということになります。

ひえー、長い説明でしたけど、わかりましたあ(^^;)
 



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ドコモの新しいFOMA、「HSDPAは実測でどれくらい速いのか」の記事

2006-08-31 12:13:54 | Weblog

ここの記事
本当に10倍速いのか──「N902iX HIGH-SPEED」の実力を試す
http://plusd.itmedia.co.jp/mobile/articles/0608/31/news025.html


結果は(以下斜体は上記記事より引用)

3回の計測のうち2回は1.6Mbpsを超える受信速度を記録した。送信速度は3回とも370Kbps前後と、こちらは理論限界値にかなり近く、安定していた。


で、着うたフルでも調べた結果、

平均で1Mbpsは超えている。着うたフルを1曲ダウンロードするのに20秒とかからなかった。

そうだ。

ってことで、1Mbpsは超えるそうだ。ちょっと前のT1回線の速度が1.5Mで、そのころ(2000年頃かなあ)でも、インターネットで動画とかやってたから。。。
 それほど遅いってわけじゃないよね。

 ってことで、これだけの速さが出て、フルブラウザになってくると、Webアプリで社内システムを構築して、ケータイでも見るというアプローチが、かなり多くなってくるんじゃないかな。
(いまでも、多いと思うけど。。)

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする