はてなキーワード: SilverLightとは
プログラミング言語を印象批評している記事に触発されて、自分も印象批評してみようと思う。
JavaScript以外にもブラウザ上でぐりぐりするのにはJava AppletとかFlashとかSilverlightとかいろいろあったけれど、結局標準化を成し遂げたHTML5に淘汰されちゃった感じがする。LiveScriptからJavaScriptに改名されたり、規格を話すときはECMA Scriptだったりといろんな別名を持つ。一応、プロトタイプベースのオブジェクト指向言語なんだけれど、それを意識してコードを書く人がどれくらいいるかは謎。
Pythonは小さいコードを書くのには楽だけど、これで大きなコードを書くと思わぬ変更で思わぬことが起きるのでつらい。しばらく使うとPythonイヤイヤ病にり患し、goを使うようになるらしいとか、ならないとか。pythonで大規模なコードを万一書こうと思うなら、カバレッジが高いテストを書いてくれと思う。
Javaは初期のころオートボクシング / アンボクシングもなく、ストイックなオブジェクト指向言語だった記憶がある。ただ、staticを多用してオブジェクト指向とは程遠いコードも簡単に書けるので、Javaで書いているからと言ってオブジェクト指向だと思うのは禁物である。
PHPはWebネイティブな言語で、初期のころHTTP POST/GETなどで渡された変数がそのままプログラム中に出てくる機能や初期化していない変数を最初に使うと空文字列あるいは0で初期化するという機能があった。また、文字列と数字を臨機応変に切り替える機能もあり(今もそうかは知らん)、数字と文字の比較を比較演算子(==)でシームレスにできる。パスワードチェックみたいなコードで===ではなく、==を使っているとPHPを知らないバカ扱いされる。
C#はHello Worldくらいしか書いたことないから知らん。monoのような互換環境があるのは知っているけれど、わざわざPC Unix上でmonoを使う気分にはなれなかった。
C++は黎明期に使った感じと、C++11以降に使った感じが驚くほど違う言語。今はかゆいところには大抵STLで手が届くし、autoを使えばイテレーションで腱鞘炎になることもない。PC Unixにも最初から環境がインストールされているか、簡単にインストールできるので毛嫌いせず使うとよいと思う。
Rubyはぎょっとする変更をよくやるというイメージ。これで書かれたプログラムを長年愛用してきたが、ぎょっとした変更を入れられて動かなくなったのでgoで書き直した。その点ではpythonも3でおいていかれたので嫌い。
TypeScriptは書いたことないから知らない。JavaScriptだと大規模コードを書くとつらいのでTypeScriptを使おうという人がいるのは知っている。大規模なコードを書くとしたら、インタフェースに合った呼び出しかコンパイル時にチェックしてくれるような強く片付けされた言語のほうがよくなってくるというのはわかる。
Cは片付けし、構造化したプログラムを書きやすくしたアセンブラ...というイメージだったんだけど、C99くらいから便利機能がいろいろ入ってそうでもない感じになった印象。昔はCのコードを見たら最適化した後のx86アセンブリが見えていたんだけれど、最近は見えなくなってしまった。子供のころ、本屋で秘伝C言語問答 ポインタ編に出会ったのがこの業界に入るきっかけだったのかもしれない。ほかの言語でいろいろ楽に書けるから、カーネルをいじるか、システムコールをたたくかするときくらいしか自分の中では出番がなくなってしまった。
これ以下のランキングのもその気になったら書こうかな。
Flashより後発の癖に短命だったな
本当は自分とこのブログに書きたかったけど、面倒だったのでこっちに。
(この人現れるまで、バーチャルYouTuberと言うものを知らなかったのでこういう印象になる)
可愛いモデルにオタ声という、変なインパクトの有る人。起爆力は確かにある。
それだけじゃなくて動画内でやってることも割りとゲテモノじみてて面白かったので、バーチャルYouTuberという存在に興味を持つきっかけにはなった。
初手のつかみは良いんだけど、他のバーチャルYouTuber知ってしまうとあまり面白みを感じなくなるので、初心者用の入門といったところ。
バーチャルYouTuberが面白いって印象を植え付けたYouTuber
のじゃロリおじさんだけだったら色物で一発ネタで終わってたけど、続いてタイミングよくこいつが出てきたおかげで「バーチャルYouTuberって面白いやん」って印象を植え付けることが出来た
面白いのは面白いんだけど、動画数が少ない上に、中の人っぽい人の動画が面白くてそっちを見るようになってしまい、結局、黎明期の英雄みたいな感じになってしまった
首絞めハム太郎って言葉のお陰で注目が集まった感は確かにある。
初見でダサい服着てんなモデルにセンスないなって感じであまり注目はしなかったが、猟奇系のゲームが好きとかいう妙な性癖のせいで注目度は集まった。
ただ、見た目が。うまく説明できないがなんとなく野暮ったい。
ノースリーブ縦縞背中あきシャツとか言う妙ちくりんな格好してるせいかもしれない。
ゲームが上手いだけのオタサーの姫みたいなのかとも思ったが、声芸はちゃんとで来てるし、変な性癖持ってたりと他にない特徴がある。「順番に殴るね」
中の人のクオリティにモデルが追いついていない感じはする。動きや可愛さをましたほうが良いと思う
初見だと特に特徴がない感じだが、ジワジワと面白さが分かる感じ。
初見だと「声優のラジオみたいでクソつまらん動画やのォ」としか感じなかったが、各ゲーム実況のリアクション見てると割と面白い。
指摘されてるようにモデルのクオリティが高いのも良点。ちゃんと表情作れてるんだよねこれ。
ノリがエロゲすぎて無理
ある意味一番存在感がない。マイクロソフト台湾のSilverlightのイメージキャラみたいなあまりにコテコテな萌えに全振りすぎなモデルに、やってることがエロゲの公式四コマみたいな当たり障りのないキャラじみてて特徴がない。
エロゲ特有の糞つまらないギャグまで真似しなくていいと思うのだが。
萌えに振ってるけどなんか可愛いとか面白いとかいう印象はしないキャラ。
VOICEROIDでバーチャルYouTuberやると言うことは誤認識との戦いだということを教えてくれるYouTuber
モデルのデザインがとてもいい。猫耳白髪ゴスロリと言うあらゆる人に性癖ド直球なモデル。
まあ、モデルは良いんだけど、モーションがすごい単調。基本的に前後に揺れるか左右に半回転するかだけなので。
音声認識ソフト→文字変換→VOICEROIDという過程を経て音声出力してるので誤認識がひどい。まあそれもネタにできてるので良しとしましょう
NHK枠と言われてるけど、NHKだったら流石にここまでクオリティ低いモデルは使わないだろという気がする。
むしろ公官庁系じゃないのかな、こんなの作るの。意思決定者が老人だから萌えにも理解がなくてこんなキャラになってしまいましたと。なんとなく地方の村おこしに使われそうな印象ある。少なくとも経産省系ではないな。
歌はうまいのかどうか分からんすね。他のバーチャルYouTuberの歌聞いたこと無いんで。
頭が馬って時点で某氏思い出して無理だし
まあ、やりたいんなら勝手にやっててくれって感じ
のじゃおじ系統のバーチャルYouTuber(モデルは女性で、声は男)
のじゃおじでバーチャルYouTuber知った自分にとっては極めて正当に見えるバーチャルYouTuber
なんかリアルYouTuberかニコニコ生放送主とか、そういう「自分の声に商品価値がある」と思ってそうな人種のような感じがする
モデルはべらぼうに可愛いんだけどね……それもニコニ立体ちゃんというライセンスのゆるいMMDの改造モデルだけど。
ネカマ歴32年の始祖バーチャルYouTuber(始祖鳥的な用法)
他のバーチャルYouTuberには無いコメントをリアルタイムにバーチャル空間に表示して手に持ったり、twitterのハッシュタグのついたツイートをウィンドウとして表示して手に持ったり
技術的に他より一歩秀でてる感じがする
これを2017年1月段階でやってたと言うんだから驚き。でもバーチャルYouTuberではないらしい。
かなり高いボイスチェンジャー使ってるらしいが、それでも妙な感じがする(ねむよりはマシかも知れないが)。ねこますがボイスチェンジャー使わないのはこのひとのせいかもしれない(ねこますとみゅみゅは交流あるらしい)
服装とか初回のシチュエーションがもうエロ漫画かエロゲ導入シーンみたいで無理。
巨乳は良いとして、乳揺らすのってなんかイラッとする。お前らこういうのが好きなんだろ~?シコっていいのよ?って言われてる気がして。
ちょいとしたエロ要素なら喜ばれるだろうけどここまであからさまなのは引くわ。
ギャルゲーの幼馴染枠。
特徴のないのが特徴。エヘ顔ダブルピースすると余計島村卯月っぽくなる
あいにく年下の女の子をお姉ちゃんとかママとか呼んだりする趣味はないので……
仙狐さんの「世知辛いのじゃー」をTwitterで見る→「バーチャルのじゃロリ狐娘YouTuberおじさん」とか言うパワーワードじみた言葉を知る→けもみみVRちゃんねるへ→バーチャルYouTuberよくばりセットを見る
となっているので恐らくそれより前にバーチャルYouTuber知ってた人とは感じ方違うだろうとは思うな
ブクマ禁止って追記したかったんだけど既にブクマされてたのでもういいや
なんか返せそうなのだけね
あおいそらちゃんのことも教えて!
え、誰
のじゃおじが偉大な人…?
むしろのじゃおじが偉大じゃなかったら誰が偉大なんだ?
意見が食い違うって悲しいことね
なぜリンクを貼らないのか
え、いる?
係員や警察官に喰って掛かってるドライバーもいた。分かってやれよと思うんだけどな。
で、俺の方ときたら迂回すべきコースが分からず、たぶんあっち行っててきとーに曲がれば、
知ってるコースに戻れるだろうと思って、走り始めた。
走りだしてすぐ、あっ、ケータイ持ってたなと思いだして、マップで確認しようと思った。
以前使った事のあるルートラボ。
事前にコースを作成しておくと、そのコースと現在地を表示してくれる機能も有る。
現在地を確認し、迂回すべきコースを大体把握したところで、リスタート。
ケータイをナビのようにハンドルバーに固定して使ってる人もいるけど、
貧乏人の俺には万が一のことを考えると、とてもそんな真似は出来ないんで、
話が見えなくなってきた。
出先で道に困った時、ケータイって便利だなと思った。
ただ、ルートラボって無料だし、割り切って使えば使えない事は無いんだけど、
Silverlight対応では無くなってから使いにくくってしょうがない。
ホッテントリメーカーで作るような煽りタイトルって、みなさんもう見飽きてると思うんですよね。
今調べたらホッテントリメーカー2008年だそうで。どうりでねー。古臭いなーと思いましたよー。
「一から学ぶJava」ってのをね、1.0にするだけでこんなに素敵なタイトルになるんだから面白いですねー。
タイトルを思いついただけだったんですけど、思いついたらやっぱりちゃんと中身も書かないと行けないじゃないですか。やだー
面倒くさいんですけどね。ちょっと1.0から学んでみましょうか。
Javaの1.0がリリースされたのは1996年1月23日ですね。発表されたのが1995年5月23日でJavaの誕生日といった場合にどちらを取るかで揉めることがあります。
かれこれ20年前なわけで、当時のパソコンというとハードウェアはCPU が Pentium 133MHz メモリ16M とかそんな感じだったかなあ。今どきの携帯電話の例としてiPhone 6sを挙げるとCPUが1.85GHz メモリ 2G ってんだから凄いですね。OSは1995年11月23日にリリースされたWindows95とかそんな時代背景です。インターネットがようやく一般に普及し始めたところでしょうか。
今から思うと相当弱いハードウェアですけども、そろそろVM方式を採用しても良さそうな、そんな時代でした。インタープリタだと流石に遅い、でもC言語のようなコンパイル言語だと"Write once, run anywhere"とはいかない、という判断もあったのだろうと思います。Javaが純粋なオブジェクト指向言語ではなくintなどのプリミティブ型を持つというのは、当時のマシンスペックを考えた場合、ある程度妥当な判断だったと言えるでしょう。これが後々苦しくなってくるわけなのですが。
Javaを作った会社はSun Microsystems(サン・マイクロシステムズ)というアメリカの会社で、2010年1月27日にオラクルにより吸収合併され今はありません。SolarisというOSとSPARCプロセッサでUNIXサーバーの販売で90年代後半までは一人勝ちのような状況だったと聞きます。当時にすでに「ネットワークこそがコンピュータ」(The Network is the Computer)というモットーを掲げてたんだからおかしい。1996年リリースのJavaが標準でネットワーク機能を備えていたのもこのあたりの思想から来ているのかもしれませんね。
当時のプログラミング言語としてC++が挙げられますが、C++でのプログラマへの負担といいますか、ヒューマンエラーの起きやすさといいますか、その辺を改善する目的で開発されたのがJavaだったわけです。
1996年の時点にこんな言語が登場したのですから革新的でした。
いろんな企業がJavaに賛同します。その中にはMicrosoftもありました。この時期、Microsoftは次期のWindows開発用のプラットフォームにJavaを据えようと考えていました。その後、袂を分かつことになるのですが……。
プログラム言語として構文などを見ると、C++を強く意識した構文なのは間違いなく、しかしポインタ演算を廃してポインタを機能を限定した「参照」に置き換えるなど簡素化が多く見られます。C++からはいろんな機能が削られています。関数ポインタ、構造体、演算子オーバーロード、テンプレート((テンプレートについては実装が間に合わなかったという話を聞きます))などなど。そのためC++の劣化であるように揶揄する人もいますが、こうしたものを捨てて言語仕様を比較的小さくシンプルに抑えた点は評価に値すると思います。しかし、今でもこうした削減された機能を愛する人からはJavaを腐す要素として挙げられてしまうのでした。
Wikipediaからピックアップすると1.1での大きな機能追加は
といったところです。当初よりJavaの内部文字コードはUnicodeで文字を表すchar型は16bitで設計されていました。Unicodeは当時それほど普及しておらず、Unicode対応のテキストエディタさえ少なかったと記憶しています。時代を先取りしていると言えますが、大きな誤算はUnicodeが当初16bitのコードポイントに世界のあらゆる文字を格納しようとしていたことで、漢字圏の我々からすると16bit=65,536程度の空間に文字が全部入るわけないだろ!というものだったが故に早々に破綻し、Unicodeは21bitのコードポイントに拡張されることになるのです。これはまた後の話。
なんにせよ、日本語が対応されたのは1.1からで、日本でのJavaの採用が始まったのはこの頃からと言えましょう。
当時のJavaのGUIはAWTというものでしたが、これを用いたGUIの開発は当時は結構行われていたイメージですね。Visual BASIC でGUIを作るプロダクトも結構あったと思います。GUIのためのオブジェクト指向言語としてJavaが使われていたイメージがありますね。JavaBeansもそのための仕様でした。件のsetter/getterの話題に繋がっていくのですが。
JDBCはJavaとデータベースをつなぐインターフェースです。RMIではあるJava VMから別のJava VMにオブジェクトを送って実行する、といったことができます。こうした機能が用意されたことで、ソフトウェアのフロントとしてのGUI、裏方の実装のためのネットワーク機能、データベース機能、さらにはソフトウェアを配布するためのJava Appletという布陣でJavaでのソフトウェア開発が加速していた時代といえます。
Microsoft Visual J++ もこの時代ですよ。
Java 1.1以降のバージョンのものは互換性確認のためにOracle Java Archiveからダウンロードすることができ、今でも入手することができます。もちろん、Java7ですら2015年4月にEOL(End of Life,サポート終了)となっているので、通常利用するのはJava8としてください(本稿執筆時点)。
当時のドキュメントを見るのも一興です。現在と比べると標準APIがかなり小さい。なお、当時のjavadocは今とはデザインが大きく異なります。
この時代であれば、全パッケージを舐めて標準APIを学ぶこともそう難しくはありませんでした。この時代から触っている人間は新バージョンが出るたびに増えるAPIを順に学んでいけたのです。しかし、現代にJavaを学ぶ場合、どのバージョンでは何があって……というのをいちいち学ぶ必要はほぼありません。Java5以前は一緒くたでいいと思いますし、一部のAPIで歴史的経緯があってねーというのを知っていればおそらく十分ではないでしょうか。
strictfpキーワードは浮動小数点演算をやる人は覚えておきましょう。JavaはパフォーマンスのためにCPUの浮動小数点演算を扱うことが許されており、そのため実行するCPUによって精度が異なることがあるんですね。まあ今時のCPUだと大丈夫だとは思うんですが。
リフレクション機能ではJavaのクラスを抽象的に扱うことができます。設定ファイルに書かれたクラス名のclassをロードして実行する……みたいなことができるんですね。フレームワーク的なものを作る場合には多用することになります。
1.2からは新しいGUIのSwingが採用されました。AWTがOSごとのGUIパーツを用いていたためデザインに違いがあったのに対し、Swingでは統一的なルック・アンド・フィールが用いられるようになりました。まぁ今ならJavaFXを使うのが良いと思います。
初期のJavaはやはりVM方式の実行速度の遅さが指摘されていました。実行時の構文解析を伴わないだけインタープリタよりは早いものの、実行バイナリを作るC/C++よりは遅い、そうした評価です。ここではサン・マイクロシステムズのVMにJIT(ジャストインタイムコンパイラ)が乗ったことが挙げられていますが、JIT自体は別の会社が先駆けて開発していたことは記しておきたいと思います。
JITコンパイラは実行時にJavaのバイトコードを環境のネイティブコードにコンパイルして動かす技術です。この後、JITコンパイラ、動的再コンパイル技術、世代別ガベージコレクションを備えたHotspotといった様にJavaVMは進化していきます。現代では実行時の最適化が進み、大きなスケールで見た場合、Javaの実行速度はC/C++での実装と比べてそれほど遅れるものではありません。遅くても倍の時間は掛からない程度といったところでしょうか。
あとは特記すべきはコレクションフレームワークです。皆が多用しているであろうjava.util.Listやjava.util.Mapといったライブラリが整備されたのがこの時なのです。それ以前はjava.util.Vectorやjava.util.Hachtableというクラスが可変長配列の機能を一手に担っていました。今ではVectorやHashtableは使うべきではありません。
Java の開発はSun Microsystems が主導していたけども、すべてがSunのものだったというわけでもなく。Javaには多くの会社が出資していてその中のひとつがMicrosoftだったわけですね。
Microsoft の Visual J++ では delegate とか独自機能拡張もありましたけど、裁判で問題になったのは J++ でコンパイルしたclassファイルはMicrosoftのVMでしか動かないという部分ですね(他社製のVMで動くclassファイルを作ることもできる)。classファイルがどこのVMでも動くの大事だろ、"Write once, run anywhere"だろ、お前何してくれてんの!と喧嘩になったわけです。当時のMicrosoftはブラウザまわりでも独自拡張がやりたい放題、標準規格?なにそれ美味しいの?みたいなスタンスをあちこちで見せていたものです。
結局、この事件でMicrosoftのJavaはバージョン1.1相当でストップ。好き勝手にやれないなら独自に言語作るわーとばかりに.NET フレームワークと C# といった方向に舵を取ります。
JavaがPC上でのUI開発の主力になろうとした勢いはここで潰えます。
Java SE とは別にこの時代に Java EEがリリースされていることは特記しておきたいですね。これ以後、それまでのCGIに取って代わって、JavaはWebサービスの開発のプラットフォームとして多用されるようになります。
2000年あたりからはJavaはGUI開発というよりは、Webサービスの開発が主流という流れになっていきます。インターネットのサービスが非常に発達していった時代、背後ではとてつもない量のJavaのプログラムが支えていたわけです。ただまあ、こうした産業利用は一般的なユーザーの目にはあまり入らないわけです。一般人からすればJavaといえばJava Appletみたいなイメージはずっと残っていたでしょうが、実体としてはJavaといえばServletという時代になっていたわけです。
企業で用いられる社内システムにもServletは多く採用されました。
理由はいろいろ挙げれると思うのですが
というのが大きな理由だろうと思います。JSPというテンプレートエンジンを用いてHTMLを整形してWebページを作り出す、というアーキテクチャはある意味では便利で簡単でした。
もっともHTMLの表現力に足を引きずられるため、GUIの機能性という点では後退したわけなのですが。それでもメリットが大きいと判断されたのでしょう。というか、まともにGUIを組めるプログラマがほとんどいないから、GUIのシステム開発がなかなか成功しないってのもあったんでしょうけどね。
2000年あたりというと携帯電話の普及も取り上げなければなりません。現代のスマホ、ガラケーに比べれば非常に機能は貧弱で、まさに携帯「電話」でした。要するに電話とメールぐらいしかできなかったんですね。
そこにdocomoのiアプリ、Jフォン(ボーダフォンを経て現ソフトバンク)のJavaアプリ、auのEZアプリという携帯電話上でちょっとしたアプリが動くよ!というのが乗るようになってきたんです。これがJavaを組込み用途にコンパクトにしたJava MEというものが土台となっていて(正確にはiアプリはちょっと違う)Servletと並ぶJava言語の大きなもうひとつの領域となっていました。
iアプリは当初は容量が10k byteまでといった制約があり、容量制限が非常に厳しかったのですが、新機種が出るたびに容量は緩和されていきました。
docomoはiアプリ含めiモードによって一世を風靡します。こうした土台を作ると、その上で商売をしたい人がたくさんやってきて、勝手にコンテンツを作ってくれる。docomoはそれらから手数料を取るので労せずして大金を稼げるというわけです。賭場の胴元というわけです。
この賭場が、将来にAppleのiPhone, GoogleのAndroidに荒らされることになります。docomoがなかなかiPhoneを出さなかったのもiモードという自前の賭場を失うことを良しとしなかったためです。金づるを失ったdocomoはSamsungと組んで独自の携帯向けOSであるTizenの開発に乗り出します。そんなTizenですが鳴かず飛ばず。噂ではインドあたりではリリースされたとか、なんとか。
話を2001年に戻しましょう。
Microsoft離反でGUIのプラットフォームとしてのJavaというものは存在感を弱めていました。この分野の復権に寄与したのはJava 1.4 (2002年2月6日)で導入されたJava Web Startです。
Java Appletがブラウザ埋め込みで動作したのに対し、Java Web Startではブラウザから起動しつつも独立したアプリとして起動するのです。
Webシステムが企業の社内システムに採用された話は先に述べたとおりですが、やはりWebシステムのGUIというのはHTMLに引きずられて貧弱だったんですね。
端的に言えば入力値が数字かどうか?みたいなチェックがなかなか難しい。HTML上でJavaScriptでやるわけなんですが、なかなか気持よく入力できるような感じにはならなかったんですね。
また、Ajaxによるブラウザのページ遷移を伴わない通信というのが出てきたのも2005年ぐらいなので、入力値に対してサーバ問い合わせするようなことはできなかった。当時だと一旦画面遷移させないとできなかったわけです。
こうした事情から、クライアントサイド、要するにPC側でもっとリッチなUIが使いたい!という要望があったわけです。Webシステム使いにくい!という不満の噴出と言ってもいい。そこで出てきたのがRIA (Rich Internet Applications)というわけです。
Javaは1.0時代のAppletからそうですが、ネットワークを介して別のPCにプログラムを送り込み、そこで動作させるという能力を持っていました。それこそまさにRIAに求められる機能性だったわけですね。
RIAの代表とされるのは
あたりです。三つ巴の戦い、どこに軍配が上がるのか!?と注目されましたが、勝利したのはHTML / JavaScriptでした。
Google MAP で注目を浴びたAjax技術、それまでブラウザでは不可能と思われていた高級なGUIをHTML / JavaScriptで実現させました。もうやめて欲しいですよね。せっかく脱ブラウザの流れが来たと思ったのにまたWebシステムに逆戻りですよ。
RIAが失速した理由として考慮して置かなければいけないのはスマートフォンの台頭です。RIAでは端末を選ばずどこでも同じアプリが動かせる点がポイントのひとつでしたが、スマートフォンではそうは行かない。"Write once, run anywhere"を破壊したのはスマートフォンだったというわけです。
しかし、先日インストールなしでアプリを実行するAndroid Instant Appsが発表されたりしまして、結局RIAの思想といいますか、要求というのは今でも息づいているのだなと思った次第です。
1.3 / 1.4 では機能追加はあっても言語構文が大きく変わることはありませんでした。大きく変わったのはJava 5です。この時からバージョニングが変わって1.5ではなく5と表記されるようになりました。
Java5の特徴はなんといってもジェネリクス。それまでjava.util.Listにデータを出し入れするのにはキャストが必須だったわけですが、ようやくキャストから開放され型の安全度がぐっと高まりました。その他に以下のような変更があります。
言語としては随分変わっったわけですが、もうかれこれ10年以上前のことですからこれらの機能が「Java5から導入された」という知識は今となってはあまり必要とされません。これらの機能が使えないJava 1.4で開発をする事案が殆ど無いからです。0ではないのが悲しいところではありますが。
Java 6 (2006年12月11日)がリリースされた後、Java 7 (2011年7月28日) が出るまでJavaは停滞してしまいます。その間にSun Microsystemsという会社がなくなってしまったためです。
Sun Microsystems の経営状況が悪化しており、ついに身売りをすることになりました。身売り先はIBMともGoogleとも噂されましたが結局2010年1月27日にオラクルに吸収合併されました。
Javaの停滞中にはJava VM上で動く非Java言語も台頭してきました。Scalaなどですね。
やや戻って2007年にAndroidが発表されます。Androidの開発言語にはJavaが採用されていますが、実行環境はJava VMではなく、ライセンス的な事情でJava(TM)は名乗らない微妙な位置関係にあります。
Java 5 以降で大きく言語仕様に手が入るのは Java 8 (2014年3月18日)です。並列処理を行うためのStream APIと、そのために簡易に関数を定義するためのラムダ式が導入された点が大きいですね。日付APIも刷新されました。
このように、Javaは1.1の黄金時代から今に至るまで利用ジャンルを転戦しながら産業の土台となって支えてきた歴史があります。ジャンルの趨勢により浮き沈みもあります。今後についても決して楽観視はできないでしょう。Javaを学ぶことはプログラミングを学ぶステップとしては意義はあると思いますが、Javaを学べばゴールというわけではありません。プログラム言語も次世代へと移りつつあります。業界動向には注視していきましょう。
dビデオとかdアニメとかをいつもの様に見ようとしたんだけど、なぜか見られない。
延々とsilverlightをインストールしろと出て困ってる。
そんな人いませんか?
当方、やっと解決したので、同じような事態に陥った人のために書いとく。
まず、自分の環境はwindows7でブラウザは64bit版のchromeだったんだけど、64bit版だと動かないみたい。
だから同じく64bit版の人は32bit版をインストールし直そう。
それから2015/5/6現在のchrome(32bit)のバージョンが42なんだけど、そのままだとsilverlightは動かない。
じゃあ、どうすればいいかというと、NPAPIとかいうのを有効にすればおk。
アドレスバーにchrome://flags/と打ち込んで、該当項目を探してくれ。
以上。
下記のブログ記事がわかりやすいです。私はこの記事に救われました。ありがたや。
http://tasano2525.blogspot.jp/2015/04/google-chromesilverlight.html
情報あり
PCで見えるサンプル動画でもないかと行ったらSilverlight入れろと言われてゲンナリ
当分は遠巻きに見守ることにするよ
中高とずっとイジメられていて、殴り殺されたら楽になるのにとずっと考えていた。
当然友達なんて一人もいなかった。
けど、ToHeartやこみっくパーティーやToHeart2のアニメを見るために、東映KANONのアニメを見るためにとりあえず生きていた。
P/ECEに音楽を入れて電車の中で聞く時間だけが救いだった。(叩かれそうだから、ボカして書いてるけど色々察し欲しい)
そして、ToHeart2のアニメを通じてラジオという人間が生み出した最高の娯楽と出会い、少し前向きになり、
そのラジオで話されていた「同性愛」というものに興味をもち、ジェンダーについて学びたく大学進学のために勉強をはじめた。
相変わらず友達は一人もいなかったけど、教授や院生の先輩たちと仲良くなった。
最初は教授の外国語の講義で興味をもって、その教授の交通学の講義をとって、その教授のゼミに入って、
そこで交通シミュレーションのプログラムに触れたのが、僕が動いているプログラムに触れたはじめたの体験だった。
教授自身に興味をもち、交通学に興味をもち、そしてプログラムっていう仕事に繋がる楽しいことが見つかった。
論文を書いて学会に出たはいいけど、質疑応答でしどろもどろになって、ホテルで教授に慰められたのもいい思い出だ。
四回生の先輩の卒論用のプログラムを代わりに書いていたら、気づくと卒論の本文までほとんど僕が書くことになったのも
自分が四回生になったときに、ゼミの人たちのプログラムの大半に携わっていたのも、大変だけど本当に楽しかった。
大学でやっていたFortranとは全然違う.Netをはじめとするマイクロソフトの技術に触れたことで、より一層プログラムが好きになった。
特にSilverlightを使って3DアニメーションのUIを開発したときは、大学の時に学んだ数学がこんな所で役にたつのかあ、とシナプスが繋がる楽しさがあった。
プログラムだけじゃなくて、自分で企画したWebアプリのプレゼン資料の準備をするのも楽しかったし、
派遣でいった先で、Flexに触れて、暇なときにパフォーマンスチューニングをゴリゴリやって、レスポンスを10倍ぐらい早くできたときは
「自分この仕事向いてるんじゃないかな?」とか天狗になって、そのあとそのパフォチューのせいでバグが見つかって大目玉を食らったけど
それでもやっぱり、楽しかった。(本番環境にデプロイする前で本当に助かった)
RIAだけじゃなくて、WindowsFormsでガントチャートをなんのライブラリを使わずにつくる仕事も楽しかった。
D&Dの実装はメンドイし、お客からは「この線を船の形にしてや!」なんて無茶振りにこたえるのも楽しかった。
そのあと、確かSilverlightが実質終焉を迎えた頃、事件があった。
女性社員と個人的にもめたのが拗れて、裁判沙汰になり、和解金を払い解決した。
その事件のせいで、就職した会社にはいられれなくなったものの、タイミングよく独立する上司がいたたため、
その人についていって、仕事に困ることはなかった。
本当に楽しかった日々は、それ以来ツラいだけの日々になった。
なのに、今僕は中高生のツラかったあの日々よりも、ツラいと感じている。
何も理由はない、転職したけど仕事にも不満はない、友達は相変わらずいないけど、Xboxをつければフレンドのアバターが迎えてくれる。
はてなにログインすれば、お知らせのところの赤い丸数字が承認欲求を満たしてくれる。
なのに、今ただただツラい。
本や漫画を読んでも、文章がブロック単位で入ってこない、ただの一文字一文字の羅列としか思えない。
ゲームをしていてもコントローラーを持つ手がいうことを聞いてくれない。
仕事もあれだけ楽しかったプログラミングがただの穴を掘って埋める意味のない作業にしか思えない。
特に女性の声は聞くだけで発狂しそうになる、タオルを口につめないと大声をあげてしまいそうになる。
ただただ、ツラい。
足を動かすのが、トイレにいくのがツラい。
それでも、その上司のことを考えると自殺するわけにはいかないと思い頑張ってきた。
けれど、どうももう僕がいなくても、大丈夫になったと思う。
そう思えたときから、ツラい日々が「どう自殺するか?」を考える日々になった。
今請け負っている仕事が終わるのが三月末。
そろそろ退社の意思を伝えて、六月ぐらいに退社して、自殺しようと思う。
嘘です。
自殺なんてしたくない。
死にたくない、ラジオを聞きたい。
ゲームがしたい。
アニメがみたい。
本が読みたい。
プログラムがしたい。
でも、その全てが楽しくないんです。
誰か僕を見つけてください。
追記
よこから失礼。
As3なら無料のFlashDevelopで十分だよ。純正品より使える。FlexSDKも無料だから、実質無料でコンパイル環境は整う。
Adobeのやつも買ったがFlashDevelopのほうがいい。
あと、HTML5 vs Flash とかいってるけどさ、ちょっとWEBにも動きがほしいよねレベルのFlashはどうせ消えるでしょ。HTMLコーダーが食えてた時代が終わったみたいなもの。だいたい情報系の言語スキルなんて5年も持たないって。
ばかでもつかえるエディターが出ればすぐ終わるよそんなもの。HTML5もそう。
生半可な人がそこに活路をもとめて漕ぎ出したところでエディターが出るまでの寸暇のアドバンテージもない。
そんな範囲のことが飯の種になるわけないじゃなぃぃ?
誰かがつくったものを真似して、誰でもできるようなことになっちゃったら制作単価下って食い合いになって終わりさ。
Airアプリでも書けって。だいたいHTML5と比較するのにFlash語るのにAir含めないってどうかしてるよ。
ただFlexで書くならフルスクラッチでゴリゴリ書けるひとじゃないと何もできないから、組み合わせるだけのプログラミングしかできない人はまだお呼びでないだけ。しかもScriptなのにコンパイルだからネット上でナレッジシェアされないしね。
FlexはActiveXやAppletと比較するべきで、プラットホームのHTMLと比較すんのはどうなのかなと思うよ。
あと、おまえらSilverLight馬鹿にしてるけど、日本にはこれが使えるエンジニアほとんどいから結構需要あるんだぜ?
MS以外の某大手もプッシュしている。
つまり、何がいいたいかっていうと、どんな言語、ツール使おうが、その上位10%にでも食い込んでりゃ食えるよ。
というかプログラミングの上位で食ってる人が特定の言語が使えないなんてことはないよね。
もしそう思ってるんだったら、後から来たのに悠々と追いぬかれるよ。
環境のせいにしてちゃ伸びないんだぜ。
いまいるところでまず嚢中の錐になってくだせぇ。
覚書。
Internet Explorer8(64bit版ではない)にてGyaO!、Yahoo!ニュース、DMM等の動画サイトを閲覧するとブラウザがクラッシュする。
Internet Explorer は動作を停止しました
強制終了されるページはMicrosoft Silverlightプラグインを使用したもの。
障害が発生しているアプリケーション名: iexplore.exe、バージョン: 8.0.7600.16700、タイム スタンプ: 0x4cd23213
障害が発生しているモジュール名: getflash.dll、バージョン: 1.0.0.1、タイム スタンプ: 0x4506208e
例外コード: 0xc0000005
障害オフセット: 0x00008c40
障害が発生しているアプリケーションの開始時刻: 0x01cbbb667d383d68
障害が発生しているアプリケーション パス: C:\Program Files (x86)\Internet Explorer\iexplore.exe
FlashGet1.73をインストールしていたのだが、こいつとSilverlightの相性がわるいのか。
ttp://cagami.net/dansyaku_blog/archive/000436.html
のコピペだね。
Silverlightは重過ぎCPU使用率が100%になってページ移動すらできない。
別にGetASFStreamで落として見てるから問題ないけど。
これからのWebサービスとかデスクトップアプリケーション市場はActionScriptとC#の対立になると思っているんだけれども、
その2つを対比している事をあまり見たことがない。
それはたぶんプラットフォームの軸でまとめられているから黒子になっているんだと思う。
ActionScriptはFlashやAIRの開発言語で、それに対してC#はWPFやSilverlight。
Flash VS Silverlightは最近ちょくちょく目にするから対比構造はあるんだろうけれども
それがActionScript VS C#とはならないのはなんでかなぁ
/*
VSと書いたのは煽っているからだけど、もっとC#とJavaのようなイデオロギー紛争になっていも面白いのになぁ。
(ASがJava系譜の流れなんだから、AS vs C#の言語コンセプト論争もあってもいい気がするんだけれども)
畑が違うっていうけれどもAdobeもMSも向かっている所は似たり寄ったりで、
事実、技術採用の時にFlashか?Silverlightか?みないな話は水面下でちょいちょいあるはずだと思う。
(それで「やっぱりFlashかな」とかなるんだろうけど)
*/
仮にRIAっぽいことを目指すならFlashかSilverlightかを選択肢にあがるけれども、
そこにはプラグインの機能有無や普及の優劣の話しか持ち上がらない。
ビジネス的にはもっともな論点だけれども、
デベロッパから見た選択理由としてプログラミング言語のあれこれを考えないはずがない。
それなのにその考えが全然見かけないよ。