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

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

IT業界は、夢があって、かっこいいんですって。大学生から見ると

2009-03-30 18:35:41 | Weblog

 ここ(2009年3月27日の記事)で知ったんだけど、こんな調査があるそうな。。。

プレス発表 「IT人材市場動向調査 調査報告概要版No.3」の公開について
http://www.ipa.go.jp/about/press/20090327.html

(以下斜体は上記IPAのプレスリリースより引用)


大学3年生以上の学生600名を対象として、情報サービス・ソフトウェア産業に対するイメージや仕事に対する興味などを尋ね

た結果

「技術やスキルが身につく」や「夢がある」という項目については、「IT・情報サービス・ソフトウェア」がトップとなった

そして

「かっこいい」、「仕事にやりがいがある」などについても、「IT・情報サービス・ソフトウェア」産業は、比較的上位にあげられている。


うーん、大学生はわかっているのだろうか、この業界を・・・
これだから、デジどか→うつ病→ニートが増える・・・と思ったらね、

仕事の内容がわかりやすい」については、「IT・情報サービス・ソフトウェア」産業が、比較的下位にランクされる結果となった

もっとはっきりかきます。
24業種(最後に「あてはまるものがない」があり、選択肢は25)中、20位です。
よくわかってないことは、自覚してるのね・・・

ただね、

「仕事がきつい」というイメージについては、「医療・福祉」の次に「IT・情報サービス・ソフトウェア」があげられており、

つまり、上から2位。この辺はあっているよね。

まとめると、仕事が、お医者さんや、介護の人たち並みにきついことはわかるけど、
ほかはよくわかんないけど、
ゆめがあって、かっこいいんじゃねーの?

前半はあってるけど、後半はあってない・・・・

っていうか、同じ人たちが答えているのかなあ・・・

たぶん、
「仕事が、お医者さんや、介護の人たち並みにきつい」って答えている人たちと、
「技術やスキルが身につく」や「夢がある」、「かっこいい」、「仕事にやりがいがある」
って答えている人は、別の気がする・・・(なんか、矛盾してるもんなあ・・・同時に答えると・・・)

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

RESTマッピング

2009-03-30 16:32:01 | Weblog

 REST型のWebサービスを、Javaで利用しようとした場合、

 O/Rマッピングのように、
 そのサービスの帰り値をもとに、クラスをつくってしまって、
 利用者は、そのクラスを使う(自分でサイトにはアクセスにいかない)
 というような、

 「RESTマッピング」というべきものをつくったほうがいいかもしれない。




たとえば・・・
いま、YAHOOのRSS
http://dailynews.yahoo.co.jp/fc/rss.xml
のクラスを考える。このクラスは、
public class RestMapping {
	public static void main(String[] args) throws Exception{
		RSS rss = new RSS("http://dailynews.yahoo.co.jp/fc/rss.xml");
		System.out.println(rss.toString());
	}
}

のようなかたちで、指定されたURLにアクセスし、結果をrssクラスにいれているというものを考える。




このとき、RSSは、
RSS-<channel-<Item
のような構造になっている。

まずは、RSSクラス。
これは、クラスを生成するとき、データを読んできて、文中に含まれるchanel数分、channelをつくるとした。
こんなかんじ
import java.net.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;


public class RSS {

	Channel[]	channel;
	
	public RSS(String url) throws Exception
	{
		//	RSSサイトにアクセス
		URL TestURL = new URL(url);
		URLConnection con = TestURL.openConnection();
	
		// RSSのDOMを取得
		DocumentBuilderFactory dbfactory = DocumentBuilderFactory.newInstance();
		DocumentBuilder builder = dbfactory.newDocumentBuilder();
		Document xtree = builder.parse(con.getInputStream());
		
		NodeList nodelist = xtree.getElementsByTagName("channel");
		if ( nodelist != null)
		{
			channel = new Channel[nodelist.getLength()];
			for(int i = 0 ; i < nodelist.getLength(); i ++ )
			{
				channel[i] = new Channel(nodelist.item(i));
			}
		}
		else
		{
			channel = new Channel[0];
		}
	}

	public String toString()
	{
		String ret = "";
		for ( int i = 0 ; i < channel.length ; i ++)
		{
			ret = ret + channel[i].toString();
		}

		return ret;
	}

}

(< > ¥ は、本当は半角)




channelでは、受け取った1個分のchannelのノードから、引数を取り出し、
itemをあるだけつくる。
こんなかんじ
import org.w3c.dom.*;

public class Channel {
	String title;
	String link;
	String description;
	String language;
	String pubDate;
	Item[]	item;
	
	public Channel(Node node)
	{
		Element el = (Element)node;
		NodeList nodelist;
		nodelist = el.getElementsByTagName("title");
		if ( nodelist.getLength() > 0)
		{
			title = nodelist.item(0).getFirstChild().getNodeValue();
		}

		nodelist = el.getElementsByTagName("link");
		if ( nodelist.getLength() > 0)
		{
			link = nodelist.item(0).getFirstChild().getNodeValue();
		}

		nodelist = el.getElementsByTagName("description");
		if ( nodelist.getLength() > 0)
		{
			link = nodelist.item(0).getFirstChild().getNodeValue();
		}

		nodelist = el.getElementsByTagName("pubDate");
		if ( nodelist.getLength() > 0)
		{
			pubDate = nodelist.item(0).getFirstChild().getNodeValue();
		}

		nodelist = el.getElementsByTagName("language");
		if ( nodelist.getLength() > 0)
		{
			language = nodelist.item(0).getFirstChild().getNodeValue();
		}

		nodelist = el.getElementsByTagName("item");
		if ( nodelist != null)
		{
			item = new Item[nodelist.getLength()];
			for(int i = 0 ; i < nodelist.getLength(); i ++ )
			{
				item[i] = new Item(nodelist.item(i));
			}
		}
		else
		{
			item = new Item[0];
		}
	}
	
	public String toString()
	{
		String ret = "";
		for ( int i = 0 ; i < item.length ; i ++)
		{
			ret = ret + item[i].toString()+"¥n";
		}

		return ret;
	}
}


(< > ¥ は、本当は半角)




こんなかんじ
import org.w3c.dom.*;

public class Item {
	String title;
	String link;
	String description;
	String pubDate;

	public Item(Node node)
	{
		Element el = (Element)node;
		NodeList nodelist;
		nodelist = el.getElementsByTagName("title");
		if ( nodelist.getLength() > 0)
		{
			title = nodelist.item(0).getFirstChild().getNodeValue();
		}

		nodelist = el.getElementsByTagName("link");
		if ( nodelist.getLength() > 0)
		{
			link = nodelist.item(0).getFirstChild().getNodeValue();
		}

		nodelist = el.getElementsByTagName("description");
		if ( nodelist.getLength() > 0)
		{
			link = nodelist.item(0).getFirstChild().getNodeValue();
		}

		nodelist = el.getElementsByTagName("pubDate");
		if ( nodelist.getLength() > 0)
		{
			pubDate = nodelist.item(0).getFirstChild().getNodeValue();
		}
		
	}
	
	public String toString()
	{
		return title + "¥t"+link + "¥t" + description + "¥t" + pubDate;
	}
}


(< > ¥ は、本当は半角)




こんなかんじのクラスが、自動的に作れると、JAVAでもRESTの利用が楽になるかも。。。
というか、SOAPでも同じようなことをやれば、SOAPかRESTか、DBかなどの考えはいらなくなるかも??

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

カラーユニバーサルデザインと、Windowsのデバイスプロファイル。

2009-03-30 13:17:24 | Weblog

 カラーユニバーサルデザインってのがある。
 色弱の人とかに配慮した色使いということなのだが、
 色弱にもいろいろなタイプがあるのであれば、

 コンピューターに表示するときはもともとの標準的な色で、
 パソコンで見るとき、個々人に対しては、それぞれにあった色に変換して
 出力したほうが、見え方が違う各人に対応できていいんじゃない?とおもった。




 で、そこで、おもったんだけど、そもそも、Windowsの色空間をきめる、
デバイスプロファイルって、どこで設定してるの?

 とおもって、調べてみた。




 Windowsのデバイスプロファイルは、(Windowsでは、カラー プロファイルっていうみたい)
XPの場合(VISTAだと違う

「コントロール」パネルから「画面」をクリック
「画面」ダイアログで、「設定」タブをクリック
「設定」が表示されたら、「詳細設定」ボタンをクリック
「プラグアンドプレイモニタと・・・」が出てきたら、「色の管理」タブをクリック
「追加」ボタンをクリックすると、カラープロファイルが選べる。

・・・けど、このカラープロファイル、どーやってつくるんだ?


 
P.S で話し戻って、カラーユニバーサルデザインの話、
 そーいうめがねがあればいいんじゃね?
 と思ったら、あった(カラービュー)(^^;)



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