コンピューター入門ブログへよこそ!

  • フロッピー ディスク ドライブの仕組み

    コンピュータで少しでも作業をしたことがある人なら、一度はフロッピー ディスクを使用したことがあるでしょう。 CD-ROM ドライブが普及するまでは、フロッピー ディスク ドライブ (FDD) がコンピュータにデータを追加する主な手段でした。実際、FDD は 20 年以上にわたり、ほとんどのパーソナル コンピューターの重要なコンポーネントであり続けています。

    基本的に、フロッピー ディスク ドライブは、オーディオ カセット テープに似た、金属でコーティングされた小さな円形のプラスチック片に対してデータを読み書きします。この記事では、フロッピー ディスク ドライブの中身とその仕組みについて詳しく説明します。 FDD に関するいくつかの興味深い事実もわかります。

    フロッピーディスクドライブの歴史

    フロッピー ディスク ドライブ ( FDD ) は、1967 年にアラン シュガートによって IBM で発明されました。最初のフロッピー ドライブは 8 インチディスク(後に小型化するため「ディスケット」と呼ばれます) を使用していましたが、これは 5.25 インチ ディスクに進化しました。 5.25 インチ ディスクの容量は 360 キロバイトで、今日の 3.5 インチ ディスケットの容量は 1.44 メガバイトでした。

    5.25 インチ ディスクは、今日の 3.5 インチ ディスケットを保持するために使用されている硬いケースとは異なり、ディスケットのパッケージが非常に柔軟なプラスチックの封筒であったため、「フロッピー」と呼ばれていました。

    1980 年代半ばまでに、読み取り/書き込みヘッドの設計の改良と磁気記録媒体の改良により、柔軟性の低い 3.5 インチ、容量 1.44 メガバイト (MB) の FDD が現在使用されるようになりました。数年間、コンピュータには両方の FDD サイズ (3.5 インチと 5.25 インチ) がありました。しかし、1990 年代半ばまでに、5.25 インチ バージョンは人気がなくなりました。その理由の 1 つは、ディスケットの記録面がオープン アクセス領域からの指紋で簡単に汚染される可能性があったためです。

    フロッピー ディスク ドライブの部品

    フロッピー ディスク ドライブの仕組み
    ディスク

    フロッピー ディスクはカセット テープによく似ています。

    • どちらも酸化鉄でコーティングされた薄いプラスチック基材を使用しています。この酸化物は強磁性体です。つまり、磁場にさらされると、その磁場によって永久に磁化されます。
    • どちらも瞬時に情報を記録できます。
    • どちらも消去して何度でも再利用できます。
    • どちらも非常に安価で使いやすいです。

    オーディオ カセットを使用したことがある方なら、オーディオ カセットには大きな欠点があることをご存知でしょう。それはシーケンシャルデバイスであるということです。テープには始まりと終わりがあり、テープの一連の曲の後の別の曲にテープを移動するには、テープ ヘッドが固定されているため、早送りボタンと巻き戻しボタンを使用して曲の始まりを見つける必要があります。 。長いオーディオ カセット テープの場合、テープ全体を巻き戻すのに 1 ~ 2 分かかる場合があり、テープの途中で曲を見つけるのが困難になります。

    フロッピー ディスクは、カセット テープと同様、両面に磁性体がコーティングされた薄いプラスチックで作られています。ただし、細長いリボンではなく、円盤のような形をしています。トラックは同心円状に配置されているため、ソフトウェアはファイル 2 ~ 18 を早送りすることなく、「ファイル 1」から「ファイル 19」にジャンプできます。ディスケットはレコードのように回転し、ヘッドが正しいトラックに移動して、いわゆるダイレクト アクセス ストレージを提供します。

    ザ・ドライブ

    FDD の主な部分は次のとおりです。

    • 読み取り/書き込みヘッド: フロッピーディスクの両側にあり、同じアセンブリ上で一緒に移動します。 2 つのメディア表面のそれぞれに対する書き込み操作間の相互作用を防ぐために、ヘッドは互いに直接向かい合っていません。読み取りと書き込みには同じヘッドが使用され、書き込みの直前にトラックを消去するために 2 番目の幅の広いヘッドが使用されます。これにより、隣接するトラックのアナログ データに干渉することなく、より広い「クリーン スレート」にデータを書き込むことができます。
    • ドライブモーター: 非常に小さなスピンドルモーターがディスケットの中心にある金属ハブと係合し、毎分 300 または 360 回転 (RPM) で回転します。
    • ステッピング モーター: このモーターは、読み取り/書き込みヘッド アセンブリを適切なトラック位置に移動するために、正確な数のステップ回転を行います。読み取り/書き込みヘッド アセンブリはステッピング モーター シャフトに固定されています。
    • 機械的フレーム: フロッピーディスク上の小さな保護窓を開き、読み取り/書き込みヘッドが両面フロッピーディスクメディアに接触できるようにするレバーシステム。外部ボタンを使用するとディスケットを取り出すことができ、その時点でディスケット上のバネ仕掛けの保護窓が閉じます。
    • 回路基板: ディスケットから読み取られる、またはディスケットに書き込まれるデータを処理するためのすべての電子機器が含まれています。また、読み取り/書き込みヘッドを各トラックに移動させるために使用されるステッピング モーター制御回路や、ディスケット表面に向かう読み取り/書き込みヘッドの移動も制御します。

    読み取り/書き込みヘッドは、トラック間を移動するときにディスケット メディアに触れません。電子光学装置は、3.5 インチ ディスケットの下隅に開口部 (または 5.25 インチ ディスケットの側面にある切り欠き) が存在するかどうかをチェックして、ユーザーがデータの書き込みを防止したいかどうかを確認します。

    フロッピー ディスク ドライブの仕組み
    フロッピー ディスク ドライブの仕組み
    フロッピー ディスク ドライブの用語
    • フロッピー ディスク– ディスケットとも呼ばれます。一般的なサイズは3.5インチです。
    • フロッピー ディスク ドライブ– フロッピー ディスクの読み取りと書き込みを行う電気機械装置。
    • トラック– ディスクの側面上のデータの同心円状のリング。
    • セクター– ウェッジまたはパイのスライスに似た、トラックのサブセット。

    フロッピーディスクにデータを書き込む

    以下に、フロッピー ディスク ドライブがフロッピー ディスクにデータを書き込む仕組みの概要を示します。データの読み取りも非常に似ています。何が起こるかというと、次のとおりです。

    1. コンピュータ プログラムは、フロッピー ディスクにデータ ファイルを書き込むようにコンピュータ ハードウェアに命令を渡します。フロッピー ディスクは、回転がはるかに遅く、容量もアクセス時間もはるかに遅くなる点を除けば、ハードディスク ドライブの 1 枚のプラッターとよく似ています。
    2. コンピュータ ハードウェアとフロッピー ディスク ドライブ コントローラは、フロッピー ディスクを回転させるためにフロッピー ディスク ドライブ内のモータを起動します。ディスクには各面に多数の同心円状のトラックがあります。各トラックは、パイのスライスのように、セクターと呼ばれる小さなセグメントに分割されます。
    3. ステッピング モーターと呼ばれる 2 番目のモーターは、トラック間の間隔に合わせてウォーム ギア シャフト (卓上万力のウォーム ギアの小型版) を微小刻みで回転させます。正しいトラックに到達するまでにかかる時間を「アクセスタイム」といいます。ステッピング モーターのこのステップ動作 (部分回転) は、ベンチトップ万力のジョーのように読み取り/書き込みヘッドを動かします。フロッピー ディスク ドライブの電子機器は、読み取り/書き込みヘッドを正しいトラックに移動させるためにモーターを何ステップ回転させる必要があるかを認識しています。
    4. 読み取り/書き込みヘッドはトラックで停止します。読み取りヘッドは、フォーマットされたディスケット上の事前に書き込まれたアドレスをチェックして、ディスケットの正しい面が使用されており、適切なトラックにあることを確認します。この操作は、レコード プレーヤーがビニール レコードの特定の溝に自動的に移動する方法と非常によく似ています。
    5. プログラムのデータがディスケットに書き込まれる前に、書き込みヘッドでセクタ データを書き込む前に、消去コイル(同じ読み取り/書き込みヘッド アセンブリ上にある) が通電されて、幅の広い「クリーン スレート」セクタが「クリア」されます。消去されたセクタは、書き込まれたセクタよりも幅が広くなります。これにより、隣接するトラックのセクタからの信号が、書き込み中のトラックのセクタに干渉することはなくなります。
    6. 通電された書き込みヘッドは、フロッピーディスクの表面に埋め込まれた微小な鉄の棒磁石粒子を磁化することによって、フロッピーディスクにデータを書き込みます。これは、 クレジットカードの裏面の磁気ストライプで使用される技術と非常によく似ています。磁化粒子は、そのパターンが検出され、その後の読み取り操作で読み取られるように、N 極と S 極が配向されています。
    7. フロッピーディスクの回転が停止します。フロッピー ディスク ドライブは次のコマンドを待ちます。

    一般的なフロッピー ディスク ドライブでは、上記のすべての操作中、小さなインジケータ ライトが点灯したままになります。

    フロッピー ディスク ドライブの事実

    FDD に関して注目すべき興味深い点がいくつかあります。

    • 2 枚のフロッピー ディスクは磁気が弱いため、一緒に保管しても破損することはありません。
    • PC では、FDD データ リボン ケーブルにねじれがあり、このねじれにより、ドライブが A ドライブであるか B ドライブであるかがコンピュータに伝えられます。
    • 多くの家庭用電化製品と同様に、今日の FDD には実際には修理可能な部品はありません。これは、新しいドライブのコストが、ドライブの分解と修理に通常請求される時間当たりの料金よりも大幅に低いためです。
    • フロッピーディスクを交換した後にフロッピーディスクドライブ上のデータを再表示したい場合は、(ほとんどの Windows アプリケーションで) F5 キーをタップするだけです。
    • すべての 3.5 インチ ディスケットの隅に、小さなスライダーがあります。スライダを動かして穴を見つけた場合は、フロッピーディスク上のデータが上書きまたは消去されないように保護されています。

    フロッピー ディスクは、ソフトウェアの配布には (以前のように) めったに使用されませんが、依然として次のアプリケーションで使用されています。

    • 一部の Sonyデジタルカメラでは
    • システムクラッシュまたはウイルス攻撃後のソフトウェア回復用
    • 1 台のコンピュータのデータが 2 台目のコンピュータで必要で、2 台のコンピュータがネットワークに接続されていない場合
    • パーソナル コンピュータのBIOS を更新するために使用されるブート可能ディスケット内
    • 人気のZipドライブで使用される高密度フォーム
  • 毎晩コンピュータをシャットダウンする必要がありますか?

    一日の仕事が終わったら、ラップトップの電源を切り、次の日まで外出することもできます。もしそうなら、あなたは一人ではありません。によると、調査対象者の 37% が毎晩コンピュータの電源を切っています。

    しかし、毎晩コンピュータの電源を切る人と、電源を入れたままにする人、どちらが正しいのでしょうか?

    スリープモードとシャットダウン

    コンピュータの「電源を切る」オプションを見ると、「スリープ」、「シャットダウン」、「再起動」(および「サインアウト」)が表示されますが、ここではそれについて心配する必要はありません。最後のもの)。

    スリープ モードは、コンピューターがすぐに目を閉じることだと考えてください。トイレに走っている間も、すべてのプログラムとファイルは動作し続けます。戻ってくると、コンピューターの電源が戻り、すぐに使用できるようになります。

    「スリープ モードではシステムが低電力モードになりますが、アプリとデータはシステム メモリに残っています」と Geek Squad エージェントのデレク マイスター氏は言います。

    その素早さには長所と短所がいくつかあります。 「スリープ モードを使用すると、コンピューターに戻ったときにすべてが迅速に表示されますが、システムの電源が予期せず失われた場合にデータが失われる可能性も高くなります。」と彼は言います。

    お使いのコンピュータによっては、休止モードが備わっている場合もあります。休止状態は、ラップトップをしばらく (1 ~ 2 時間を考えてください) 使用しなかったときに発生し、コンピュータはスリープ状態からさらに一歩進んで休止状態に入ります。休止状態ではコンピューターが復帰するまでに少し時間がかかる場合がありますが、現在のセッションのデータがハード ドライブに保存されるため、電源が切れても安全です。

    結局のところ、どちらのモードも似ています。 「これらのモードは基本的に、プログラムやファイルを開いたままにしつつ電力を節約するための方法です。そのため、通常、コンピュータに戻ったときにはすべてが元の状態になっています」とマイスター氏は言います。

    [シャットダウン] では、開いているすべてのプログラムとファイルが閉じられますが、ソフトウェアとハ​​ードウェアの連携を可能にするオペレーティング システムの中核である はシャットダウンされません。再起動すると、操作を再開する前に、Windows カーネルに加えて、すべてのファイルが実際にシャットダウンされます。

    わかりましたが、毎晩コンピュータの電源を切るべきでしょうか?

    短い答えはノーです。

    より長い答え: それは状況によります。

    夜間のスリープ モードは、スケジュールされたメンテナンス タスクを実行できるため有益です。システム全体のウイルス スキャン、ハード ドライブの完全バックアップ、ソフトウェア アップデートのチェックなどを考えてください、とマイスター氏は言います。 「セキュリティ ソフトウェアは、バックアップ ソフトウェアと同様に、コンピュータがアイドル状態のときにバックグラウンド スキャンを実行します。」

    数日間スリープ モードで一晩過ごしても大きな変化はありませんが、時間の経過とともにパフォーマンスに問題が発生し始める可能性があります。スリープモードが多すぎるということもあります。

    特定のプログラムに遅れが生じたり、ファイルが正しく読み込まれない場合、Meister はコンピュータを再起動することをお勧めします。この再起動により、一時的な問題が解消され、正しく終了しなかったバックグラウンド アプリからメモリが解放されます。

    「再起動は、机の上のすべての書類を整理することだと考えてください。書類をファイリングすると、朝にはきれいなワークスペースが得られます。一方、スリープまたは休止モードでは、ファイルとフォルダが外に残されるので、すぐに作業に戻ることができます。」と彼は言います。

    コンピューターを一晩中オンにしたままにする場合は、週に 1 回再起動する習慣を付けることをお勧めします。停電が発生した場合に電源に接続されているラップトップまたはコンピュータを保護するために、サージプロテクターに投資することは常に良いことです。

    「勤務シフトの終わりや就寝時など、今後数時間コンピュータを使用しない場合は、コンピュータをシャットダウンすることを検討してもよいでしょう」とマイスター氏は提案します。 「こうすることで、コンピュータはリフレッシュされ、翌日の準備が整います。」

    今、それは興味深いです

    最近のコンピューターはスリープ モードのままでも、かつてほど電力を消費しません。 、コンピューターをスリープ モードにするのではなく、電源をオフにすることで節約できるのは 1 ~ 2 ワットだけです。

  • Facebook に音楽を追加する方法

    新しい知り合いを作るときも、友達と連絡を取り合うときも、音楽を共有することで言葉を超えたつながりが生まれます。 Facebookでは、お気に入りの人気曲を共有したり、Facebook アプリを使用して音楽を聴いたり、自分の作品をアップロードしたりすることで、ソーシャル ネットワーキング エクスペリエンスにそのつながりを追加できます。

    Facebook に音楽を追加する最も簡単な方法は、別の Web サイトのコンテンツを特集したリンクをウォールに投稿することです。これは、それが個人の壁であっても、作成した追加ページの壁であっても当てはまります。別のページの Web アドレスをコピーして「共有」テキスト ボックスに貼り付けると、Facebook はそのアドレスで見つかった内容に基づいてタイトルと概要を自動的に作成し、そこで見つかった画像から選択できるようにします。

    音楽を共有する場合、多くの Web サイトでは、Facebook ページにリンクしてその機能を利用できる便利なツールを提供しています。たとえば、Last.fm でアルバムの「おすすめ」オプションをクリックすると、Facebook に再度アクセスしなくても、サイトからリンクと対応する画像がウォールに投稿されます。直接投稿の場合、Facebook アカウントにアクティブにログインしていることを示すCookie がブラウザーにある場合、サイトは Facebook のアプリケーション プログラミング インターフェイス (API) を使用してコンテンツを投稿できます。

    YouTube は、Facebook で音楽を共有するための人気のオプションとなっています。これはおそらく、 YouTubeビデオへのリンクを共有すると、Facebook が投稿にビデオ プレーヤーを自動的に埋め込むためです。したがって、あなたとあなたの友人は、Facebook ウォールから離れることなくビデオを見ることができます。音楽プロデューサーは、業界が認可した YouTube チャンネルを通じてビデオ コンテンツを提供しているため、知的財産法に違反することなくミュージック ビデオを共有することができます。ビデオ共有プラットフォーム は、ソーシャル ネットワーキング サイトのコンテンツ共有における大手ブランドであり、YouTube で大きな存在感を示しています。

    自分の作品をアップロードする方法を説明する前に、Facebook で利用できる音楽アプリをいくつかチェックしてみましょう。次のページで説明するように、これらのアプリには、Facebook でお気に入りのトラックを再生したり共有したりするためのオプションが多数用意されています。

    Facebook 音楽アプリケーション

    音楽共有 Web サイト Spotify

    リンクを投稿するだけでなく、 Facebookで音楽をさらに活用したい場合は、Facebook アプリを使用できます。まずは Facebook でアプリのページにアクセスして、詳細を読んでください。 Facebook はサードパーティのアプリによって行われた行為に対して責任を負わないことに注意してください。そのため、コミットする前にユーザーのレビューを確認してください。アプリの使用を開始する準備ができたら、ページの上部にある「アプリに移動」ボタンをクリックしてアカウントに対して承認するか、左側の「マイページに追加」リンクをクリックして特定のページを選択しますFacebook ホームページ以外のアプリを使用するには。

    以下は、インターネット上で既存のトラックを共有するのに役立つ、Facebook で利用できる音楽アプリのほんの一部です。

    • サブスクリプションベースのサービスである Spotify を使用すると、どこからでもお気に入りの曲にアクセスできます。そのアクセスの一部は Facebook アプリを介したもので、これには Spotify から Facebook への接続や、同じくアプリを使用している友人と音楽を共有するオプションが含まれます。
    • 単に「ミュージック」と呼ばれるアプリを使用すると、音楽ファイルをアップロードしたり、既存のオーディオ ファイルまたはビデオ ファイルへの直接リンクを追加したりできます。トラックをアップロードした後、アプリを使用して自分の音楽を再生したり、同じアプリを通じて友達が共有した音楽を聴いたりすることができます。
    • Profile Song は、Facebook ウォールの外側に別のインターフェイスを提供し、お気に入りの音楽のビデオを見つけて、そのビデオへのリンクをウォールに投稿できます。友達が Profile Song によって投稿されたリンクをクリックすると、Profile Song アプリでそのビデオを視聴できます。プロフィールソングを使用して、友達がアプリを使用してどのような投稿をしたかを確認することもできます。
    • を使用すると、音楽を検索したり、YouTube などの他の Web サイトから既存のビデオのプレイリストを作成したりできます。 MixPod Facebook アプリを使用すると、プレイリストをウォールに投稿でき、他のビデオと同様に、あなたや友達が曲を再生して楽しむことができます。

    これまで、オンラインですでに入手可能な音楽に接続するさまざまな方法を見てきました。次に、Facebook を使用して自分の録音をアップロードして共有する方法を確認します。

    Facebook 音楽プレーヤー

    キーボードとヘッドフォン付きのコンピューター

    音楽やビデオへのリンクをインターネット上の他の場所に投稿するだけでなく、自分の作品を Facebook にアップロードすることもできます。オリジナルの作品を共有することは、友人と連絡を取り合うための楽しい方法だけではありません。また、アーティストにとって、何百万人もの Facebook ユーザーの間で知名度を高めるための優れたツールでもあります。

    Facebook の音声コンテンツをアップロードするための主なツールは です。から、左側のナビゲーション メニューにある [マイ ページに追加] リンクをクリックし、インストールするページを選択します。次に、「ページの管理」をクリックし、ミュージック プレーヤーを追加したプロフィール ページを選択します。 [ページの編集] をクリックし、ナビゲーション メニューから [アプリ] を選択します。ミュージック プレーヤーに関連付けられている [設定の編集] リンクをクリックし、[追加] をクリックします。

    MP3 をミュージック プレーヤーにアップロードするには、アプリ リストでミュージック プレーヤーの [アプリに移動] リンクをクリックし、[トラックを追加] をクリックします。ハードドライブを参照して目的のトラックを見つけ、「ファイルをアップロード」をクリックします。コンテンツがあなたのものであり、アップロードによって著作権侵害が行われていないことを確認する簡単なフォームに記入するよう求められます。このフォームはデジタル署名として機能します。

    Facebook でオーディオ コンテンツを共有する前に、次の制限と権利を必ず認識してください。

    • Facebook では、録画またはアップロードする各ビデオの長さを 1,024 MB または 20 分に制限しています。
    • Facebook は、アカウント上でアクティブに公開されているコンテンツに対する知的財産 (IP) 権を会社に付与します。
    • Facebook は、コンテンツの所有権を証明できる他者の知的財産権を保護します。対立を避けるために、オンラインで合法的に配布できるコンテンツのみを投稿してください。

    Facebook の Music Player アプリに加えて、自分の作品を宣伝したいアーティスト向けに設計されたサードパーティの Facebook アプリを使用することもできます。前述のアプリと同様、各アプリには独自の機能と特徴があります。使用に興味があるかもしれないものを以下に示します。

    • トラックをそのサイトにアップロードし、いくつかのソーシャル ネットワーキング Web サイトのいずれかで共有できます。 Facebook 用 SoundCloud アプリを使用すると、Facebook ページにプレーヤーを追加して、他のユーザーがあなたのトラックを聴いたり、Facebook の友達と共有したりできます。
    • バンドの Facebook ページを完全なプロモーション ポータルに変えます。バンド プロフィールは、トラックの共有、今後のライブのリスト、音楽の販売、ファン ベースの拡大に役立ちます。 Band Profile アプリは、ミュージシャン向けのオンライン マーケティング ツールを提供する Web サイトのアカウントと同期します。
    • イベントのライブオーディオおよびビデオストリーミングを Facebook ページに追加できます。このアプリはライブストリームであなたのチャンネルに接続するので、ショーに来られないファンや友人もライブオンラインブロードキャストを通じてライブを楽しむことができます。

    この記事では、Facebook が他のアーティストのお気に入りの音楽を共有したり、自分の音楽作品を宣伝したりするのにどのように役立つのか、また、音楽アプリを使用して曲をアップロードして再生するときに考慮すべきことについて検討しました。 Facebook エクスペリエンスに音楽を追加する方法についてさらに詳しく知りたい場合は、次のページに早送りしてください。

  • orkut の仕組み

    Google のユーザー インターフェース開発者である Orkut Buyukkokten は、他の Google 従業員と同様に、自分の時間の 20 パーセント、つまり週に 1 日を個人プロジェクトに取り組むよう奨励されていました。 Buyukkokten はその時間を利用して orkut という名前のソーシャル ネットワーキング Web サイトを開発しました。このサイトは主に Google 従業員間のオンライン コミュニティとして始まりました。 Google が 2004 年に orkut を公開すると、すぐにブラジルとインドで最も人気のあるソーシャル ネットワーク サイトになりました。

    Orkut は無料のソーシャル ネットワーキング Web サイトで、プロフィールを作成したり、友達とつながったり、オンライン スクラップブックを管理したり、サイトの機能やアプリケーションを使用して興味を共有したり、他の人と出会ったりすることができます。 orkut ユーザーがサイトを使用するには、18 歳以上であることに同意する必要があります。 orkut は最初の 5 年間のほとんどは招待制でしたが、現在は招待なしでも利用できるようになりました。必要なのは Google ユーザー アカウントだけです。Gmail などの他の Google サービスを使用している場合は、すでにアカウントをお持ちかもしれません。

    Orkutの公開は、GoogleがソーシャルネットワークサイトFriendsterの買収を検討しているという噂に続いて行われた。 Google はサイトをサポートするという正式な約束をしていなかったので、orkut をベータ ソフトウェアとしてラベル付けしました。ただし、Google はサイト開発に注力し、2008 年 7 月に orkut の開発をブラジルに移しました。ブラジルは他のどの国よりも国民の間で最も高いレベルのソーシャル ネットワーキングを有しており、この事実がブラジルを中心地とする Google の決定に貢献しました。ラテンアメリカ事業の概要。

    現在、orkut ユーザーの半数以上が 18 ~ 25 歳で、ほぼ半数がブラジル人です。インドの orkut ユーザー数は、本拠地である米国のユーザー数とほぼ同等です。 Google はインド () とブラジル () での成長に対応して、インド () とブラジル () に特化したドメインをリリースしており、どちらのサイトにもメイン ページの上部に orkut へのリンクが含まれています。

    Orkut の使用

    orkut の個人ホームページ

    orkut の使用を開始するには、ユーザーを検索したりコミュニティ フォーラムを読んだりするだけでも、アカウントを作成してオンライン コミュニティにログインする必要があります。 Orkut には Google ユーザー アカウントが必要で、他の Google アプリケーションと同じインターネット Cookie をログイン セッションに使用します。つまり、Google Reader または Gmail にログインしている場合は、orkut にもログインしていることになります。 Google アカウントをお持ちでない場合は、orkut からアカウントを作成するよう求められます。 Google アカウントにログインすると、orkut では、Google アカウントに orkut アカウントを追加するためのフォームに記入するよう求められます。フォームの一部として、18 歳以上であることに同意する必要があります。

    orkut ソーシャル ネットワークにログインしている間、ホームページにはサイトのすべての機能へのリンクが表示されます。プロフィールを編集して個人情報を追加し、その情報の一部またはすべてを自分、友人、または orkut の全員のみが閲覧できるように設定します。また、設定を編集して投稿内容の共有レベルを設定したり、他の orkut 機能をカスタマイズしたり、orkut アカウントを削除したりすることもできます (Google アカウントは削除されません)。

    他のソーシャル ネットワーキング Web サイトと同様、orkut には自分の興味や活動を共有するための機能が含まれています。

    • 写真やビデオをアップロードする
    • YouTube 動画など、好きなものを宣伝する
    • ブログに似たスクラップブックを作成し、投稿や写真などの各「スクラップ」を保存します。
    • 音楽、ゲーム、クイズなどの 5,000 を超える orkut アプリケーションからアプリ セクションに追加します

    orkut で他の人とネットワークを築くには、友達を追加してコミュニティに参加します。画面右上の orkut 検索を使用して、他のユーザーや興味のあるトピックを検索することもできます。そこから、好きなコミュニティにリンクし、フォーラム、オンライン投票、メンバー リスト、関連コミュニティにアクセスできます。新しいコミュニティを作成し、メンバーがそこに参加して交流する方法を制御することもできます。

    orkut に友達を追加すると、他のユーザーとより直接交流できるようになります。他のソーシャル ネットワーク サイトと同様に、orkut の「友達」ステータスを使用すると、orkut に投稿した特定の内容を誰が閲覧できるかを制御できます。友達を追加すると、orkut から対象ユーザーに友達リクエストが送信され、そのユーザーは友達接続の作成を承認する必要があります。 orkut で友達を見つける場所としては、ホームページの提案や、orkut コミュニティの知人が挙げられます。

    orkut の友達と交流するには、次のような方法があります。

    • 更新:ホーム ページで自分のステータスを更新して、現在行っていることや考えていることを他の人に知らせたり、友人のステータス更新をフォローしたりできます。あまりにも。
    • メッセージ: 1 人の友人または友人のグループにメッセージを送信します。
    • お客様の声: orkut で他の人に対する信頼性を確立するために、友達の紹介文を投稿します。
    • チャット:ブラウザ ウィンドウの下部にあるタイトル バーをクリックして [オンラインの友達] パネルを展開し、そこで Google チャットを使用します。これには、orkut の友達やその他の Google 連絡先が含まれます。

    OpenSocial テクノロジーと Orkut

    OpenSocial は、orkut を推進するテクノロジーです。 OpenSocialは、中央のユーザー アカウント リソースを中心にソーシャル ネットワーキング サイトを構築する取り組みです。 Google などの企業は、OpenSocial を使用して、電子メール、カレンダー、インスタント メッセージ サービスなどの複数の個別のアプリケーションに適用される単一のユーザー アカウントを作成できるようにします。シングル サインオン (SSO) を使用すると、1 セットのユーザー資格情報だけで複数のアプリケーションにログインできますが、OpenSocial はそれを超えて、それらのアプリケーション間で完全なユーザー プロファイルを (多くの場合は同じグラフィカル ユーザー インターフェイスで) 共有します。

    OpenSocial では、ソーシャル ガジェットという用語を使用して、ソーシャル ネットワークに追加する各インタラクティブ機能を指します。ソーシャル ネットワーク Web サイトにログインしているユーザーは、ソーシャル ガジェットを写真の管理などの単なる通常のサイト機能として認識することも、音楽やゲームなどのアドオン機能 (アプリケーションまたはウィジェットと呼ばれることが多い) として認識することもあります。 OpenSocial プログラマーは、各ソーシャル ガジェットをガジェット仕様と呼ばれる 1 つ以上の XML ファイルにまとめます。次に、それらのファイル内に JavaScript コードを追加して、ガジェット機能をプログラムします。

    OpenSocial プログラマーは、ソーシャル ガジェットをセットアップして最初から始める必要はありません。 OpenSocial には、ソーシャル ネットワークで使用される多くの一般的なソフトウェア アクションのコードを備えたアプリケーション プログラミング インターフェイス (API) がすでに用意されています。たとえば、コードに 1 行を追加して、特定のユーザーに関するすべての拡張プロファイル情報を要求する関数を API から呼び出すことができます。その後、その情報をソーシャル ガジェットの他のアクション (ユーザーのお気に入りの書籍をリストしたり、地図上にユーザーの位置を表示したりするなど) に使用できます。 OpenSocial.org では、ソーシャル ガジェットの作成を開始するのに役立ついくつかの記事とチュートリアルを提供しており、Google を活用した例もいくつか含まれています。

    orkut では、何千ものアプリケーションのいずれかをホームページのアプリ セクションに追加できます。 orkut 用の独自のアプリケーションの開発に挑戦したい場合は、orkut 開発者 Web サイトから始めることができます。これらのリソースには、orkut の用語、要件、推奨される開発手法、OpenSocial リソースへのリンクが含まれます。 orkut の OpenSocial チュートリアルを段階的に実行し、orkut ユーザー アカウントに固有のプロフィール情報をリクエストする方法を学ぶこともできます。これらのリソースは、JavaScript の直接の経験ではないにしても、コンピューター プログラミングの概念にある程度の知識があることを前提としています。

    orkut のメリット

    orkut 検索

    orkut の利点は、他のソーシャル ネットワーキング Web サイトの利点と似ています。 Orkut では、友達と連絡を取り合ったり、自分自身の一部を共有したり、同じ興味を持つ人々と出会うためのツールが提供されます。また、サイトの利用には会員制が必要であり、会員年齢を 18 歳以上に制限し、特定の情報を他のユーザーに対して表示または非表示にすることもできるため、安心感が高まります。ブラジルとインドでの成長に伴い、それらの国の文化や言語を共有する人々の成長を促進しています。

    orkut のもう 1 つの利点は、他のソーシャル ネットワーク Web サイトでスペースを占めるバナー広告が表示されないことです。 Google では、orkut で特定のトピックを検索したときに、すべての orkut ページにバナー広告を配置するのではなく、検索結果に広告を配置します。 Google は、現在地と検索で使用した単語を組み合わせて広告を選択します。たとえば、「volkswagen」を検索すると、orkut のユーザー、コミュニティ、トピックだけでなく、地元のフォルクスワーゲン ディーラーや、フォルクスワーゲンの割引部品が見つかる Web サイトの広告リンクも表示されます。

    Orkut の主な競合相手は、同様の機能とアプリケーションによる拡張性を備えた他のソーシャル ネットワーキング サイトです。これには、現在米国市場を独占しており、世界的にも急速に人気が高まっている Facebook と MySpace が含まれます 。 orkut はブラジルやインドでは競合他社をはるかに上回っていますが、Google が米国でトップのインターネット ブランドであるにもかかわらず、本国での地位を向上させるまでの道のりは長いです 。

    Orkut の課題

    orkut の利点と同様に、orkut の課題の一部は他のソーシャル ネットワーク サイトと似ています。 orkut は早い段階で、これらの課題の 1 つであるユーザーの信頼性を紹介機能で解決しました。あなたの推薦文は、友人があなたについてどう思っているかを説明する投稿です。他のユーザーはあなたの紹介文を読んで、あなたを信頼し、友達リクエストを受け入れるかどうかを判断できます。 orkut のお客様の声により、ユーザーが自分のプロフィールの詳細で他の人を誤解させることがより困難になり、ストーカーやサイバー犯罪者の可能性が減ります。

    紹介機能にもかかわらず、orkut でのユーザーの信頼性には依然として疑問があり、招待状は人気商品でした。 orkut が招待要件を削除するまで、一部の現在のユーザーは招待状を eBay のオークションに出品し、将来のユーザーはそのような切望されたトークンを見つけることを期待してオンラインのあらゆる場所に投稿しました。 2005 年 7 月、ブロガーのアルバロ・アントゥネスは、知らない人からそのような招待状を 1 回受け取ったと報告し、人々が友情に真の関心を持たずに彼を友達として追加しているように感じた経験を述べました 。

    おそらく orkut の最大の課題は、ブラジルとインド両国でのこのサイトに関連した法廷闘争でしょう。 2005 年、ブラジル当局は麻薬組織を暴くために電話の盗聴を使用し、エクスタシーやマリファナを販売する取引を結ぶために orkut コミュニティを利用していることを監視しました。 1 年後、ブラジルの検察当局は、違法なポルノおよび人種差別的なコンテンツを orkut コミュニティに関連付け、裁判官は Google 部門に対し、orkut ユーザーの疑いのある安全なアカウント情報を提供するよう命じました。

    Google は、それぞれの訴訟において、検索リクエスト データとユーザーの個人情報に関する召喚状に慎重に対処してきました。 Google は、利用規約に違反する orkut コミュニティとユーザーを削除し、法的当局と協力し、サイトを「楽しく清潔」に保つ取り組みを説明する「orkut を美しく保つ」ページを追加しました。しかし、いくつかの挫折もありました。 2009 年、インドの 19 歳のブロガーが政党シブ セナに反対するコミュニティを設立したとき、orkut が有罪の Web サイトとして引用されましたが、Google ではなくブロガー自身が責任者として引用されました。訴訟 。

    Google は、orkut の競争力、安全性、楽しさを維持するために、orkut の改良を続けてきました。現在では、評判の高い企業の支援を受け、安全で確立されたサイトとなっています。 Google がサイトの維持と改善、そして成長するオンライン市場でのプロモーションに今後も尽力すれば、orkut は世界的な成功を続けるでしょう。

    ソーシャル ネットワーキング Web サイトおよび関連トピックの詳細については、次のページを参照してください。

  • インベスタービレッジの仕組み

    2009 年 3 月、市場全体の強さを示す標準的な尺度であるダウ ジョーンズ工業株平均は 7,000 ポイントを下回り、1997 年以来の最低水準となりました。全体として、ダウ ジョーンズは米国の株式市場以来、その価値の 53 パーセントを失ったことになります。 2007 年 10 月にピークに達し、なんと 7,200 ポイントも下落しました 。

    米国全土で、多くの人々が小規模で協力的なコミュニティで団結して世界金融危機に対応しています。株式トレーダーも例外ではありません。多くの投資家は世界の金融システムに対する信頼を失っています。メリルリンチやゴールドマン・サックスのような巨大投資会社――長年ウォール街の有力ブローカーとして君臨してきた――が炎上したとき、おそらく、非人間的な証券会社や孤独な電子取引に代わる選択肢が求められるときが来たのかもしれない。

    2007 年に市場が急落し始めて以来、投資に焦点を当てたオンライン ソーシャル ネットワークの購読者数が急増しました 。投資ソーシャル ネットワークの背後にあるロジックは単純です。個人投資家やアマチュア市場調査員が集合的な知識を共有し、アドバイスを提供できるオンライン コミュニティを構築することです。人々は話題の株に関するヒントを交換し、最大の利益をもたらす投資戦略について話し合うことができます。

    Investor Village は、2003 年末から存在する投資ソーシャル ネットワークです。当初は「BuyB4theRush」と呼ばれ、未公開株のディスカッション コミュニティでした。インベスター ビレッジは、開始以来、ユーザーの知性と掲示板の市民的議論で評判を得てきました。

    インベスター ビレッジは依然として主に掲示板サイトであり、16,000 を超えるアクティブな掲示板と数百のメンバーが運営するグループがあり、中には数万人の購読者がいるグループもあります。

    インベスタービレッジは具体的にどのように利用していますか?サイトの掲示板で読んだアドバイスに基づいて取引を行っても安全ですか?最も重要なのは、無料ですか?

    インベスタービレッジの利用方法

    残念ながら、Investor Village は無料ではありません。登録済みの有料会員のみが、個々の掲示板のスレッドを閲覧し、サイト上の投稿に応答することができます。 2009 年 6 月の時点で、会費は月額 8.99 ドル、年間では 71.88 ドルです。興味はあるがコミットする準備ができていない場合は、インベスター ビレッジでは 7 日間の義務なしトライアルも提供しています。

    新しいメンバーはすべて、サイト上で自分を識別するためのユーザー名である「エイリアス」を選択します。メンバーは、年齢、性別、所在地、学歴、職業、好きな株などの情報を含むユーザープロフィールに記入することも奨励されています。あなたの名前を入力する公式の場所はないため、ほとんどのメンバーは自分の身元を匿名にしています。

    Investor Village Web サイトは、メッセージ ボード、グループ、および MyIV と呼ばれる個人用メンバー エリアの 3 つの主要セクションで構成されています。上部のナビゲーション メニューにある [メッセージ ボード] リンクをクリックすると、メッセージ ボード ディレクトリに移動します。各掲示板には上場企業の名前が付けられており、企業名と株式ティッカー シンボルでリストされています。メッセージ ボード ディレクトリの上部には、会社名、ティッカー シンボル、またはキーワードでメッセージ ボードを見つけることができる検索フィールドがあります。

    検索エリアの下には、大型株、中型株、小型株、コミュニティ掲示板、投資家ビレッジ グループなど、8 つの異なるカテゴリの最もアクティブな掲示板のトップ 5 のリストが表示されます。

    Investor Village Group は通常の掲示板によく似ていますが、いくつかの重要な違いがあります。グループはメンバーによって開始され、個々の企業だけでなく、あらゆるトピックを中心に構築できます。また、グループ掲示板への参加はグループメンバーに限らせていただきます。登録ユーザーは誰でもグループへの参加を申請でき、一部のユーザーは他のユーザーよりも排他的です。

    MyIV セクションでは、メンバーは、Investor Village の内部メッセージング システムである「プライベート メッセージ」の受信箱を表示できます。 MyIV では、メンバーがお気に入りの掲示板スレッドを保存および追跡したり、お気に入りのメンバーのリストを作成したり、投資ポートフォリオを共有したり、通知設定を設定したりすることもできます。

    通知設定では、他のメンバーがボードの投稿にコメントしたり、プライベート メッセージを送信したりするたびに電子メールを受け取るように選択できます。 2009 年 6 月現在、Web サイトのブログ セクションはまだ開発中です。

    次のページでは、Investor Village のようなソーシャル ネットワークを使用することがどの程度安全であるかを検討します。

    インベスタービレッジセキュリティ

    2008 年 12 月 1 日、トレーダーたちはダウ平均株価の下落を見守っています。

    インベスター ビレッジのようなソーシャル ネットワーキング サイトにおけるセキュリティ上の懸念は、個人情報のハッキングや没収というよりも、無能な、または意図的に誤解を招く金融アドバイスによる騙しにあるということです。

    インベスター ビレッジに登録するには、ユーザー契約とも呼ばれるメンバーシップの利用規約に同意するボックスにチェックを入れる必要があります。ユーザー契約では、Investor Village の所有者および管理者がサイトに投稿された意見を検証または承認しないことを明確にしています。したがって、サイトの何千人ものメンバーが提供するコンテンツの正確性については責任を負いません。

    インベスタービレッジのユーザー規約では、会員は金融の専門家ではないことが強調されています。ユーザー規約を引用すると、彼らの多くは、「市場、投資、その他の金融問題に関するトレーニング、教育、経験、またはその他の専門知識をほとんどまたはまったく持たない、『自分でやる』個人投資家および/またはトレーダー」です。

    Investor Village の管理者は、サイト上にあるすべてのアドバイスや情報は「慎重かつ懐疑的」に考慮する必要があると示唆しています。彼らは、経済的に破滅する可能性のある行動を起こす前に、メンバーがすべてのヒントを独自に確認することを奨励しています。

    Investor Village ユーザー規約では、小型株に関するサイト上の情報に特別な注意を払っています。この種の株(一般に価値が20億ドル以下の企業を指す)は、価格操作の影響をより受けやすい。

    最も一般的な価格操作スキームは、「ポンプ アンド ダンプ」操作と呼ばれます。この詐欺では、自称「専門家」または「内部関係者」の集まりが、注目の新株が今後数日間で急騰するというニュースを広めました。他の人が株を買うと、価格は自然に上昇し、チップに信頼性の雰囲気が加わります。

    残念ながら、バブルは必ず崩壊します。多くの場合、株式は実際の企業の外皮にすぎないからです。誰もが狂ったように売り始めると、価格は暴落します。ポンプ・アンド・ダンプ計画の加害者は、当然のことながら、崩壊が近づいていることを知っており、賢明にも自社の株式をつり上げられた価格で「ダンプ」、つまり売却します。

    インベスター ビレッジは、掲示板の投稿を定期的にスキャンして、違法または虐待行為をチェックすることはありません。代わりに、このサイトは、ユーザーがユーザー契約に違反していると思われるメッセージにフラグを立てることができる自己規制システムに依存しています。サイト管理者は、あらゆる虐待の申し立てを調査し、適切な措置を講じるよう最善を尽くしていると述べている。

    あなたが慎重な投資家である限り、Investor Village のようなソーシャル ネットワーキング サイトに参加することには多くの利点があります。詳細については、次のページをご覧ください。

    インベスタービレッジのメリット

    インベスター ビレッジのような投資ソーシャル ネットワークに参加する最大のメリットは、投資に真剣に取り組んでいる人々の集合的な知恵を活用できる機会があることです。インベスター・ビレッジのユーザー規約にあるように、メンバー全員が専門家であるわけではありませんが、新興市場を特定し、最も成長の可能性のある銘柄を特定することに積極的に取り組んでいます。

    インベスター ビレッジは有料会員のみを対象としているため、スパマー、フィッシング詐欺師、詐欺師、炎上詐欺師、その他の掲示板迷惑行為の標的にはなりません。インベスター ビレッジの平均的なユーザーは年配で裕福で、絶望的なほど Web サイトに夢中になっています。 Quantcast の Web アナリストによると、Investor Village 会員の 87% が男性、85% が 35 歳以上、62% が年収 10 万ドル以上、会員の中核となる 45% がトラフィックの 91% を牽引している [出典] :]。

    インベスター ビレッジのメンバーシップから最も恩恵を受けるのは、企業研究や個人投資の市場動向の研究にすでに多くの時間を費やしている人です。このタイプの人にとって、Investor Village のようなソーシャル ネットワークは、新しい戦略のための優れた相談窓口となります。

    インベスター・ビレッジのもう 1 つの利点は、他のメンバーが、他のメンバーでは考えもしなかった銘柄を紹介してもらえることです。おそらく、鉱山会社など、市場で開拓されていない分野であると感じる分野についてのメッセージを投稿するかもしれません。別のメンバーが、数年間フォローしているいくつかの鉱山会社を推薦する返信を投稿する可能性があります。これで、独自の研究を有利に始めることができます。

    結局のところ、インベスター ビレッジの最大の利点の 1 つは、前例のない世界的な金融危機の中で利益を上げる方法を探している他の投資家とのコミュニティと仲間意識を提供してくれることです 。メンバーは、一緒にシステムを打ち破る興奮を共有できます。つまり、まだ成長し続けている市場の小さなニッチを見つけて大きなスコアを獲得することができます。

    投資と株式市場についてさらに詳しく知りたい場合は、次のページの役立つリンクを参照してください。

  • 人気の Web サイトの写真

    google.com

    インターネットを利用したことのあるほとんどの人は、 Googleについて聞いたことがあるでしょう。世界で最も人気のあるサイトおよび検索エンジンです。しかし、他の最も人気のある Web サイトをご存知ですか?まずは次のページをご覧ください。

    百度

    Google と同様に、Baidu は検索エンジンと共同百科事典を備えた中国の Web サービス サイトです。 2012 年、Baidu は Alexa インターネット ランキングで 5 位にランクされました。

    qq.com

    もう 1 つの中国で人気のあるサイトであり、世界でもトップ 10 に入るサイトは、無料のインスタント メッセージング サービスである QQ.com です。ユーザーはゲーム、仮想ペット、着信音にもアクセスできます。次に人気のサイトも無料サービスを提供しています。

    ウィキペディア

    ウィキペディアは、複数のユーザーがオンラインで自由に追加および編集できる記事のコレクションです。これは無料のサービスであり、非営利団体によって運営されているため、他のほとんどの人気のある Web サイトとは異なります。次のサイトは、世界最大のオンライン小売業者とは対極にあります。

    イーベイ

    小売先のEbay は、食べかけのグリルド チーズ サンドイッチなど、ほぼあらゆるものを売買できるオンライン オークション サイトです。世界中で最も人気のあるサイトのトップ 20 の 1 つです。

    淘宝網

    TaoBao は Ebay と Amazon の中国版で、2012 年には中国で 3 番目に人気のあるサイトでした。 Alexa 評価システムでは世界的に 14 位にランクされています。次に、世界で 3 番目に人気のあるサイトはどこなのかを見てみましょう。

    ユーチューブ

    世界で 3 番目に人気のあるサイトとしてランク付けされているYouTube は、毎月 40 億時間以上のビデオが視聴されるコミュニティ ビデオ Web サイトです。 Google は 2006 年に YouTube を買収し、次に人気のあるサイトも所有しています。

    ブロガー.com

    Blogger.com は 1999 年にサンフランシスコで小さな会社として設立され、その後 Google に買収されました。 2012 年の Alexa オンライン ランキングは世界で 11 位でした。次の大手サイトも、始まりは地味なものでした。

    アマゾン.com

    1995 年、 Amazon.com は創業者ジェフ・ベゾスのガレージから出荷された最初の本を販売しました。このサイトは、訪問のたびにすべての登録ユーザーから収集したデータを使用して、個人的な推奨事項を作成します。このサイトでは、製品レビューやワンクリック購入も可能です。

    yahoo.com

    ヤフー!最初はデビッド・ファイロとジェリー・ヤンの趣味として始まりました。その機能には、検索エンジン、ニュース、電子メール、地図が含まれます。現在、人気では YouTube のすぐ後ろにランクされています。

    ウィンドウズライブ

    Microsoft には、Windows Live をはじめとする人気のある Web サイトがいくつかあります。 Yahoo! と同様に、ユーザーは電子メールやその他のサービスにアクセスするためにログインします。ユーザー数は 3 億人を超え、世界および米国でトップ 10 にランクされています。次のページにあるオリジナルの Microsoft ポータルも、最も人気のあるサイトの 1 つとしてランクされています。

    msn

    MSN (Microsoft Network) は、1995 年に Windows 95 に合わせて初めて開設されたインターネット ポータルです。世界的というよりも米国で人気があります。

    ビング

    Google ほど人気はありませんが、Microsoft の Bing は 2009 年に開始された「意思決定エンジン」です。検索を実行するときに表示されるジャンクの量を最小限に抑えるように設計されており、ショッピング、旅行、地域、健康のトピックに重点を置いており、おおよその内容は次のとおりです。 20番目に人気のあるサイト。次のサイトでは、そのツールに合わせて新しい語彙を生成しました。

    ツイッター

    世界で 8 位にランクされているTwitter を使用すると、ユーザーは連絡先ネットワークにメッセージを投稿したり受信したりできます。十数通の電子メールやテキスト メッセージを送信する代わりに、Twitter アカウントに 1 つのメッセージ (「ツイート」) を送信すると、サービスがそれをすべての友人に送信します。次のページでは、ソーシャル ネットワーキングに特化した人気のサイトをご覧ください。

    リンクイン

    LinkedIn は、仕事の検索、販売見込み客の発見、潜在的なビジネス パートナーとのつながりなど、プロフェッショナル ネットワーキングのために特別に設計されたソーシャル ネットワーキング サイトです。近年人気が高まっていますが、次のページの巨大サイトほどアクセス数は多くありません。

    フェイスブック

    もともとハーバード大学の学生のために作られたソーシャル ネットワーキング サイトであるFacebook は、現在では誰でも参加できるようになり、アクティブ ユーザー数が 8 億人を超え、2012 年には (Google に次いで) 2 番目に人気のある Web サイトになりました。詳細については、オンライン ソーシャル ネットワークの記事を参照するか、 Web 3.0 クイズで知識をテストしてください。

  • インターネットはどのくらいのエネルギーを使用しますか?

    シェイクスピアの時代、別の都市にいる人にメッセージを送ることは大変なことだった。あなたに代わってメッセージを伝える人を雇わなければなりませんでした。その人は目的地に着くまで何マイルも歩くか車に乗らなければならないかもしれません。特に悲劇の中で生存率が約50パーセントであると思われるシェイクスピアの使者にとって、それは危険な旅になる可能性があります。

    シェイクピアの時代、すべてのメッセージは、誰かがそれを書いた瞬間から受信者がそれを読む瞬間まで、多大なエネルギーを必要としていました。しかし今日では、物事ははるかに文明化されています。コンピューター、タブレット、スマートフォン、さらにはビデオゲーム機を起動して、わずか数分で大量のメッセージを削除できます。さらに良いことに、メッセージは受信者の受信箱にほぼ瞬時に届きます。私たちが節約した労力を見てください!

    しかし、実際のエネルギーに関して言えば、インターネットは飢えたシステムです。これはネットワークのネットワークであり、各ネットワークはコンピューターで構成されています。これらのコンピューターは電力を大量に消費します。しかし、インターネットがどれだけの電力を使用しているかを知る方法はあるのでしょうか?

    インターネットのエネルギー使用量を見積もるには、システムに接続するすべてのコンポーネントを考慮する必要があります。インターネットを構成するデバイスは数十億台あります。まず、データセンターについて見てみましょう。

    ハムスターとゾウ

    データセンターは、システムのバックエンドを構成するコンピューターの集合です。データ センターは必ずしもインターネットに接続されている必要はありません。組織または企業内の内部システムである場合もあります。しかし、インターネットは、数十万台のコンピュータを収容する大規模なデータセンターに依存しています。

    データ センターには、データベース コンピューター、 Web サーバー、メインフレーム、または 3 つすべての組み合わせを収容できます。数年前までは、企業が独自のデータセンターを維持するのが一般的でした。中には倉庫ほどの大きさの巨大なものもあり、ラックに数千台のコンピューターが積み込まれていました。他のものは非常に小さく、単一ラックのマシンで構成されていました。

    現在、多くの企業は、データセンターのニーズを満たす代わりにクラウド サービスに依存しています。これは、ビジネスのデータとサービスが存在する物理デバイスを提供するために他の会社を雇うことを意味します。ビジネスの情報へのアクセスは、インターネットを通じて行われます。クラウド サービスのデータ センターは、巨大な建物に数十万台のマシンが保管されているまさに大規模なものです。

    クラウド サービス会社は、顧客のデータを複数のマシンに保存します。これは冗長化のためです。何らかの理由でコンピュータに障害が発生した場合でも、顧客のデータは別のマシンに存在するため、そのまま残ります。この構成の欠点は、各コンピューターの動作に電力が必要なことです。

    コンピューターも熱を発生するため、悪いニュースになる可能性があります。電子部品が熱くなりすぎると、誤動作する可能性があります。マシンを安全な温度で動作し続けるために、データセンターの所有者は冷却システムに投資する必要があります。最も一般的なシステムは空調です。データセンターの空調はインターネットの稼働を維持するために必要であるため、最終的な見積もりにはデータセンターの空調にかかるエネルギーコストを考慮する必要があります。

    2008 年以降、米国のデータセンターの数は減少しています 。その主な原因は、企業がクラウド サービス モデルに移行し、データ センターをオフロードしていることです。しかし、データセンターは減少している一方で、残っているデータセンターはますます大規模になっています。これは、50 匹のハムスターのグループを 10 頭のゾウと交換するようなものです。最終的には動物の数は減りますが、より多くのスペースを占有し、より多くのエネルギーを消費します。

    データ センターの正確な数を把握することは不可能です。多くの企業は、競争上の利点となる可能性があるため、データ センターに関する情報を非公開にしています。また、すべての詳細が分からない限り、各データセンターに必要な電力量を正確に言うことは不可能です。それは人々の挑戦を止めませんでした。次に、インターネットの電力消費量を見積もるために人々が使用してきた方法論のいくつかを見ていきます。

    測定は 2 回、請求は 1 回

    インターネットはどのくらいのエネルギーを使用しますか?

    2011 年、ICSI およびカリフォルニア大学バークレー校の Barath Raghavan 氏と Justin Ma 氏は、インターネットに必要な電力量を見積もるという課題に取り組みました。彼らは、インターネット自体を構築するために私たちが使用するエネルギーを考慮に入れることにしました。これには、コンピューター、ネットワーク接続、携帯電話の塔、その他のハードウェアを構築するために必要なすべての電力が含まれます。彼らはこの体現されたエネルギーを「エマージー」と呼びました。

    ラガバン氏とマー氏はすべての研究について一般的な推定に依存しており、その答えが正確ではなかったことを報告書の中で認めた。彼らが述べた目標は、他の人がこの問題についてより深く考えることができるように、この問題に注目を集めることでした。彼らの見積もりには次のものが含まれていました。

    • 7 億 5,000 万台のデスクトップ コンピューター
    • 7 億 5,000 万台のラップトップ コンピューター
    • 10億台のスマートフォン
    • 1億サーバー

    これらには、他のインターネット インフラストラクチャ要素も含まれていました。彼らは、デバイスの各カテゴリを最小値と最大値で重み付けして、さまざまなエネルギー要件を作成しました。これは、あるコンピューターの生成と実行に必要なエネルギーが別のコンピューターよりも少ないためです。また、インフラストラクチャの各部分の平均ライフサイクルも考慮に入れました。

    最終的に、Raghavan 氏と Ma 氏は、インターネットでは毎年 84 ~ 143 ギガワットの電力が使用されていると推定しました。これは、世界中の全電力の 3.6 ~ 6.2 パーセントに相当します。緊急時を考慮すると、合計は 170 ~ 307 ギガワットになります。これは大量のエネルギーですが、世界のエネルギー消費量の 2% 弱に相当します。

    止めたほうがいいでしょうか?

    James Glanz による 2012 年のニューヨーク タイムズの記事では、データ センターがいかに無駄で大量のエネルギーを消費するかについて考察しました。信頼性を提供するために、データセンターは同じ情報を複数のマシンに保存して冗長性を確保する必要があります。これらのマシンは常にオンになっており、アクセスできる必要があります。サーバーに常時電力を流す必要があることに加えて、データセンターにはより多くの電力を供給する冷却システムが必要です。

    Glanz の情報筋によると、データセンターは約 30 ギガワットの電力を使用します []。また、データセンターはそのエネルギーのほとんど、最大 90% を無駄にする可能性があるとも述べています。膨大な電力が無駄に消費されることになるので、インターネットは価値以上に害を及ぼしているのでしょうか?

    ラガヴァンとマーによるとそうではありません。彼らは報告書の中で、インターネットのエネルギー消費は、石油生産全体の 61 パーセントを占める運輸業界のエネルギー消費のほんの一部であると指摘しています 。 2 人の研究者は、インターネットは交通機関に比べて消費電力が少なく、環境への影響も小さいため、より多くのタスクをインターネットに移行するのが理にかなっていると示唆しています。会議のために出張するのではなくテレビ会議を使用すると、かなりのエネルギーを節約できる可能性があります。

    インターネットが使用するエネルギーの量を見ると、それが複雑な問題であるという本当の姿が浮かび上がります。インターネットがなければ、通信したりデータにアクセスしたりするために他の方法に依存する必要があります。これらの方法は、インターネットよりも多くのエネルギーを必要とし、より多くの汚染を引き起こす可能性があります。そうであれば、これらの活動への依存を減らし、インターネットにより重点を置くことは、エネルギーの観点から合理的です。

    著者のメモ

    質問が気になったので、ブレーンストーミング セッションでこの記事のアイデアを提案しました。インターネットはどのくらいのエネルギーを使用しますか?私はレストランの提案や娯楽のオプションから銀行取引やヘルスケアに至るまで、あらゆるものをインターネットに大きく依存しており、どれだけのエネルギーを消費しているのかと思うほどでした。私は、その答えを突き止めるのは難しい、あるいは不可能であるとさえ思っていました。幸いなことに、Raghavan と Ma はエネルギー消費量の推定に優れた仕事をしました。

  • グラフィックス カードの仕組み

    コンピューターのモニターに表示される画像は、ピクセルと呼ばれる小さな点で構成されています。ほとんどの一般的な解像度設定では、画面には 200 万ピクセル以上が表示され、コンピューターは画像を作成するためにそれぞれのピクセルをどう処理するかを決定する必要があります。これを行うには、 CPUからバイナリ データを取得して、それを目に見える画像に変換するトランスレータが必要です。このトランスレーターは、グラフィックス プロセッサー、または GPU として知られています。

    現在、ほとんどのエントリーレベルの消費者向けラップトップおよびデスクトップには、統合グラフィックスとして知られるセカンダリ GPU がメイン プロセッサに組み込まれています。ただし、プロレベルまたはカスタム マシンには、多くの場合、専用のグラフィック カード用のスペースもあります。グラフィックス カードの利点は、通常、統合チップよりもはるかに高速に、より複雑なビジュアルをレンダリングできることです。

    グラフィックス カードの仕事は複雑ですが、その原理とコンポーネントは理解するのが簡単です。この記事では、ビデオ カードの基本的な部分とその機能について説明します。また、高速で効率的なグラフィックス カードを実現するために連携する要素についても検討します。

    コンピューターを、独自のアート部門を持つ会社と考えてください。社内の人々が作品を欲しいと思ったとき、アート部門にリクエストを送ります。美術部門はイメージをどのように作成するかを決定し、それを紙に印刷します。最終的には、誰かのアイデアが実際の閲覧可能な画像になります。

    グラフィックス カードも同じ原理に基づいて動作します。 CPU はソフトウェア アプリケーションと連携して、画像に関する情報をグラフィック カードに送信します。グラフィックス カードは、画像を作成するために画面上のピクセルを使用する方法を決定します。次に、その情報をケーブル経由でモニターに送信します。

    バイナリ データからイメージを作成するのは、手間のかかるプロセスです。 3D 画像を作成するには、グラフィックス カードはまず直線からワイヤー フレームを作成します。次に、画像をラスタライズします (残りのピクセルを埋めます)。また、照明、テクスチャ、色も追加されます。ペースの速いゲームの場合、コンピューターはこのプロセスを 1 秒あたり約 60 ~ 120 回実行する必要があります。必要な計算を実行するためのグラフィック カードがなければ、コンピュータが処理できるほどの負荷がかかります。

    グラフィックス カードは、次の 4 つの主要コンポーネントを使用してこのタスクを実行します。

    次に、プロセッサとメモリについて詳しく見ていきます。

    GPU

    グラフィックスカード

    マザーボードと同様、グラフィックス カードはプロセッサVRAM を内蔵するプリント基板です。また、カードの設定を保存し、起動時にメモリ、入出力の診断を実行する入出力システム(BIOS)チップも備えています。

    グラフィックス カードのプロセッサはグラフィックス プロセッシング ユニット (GPU) と呼ばれ、コンピュータの CPU に似ています。ただし、GPU は、グラフィックスのレンダリングに必要な複雑な数学的および幾何学的な計算を実行するために特別に設計されています。最速の GPU の中には、平均的な CPU よりも多くのトランジスタを備えているものもあります。

    GPU は大量の熱を発生するため、通常はヒートシンクまたはファンの下に配置されます。統合チップは、独自の VRAM を持たず、CPU と同じ RAM ストックパイルから取得する必要があるという点で若干異なります。この違いにより、統合 GPU を使用してゲームをしているときにシステムのメモリが不足する可能性があります。

    GPU は、その処理能力に加えて、データの分析と使用を支援する特別なプログラミングを使用します。 AMD と Nvidia は市場にある GPU の大部分を生産しており、両社は GPU パフォーマンスを向上させるための独自の機能強化を開発しました。今日のビデオ プロセッサは次の機能を提供できます。

    • フルシーン アンチエイリアス (FSAA)。3D オブジェクトのエッジを滑らかにします。
    • 画像をより鮮明に見せる異方性フィルタリング (AF)
    • リアルタイムの物理学と粒子効果
    • マルチスクリーンディスプレイ
    • 高フレームレートのビデオ出力
    • 数百万ピクセルの超高解像度ビデオ
    • GPU アクセラレーションによる計算

    各社は、GPU による色、シェーディング、テクスチャ、パターンの適用を支援する特定の技術も開発しました。

    GPU が画像を作成するとき、情報と完成した画像を保持する場所が必要です。この目的のためにカードのRAM を使用し、各ピクセル、その色、画面上の位置に関するデータを保存します。 VRAM の一部はフレーム バッファとしても機能します。つまり、完成した画像を表示するときまで保持します。通常、ビデオ RAM は非常に高速で動作し、デュアル ポートです。つまり、システムはビデオ RAM からの読み取りと書き込みを同時に行うことができます。

    最新のビデオ カードは、PCIe x16 拡張スロットに接続されます。ラップトップやミニデスクトップなど、統合グラフィックスを備えた小型フォームファクターのコンピューターには、そのようなスロットが付属していない場合があります。ただし、外部 GPU と呼ばれる高価な回避策デバイスを使用すれば、グラフィック カードを引き続き接続できます。

    グラフィックスカードの進化

    IBM が 1981 年に最初のグラフィックス カードを導入して以来、グラフィックス カードは大きな進歩を遂げてきました。モノクロ ディスプレイ アダプター (MDA) と呼ばれるこのカードは、黒い画面に緑または白のテキストのみを表示する機能を備えていました。現在では、グラフィックス カードと統合チップの両方が、HDMI または DisplayPort ケーブルを介して HD (1,920 x 1,080 ピクセル) 信号を簡単に送信できるようになりました。スタンドアロン カードは、多くの場合、Ultra HD 4K (3,840 x 2,160) ビデオを出力し、より高いスペックの GPU ではさらに高い解像度を利用できます。

    優れたグラフィックス カードの選択

    最上位のグラフィックス カードは簡単に見つかります。大量のメモリと高速プロセッサを備えています。多くの場合、コンピューターのケース内に収納される他のものよりも視覚的に魅力的です。多くの高性能ビデオ カードにはイラストが描かれているか、装飾的なファンやヒートシンクが付いています。

    しかし、ハイエンド カードは、ほとんどの人が実際に必要とする以上の電力を提供します。主に電子メール、ワードプロセッサ、またはソーシャル メディアにコンピュータを使用する人は、統合グラフィックスを備えた CPU で必要なすべてのグラフィックス サポートを見つけることができます。ほとんどのカジュアルゲーマーにとっては、ミッドレンジのカードで十分です。ハイエンド カードのパワーを必要とする人には、ゲーム愛好家や 3D グラフィック作業を多く行う人が含まれます。

    カードのパフォーマンスを総合的に判断するのに適した測定値は、1 秒あたりのフレーム数 (FPS) で測定されるフレーム レートです。フレーム レートは、カードが 1 秒あたりに表示できる完全な画像の数を表します。人間の目は毎秒約 25 フレームを処理できますが、高速アクション ゲームでは、スムーズなアニメーションとスクロールを実現するために、少なくとも 60 FPS のフレーム レートが必要です。フレーム レートの構成要素は次のとおりです。

    • 1 秒あたりの三角形または頂点: 3D 画像は三角形または多角形で構成されます。この測定値は、GPU がポリゴン全体またはポリゴンを定義する頂点をどれだけ速く計算できるかを表します。一般に、カードがワイヤー フレーム イメージを構築する速度を表します。
    • ピクセル フィル レート: この測定値は、GPU が 1 秒間に処理できるピクセル数を表します。これは、画像をどれくらい速くラスタライズできるかを表します。

    グラフィックス カードのハードウェアは速度に直接影響します。以下は、カードの速度に最も影響を与えるハードウェア仕様と、その測定単位です。

    • GPUクロック速度(MHz)
    • メモリバスのサイズ (ビット)
    • 使用可能なメモリの量 (MB)
    • メモリクロックレート(MHz)
    • メモリ帯域幅 (GB/秒)

    非常に高速なグラフィックス カードはマザーボードのデータを迅速に配信できないことを補うことができないため、コンピューターの CPU とマザーボードも役割を果たします。同様に、カードのマザーボードへの接続と、CPU から命令を受け取る速度も、カードのパフォーマンスに影響します。

    統合グラフィックスとオーバーロック

    多くの CPU にはグラフィックス機能が統合されており、別個のグラフィックス カードを必要とせずに機能します。これらのプロセッサは 2D 画像を簡単に処理できるため、生産性やインターネット アプリケーションに最適です。別のグラフィックス カードをこれらのシステムのいずれかに接続すると、オンボード グラフィックス機能がオーバーライドされます。

    オーバークロックとして知られるクロック速度を手動でより高いレートに設定することで、グラフィックス カードのパフォーマンスを向上させることを選択する人もいます。 GPU のオーバークロックは過熱を引き起こす可能性があるため、通常はメモリをオーバークロックします。オーバークロックするとパフォーマンスが向上する可能性がありますが、メーカーの保証も無効になります。

  • 光造形のしくみ: 3D プリントプロセス

    3D レイヤ化または3D プリンティングとも呼ばれる光造形を使用すると、コンピューター支援設計 (CAD) 図面から固体のプラスチックの 3 次元 (3D) オブジェクトを数時間で作成できます。

    部品の適合性を確認したい機械エンジニアであっても、発明のプラスチック プロトタイプの作成を検討している発明家であっても、光造形は CAD 図面を実際のオブジェクトに変えるための迅速かつ簡単な方法を提供します。

    3D プリンティングは、私たちが生きている時代の好例です。以前は、部品のプロトタイプを作成するのに数か月かかることも考えられます。今日、ラピッドプロトタイピングはわずか数時間で、驚くほど機能的な機械的特性を備えて実行できます。

    PT CAM (Piedmont Triad Center for Advanced Manufacturing) のステレオリソグラフィー サービス ビューローのツアーを読み進めて、関係するすべてを理解し、このテクノロジーで生成できる実際の 3D モデルをいくつか確認してください。

    光造形装置

    光造形のしくみ: 3D プリントプロセス

    PT CAM は、 によって製造された光造形機を使用します。このマシンには 4 つの重要な部分があります。

    1. 数ガロンの液体フォトポリマーが入ったタンク。フォトポリマーは透明な液体プラスチックです。
    2. タンクに浸漬された穴あきプラットフォーム。印刷プロセスが進行するにつれて、プラットフォームはタンク内で上下に移動できます。
    3. 紫外線レーザーです。一部の SLA プリンタは、UV 光源としてデジタル光処理技術を使用しています。
    4. レーザーとプラットフォームを駆動するコンピューター

    フォトポリマーは紫外線に敏感であるため、レーザーがフォトポリマーに触れるとポリマーが硬化します。ステレオリソグラフ装置 (SLA) の隣に立つと、各層を構築するレーザーを実際に見ることができます。

    SLA マテリアル

    いくつかの主要な材料には、感光性ポリマーと支持構造が含まれます。これらは、張り出したフィーチャをサポートしますが、後処理は通過しません。二次材料および特殊材料は、高熱たわみ温度に耐えることができる高熱たわみおよび高温樹脂と、曲げや屈曲に適した柔軟で耐久性のある樹脂です。

    光造形プロセス

    光造形のしくみ: 3D プリントプロセス

    SLA 印刷の中核には、発光デバイスから正確に照射されたレーザー ビームを使用して、樹脂タンク内のポリマー樹脂を硬化させます。 SLA の印刷プロセスは次のようになります。

    1. CAD プログラムでオブジェクトの 3D モデルを作成します。
    2. ソフトウェアは、CAD モデルを薄い層 (通常は 1 ミリメートルあたり 5 ~ 10 層) に分割します。
    3. 3D プリンターのレーザーは層の 1 つを「ペイント」し、タンク内の液体プラスチックを露出させて硬化させます。
    4. プラットフォームはタンク内にほんの数ミリ落下し、紫外線レーザーが未硬化樹脂の次の層をペイントして前の層を覆います。
    5. モデルが完成するまで、このプロセスがレイヤーごとに繰り返されます。

    これは特に迅速なプロセスではありません。作成されるオブジェクトのサイズと数に応じて、レーザーは各レイヤーに 1 ~ 2 分かかる場合があります。通常の実行には 6 ~ 12 時間かかる場合があります。大きなオブジェクトの場合は、数日にわたる実行が可能です (上に示した比較的古いマシンの最大サイズは、3 次元で 10 インチ (25 センチメートル) のオブジェクトです)。

    まず、CAD プログラムでオブジェクトの 3D デザインを作成します。このデザインは、組み立てる前に、トレイからわずかに持ち上げるサポートと、組み立て中に必要な内部ブレースを使用して微調整されます。その後、SLA はオブジェクトを自動的に (そして無人で) レンダリングします。

    プロセスが完了すると、SLA によってプラットフォームが上昇し、最終的に 3D オブジェクトが完成します。オブジェクトが小さい場合は、必要に応じて複数のオブジェクトを同時に作成できます。彼らは皆トレイの上に隣り合って座ります。

    次の写真は、構築が完了した後のトレイを示しており、複数の同一のオブジェクトが同時に作成されています。

    光造形のしくみ: 3D プリントプロセス

    実行が完了したら、オブジェクトを溶剤ですすぎ、紫外線オーブンで「焼き付け」してプラスチックを完全に硬化させます。

    光造形のしくみ: 3D プリントプロセス

    SLA テクノロジーを使用する利点

    SLA テクノロジーは、射出成形や溶融堆積モデリングなどの従来の製造方法に比べて、いくつかの利点をもたらします。複数の工具や金型を必要とせずに、滑らかな表面仕上げ、微細な形状、高度に複雑な部品を製造できます。

    光造形で作れるもの

    光造形のしくみ: 3D プリントプロセス

    光造形を使用すると、想像できるほぼすべての 3D 形状を作成できます。 CAD プログラムに組み込むことができれば、おそらく作成できるでしょう。唯一の注意点は、建設プロセス中に構造的完全性が必要であることです。場合によっては、印刷または硬化段階でデザインが崩れないように、デザインに内部ブレーシングを追加する必要があります。

    このページの写真は、PT CAM で作成された典型的なオブジェクトを示しています。軽量でポリスチレンプラスチックのような強度を持っています。ピースの取り付けや穴あけもできるので、実際の使用でお試しいただけます。

    たとえば、椅子メーカーは、光造形を使用してさまざまな形状の肘掛けを製造し、実際の椅子で試して感触を確認します。

    光造形のコスト

    光造形は安価なプロセスではありません。これらのマシンの価格はかつて 25 万ドルを超え、今でも最高で数万ドルになります (ただし、デスクトップ SLA プリンタはそれよりもはるかに安い価格で入手できます)。また、ポリマーと溶剤によって煙が発生するため、排気する必要もあります。

    ポリマーも非常に高価です。 CibaTool SL5170 樹脂はステレオリソグラフィーで使用される一般的なフォトポリマーで、私たちが PT CAM を訪問したときの価格は 1 ガロンあたり約 800 ドルでした。これらの理由により、大企業以外にはプロ仕様の光造形装置を見つけることはまれです。

    ただし、ステレオリソグラフィーの利点を小規模な店舗や個人が利用できるようにするサービス ビューローがあります。まだ安くはありませんが、SLAや樹脂を自分で購入したり、部品を加工してもらったりすることに比べれば、かなりお買い得です。

    この記事の作成にご協力いただいた Joel Leonard、Jerry Watkins、Steve Oneyear に心より感謝いたします。

  • Javaの仕組み

    コンピュータプログラムがどのように動作するか考えたことはありますか?自分でコンピュータープログラムを書く方法を学びたいと思ったことはありますか?あなたが 14 歳で最初のゲームの書き方を学びたいと思っている場合でも、70 歳で 20 年間コンピューター プログラミングに興味を持っている場合でも、この記事はあなたのためのものです。 「コンピューター入門」の今回は、 Java プログラミング言語でプログラミングする方法を説明することで、コンピューター プログラムがどのように動作するかを説明します。

    コンピューター プログラミングについて教えるために、最初からいくつかの仮定を立てます。

    • ここでは、あなたはコンピューター プログラミングについて何も知らないと仮定します。すでに何かを知っている場合は、この記事の最初の部分は初歩的な内容に見えるでしょう。分からないところがあるまでは読み飛ばしてください。
    • あなたが使用しているコンピュータについて何かを知っていると仮定します。つまり、ファイルの編集、ファイルのコピーと削除、ファイル名の変更、システム上の情報の検索などの方法をすでに知っていると仮定します。
    • 話を簡単にするために、Windows 95、98、2000、NT、または XP を実行しているマシンを使用していると仮定します。他のオペレーティング システムを実行している人にとって、その概念をそれらのオペレーティング システムにマッピングするのは比較的簡単です。
    • あなたには学びたいという意欲があると思います。

    Java でプログラミングを開始するために必要なツールはすべて、Web 上で無料で広く入手できます。 Web 上には Java の膨大な量の教育資料も用意されているので、この記事を読み終えたら、さらに学習してスキルを向上させることも簡単です。ここでは、コンパイラ、開発環境、書籍などにお金をかけずに Java プログラミングを学ぶことができます。Java を学べば、他の言語も簡単に学ぶことができるので、始めるのに最適です。

    以上のことを述べましたので、準備は完了です。始めましょう!

    ちょっとした用語

    あなたがプログラミングについて何も知らないことを前提としていることに注意してください。理解を容易にするいくつかの語彙を以下に示します。

    • コンピューター プログラム– コンピューター プログラムは、コンピューターに何を実行するかを正確に指示する一連の命令です。命令は、一連の数値を合計するか、2 つの数値を比較し、その結果に基づいて決定を下すかなどをコンピューターに指示する可能性があります。しかし、レシピが料理人にとっての一連の指示であり、音符が音楽家にとっての一連の指示であるのと同じように、コンピューター プログラムは単にコンピューターに対する一連の指示にすぎません。コンピュータはユーザーの指示に正確に従い、その過程で小切手帳の残高を計算したり、ゲームを画面に表示したり、ワードプロセッサを実装したりするなど、何か役立つことを実行します。
    • プログラミング言語– ユーザーが与えた命令をコンピューターが認識できるようにするには、その命令はコンピューターが理解できる言語、つまりプログラミング言語で書かれている必要があります。多くの音声言語があるのと同じように、Fortran、Cobol、Basic、Pascal、 C 、C++、Java、 Perlなど、多くのコンピューター プログラミング言語があります。それらはすべて、ほぼ同じ概念を異なる方法で表現しています。
    • コンパイラ– コンパイラは、人間が読めるコンピュータ言語 (Java など) で書かれたコンピュータ プログラムを、コンピュータが実行できる形式に変換します。おそらく、コンピュータ上で EXE ファイルを見たことがあるでしょう。これらの EXE ファイルはコンパイラの出力です。これらには、実行可能ファイル、つまり人間が読めるプログラムから変換された機械が読めるプログラムが含まれています。

    Java と呼ばれるプログラミング言語でコンピューター プログラムの作成を始めるには、Java 言語用のコンパイラーが必要です。次のセクションでは、コンパイラーをダウンロードしてインストールするプロセスについて説明します。コンパイラを入手したら、始めましょう。このプロセスには数時間かかりますが、その時間のほとんどはいくつかの大きなファイルのダウンロード時間です。また、約 40 MBの空きディスク領域も必要です (開始する前に、利用可能な領域があることを確認してください)。

    Java コンパイラのダウンロード

    マシン上に Java 開発環境をセットアップするには (「開発環境」を使用してコンピュータ プログラムを「開発」(作成) します)、次の手順を完了する必要があります。

    1. Java 開発環境 (コンパイラおよびその他のツール) を含む大きなファイルをダウンロードします。
    2. Java ドキュメントを含む大きなファイルをダウンロードします。
    3. マシンに WinZip (または同等のもの) がまだインストールされていない場合は、WinZip を含む大きなファイルをダウンロードしてインストールする必要があります。
    4. Java開発環境をインストールします。
    5. ドキュメントをインストールします。
    6. いくつかの環境変数を調整します。
    7. すべてをテストしてください。

    始める前に、これからダウンロードするファイルを保存する新しいディレクトリを一時ディレクトリに作成すると作業が簡単になります。これをダウンロード ディレクトリと呼びます。

    ステップ 1 – Java 開発環境をダウンロードする

    ページに移動します。 「Download J2SE SDK」リンクをクリックして、SDK ソフトウェアをダウンロードします。ライセンス契約が表示されます。 「同意する」をクリックします。オペレーティング システムを選択し、ファイルをダウンロード ディレクトリにダウンロードします。これは巨大なファイルなので、通常の電話回線モデムを介してダウンロードするには数時間かかります。次の 2 つのファイルもサイズが大きくなります。

    ステップ 2 – Java ドキュメントをダウンロードする

    オペレーティング システムを選択し、SDK 1.4.1 ドキュメントのリンクをクリックしてドキュメントをダウンロードします。

    ステップ 3 – WinZip をダウンロードしてインストールする

    お使いのマシンに WinZip または同等のバージョンがない場合は、ページに移動して WinZip の評価版をダウンロードしてください。入手したEXEを実行してインストールします。すぐにこれを使用してドキュメントをインストールします。

    ステップ 4 – 開発キットをインストールする

    手順 1 でダウンロードした j2sdk-1_4_1-*.exe ファイルを実行します。これにより、開発キットが自動的に解凍され、インストールされます。

    ステップ 5 – ドキュメントをインストールする

    ドキュメントのインストール手順をお読みください。ドキュメント ファイルを、インストールした開発キットが含まれているディレクトリと同じディレクトリに移動するように指示されます。ドキュメントを解凍すると、適切な場所にドロップされます。

    ステップ 6 – 環境を調整する

    の指示に従って、パス変数を変更する必要があります。これを最も簡単に行うには、MS-DOS プロンプトを開いて PATH と入力し、現在設定されているパスを確認します。次に、メモ帳で autoexec.bat を開き、手順で指定されている PATH を変更します。

    ステップ 7 – テスト

    これで、別の MS-DOS ウィンドウを開いてjavacと入力できるようになります。すべてが正しく設定されていれば、 javac の使用方法を示す 2 行のテキストが表示されるはずです。つまり、準備ができています。 「不正なコマンドまたはファイル名」というメッセージが表示された場合は、準備ができていないことを意味します。インストール手順を読み直して、何が間違っていたのかを見つけてください。 PATH が適切に設定され、機能していることを確認してください。上記の「Programmer’s Creed」に戻って読み直し、問題が解決するまで粘り強く取り組んでください。

    これで、あなたは Java プログラムをコンパイルできるマシンの誇り高き所有者になりました。ソフトウェアの作成を開始する準備ができました。

    ところで、今解凍したものの 1 つは、きちんとしたサンプルが詰まったデモディレクトリです。すべてのサンプルはすぐに実行できる状態になっているので、ディレクトリを見つけてサンプルのいくつかを試してみるとよいでしょう。音が出るものも多いので、必ずスピーカーをオンにしてください。サンプルを実行するには、 example1.htmlのような名前のページを見つけて、通常の Web ブラウザにロードします。

    初めてのプログラム

     Javaの仕組み

    最初のプログラムは短くて楽しいものになるでしょう。描画領域を作成し、その領域に対角線を引きます。このプログラムを作成するには、次のことが必要です。

    1. メモ帳を開き、プログラムを入力 (またはカットアンドペースト) します。
    2. プログラムを保存する
    3. Java コンパイラを使用してプログラムをコンパイルしてJava アプレットを作成します
    4. 問題があれば修正してください
    5. 作成した Java アプレットを「保持」する HTML Web ページを作成します。
    6. Java アプレットを実行する

    このデモで使用するプログラムは次のとおりです。

     java.awt.Graphicsをインポートします。
    
    パブリッククラスFirstAppletはjava.applet.Appletを拡張します
    {
    
        パブリックボイドペイント(グラフィックスg)
        {
            g.drawLine(0, 0, 200, 200);
        }
    }

    ステップ 1 – プログラムを入力します

    プログラムを保存する新しいディレクトリを作成します。メモ帳 (または TXT ファイルを作成できる他のテキスト エディタ) を開きます。プログラムをメモ帳ウィンドウに入力するか、切り取って貼り付けます。これは重要です。プログラムを入力するときは、大文字と小文字が重要です。つまり、プログラムに表示される大文字と小文字を正確に入力する必要があります。上記のプログラマの信条を見直してください。示されているとおりに正確に入力しないと、機能しません。

    ステップ 2 – ファイルを保存する

    ファイルを、手順 1 で作成したディレクトリにFirstApplet.java というファイル名で保存します。ファイル名では大文字と小文字が区別されます。図に示すように、「F」と「A」が大文字で、他の文字はすべて小文字であることを確認してください。

    ステップ 3 – プログラムをコンパイルする

    MS-DOS ウィンドウを開きます。ディレクトリ (「cd」) をFirstApplet.javaが含まれるディレクトリに変更します。タイプ:

     javac FirstApplet.java

    ケースは重要です!これは機能しますが、その場合はウィンドウに何も表示されないか、エラーが発生します。エラーがなければ、FirstApplet.class という名前のファイルが FirstApplet.java のすぐ隣のディレクトリに作成されます。

    (ファイルがFirstApplet.java.txtではなくFirstApplet.javaという名前で保存されていることを確認してください。これは、MS-DOS ウィンドウにdirと入力してファイル名を確認することで最も簡単に行うことができます。拡張子が.txtの場合、ファイルの名前を変更して削除するか、Windows エクスプローラーを実行して、[表示] メニューの [オプション] を選択し、[登録されているファイルの種類の MD-DOS ファイル拡張子を非表示にする] チェックボックスがオフになっていることを確認します。必要に応じてエクスプローラーでファイル名を変更してください。)

    ステップ 4 – 問題を解決する

    エラーがある場合は修正してください。あなたのプログラムを上記のプログラムと比較し、正確に一致するようにしてください。エラーがなくなるまで再コンパイルを続けます。 javac が動作していないと思われる場合は、前のセクションを見直してインストールを修正してください。

    ステップ 5 – HTML ページを作成する

    アプレットを保持する HTML ページを作成します。別のメモ帳ウィンドウを開きます。次のように入力します。

     <html>
    <本文>
    <アプレット コード=FirstApplet.class 幅=200 高さ=200>
    </アプレット>
    </body>
    </html>

    このファイルをapplet.htmという名前で同じディレクトリに保存します。

    [これまで HTML を扱ったことがない場合は、 「Web ページの仕組み」を読んでください。アプレットタグは、Web ページから Java アプレットにアクセスする方法です。]

    ステップ 6 – アプレットを実行する

    MS-DOS ウィンドウで次のように入力します。

    アプレットビューア applet.htm

    左上隅から右下隅まで斜めの線が伸びているのが見えるはずです。

    アプレット ビューアを少し大きくすると、行全体が表示されます。また、HTML ページを Netscape Navigator や Microsoft Internet Explorer などの最新のブラウザにロードすると、ほぼ同じ内容が表示されるはずです。

    最初のプログラムが正常に作成されました!!!

    何が起こったのかを理解する

     Javaの仕組み

    それで何が起こったのでしょうか?

    まず、非常に単純なJava アプレットのコードを作成しました。アプレットは、ローカル マシン上で実行されるスタンドアロン プログラムであるJava アプリケーションとは対照的に、Web ブラウザ内で実行できる Java プログラムです (Java アプリケーションは少し複雑で、あまり人気がありません。アプレット付き)。アプレットはjavac を使用してコンパイルしました。次に、アプレットを「保持」するための非常に単純な Web ページを作成しました。 appletviewer を使用してアプレットを実行しましたが、ブラウザでも同様に簡単に実行できます。

    プログラム自体の長さは約 10 行です。

     java.awt.Graphicsをインポートします。
    
    パブリッククラスFirstAppletはjava.applet.Appletを拡張します
    {
    
        パブリックボイドペイント(グラフィックスg)
        {
            g.drawLine(0, 0, 200, 200);
        }
    }

    これは、作成できる最も単純な Java アプレットについてです。それを完全に理解するには、特にオブジェクト指向プログラミング技術の分野で、かなりの量を学ぶ必要があります。プログラミング経験がゼロであることを前提としているので、当面はこのプログラムの 1 行に注目してください。

     g.drawLine(0, 0, 200, 200);

    これは、このプログラム内で作業を行う行です。対角線を引いていきます。プログラムの残りの部分はその一行をサポートする足場であり、当面はこの足場を無視してかまいません。ここで何が起こったかというと、コンピュータに左上隅 (0,0) から右下隅 (200, 200) まで 1 本の線を描くように指示したということです。コンピューターは私たちが指示したとおりにそれを描きました。それがコンピュータプログラミングの本質です!

    (HTML ページでは、上記の手順 5 でアプレットのウィンドウのサイズを幅 200、高さ 200 に設定していることにも注意してください。)

    このプログラムでは、 drawLineというメソッド(別名function ) を呼び出し、それに 4 つのパラメーター(0、0、200、200) を渡しました。行はセミコロンで終わります。セミコロンは文末のピリオドのように機能します。行はg で始まります。これは、 gという名前の特定のオブジェクトでdrawLineという名前のメソッドを呼び出すことを意味します (これは、 Graphicsクラスのものであることがわかります。クラスとクラスのメソッドについては、この記事で後ほど詳しく説明します)。 。

    メソッドは単なるコマンドです。コンピュータに何かを行うように指示します。この場合、 drawLine は、指定された点 (0, 0) と (200, 200) の間に線を引くようにコンピューターに指示します。ウィンドウは、左上隅に 0,0 座標があり、正の X 軸と Y 軸が右と下に伸びていると考えることができます。画面上の各ドット (各ピクセル) は、スケール上の 1 つの増分です。

    4 つのパラメーターに異なる数値を使用して実験してみてください。 1 つまたは 2 つの数値を変更し、変更を保存し、 javacで再コンパイルし、 appletviewerで変更を加えるたびに再実行して、結果を確認します。

    drawLine以外にはどのような機能があるのでしょうか?これは、 Graphicsクラスのドキュメントを参照するとわかります。 Java 開発キットをインストールしてドキュメントを解凍すると、そのプロセスでアンロードされたファイルの 1 つがjava.awt.Graphics.htmlと呼ばれ、マシン上に存在します。 Graphicsクラスを説明したファイルです。私のマシンでは、このファイルへの正確なパスは D:\jdk1.1.7\docs\api\java.awt.Graphics.html です。お使いのマシンではパスが若干異なる可能性がありますが、正確にはインストール場所によって異なります。ファイルを見つけて開きます。このファイルの先頭の方に、「メソッド インデックス」というセクションがあります。これは、このクラスがサポートするすべてのメソッドのリストです。 drawLineメソッドはその 1 つですが、他にも多数あります。描画などを行うことができます。

    • ライン
    • 円弧
    • 楕円形
    • ポリゴン
    • 長方形
    • 文字列
    • キャラクター

    これらのさまざまな方法について読み、試してみて、何が可能なのかを見つけてください。たとえば、次のコードを試してください。

     g.drawLine(0, 0, 200, 200);
            g.drawRect(0, 0, 200, 200);
            g.drawLine(200, 0, 0, 200);

    2 つの対角線を持つボックスが描画されます (全体が見えるようにウィンドウを十分に大きく引いてください)。他の形を描いてみてください。 setColorメソッドについて読んで、色を変更してみてください。例えば:

     java.awt.Graphicsをインポートします。
    java.awt.Colorをインポートします。
    
    パブリッククラスFirstAppletはjava.applet.Appletを拡張します
    {
    
        パブリックボイドペイント(グラフィックスg)
        {
            g.setColor(Color.red);
            g.fillRect(0, 0, 200, 200);
            g.setColor(Color.black);
            g.drawLine(0, 0, 200, 200);
            g.drawLine(200, 0, 0, 200);
        }
    }

    プログラムの 2 行目に新しいインポート行が追加されていることに注意してください。このプログラムの出力は次のようになります。

     Javaの仕組み

    今あなたの頭をよぎっているかもしれないことの 1 つは、「なぜ彼は単にredではなくColor.red を使用することを知ったのでしょうか? また、2 番目のimport行を追加することをどのようにして知ったのでしょうか?」ということです。そのようなことを例から学びます。 setColorメソッドを呼び出す方法の例を示したばかりなので、色を変更する場合は常にColor を使用することがわかりました。その後に色の名前をsetColorメソッドのパラメータとして指定し、プログラムの先頭に適切なインポート行を追加します。 setColorを検索すると、 Colorクラスについて説明するリンクがあり、その中には有効なすべての色の名前のリストと、新しい (名前のない) 色を作成するためのテクニックが含まれています。その情報を読んで頭の中に保存すれば、Java で色を変更する方法がわかります。それがコンピューター プログラマーになることの本質です。テクニックを学び、次に書くプログラムのためにそれを覚えておくのです。テクニックを学ぶには、(ここで行ったように) 例を読むか、ドキュメントを読むか、(デモ ディレクトリにあるように) サンプル コードを見ることによって行います。物事を探索したり、学んだり、覚えたりするのが好きな頭脳を持っているなら、プログラミングが大好きになるでしょう。

    このセクションでは、線形のシーケンシャル コード (先頭から始まり下に向かうメソッド呼び出しで構成されるコード ブロック) を記述する方法を学習しました (赤い四角形を描画する前に、線の 1 本を描画して、何が起こるかを確認してください) — 四角形で覆われ、非表示になります。コード シーケンス内の行の順序は重要です。コードの連続行は、コンピューター プログラムの基本的なコアを形成します。さまざまな描画方法をすべて試して、何が発見できるかを確認してください。

    バグとデバッグ

    プログラミングについて学ぶときに気づくことの 1 つは、かなりの数の間違いや仮定を犯す傾向があり、その結果、プログラムが次のいずれかに陥るということです。1) コンパイルされない、2) コンパイル時に予期しない出力が生成されるそれは実行します。これらの問題はバグと呼ばれ、それらを削除する行為はデバッグと呼ばれます。プログラマーの時間の約半分はデバッグに費やされます。

    独自のバグを作成する時間と機会は十分にありますが、可能性をよりよく知るために、いくつかのバグを作成してみましょう。プログラムで、行末のセミコロンの 1 つを消去し、 javacでプログラムをコンパイルしてみてください。コンパイラはエラー メッセージを表示します。これはコンパイラ エラーと呼ばれ、プログラムを実行する前にすべてのエラーを取り除く必要があります。さまざまなコンパイラ エラーに慣れるために、関数名のスペルを間違えたり、「{」を省略したり、インポート行の 1 つを削除したりしてみてください。特定のタイプのコンパイラ エラーを初めて見るとイライラするかもしれませんが、意図的に作成した既知のエラーを使用してこのように実験することで、一般的なエラーの多くに慣れることができます。

    実行 (またはランタイム) エラーとも呼ばれるバグは、プログラムが正常にコンパイルされて実行されたにもかかわらず、計画した出力が生成されない場合に発生します。たとえば、次のコードは、2 本の対角線が入った赤い四角形を生成します。

     g.setColor(Color.red);
            g.fillRect(0, 0, 200, 200);
            g.setColor(Color.black);
            g.drawLine(0, 0, 200, 200);
            g.drawLine(200, 0, 0, 200);

    一方、次のコードは、(2 行を覆う) 赤い四角形だけを生成します。

     g.setColor(Color.black);
            g.drawLine(0, 0, 200, 200);
            g.drawLine(200, 0, 0, 200);
            g.setColor(Color.red);
            g.fillRect(0, 0, 200, 200);

    コードはほぼ同じですが、実行するとまったく異なります。 2 本の対角線が表示されることが予想される場合、2 番目のケースのコードにはバグが含まれています。

    別の例を次に示します。

     g.drawLine(0, 0, 200, 200);
            g.drawRect(0, 0, 200, 200);
            g.drawLine(200, 0, 0, 200);

    このコードは、黒い枠で囲まれたボックスと 2 つの対角線を生成します。次のコードでは、対角線が 1 つだけ生成されます。

     g.drawLine(0, 0, 200, 200);
            g.drawRect(0, 0, 200, 200);
            g.drawLine(0, 200, 0, 200);

    繰り返しますが、2 つの対角線が表示されると予想した場合は、コードの 2 番目の部分にバグが含まれています (何が間違っていたのかを理解するまで、コードの 2 番目の部分を見てください)。この種のバグは見つけにくいため、見つけるのに時間がかかることがあります。

    自分のバグを見つける練習をする時間は十分にあります。平均的なプログラマーは、バグの追跡、発見、除去に時間の約半分を費やします。それらが発生してもイライラしないようにしてください。これらはプログラミング生活の通常の一部です。

    変数

    すべてのプログラムは変数を使用してデータを一時的に保持します。たとえば、プログラムのある時点でユーザーに数字の入力を求める場合、後で使用できるようにその数字を変数に保存します。

    変数は使用する前にプログラム内で定義(または宣言) する必要があり、各変数に特定の型を与える必要があります。たとえば、ある変数に数字を保持できる型を宣言し、別の変数に人の名前を保持できる型を宣言することができます。 (Java では、変数を使用する前に変数を明確に定義し、変数に格納する予定の値の型を指定する必要があるため、Java は厳密に型指定された言語と呼ばれます。一部の言語にはこれらの要件がありません。一般に、大規模な言語を作成する場合は、プログラムでは、強い型付けを行うとプログラミング エラーの数が減る傾向があります)。

     java.awt.Graphicsをインポートします。
    java.awt.Colorをインポートします。
    
    パブリッククラスFirstAppletはjava.applet.Appletを拡張します
    {
    
        パブリックボイドペイント(グラフィックスg)
        {
            int 幅 = 200;
            int 高さ = 200;
            g.drawRect(0, 0, 幅, 高さ);
            g.drawLine(0, 0, 幅, 高さ);
            g.drawLine(幅, 0, 0, 高さ);
        }
    }

    このプログラムでは、 widthheightという名前の 2 つの変数を宣言しました。それらの型をintとして宣言しました。 int変数は整数 (1、2、3 などの整数) を保持できます。両方の変数を 200 に初期化しました。次のように簡単に言うこともできます。

     整数幅;
            幅 = 200;
            整数の高さ;
            高さ = 200;

    最初の形式は単に入力が少し早いだけです。

    変数を最初の値に設定する行為は、変数の初期化と呼ばれます。一般的なプログラミングのバグは、変数の初期化を忘れたときに発生します。このバグを確認するには、コードの初期化部分 (「= 200」部分) を削除し、プログラムを再コンパイルして何が起こるかを確認してください。コンパイラがこの問題について警告していることがわかります。ちなみに、これは非常に素晴らしい機能です。無駄な時間を大幅に節約できます。

    Java には、単純 (プリミティブ) 変数とクラスという 2 種類の変数があります。

    int型はシンプルです。変数には数値を保持できます。できることはそれだけです。 intを宣言し、値を設定して使用します。一方、クラス には複数の部分を含めることができ、それらを使いやすくするメソッドを含めることができます。簡単なクラスの良い例はRectangleクラスですので、それから始めましょう。

    私たちがこれまで取り組んできたプログラムの制限の 1 つは、ウィンドウが 200 x 200 ピクセルであると想定しているという事実です。ウィンドウに「どのくらいの大きさですか?」と尋ねて、それに合わせて長方形と対角線のサイズを調整したい場合はどうなるでしょうか。 Graphicsクラスのドキュメント ページ (java.awt.Graphics.html — 使用可能なすべての描画関数をリストしたファイル) に戻って見ると、関数の 1 つがgetClipBoundsという名前であることがわかります。この関数名をクリックすると、詳しい説明が表示されます。この関数はパラメータを受け入れませんが、代わりにRectangle型の値を返します。返される四角形には、使用可能な描画領域の幅と高さが含まれます。このドキュメント ページで[Rectangle]をクリックすると、 Rectangleクラス (java.awt.Graphics.html) のドキュメント ページが表示されます。ページ上部の「変数インデックス」セクションを見ると、このクラスには、それぞれ x、y、幅、高さという名前の 4 つの変数が含まれていることがわかります。したがって、私たちがやりたいことは、次のようにgetClipBoundsを使用してクリップ境界の四角形を取得し、その四角形から幅と高さを抽出し、前の例で作成した高さの変数に値を保存することです。

     java.awt.Graphicsをインポートします。
    java.awt.Colorをインポートします。
    java.awt.Rectangle をインポートします。
    
    パブリッククラスFirstAppletはjava.applet.Appletを拡張します
    {
    
        パブリックボイドペイント(グラフィックスg)
        {
            整数幅;
            整数の高さ;
            長方形r;
    
            r = g.getClipBounds();
            幅 = r.幅 - 1;
            高さ = r.高さ - 1;
    
            g.drawRect(0, 0, 幅, 高さ);
            g.drawLine(0, 0, 幅, 高さ);
            g.drawLine(幅, 0, 0, 高さ);
        }
    }

    この例を実行すると、長方形と対角線が描画領域に正確にフィットしていることがわかります。さらに、ウィンドウのサイズを変更すると、長方形と対角線が新しいサイズで自動的に再描画されます。このコードには 5 つの新しい概念が導入されているので、それらを見てみましょう。

    1. まず、Rectangle クラスを使用しているため、プログラムの 3 行目でjava.awt.Rectangleをインポートする必要があります。
    2. このプログラムでは 3 つの変数を宣言しました。 2 つ ( widthheight ) はint型で、1 つ ( r ) は Rectangle 型です。
    3. getClipBounds関数を使用して描画領域のサイズを取得しました。パラメーターを受け入れないため、何も渡しません (「()」) が、Rectangle を返します。 「r = g.getClipBounds();」という行を書きました。 「返された四角形を変数rに入れてください。」
    4. Rectangle クラスの変数rには、実際には x、y、width、height の 4 つの変数が含まれています (これらの名前は、Rectangle クラスのドキュメントを読むとわかります)。これらにアクセスするには、「.」を使用します。 (ドット) 演算子。したがって、「r.width」というフレーズは、「変数r内でwidthという名前の値を取得する」ことを示しています。その値は、 widthと呼ばれるローカル変数に配置されます。その過程で、1 を減算しました。減算を省略して、何が起こるかを確認してください。また、代わりに 5 を引いてみて、何が起こるかを確認してください。
    5. 最後に、描画関数で高さを使用しました。

    この時点でよく聞かれる質問の 1 つは、「本当に高さという名前の変数を宣言する必要がありましたか?」というものです。答えは「いいえ」です。 r.width – 1 を描画関数に直接入力することもできました。変数を作成すると、単純に内容が少し読みやすくなるため、習慣化すると良いでしょう。

    Java はいくつかの単純な変数タイプをサポートしています。最も一般的なものを 3 つ紹介します。

    • int – 整数 (整数) 値 (1、2、3…)
    • float – 10 進数値 (3.14159 など)
    • char – 文字値 (a、b、c…)

    単純な型に対して数学演算を実行できます。 Java は、 + (加算)、 (減算)、 * (乗算)、 / (除算) などを理解します。これらの操作をプログラムで使用する方法の例を次に示します。直径 10 フィートの球の体積を計算するとします。次のコードはそれを処理します。

    フロート直径 = 10;
    フロート半径;
    フロートボリューム;
    
    半径 = 直径 / 2.0;
    ボリューム = 4.0 / 3.0 * 3.14159 * 半径 * 半径 * 半径;

    最初の計算では、「 diameterという名前の変数の値を 2.0 で割り、その結果をradiusという名前の変数に代入します。」ここでの「=」記号は、「右側の計算の結果を左側の変数に代入する」ことを意味していることがわかります。

    ループ

     Javaの仕組み

    コンピューターが非常に得意とすることの 1 つは、反復的な計算や演算を実行することです。前のセクションでは、「コードの連続ブロック」を記述する方法について説明しました。次に説明する必要があるのは、コードの連続ブロックを繰り返し発生させるためのテクニックです。

    たとえば、ページの上部にある図のグリッドを描いてもらったとします。

    まずは水平線を引くことから始めるとよいでしょう。

    線を引く 1 つの方法は、連続したコード ブロックを作成することです。

     java.awt.Graphicsをインポートします。
    
    パブリッククラスFirstAppletはjava.applet.Appletを拡張します
    {
    
        パブリックボイドペイント(グラフィックスg)
        {
            int y;
            y = 10;
            g.drawLine(10, y, 210, y);
            y = y + 25;
            g.drawLine(10, y, 210, y);
            y = y + 25;
            g.drawLine(10, y, 210, y);
            y = y + 25;
            g.drawLine(10, y, 210, y);
            y = y + 25;
            g.drawLine(10, y, 210, y);
            y = y + 25;
            g.drawLine(10, y, 210, y);
            y = y + 25;
            g.drawLine(10, y, 210, y);
            y = y + 25;
            g.drawLine(10, y, 210, y);
            y = y + 25;
            g.drawLine(10, y, 210, y);
        }
    }

    (新しいプログラマーの中には、「y = y + 25;」というステートメントを初めて見たとき、奇妙に見える人もいます。これが意味するのは、「現在変数yに入っている値を取得し、それに 25 を加えて、その結果を に戻す」ということです。変数y 。つまり、行が実行される前に y に 10 が含まれていた場合、行が実行された直後には 35 が含まれます。)

    このコードを見たほとんどの人は、同じ 2 行が何度も繰り返されていることにすぐに気づきます。この特定のケースでは、繰り返しはそれほど悪くありませんが、数千の行と列を含むグリッドを作成したい場合、このアプローチではプログラムの作成が非常に面倒になることが想像できます。この問題の解決策は、以下に示すようなループです。

     java.awt.Graphicsをインポートします。
    
    パブリッククラスFirstAppletはjava.applet.Appletを拡張します
    {
    
        パブリックボイドペイント(グラフィックスg)
        {
            int y;
            y = 10;
            while (y <= 210)
            {
                g.drawLine(10, y, 210, y);
                y = y + 25;
            }
        }
    }

    このプログラムを実行すると、長さ 200 ピクセルの水平線が 9 本描画されることがわかります。

    whileステートメントは Java のループ ステートメントです。このステートメントは、Java に次のように動作するように指示します。 whileステートメントで、Java は括弧内の式を調べて、「 y は210 以下ですか?」と尋ねます。

    • 答えが「はい」の場合、Java は中括弧 (「{」と「}」) で囲まれたコードのブロックに入ります。ループ部分はコード ブロックの最後に発生します。 Java が終了中括弧に到達すると、ループしてwhileステートメントに戻り、再度質問します。このループ シーケンスは何度も発生する可能性があります。
    • 答えが「いいえ」の場合、中括弧で囲まれたコードをスキップして続行します。

    このプログラムを実行すると、最初はyが 10 であることがわかります。10 は 210 より小さいため、Java はブロック内を中括弧で囲み、(10,10) から (210, 10) まで線を引き、 y を35 に設定します。そしてwhileステートメントに戻ります。 35 は 210 より小さいため、Java は中括弧で囲まれたブロックに入り、(10,35) から (210, 35) まで線を引き、 yを 60 に設定してからwhileステートメントに戻ります。このシーケンスは、最終的にy が210 より大きくなるまで繰り返されます。その後、プログラムは終了します。

    次のようにプログラムに 2 番目のループを追加することで、グリッドを完成させることができます。

     java.awt.Graphicsをインポートします。
    
    パブリッククラスFirstAppletはjava.applet.Appletを拡張します
    {
    
        パブリックボイドペイント(グラフィックスg)
        {
            int x, y;
            y = 10;
            一方 (y <= 210)
            {
                g.drawLine(10, y, 210, y);
                y = y + 25;
            }
            x = 10;
            while (x <= 210)
            {
                g.drawLine(x, 10, x, 210);
                x = x + 25;
            }
        }
    }

    whileステートメントには 3 つの部分があることがわかります。

    • y を 10 に設定する初期化ステップがあります。
    • 次に、while ステートメントのかっこ内に評価ステップがあります。
    • 次に、while ステートメントのどこかに、y の値を増やす増分ステップがあります。

    Java は、 whileステートメントよりももう少しコンパクトな、同じことを行う別の方法をサポートしています。 for文といいます。次のようなwhileステートメントがあるとします。

     y = 10;
            while (y <= 210)
            {
                g.drawLine(10, y, 210, y);
                y = y + 25;
            }

    その場合、同等のforステートメントは次のようになります。

     for (y = 10; y <= 210; y = y + 25)
            {
                g.drawLine(10, y, 210, y);
            }

    forステートメントが実行するのは、初期化、評価、および増分行を短い単一行に凝縮することだけであることがわかります。それは単に作成したプログラムを短縮するだけであり、それ以上のものではありません。

    ここで、ループに関する 2 つの簡単なポイントを説明します。

    • 多くの場合、 y を210 に初期化し、ループを通過するたびに 25 ずつデクリメントすることも同様に簡単です。評価では、「 y は10 以上ですか?」と尋ねられます。選択はあなた次第です。ほとんどの人は、頭の中で引き算より足し算の方が簡単だと考えますが、あなたは違うかもしれません。
    • インクリメントステップは非常に重要です。 「y = y + 25;」という部分を誤って省略してしまったとしましょう。ループの中。起こることは、 yの値が変わることはないということです – それは常に10になります。したがって、それは210を超えることは決してなく、ループは永遠に続きます(またはコンピューターをオフにしたり、ウィンドウを閉じて停止するまで) 。この条件は、無限ループと呼ばれます。それはかなり一般的なバグです。

    ループでいくつかの練習をするには、次の数字を描くためにプログラムを作成してみてください。

     Javaの仕組み

    Javaやその他のコンピュータープログラミング言語に関する詳細情報については、次のページのリンクをご覧ください。