exe/dmgしか知らない人のためのインストール/パッケージ管理/ビルドの基礎知識:ユカイ、ツーカイ、カイハツ環境!(32)(4/4 ページ)
Windows、Mac、Linuxごとのインストーラー、仮想実行環境、言語ごとのモジュール(ライブラリ)管理・ビルドツール、ローカルリポジトリによる配布、標準リポジトリ、GitHubでの公開などを紹介。
アプリケーションやソフトウェアの配布
アプリケーションの配布を行う場合、Webサイトでダウンロードできるように公開したり、アプリケーションの配布サイトに登録したりするなど、基本的には、ダウンロードして取得できるようにすればOKです。
また、AppStoreやWindows Storeなどの公式の配布サイトに登録する手もあります。モジュールの場合、どのようにして、利用者に配布すればよいでしょうか。
ローカルリポジトリによる配布
業務で開発しており、一般には公開しないモジュールの場合、ローカルリポジトリを作成してモジュールの管理を行うことになります。この場合、社内のプライベートLAN上にローカルリポジトリを作成し、モジュールを利用することになります。
標準リポジトリで配布――主なもの10選
作成したモジュールが一般公開可能な場合は、各ツールで利用できる標準のリポジトリへ登録できます。
標準リポジトリへ登録すれば、Webサイトからダウンロードしたり、個人のリポジトリを追加したりするなどの作業をする必要なく、デフォルトの設定のままでコマンド一つでインストールできるようになります。利便性も格段に向上し、各個人サイトでのリリースに比べ、多くのユーザーに利用してもらえます。
アップロードのためのアカウント作成や公開手続きに多少手間が掛かりますが、標準リポジトリで公開できるものは、公開してしまった方がよいでしょう。表2に各標準リポジトリ一覧を掲載します。
言語 | 公式リポジトリ |
---|---|
Java(Maven/IVY) | Maven Central |
Perl | CPAN |
Python | PyPI(the Python Package Index) |
Ruby(gem/bundler) | RubyGems.org |
PHP | Packagist |
.NET(NuGet) | nuget gallary |
JavaScritpt(npm) | npm-registory |
JavaScritpt(Bower) | Bower |
Objectvie-C | CocoaPods |
GitHubで公開
分散バージョン管理ツール「Git」のリポジトリサービスの「GitHub」を利用してパッケージを公開するケースも最近増えてきています。上記のリポジトリサービスへ登録する場合は、登録作業が必要になりますが、GitHubを利用すれば、手軽に自前のパッケージ・モジュールをアップロードできます。
また、GitHubには、バグや機能追加の要望などを管理するIssue機能があったり、リポジトリをフォークしてフォークしたリポジトリ上で行ったバグ修正や機能追加をフォーク元にフィードバックできるなど、開発の活性化にもつなげることができます。
今回紹介したツールの中で、NuGet、Copmoser以外のツールはGitHub上のパッケージを直接扱えます。Composerについては、GitHubで公開したライブラリをPackageに登録すれば利用できます。
自分の知らない言語の仕組みも知っておこう
アプリケーションのインストーラー、パッケージ、ランタイムから、開発時に必要なモジュール管理について、紹介してきました。皆さんがお使いのOSや開発でご利用の言語の仕組みについては、理解されていると思いますが、利用していないOSや言語について比べてみると、面白い点が出てくるかもしれません。また、使いたいツールが自分の知らない言語で作られていて、インストールの仕方が分からない場合も役立つと思います。
モジュールの管理については、ある言語のモジュール管理の仕組みを覚えれば、他の言語の場合でも細かいところは違えど、大枠は同じなので、モジュール管理を行うツールをまだお使いでない方は、ぜひ使ってみることをお勧めします。
本稿では概要のみ紹介しました。個々のツールについては、本文で紹介したそれぞれの関連記事やサイトなどをご参照いただければと思います。
- exe/dmgしか知らない人のためのインストール/パッケージ管理/ビルドの基礎知識
- これでGitも怖くない! GUIでのバージョン管理が無料でできるSourceTreeの7つの特徴とは
- DevOps時代の開発者のためのOSSクラウド運用管理ツール5選まとめ
- GitHubはリアルRPG? そして、ソーシャルコーディングへ
- ついにメジャーバージョンUP! Eclipse 4.2の新機能7選
- いまアツいアジャイルプロジェクト管理ツール9選+Pivotal Tracker入門
- Git管理の神ツール「Gitolite」なら、ここまでできる!
- Java開発者が知らないと損するPaaSクラウド8選
- Eclipse 3.7 Indigo公開、e4、Orion、そしてクラウドへ
- AWSの自由自在なPaaS「Elastic Beanstalk」とは
- Ant使いでもMavenのライブラリ管理ができるIvyとは
- 「Hudson」改め「Jenkins」で始めるCI(継続的インテグレーション)入門
- Bazaarでござ〜る。猿でもできる分散バージョン管理“超”入門
- Review Boardならコードレビューを効率良くできる!
- Team Foundation ServerでJava開発は大丈夫か?
- コード探知機「Sonar」でプロジェクトの深海を探れ!
- 単体テストを“神速”化するQuick JUnitとMockito
- Java EE 6/Tomcat 7/Gitに対応したEclipse 3.6
- AzureのストレージをJavaで扱えるWindowsAzure4j
- 究極の問題解析ツール、逆コンパイラJD-Eclipseとは
- AWS ToolkitでTomcatクラスタをAmazon EC2上に楽々構築
- DB設計の神ツール「ERMaster」なら、ここまでできる
- Webのバグを燃やしまくるFirebugと、そのアドオン7選
- Googlerも使っているIntelliJ IDEAのOSS版を試す
- JUnit/FindBugs/PMDなどを総観できるQALab/Limy
- ブラウザを選ばずWebテストを自動化するSelenium
- Eclipse 3.5 Galileoの「実に面白い」新機能とは
- App Engine/AptanaなどJavaクラウド4つを徹底比較
- Aptanaなら開発環境とクラウドの連携が超お手軽!
- 分散バージョン管理Git/Mercurial/Bazaar徹底比較
- SubversionとTracでファイル管理の“迷宮”から脱出
- Trac Lightningで始めるチケット式開発「電撃」入門
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- FreeBSDのコレ知ってる?(3):次世代パッケージ管理システム、pkg(8)
FreeBSD 10-CURRENTに、パッケージのビルドシステムや配布システム、管理システムなどを刷新した次世代パッケージ管理システム「pkg(8)」がマージされた。今回はその機能を紹介する。