タグ

ブックマーク / xtech.nikkei.com (27)

  • Windows版Linuxの導入でつまずかない方法

    2017年10月17日に一般提供が始まる「Windows 10 Fall Creators Update」は、Windowsの正式な機能としてLinux互換環境「Windows Subsystem for Linux(WSL)」を搭載する。Windowsストアから簡単にLinux OSを導入できる機能だが、つまずきやすい落とし穴がある。 Windowsの中でネイティブのLinux OSを動かせる「Windows Subsystem for Linux」。Fall Creators Updateから正式版になった。画面はUbuntuのもの。 導入までに必要な操作は、 Windows Subsystem for Linux(WSL)を有効化 Windowsストアからインストールして起動 ユーザーアカウントを作成してログイン の3ステップだ。いきなりWindowsストアで「linux」、またはL

    Windows版Linuxの導入でつまずかない方法
    tako222
    tako222 2017/10/11
  • 関数型プログラミングは本当に難しいのか

    2012年9月初頭、東京・某所で開催された「函数プログラミングの集い 2012」というイベントに参加した。 このイベント、文字通り、「Haskell」や「Scala」「OCaml」「F#」「Erlang」といった関数型プログラミング言語に関するイベントなのだが、その午前中の講演を聞いて、筆者は少々面らった。 関数型プログラミング言語などの研究者である電気通信大学 准教授の中野圭介氏による講演だったのだが、同氏は講演が始まるや否や「これから『爆弾』を投下します」と前置きし、こう述べたのだ。 「『関数型言語』を使ってはいけない」と。 関数型プログラミングに関するイベントで、いきなり「使うな」という発言は、確かに衝撃的である。筆者だけかもしれないが、この発言の後、一瞬、会場が凍り付いたようにも見えた。一体、どういうことか。 実はこの発言、「使うな」という部分に重点があるのではなく、「関数型言語

    関数型プログラミングは本当に難しいのか
  • MicrosoftがJavaScript系の新言語「TypeScript」を発表、C#の父が開発

    Microsoftは米国時間の2012年10月1日、JavaScriptに拡張を施した新言語「TypeScript」を発表した。C#の生みの親である同社Technical FellowのAnders Hejlsberg氏らが開発した。 TypeScriptは、構文的にはJavaScriptのスーパーセットで、糖衣構文を付加したもの。膨大な人口を抱えるJavaScript開発者に配慮した形である。既存のJavaScriptライブラリなどと共に使うことができる。 TypeScriptのコンパイラは、TypeScriptのソースコードを読み込んだ上で、JavaScriptのコードを出力する。コンパイラはオープンソースライセンス(Apache License 2.0)で公開した。 TypeScriptの特徴は、文字通り、JavaScriptに対し型システムを強化した点である。JavaScript

    MicrosoftがJavaScript系の新言語「TypeScript」を発表、C#の父が開発
  • コード解析の自動化(2)高度な静的解析から構造解析まで

    前回は、ソースコードの静的解析ツールがいかに有効で、プログラマにとって必須のツールであるかを紹介しました。コーディング規約チェックや潜在バグチェックでも、プログラムの品質を高める十分な効果が得られます。ただし最近では、より高機能な静的解析ツールがあります。今回はそれらを紹介します。 複数クラスにまたがった問題を静的解析するツール 前回紹介したCheckstyleやFindBugsは、一つのファイルが解析対象です。つまり複数のファイル(クラス)にまたがった問題によって生じるバグの検出には適していません。また、どちらも基的にはある決められたパターンに従っているかどうかをチェックする仕組みをとっていますので、あらかじめ用意されたパターン以上の解析はできません。 一方、複数のファイルにまたがって関数(メソッド)の呼び出しを追跡しながら、プログラムの実行をシミュレートする高度な静的解析ツールもあり

    コード解析の自動化(2)高度な静的解析から構造解析まで
  • コード解析の自動化(1)ソースコードのスタイル、作法チェック

    システム開発において、ソースコードの品質を担保するためにはソースコードレビューが不可欠です。ソースコードレビューには主に、以下の三つの役割があります。 コーディング規約順守のチェック バグ埋め込みのチェック 性能劣化のチェック これらのチェックは、実装(コーディング)工程で行うべきものです。コーディング規約の違反箇所は、実装工程の後では修正される機会は少なくなります。また性能問題を放っておくと、システムテストなどかなり後の工程で明るみ出て、リリースまでに残された少ない時間の中で対応を余儀なくされるといった事態になりかねません。 このように、ソースコードレビューには、その後の工程で補うことができない大きなメリットがあります。繰り返しますが、ソースコードレビューは必ず行うべきです。しかし実際の開発現場では、以下のような制約により、十分にソースコードレビューを行えないことがあります。 必要なスキ

    コード解析の自動化(1)ソースコードのスタイル、作法チェック
  • 簡単だけど奥深い!Scratchプログラミングの魅力

    最近、新聞やテレビで注目を集めているプログラミング言語に、米MITメディアラボが開発した子供用ビジュアルプログラミング環境「Scratch(スクラッチ)」がある。 Scratchのスローガンは、「simplicity(単純さ)」であり、そこには混じり物を排したプログラミングの基概念の“質”が残っている。また、子供だましではない“物”のプログラミング環境を示すことで、子供たちに実際に使ってもらうことを狙っているのも大きな特徴だ。 そこで、プログラミングに関係する重要な考え方についてScratchを通して見ていきながら、考え方の質について考えてみよう。

    簡単だけど奥深い!Scratchプログラミングの魅力
  • 応用情報技術者試験の傾向と対策(午前編)

    平成23年度春期(特別)の応用情報技術者試験の出題傾向を分析します。 出題の難易度は、前回の試験とほぼ変わりません。ただし、過去の出題されていないテーマや用語の出題もあり、広範囲な知識を求められます。 試験の出題分類や時間、合格基準、実際の過去問題などは情報処理推進機構のサイトをご覧ください。 平成23年度春期(特別)試験 午前試験の出題分析 平成23年度春期(特別)試験の午前の分野別出題は次のような割合でした。 午前試験で合格は60点以上、すなわち80問中48問以上の正解です。常に自分の実力を把握し、48問以上正解するためにはあと何問正解すればよいかを意識しましょう。すべての分野を満遍なく充分に学習するには非常に時間がかかります。そこで、どの分野で何点くらいとれるかの見積もりにもとづき学習計画を立てましょう。 午前試験は、知識を問うタイプの問題が圧倒的に多く(約80%)出題されます。次の

    応用情報技術者試験の傾向と対策(午前編)
  • アルゴリズムへの招待

    適当な圧縮ルールを作り、ASCII文字で描いた絵をなるべく少ない文字数で表現するには、どうする?(詳しくは第2回を参照) アルゴリズムを構成する楽しい仕組みを紹介しながら、あなたに「おおっ」と言わせたい――。これが連載『地球にやさしいアルゴリズム』の最初の目的です。「数独パズルを解く」「ASCIIアートを圧縮する」など12の問題を用意しました。ぜひ挑戦してみてください。 問題を解けても解けなくても、アルゴリズムに興味を持てたなら、関連する文献や記事を抵抗なく読めるようになるはずです。アルゴリズムを使いこなしたり、新しく作ることも無理なくできるようになるでしょう。 まずはいろいろなアルゴリズムの面白いところを見て、楽しんでみましょう。 連載目次 第1回 ナンプレを解いてみよう 第2回 パズルみたいに楽しいデータ圧縮 第3回 「場面」の移り変わりに注目する 第4回 できるだけ短いルートでゴール

    アルゴリズムへの招待
  • 全問解説◆基本情報技術者試験 平成22年秋期

    この連載では、2010年10月(平成22年度秋期)に実施された基情報技術者試験の全問題の解答・解説を掲載します。 全問題を一通り解いて実力診断をしたり、試験前に全問題をおさらいするなど、試験対策としてお使いいただけます。タイトルを見て、苦手そうな問題だけを重点的に解くといった使い方もできます。 問題を解いて解説を読むことで、ITの基も身につきます。若手だけではなく、中堅、ベテランのエンジニアも、自分の知識をチェックするために、ぜひチャレンジしてみてください。 (関連リンク) ・全問解説◆基情報技術者試験 平成21年秋期 ・全問解説◆基情報技術者試験 平成21年春期 (関連資料) ・午前問題の冊子 ・午後問題の冊子 目次 ・基情報技術者試験ガイダンス--試験概要から傾向と対策まで 午前問題 午後問題

    全問解説◆基本情報技術者試験 平成22年秋期
    tako222
    tako222 2011/02/10
    15まで読んだ
  • トロイの木馬「TROJ_TACO.A」(タコイカウイルス)

    「タコイカウイルス」は、2009年夏ごろよりファイル共有ソフト「Winny」で広がりを見せ始めたファイル破壊型のコンピュータウイルスである。ウイルスがファイルの上書きにタコやイカなどの画像を使用することから、通称「タコイカウイルス」と呼ばれている。トレンドマイクロ製品では、「タコイカウイルス」をTROJ_TACOファミリーとして検出対応する。 ウイルス作成者が2010年8月に器物損壊容疑で逮捕されている。国内で初めてコンピュータウイルス作成に同容疑が適用された例として数多く報道され、話題になった。報道によれば、2010年12月9日には同被告の初公判が東京地裁で開かれ、「器物損壊にはあたらず、そういう意図もなかった」と無罪を主張しており、今後の動向が注目されるところである(2010年12月末執筆時点)。 今回の「検証ラボ」ではその「タコイカウイルス」に焦点を当て、ウイルス解析者の目線から一連

    トロイの木馬「TROJ_TACO.A」(タコイカウイルス)
    tako222
    tako222 2011/01/25
    興味深い。
  • 「メモリーを意識してみよう」第4回 進化するメモリー管理:ITpro

    先々週にHotSpot VMでのメモリー管理について解説しました。ここでキーとなるのは世代別GCです。 HotSpot VMで世代別GCが採用される以前は,Old領域のGCで使用されるMark & Sweep GCだけでした。世代別GCが導入されたことにより,GCのパフォーマンスは劇的に向上したのです。 しかし,GCの進化はここで終わってしまったのではありません。Java SE 6(開発コード名Mustang)にいたるまで,様々な改良が加えられてきました。 今週はそれらの新しいGCの手法について解説していきます。その前に,まずは基となるMark & Sweep GCを説明しましょう。 Mark & Sweep GC Mark & Sweep GCは二つのフェーズでGCを行います。 はじめのフェーズで,使用しているインスタンスに印をつけます(Mark,図1a)。Markにはルートインスタン

    「メモリーを意識してみよう」第4回 進化するメモリー管理:ITpro
    tako222
    tako222 2010/10/22
    エスケープ解析について載ってる
  • Windows 7の64ビット版を選ぶべき四つの理由

    稼働中のWindows 7の46パーセントが64ビット版であるという(関連記事)。Windowsウォッチャーを自認し、「Vistaが「遅い」と感じませんか?」「Vistaが『遅い』と感じませんか?その2」「64ビット版Vista最大の欠点」といった記事を書いてVistaの64ビット版を推奨してきた記者としては、ここはどうしても、64ビット版Windows 7のメリットと、それを享受するための注意点を書き記しておきたい。 64ビットWindowsのメリットをひとことで言うなら「大きなメモリーを使える」だ。32ビットWindowsでは、PAE(Physical Address Extension)を使う場合を除き、物理メモリーは最大4Gバイトである。64ビットのWindows 7では、Home Basicなら8Gバイト、Home Premiumなら16Gバイト、Professional以上なら

    Windows 7の64ビット版を選ぶべき四つの理由
    tako222
    tako222 2010/07/29
    やっぱ、64bitだよね
  • Web APIを使ってみよう

    解説はこれくらいにして,実際にWeb APIを使ってみましょう。 利用例として,楽天ウェブサービスに接続し,商品検索を行うプログラムを作成してみましょう。XAMPPを使います。XAMPPはCドライブ以下にインストールしたと仮定して説明します。 楽天ウェブサービスを利用するには,デベロッパーIDが必要です。楽天会員のユーザーID(アカウント)があれば,すぐに取得できます。楽天ウェブサービスのWebサイト(http://webservice.rakuten.co.jp/)にアクセスし,図3の画面の左側にある「ご利用方法」から「デベロッパーIDを取得」というリンクをクリックし,パスワードを入力するだけです。 楽天会員ではない場合は,左側にある「楽天会員登録をする」をクリックして登録を済ませてください。ユーザー登録が終わったら,「ユーザ名」と「パスワード」を入力してデベロッパーIDを入手しましょう

    Web APIを使ってみよう
  • 定番Web APIを知る

    何といってもWeb APIを利用する醍醐味は,各種のWeb サービスを組み合わせて新しいWebサービスを作成するマッシュアップです。 国内でもマッシュアップのコンテスト「Mashup Awards(http://mashupaward.jp/)」などが開催され,大盛況のうちに幕を閉じました。このようにWeb APIに対する関心は,日に日に高まっています。Mashup AwardsのWebページからは,参加企業が提供するWeb APIのリストやマッシュアップの例を見ることができます。その中から,代表的なWeb APIをいくつか紹介しましょう。 Yahoo! JAPAN Web API http://developer.yahoo.co.jp/ このYahoo! JAPAN Web APIは,開発者向けに展開するサービス「Yahoo!デベロッパーネットワーク」(図1)で提供されるWeb API

    定番Web APIを知る
  • 第4回 開発環境編 敷居が低いAndroid、iPhoneは制限に注意

    開発者から見て、iPhoneAndroidはどう違うのか。ITproの記事を読むためのiPhoneアプリAndroidアプリを開発し、「オール・イン・ワンiPhone開発」と「Androidで広がる、携帯アプリ開発の世界」とを執筆したアシアルが両者の違いを解説するシリースの第4回。今回は、開発環境という観点から両者を比較する。 かつて日国内において、携帯電話向けアプリケーション・ビジネスに個人のデベロッパが参入することは、その莫大な参入コストゆえ、かなり厳しいとされてきた。しかし、iPhoneAndroidに代表されるスマートフォンの台頭によってその構図は大きく覆され、今や「日曜大工」的に自作のアプリケーションを公開する個人のデベロッパが急増している。 このように、個人のデベロッパにとっての参入障壁がグッと低くなった要因の一つに、「アプリケーション開発環境の構築のしやすさ」がある。

    第4回 開発環境編 敷居が低いAndroid、iPhoneは制限に注意
  • ログインしてください:日経クロステック(xTECH)

     会員限定サービスです 会員の方はこちら ログイン 有料会員(月額プラン)は初月無料! お申し込み 日経クロステック TOPページ

  • Flex 2.0でリッチなWebアプリを作ろう---目次:ITpro

    エンジニアがFlashアプリを作るためのツール。それがAdobe Flexです。新バージョンの登場でぐっと使いやすくなると同時に,求めやすい価格になったFlexの使い方を解説します。 中垣 茂 隔週更新中 ・第29回 Flexが備えるMXMLコンポーネント(Part13:Tree) 今回は【mx.controls.Tree】コンポーネントを紹介します。階層構造のナビゲーションなどに使われるコンポーネントで,非常になじみ深いユーザー・インタフェースです。ただし,実際に使うときには注意すべき点があります。 ・【特別レポート】ブラウザ/OSを越えた次世代環境「Adobe AIR」を試してみよう アドビシステムズは2008年2月25日に,アプリケーション実行環境「AIR」の正式版をリリースしました。AIRについては名前は聞いたことがあっても,“正体”を理解している人はさほど多くないのではないかと思

    Flex 2.0でリッチなWebアプリを作ろう---目次:ITpro
    tako222
    tako222 2010/03/19
  • 本物のプログラマはHaskellを使う:ITpro

    筆者 shelarcy Haskellは,関数型プログラミングというジャンルに属する言語です。Haskellや関数型プログラミングを題材に物事を見ていくことで,今まで思いもよらなかったような未知の世界を知ることができるでしょう。 プログラミング言語を学ぶという行為には, 言語の基的な文法や考え方を理解する 言語の文化圏で広く使われている考え方に親しんでその言語らしい書き方を習得する 単に言語を使ってできること以上の知恵を学ぶ の3段階があります。この連載では,三つ目の段階を目標に,Haskellプログラミングの世界を一つひとつ丁寧に紹介していきます。 更新は毎月第1水曜日(1月のみ第2水曜日)

    本物のプログラマはHaskellを使う:ITpro
  • 第10回 HTAでフォームを利用したサンプルを作る

    長い間プログラムの世界とかかわっていると、大して古い話でもないのに「そういえば、そんなのもあったね」と懐かしさを込めて思い出されてしまう開発環境がいくつかあります。このカンタン10分プログラミングで何度か取り上げてきたHTA(HTML アプリケーション)もおそらくその一つです。 HTAを思い出そう HTAはHTMLをベースとしたプログラム環境であり、外観はHTML、内部処理はVBScript(まさに「ああ、そんな言語もあったね」の典型ですね)あるいはJavaScript(頑なにマイクロソフトは“これはJScriptだ”と主張していた時期です)で実装します。HTMLベースなのでコンパイルも必要ありませんし、メモ帳のようなテキスト・エディタさえあれば誰にでも簡単に作れるお手軽な開発環境です。 実際にはHTAという開発環境用のランタイムが存在していたわけではなく、Internet Explore

    第10回 HTAでフォームを利用したサンプルを作る
  • 「Linuxは軽い」は神話か?

    Linuxは軽い」--。昔からよく,こう言われる。グラフィックスを使わず,コマンド・ラインだけで利用できること,メモリー容量に制限のある組み込みシステムでも多用されていることから,そのようなイメージがあるのだろう。 2001年に登場したWindows XPには,256Mバイト以下のメモリーでは動作が遅いという不満があった。その2年後の2003年に登場した「Red Hat Linux 9」をデュアルブート構成で動作させてみると,確かにRed Hatの方が高速に動作した。 2007年に入って普及の兆しが見られるWindows Vistaに至っては,推奨システム要件に「1GBのシステム メモリ」と書かれている。こうしたことが,冒頭の“神話”につながっているのだろう。 そのためか,古いパソコンにLinuxをインストールして「再び使いこなしたい」「せめてWebアクセス専用機に仕立て上げられないか」

    「Linuxは軽い」は神話か?