How to become a MediaWiki hacker/ja

This article is a translation from How to become a MediaWiki hacker for Japanese.

このページは、ウィキペディアの開発プロセスについての情報の収集と、新参の開発者の質問への回答を目的とするものです. もし、あなたが私達のコーディングの手伝いを考えていて、まだ必要とされるスキルを持ち合わせていないなら、此処は手始めにはうってつけの場所となります.

最初に、幾つかの重要なリンクを:


 * The Wikipedia-code web page contains general information about development
 * The Wikipedia SourceForge Project page allows you to check out the code and to report bugs. Note that we do not use SourceForge's patch tracker (if you don't know what patches are, see below).
 * MediaWiki architecture more documentation!

オペレーティング・システム
ウィキペディアのコードは、PHP プログラムング言語 と MySQLデータベース に基き動作します. これらは様々なオペレーティング・システムに移植されており、この中には、殆どのUnixの異版とマイクロソフト・ウィンドウズが含まれますが、この限りではありません. 従って、これらのシステムにウィキペディアをインストールし使用することができます. といっても、殆どの開発者はUnix環境にあるUnix界で作られたツールの使用を好みますので、Unixを使った方が、おそらくより良い支援を受けることができるでしょう.

もし、Unixへの乗り換えを考えているなら、フリーな (オープン・ソースの) Unixの異版が入手可能です. その中で最も一般的なものは Linux で、これは予めパッケージ化された状態で入手でき、また、それなりにインストールが簡単です. Unixの世界に詳しくなるには Rute Tutorial がとくにお勧めです. それから、日々の作業についてはLinux cookbookが、より複雑な問題については Linux documentation project もまた参考になるでしょう.

PHP プログラミング言語
もし、PHP(「PHP: Hypertext Preprocessor」の略)に関する知識が無くても、その他のオブジェクト指向のプログラミング言語を知っているなら、心配は要りません. PHPを習得するのは簡単です.

PHPも、その他のオブジェクト指向言語もご存知でないとすれば、あなたは、クラスや、オブジェクトや、メソッド、イベント、継承といった概念に慣れる必要があるでしょう.

一切のプログラミング言語の知識が無いのであれば、PHPはプログラミングを始めるにはもってこいの言語で、他の近代的な言語とも似てはいますが、それが実行される目的ははっきりしています.

殆どのプログラムと違い、PHPスクリプトは一般にコマンドラインやウィンドウ・マネージャから実行することができません. その代わり、PHPスクリプトは、あなたがウェブサーバから「.php」という拡張子(だけではないけれど)の付いたファイルの要求を出すことで実行されます. そうすることで、ウェブサーバ(我々の場合は Apache ですが)は、PHPインタープリタ(おそらくウェブサーバの中に構築されているでしょう)を呼び出し、PHPファイルを解釈して、その結果をブラウザに返します. PHPファイルは、通常のHTMLとPHPプログラムとを含むことができ、静的なウェブページへの動的な機能の追加が比較的容易になります.

Related links:


 * PHP tutorial (available in many different languages)
 * The PHP manual (available in many different languages)

SQL と MySQL
ウィキペディアでは現在、データベースのバックエンドに MySQL を使用しています. PHPに MySQLのサポートが追加されていることを確認して下さい!

我々は他のデータベースのバックエンドを使ってウィキを動かすことも試みていて、特にpostgresqlの、性能と軽便さに注目しています.

ウィキペディアのインストール
CVSからソースを得る方法は、w:Wikipedia:PHP script(英語)をご覧下さい.

きっと、ソースの中にある INSTALL ファイルに不可思議な記述を見掛けるでしょう. 次のようにしてみて下さい.

もし、一緒に使うための実在するデータベースのローカル・コピーをセットアップしたいなら、最初にMySQLで空のデータベースを作成し、「maintenance」サブディレクトリにある「createdb.php」スクリプトを走らせます (きちんと設定してあるか確認して下さい!). このメンテナンス用のスクリプトはメインのソース・ディレクトリからファイルを include していることに注意して下さい; PHPのインクルード・ディレクトリを設定するか、または、単にファイルをコピーするかして下さい.

その後、一度は、使用したい言語の SQL ダンプ を取得する必要があります. 次の様にしてインポートして下さい.
 * Linux
 * gzip -dc cur_table.sql.gz | mysql -u wikiadmin -padminpass wikidb
 * gzip -dc old_table.sql.gz | mysql -u wikiadmin -padminpass wikidb
 * cd maintenance ; php rebuildlinks.php

unzip the file
 * Windows (may need -u wikiadmin -padminpass wikidb as above)
 * mysql < cur_table.sql
 * mysql < old_table.sql
 * cd maintenance ; php rebuildlinks.php

リンク・テーブルの再構築には、かなりの時間がかかります. 英語版の膨大なデータベースをインストールした場合にはとくに. (お望みなら、古いテーブルをスキップできることも注記しておきます. ) See Database layout on what rebuilding.php is good for.

Note that if you want to create a public mirror of Wikipedia, this probably isn't the best way to go about it. If you do set up a mirror this way, please tweak the code to note that you're looking at a mirror and include links back to the main site.

Your first feature
...

See also: Development policy