[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

第21回 昼休みの工作がいつしかニュース・リーダーに成長



1996年10月号 UNIX USER誌掲載「ルート訪問記」の過去記事

第21回 昼休みの工作がいつしかニュース・リーダーに成長

今回は、オムロンソフトウェア株式会社 [注1] の山下康成(や
ました やすなり)さんを訪ね、新しい本社ビルのネットワークに
ついて、山下さんがフリー・ソフトウェアとして提供されている
ニュース・リーダーgnについてお聞きしました。


==========
[山下 康成さんからの新規コメント]

最近はオフラインで使え、かつ操作性が向上したニュースリーダが
いくつも登場しています。

gn を作り始めたころ、NetNews を読む人はエンジニアに限られ
ていたのですが、最近はエンジニアでない方も、初心者の方も
NetNews を読まれるようになっています。gn は、ドキュメントが
日本語といっても、やや専門的で、他のニュースリーダに比べて、
難解であるとよく言われます。gn/gnspool は CUI ですし、過去の
ものになってしまった感があります。

それゆえ、開発のペースも落ちてしまい、パッチを送っていただい
ても対応が遅れてしまっています。本当に申し訳なく思っています。

ただ、今でも gn や gnspool を使ってポストされた記事をたくさ
ん見掛けます。辛抱強く使っていただけているんだなと、いつも感
謝しています。

(1999.8.4 山下 康成)
==========


*ゴールデン・ウィーク明けに新本社が始動開始

私(以下Y):こんにちは。オムロン ソフトウェアというと、
Wnn6の販売窓口として知られていると思います。今年のゴールデン・
ウィークに新しい本社ビルに移転されたということなので、新本社
ビルのネットワーク構築に関するお話から聞かせていただけません
か。

山下さん(以下G [注2]):まず概要から説明しますと、1階か
ら7階までFDDI [注3] のリングが張ってあり、それぞれのフロア
にスイッチング・ハブ [注4] が入っています。これはルーターの
機能 [注5] も持っており、部門ごとにサブネットを割り当ててい
ます。

さらに、それぞれのスイッチング・ハブからツイスト・ペアのモジュ
ラー・ジャックが並んだパッチ・パネルにつながっており、ここか
ら複数のモジュラー・ボックスにつながっています。私のセクショ
ンの場合、6人程度のデスクの島ごとに1つ、このモジュラー・ボッ
クスがあり、ここに島すべてのPCやWS、電話、FAX、モデムなどを
つなぐようになっています。

 まとめると、「ネットワークへの口は、各階のスイッチング・ハ
ブからパッチ・パネルを使った統合配線システムを通してフロア内
の各島に必要数配線している。電話についても交換器から統合配線
システムを通して同様のことをしている。これらの配線はモジュラー・
ボックスという箱から出ており、パッチ・パネルの簡単な切り替え
操作で柔軟に場所の移動ができる」ということですね。

 会社の外に出る線としては、オムロン・グループの社内ネットワー
クに出るものとインターネット・プロバイダに出るもの、そして
ODNetという協力会社との独自ネットワークの合計3種類あります。

 また、応接室や会議室を含むすべての部屋にイーサネットのケー
ブルが用意されているので、マシンさえ持っていけばネットワーク
接続が必要なデモもできるようになっています。新しいビルですか
ら、当然全館フリー・アクセス・フロア [注6] です。

Y:いままで、本社と新館に分散していたオフィスが1つになって、
ネットワークも新しくなったというわけですね。

G:古い本社と新館は、少しずつ何回かにわたりネットワークを拡
張してきましたから、どうしても歪みが出ていました。たとえば、
100台以上のマシンが1本の線でつながっているセクションなども
あったのですが、今回の再構築でグループ単位程度に線を分けて運
用できるようになりました。サブネット化したくても、「何もイベ
ントがないのにネットワークを止めて作業をする」というのは許可
が出にくいですから、いいきっかけだったと思います。

 ネットワークが新しくなって一番うれしいのは外部との接続環境、
とくにスピードが飛躍的に向上したことです。もともと本社にいた
人にとっては、それほど違いはないかもしれませんが、私たちがい
た事業所(新館)はサーバーのある本社から離れていたため、外部
との接続スピードに限界 [注7] があったわけです。いまは本社の
LANの中にいることによる快適さがうれしいですね。

Y:しかし、ゴールデン・ウィーク中のネットワーク構築担当者の
作業は、大変だったでしょうね。

G:ルーターやハブの設定、NTTの専用回線 [注8] の接続の立ち
会いやプロバイダとの接続、電話交換器との接続など、あらゆるこ
とを数日で行うわけですから、非常に忙しかったと思います。ただ、
現在私はオムロン ソフトウェア全体のシステム管理者からは引退
した身なので、今回のネットワーク構築に関しては当事者ではあり
ませんでした。

Y:私にとって、山下さんは「システム管理者」というイメージが
強いのですが、引退されたのはいつごろですか?

G:’89年ごろから’94年の年末までは、インターネットとの接続
関係を一手に引き受けていました。その後、引き継ぎを行い、’95
年の春からは隠居の身です。ただし、私が所属しているセクション
のシステム管理は担当しています。

 昨年、私のセクション独自にWWWサーバーとFTPサーバーの立ち上
げを行い、そこである程度の実績を作ってから全社に展開しました。
現在、これらは全社的に運用されており、私の手からは離れていま
す。

Y:一般的に、「ルート業はなかなか引退できない」という傾向が
あるので、山下さんも完全に隠居の身になるのは難しいのではない
かと思います。


*gnの開発は昼休みの工作から……

Y:では、次にgn [注10] のお話を聞かせていただきましょうか。
gnを一言で説明すると「マルチプラットフォームで使えるキャラク
タ・ユーザー・インタフェース(CUI)のニュース・リーダー」と
いうことですが、そもそもなぜgnをお作りになったのでしょうか。

G:’90年の夏ごろ、「昼休みの工作」として作り始めたのですが、
毎日45分間の昼休みの前半でお弁当を食べて、後半を工作の時間に
あてていました。

 当時ニュース・リーダーといえば、vn [注10] とEmacsの上で動
作するGNUS [注11] しかありませんでした。もちろん、ほかにも存
在はしたのでしょうが、うちの会社で使われていたのはその2つで
した。GNUSは「Emacsが使える」という前提条件があるので、敷居
が高いでしょう。もう一方のvnは、私にとって使いにくく思えたん
ですね。そのころは、社内にネット・ニュースを普及させようと努
力していたときでした。gnを作った理由の1つは、「使いやすいツー
ルがないと普及できない」と思ったからです。

 ちょうどそのとき、NNTP [注12] のプロトコルのサーバーをデバッ
グする仕事をしていました。具体的な内容は、NNTPサーバーを自社
製ワークステーションに移植することで、実際、作業のためにNNTP
のプロトコルを調べてみると、非常に簡単で全部暗記できるくらい
でした。gnを作ろうとしたもう1つのきっかけは、「こんなに簡単
だったら、ニュース・リーダーも簡単に作れるんじゃないかな」と
思ったことです。

 一番最初は単なるNNTPプロトコルのテスト・プログラムだったの
が、次第にニュース・リーダーとして形を成してきて、ここまで成
長したというわけです。

 それ以外にも、昼休みに毎日15分、gnのプログラム開発にあてる
ことで、自分を「いつでもC言語のプログラミングができる状態」
にしておきたかったという理由もありました。若いときは、ほぼ毎
日プログラミングをしていますが、立場上、だんだんとプログラミ
ング時間は減っていきます。でも、gnのおかげで定期的にソースを
いじっているので、いまでも、「いつでもOK」状態でスタンバイで
きているのです。

Y:指が動かなくならないように毎日15分ピアノの前に座るような
ものですね。作者として、gnの売りをPRしていただけますか。

G:操作がメニュー形式なので初心者でも簡単に使えること、純国
産のニュース・リーダーなのでメニューやメッセージが日本語で表
示されること、UNIX、DOS [注13]、Windows、OS/2 [注14] などの
OSで動く「マルチプラットフォーム対応」であることですね。スレッ
ド機能 [注15] も持っています。また、CUIなのでマウス操作も必
要ありません。そのため「お弁当を食べながらニュースを読むのに
最適!」といってくださる方もいます。

Y:お弁当を食べるときは右手に箸を持っているので、画面のある
部分にマウス・カーソルを持っていってクリックするという操作が、
なかなか思うようにできないんですよね。キーボードの右側にある
マウスを左手で操作するというのも至難の業だし。また、GNUSのよ
うに両手で操作するものも、お弁当を食べながらは苦しいですよね。
ところで、さすがにMacOSでは動作しないようですが、将来的にサ
ポートする予定はないのですか。

G:MacOSには、CUIのソフトはなじまないでしょう。作者の私がいっ
てはいけないとは思いますが、gnのユーザー・インタフェースは時
代遅れになりつつありますから。

 ですが、gnの持つgnspoolというオプション・ツールが、最近と
ても注目を浴びています。gnspoolは、各自の.newsrcに従って未読
の記事をローカル・ディスクに取り寄せるツールですから、
gnspoolとgnとを併せて使用するとNNTPサーバーと接続せずに、オ
フラインでネット・ニュースが読めるわけです。

 gnspoolの機能を使って、まとめて取ってきたニュース記事のファ
イルは、ニュース・リーダーが何であろうと読める形式になってい
ます。そのため、gnだけではなく、GNUS、WinVN、mnews [注16] で
も読めます。個人でプロバイダ [注17] に加入して、自宅から電話
でインターネットにアクセスされている方が、最近飛躍的に増えて
ますよね。

オンラインでニュースを読んでいたら1時間ぐらいすぐにたってし
まいますから、「最初にドーンとまとめて未読の記事を取り込んで、
オフラインでゆっくり読む」ためのツールは、需要が高まって当然
なんです。gn自体よりもgnspoolに関する問い合わせが多いという
のは、gnの作者としては複雑な気持ちですが、多くの人に利用され
ているのはうれしいですね。

Y:通話料が高いという日本の電話事情を考えれば、需要が高くて
当然です。GNUSなど、ほかのニュース・リーダーからも使えるとい
うのがよいですね。オフラインでニュースが読めるような機能を持
つニュース・リーダーは、ほかにないのですか。

G:ほかにもいろいろありますが、マルチプラットフォームで動い
て日本語のドキュメントがあるのは、gnspoolだけだと思います。

Y:最初からgnspoolの機能があったわけではなく、途中で付け加
えられたのですよね。

G:はい。「gnの歴史」をまとめたものがありますので、そちらを
参照してください(表1)。

Y:フリー・ソフトウェアを出していて、一番うれしいことは何で
しょう。

G:うーん。大げさかもしれませんが、自分が歴史に残る喜びでしょ
うか。具体的には、各種雑誌 [注18] に名前が載るとか、自分が作っ
たソフトのニュース・グループが存在するとか。また、イベントな
どで初めて会って名刺交換した人から「あの、gnの山下さんですか」
といわれることもありますし、ときどき同じセクションの営業担当
者が客先で「オムロン ソフトウェアというと、gnの山下さんがい
らっしゃる会社ですね」などといわれることまであるようです。

Y:うれしいですね。フリー・ソフトウェアを出している方の喜び
を紹介したことで、若い人の中に「優秀なフリー・ソフトウェアを
作ってやろう!」という人が出てきてほしいものです。そのような
方へ先輩からアドバイスをお願いします。

G:「必要は発明の母」ということで、「もっと便利にならないか
な」と思うことがツールの開発に結び付いてくると思います。言語
を知っているというベースとツールを開発するための知識を身につ
けているということ、ニュース・リーダーの場合はNNTPのプロトコ
ルを知っていることがそれに相当しますが、ここまでが基本で、そ
こからが工夫の世界なんですね。

「どのようなユーザーを想定してユーザー・インタフェースを作る
か」、「速くするには」、「小さくするには」、「移植性を高める
にはどうするか」について、1つずつしっかりと考えることが大切
だし、最も苦労する部分だと思います。

 たとえばNNTPの場合、RFC [注19] を読めば分かりますが、プロ
トコルの理解などは、本当にたいしたことではありません。たぶん、
全体の100分の1以下がプロトコルの理解で、100分の99がそのほか
の部分だと思います。「言語を知らないといけない」、「プロトコ
ルを知っていないといけない」という技術的な敷居はすごく低くて、
大切なのはそこからだということです。gnはC言語で書かれていま
すが、最近なら「Javaアプレット入門」 [注20] などの本を参考に
してJava言語 [注21] を習得し、Java言語を使ってマルチプラット
フォーム対応のソフトを作るのもよいでしょう。

Y:そうですね。自分の名前を歴史に残してやろうという意欲を持っ
た方は、ぜひがんばってほしいですね。今日は、フリー・ソフトウェ
ア作りに関するアドバイスなど素敵なお話をどうもありがとうござ
いました。



[注1]  オムロン ソフトウェア株式会社

1976年4月に設立。オムロン・グループの中でソフトウェア開発に
重要な役割を果たしている。新本社は、京都駅前(京都市下京区西
洞院木津屋橋通東入ル)。URLはhttp://www.omronsoft.co.jp/である。


[注2]  以下G

山下康成さんは、イニシャルが“Y.Y”で、筆者のイニシャル(Y)
と同じなので、今回は山下さんのニック・ネームであるGon(ゴン)
を使って、「Gさん」とさせていただいた。


[注3]  FDDI

Fiber Distributed Data Interfaceの略。100Mbpsのリング型LANで
あり、伝送路には光ファイバを使用。


[注4]  スイッチング・ハブ

スイッチング機能を持ったイーサネット端末やATM端末の集線装置。
通常のハブとの違いは、送信先端末がつながったポートにだけパケッ
トを送ること。


[注5]  ルーターの機能

IPアドレスを見てデータ(パケット)のルーティング(中継経路決
定)を行う機能。


[注6]  フリー・アクセス・フロア

床が二重構造になっていてその中にケーブルを通すことができるフ
ロアのこと。少し離れた机と机の間にケーブルを渡すとき、フリー・
アクセスの中を通すと美観的にもよく、ケーブルに足を引っかける
こともなくなる。


[注7]  スピードに限界

引っ越す前の新館と本社との接続スピードについて、具体的な数値
は教えてもらえなかったが、その速さを人数で割ると28.8Kbpsのモ
デムよりも遅くなる程度の速さだったようだ。


[注8]  専用回線

利用者が電気通信事業者から借り受け、専有して使用する回線。あ
らかじめ決められた2点間専用の回線であり、その2点間の距離と
速度でNTTに払う回線料金が決まる。料金は固定制なので、通信す
るしないにかかわらず一定の料金を支払う。会社の事業所間の内線
電話などに使われている例が多い。専用線には、アナログ回線を使っ
た「一般専用サービス」とデジタル回線を使った「高速デジタル伝
送サービス」の2種類があり、後者を俗に「デジタル専用線」と呼
ぶ。


[注9]  gn

上はミニコンで動作するUNIXから下はパームトップPCで動作する
MS-DOSまで、ほとんど同じユーザー・インタフェースで使用できる
NNTP対応の軽いニュース・リーダー。ニュース・リーダー本体のほ
かに、gnspoolという.newsrcに従って未読の記事をローカル・ディ
スクに取り寄せるオプション・ツールも添付してある。ちなみに初
めてfj.sourcesにポストしたときの記事は [画面1]である。


[注10]  vn

NNTPが出てくる以前から利用されていたニュース・リーダー。NNTP
対応版のrvn、日本語対応のvn、Windows版のWinVNもある。


[注11]  GNUS

Emacsからネット・ニュースを読むためのニュース・リーダー。梅
田政信氏によって開発され、世界に広がった。Emacsバージョン19
からは、標準のニュース・リーダーとしてソースに含まれている。


[注12]  NNTP

Network News Transfer Protocolの略。ニュース・サーバーに格納
されているニュース記事を、一般のクライアント・マシン側から読
むときに使われるプロトコルの種類。TCP/IPのネットワークで動作
し、多くの場合TCPの119番ポートを用いる。


[注13]  DOS

ディスク制御とファイル処理を主体としたディスク・オペレーティ
ング・システム。ほとんどの場合、マイクロソフトのMS-DOSの略称
として使われている。


[注14]  OS/2

IBMの32ビット・オペレーティング・システム。OS/2 Warp V3では、
必要メモリが6Mバイト以上と旧バージョンよりも少ない容量(旧
バージョンは8〜12Mバイト以上)で動作する。また、インターネッ
ト利用環境やWindows環境で使用できるTrueTypeフォントなど、付
加機能が充実している。


[注15]  スレッド機能

ニュース記事を、ある特定の話題のフォロー順に並べ直す機能のこ
と。1つのニュース・グループにはさまざまな話題が混在している
ので、ある話題だけを追いたいときに便利。


[注16]  mnews

日本で開発されたミニ・ニュース・リーダー。


[注17]  プロバイダ

インターネット接続をサービスする会社。正確には、ネットワーク・
サービス・プロバイダ。インターネットはその成り立ちが研究目的
のネットワークであり、ネットワーク技術はUNIXをベースにしたも
のだった。また、ネットワーク自体も単体のコンピュータがつながっ
ているわけではなく、研究機関内のLANを介して外部につながって
いた。しかし、その便利さゆえに徐々に商用利用が許されるように
なり、そのため単体のPCでもインターネットに接続できるサービス
を代行する業者も現れるようになった。


[注18]  各種雑誌

Internet User(ソフトバンク)、インターネットマガジン(イン
プレス)など。


[注19]  RFC

Request For Commentsの略。インターネットの研究開発機関IETF
(Internet Engineering Task Force)が取りまとめている文書群。
一般には、TCP/IPの規格書として知られている。'79年に最初のRFC
が誕生してからすでに約1700の文書がRFCとなっており、インター
ネット上で公開されている。


[注20]  「Javaアプレット入門」

'96年5月、ソフトバンクから発行された書籍。著者は佐渡秀治さ
んと他。「他」の部分には筆者も含まれる。


[注21]  Java言語

サン・マイクロシステムズが開発したオブジェクト指向言語。Java
で開発されたアプリケーションは、OSやプロセッサに依存しないク
ロス・プラットフォーム対応となる。



======[表1]=======

<< gn の作者が語る gn の歴史 >>

1990年 夏         昼休みの工作として作成開始
1990年12月     「第3回オムロン社内イベント UNIXまつり」のUNIXコンテスト
	       で便利ツール賞を受賞
Feb.4,1991:0.93	  オムロングループ内にβリリース(対応機種 LUNA シリーズ)
Mar.2,1991:0.94
Jun.19,1991:1.00 オムロングループ内に正式リリース(対応機種 LUNA シリーズ)
May.22,1992:1.01
Jul.11,1992:1.02
Jul.23,1992:1.03  オムロングループ内部リリース(基本機能の追加、バグフィックス)
Aug.22,1992:1.04  スレッド対応
Sep.3,1992:1.04   fj.sources にポスト。オムロングループ外にデビュー
Sep.21,1992:1.05  SunOS,NEWS-OS 対応
		(このころからムライ電気工業(株)の沢田どのと DOS への移植開始)
Feb.4,1993:1.06	  gnrc による初期設定機能追加、MVUX,DG/UX 対応
Sep.1,1993:1.10   PC-UX/V 対応、DOS + InetBIOS 対応、DOS + PC-NFS 対応、
		 DOS + PathWay 対応、DOS に対応した最初のバージョン
Nov.1,1993:1.11   DOS + Packet Driver 対応、
         DOS + InetBIOS,Turbo-C(Borland-C) 対応、jnames 対応
Mar.1,1994:1.20   MIME ヘッダ対応、localspool 対応、gnspool 追加
		 POWER_SAVE mode 追加、ネットワークコードのない gn/gnspool、
		 HP-UX 対応、NEWS-OS 6.0 対応、OS/2 対応、
		 OSF/1 対応、X680x0 対応
Mar.1,1994        gn メイリングリスト(gn@gw.omronsoft.co.jp)開設
Jul.1,1994:1.30   ME/UX 対応、EWS4800 対応、
         NOVELL LAN WorkPlace for DOS 対応、
         Windows + Winsock 対応(しなきゃ良かったぁ、、、)
 	     configur 追加
Oct.1,1994:1.31   CASIO SX-V 対応
Aug.1,1995	  fj.news.reader.gn 開設
Sep.1,1995:1.32   gninews 追加、mkgn 追加、Solaris 2.x 対応、
       	 HI-UX 対応、CAIOS-UX 対応
Sep.1,1995	 http://www.omronsoft.co.jp/~yamasita/ 開設
Nov.1,1995:1.33   FreeBSD 対応
Nov.11,1995	  日経MIXの標準ニュースリーダとして採用
Mar.1,1996:1.34   Linux 対応、MS-C V9.01(32bit) 対応

Sep.1,1996:1.35	  AIX, Digital Unix, BSD/OS, OS/2 + EMX, X680x0 + ESPX 対応
Jun.1,1997:1.36   MH と gnspool を組み合わせてメイルを送信可能
Jun.1,1998:1.40   Win32 対応、gnloops 追加


===========
[新規注]

最後の3行は、書籍用に山下さんが追加してくださったものです。
(1999.8.4 よしだ)
===========

======[表1]おわり=======



======[画面1]=======

---- Sep.3,1992:1.04:社外デビューの時の記事 -----
Newsgroups: fj.sources
Path: gw.omronsoft.co.jp!yamasita
From: yamasita@omronsoft.co.jp (Yasunari Gon Yamasita)
Subject: News reader 'gn' V 1.04 (1/3)
Message-ID: <YAMASITA.92Sep3175554@hsl024.omronsoft.co.jp>
Followup-To: fj.sources.d
Sender: news@gw.omronsoft.co.jp (News Manager)
Nntp-Posting-Host: hsl024.slab.kyoto.omronsoft.co.jp
Organization: Software Lab. OMRON SOFTWARE Co., Ltd. Kyoto, Japan.
Distribution: fj
Date: Thu, 3 Sep 1992 08:55:54 GMT
Lines: 524

オムロンソフトウェアの山下と申します。

昼休みの工作で gn というニュースリーダを作って近所に配ったところ、結構
使っていただいたので、ずにのって fj にもポストします。

gn は、「ニュースグループ」「サブジェクト」毎に分類する nntp 対応の初
心者向けニュースリーダです。一応スレッドにも対応しています。

なお、御近所向けですので、ローカルな用語がたくさん出てきますし、マニュ
アルもあまり親切ではありません。

職業柄、OMRON LUNA シリーズでしか動いた実績はありません。一応 SYS-V 系、
BSD 系両方で動作していますから、移植もそれほど難しくはないと思います。

まだまだ改良の途上です。
改善提案、移植情報、不具合情報などがありましたら、フィードバックいただ
ければ幸いです。

#以下 uuencode されたデータ:略
----------------------------------------------------------------------

======[画面1]おわり=======


===================================================================

UNIXまめちしき

  NNTPプロトコルの紹介

「NNTPプロトコルのコマンド」は、次の通りである。

ARTICLE   
     記事番号またはMessage-ID を指定すると、カレントを変更し、
     該当記事を表示する。何も指定しないと、カレントの記事を表示する。    

BODY  
     記事番号またはMessage-ID を指定すると、カレントを変更し、
     該当記事の中身を表示する。

GROUP 
     ニュースグループを指定することにより、カレントのグループを指定する。

HEAD
     記事番号またはMessage-ID の指定すると、カレントを変更し、該当記事の
     ヘッダーを表示する。   

LAST
     カレントの記事を一つ戻す。   

LIST
     利用可能なニュースグループと最新の記事の番号、保持している最初の
     記事の番号、フラグが表示される。        

NEXT
     カレントの記事を一つ進める。

POST
     記事をポストする。

QUIT
     終了する。      

NEWGROUPS
     指定した日時以降に作られたニュースグループ名をLISTと同じ形式で
     表示する。        

HELP
     オンラインヘルプ表示。

IHAVE
     自分の持っている記事を相手のサーバに伝達する。

NEWNEWS
     指定されたニュースグループに対して新しく届いたMessage-ID を得る。

SLAVE
     ユーザーではなく、スレーブ・サーバーからのアクセスであることを示す。   
STAT
     記事番号またはMessage-IDを指定することにより、カレントを変更する。
     ARTICLEコマンドと違って、記事は表示しない。


なお、gn をはじめとするニュースリーダーは、これらのプロトコルを使うよ
うに設計されているが、これらのコマンドをはだかで使うことによって、ニュー
ススリーダーを使わずにニュースサーバー届いたメールを読んだり書いたりす
ることもできる。その場合、119 番が NNTP で用いられるポート番号であるた
め、telnet で 119 番のポートに接続し、上記のコマンドを入力する。

% telnet ニュースサーバー名 119

(参考文献:RFC 0977「Network News Transfer Protocol」)


===================================================================


(UNIX USER誌連載「よしだともこのルート訪問記」より)
http://www.tomo.gr.jp/root/ に戻る