フリーソフトウェアGNU30周年と開発環境、開発ツールの歴史を振り返る安藤幸央のランダウン(66)(2/3 ページ)

» 2013年10月07日 00時00分 公開
[安藤幸央(yukio-ando@exa-corp.co.jp),株式会社エクサ]

1970年代

1972年:「C言語」登場

1979年:「N-BASIC」が搭載された「PC-8001」が発売

 PC-8001は当時の定価で16万8000円で、4MHzの8bit CPU、16Kbytesのメモリ、画面グラフィックスは160×100ドット8色表示でした。

 長いプログラミングになるとソースコードをプリンタで打ち出して確認したりデバッグしたり、プログラミングそのものを紙にペンで書きながら考えるということもありました。

1980年代

1981年:「PC-8801」登場

1982年:『マイコンBASICマガジン』(ベーマガ)創刊

 当時雑誌に印刷された「BASIC」のソースコードや、マシン語の16進数のコードを打ち込んだ思い出がよみがえる人も居るかもしれません。

1983年:「MSX」登場

1987年:「Perl」誕生

 Perlは実用性を重視したテキスト処理に長けたプログラミング言語でした。

 このころは、まだテキストエディタでソースコードを打ち込んで(プログラミング言語によっては)コンパイル、実行という環境が主流でした。環境によっては、フルスクリーンエディタではなく、1行ずつプログラムを書いては編集するという場合もありました。

1990年代

1991年:「Microsoft Visual Basic」登場

1995年:「Java」誕生

 このころから既存のライブラリやAPI(Application Programming Interface)群を適切活用するという流れが顕著になってきました。SDK(Software Development Kit)や、テストツール、ビルドツールなどの環境も整ってきました。

 デスクトップアプリケーション向けの統合開発環境が数多く登場し(「Borland JBuilder」「WebGain VisualCafe」「IBM VisualAge for Java」など)、統合開発環境(画面設計ツール、デバッガ、ステップ実行)が当たり前に使える環境になりつつも、旧来のテキストエディタ、コンパイル、ビルド環境を好む人も居ました。

左から「Borland JBuilder 4」http://www.atmarkit.co.jp/fjava/products/jbuilder4/jbuilder4.html「WebGain VisualCafe 4」http://www.atmarkit.co.jp/fjava/products/vcafe4/vcafe4_0.html「IBM VisualAge for Java 3.5」http://www.atmarkit.co.jp/fjava/isuue/javaide/javaide.htmlのスクリーンショット(それぞれリンクの@IT記事から引用)

1996年:「Ruby」1.0正式版登場

1997年:「Microsoft Visual Studio 97」登場

1998年:「Microsoft Visual Studio 6.0」登場

1998年:「J2EE」発表

 エンタープライズ向けや、商用向けの大規模開発が一般的になりました。

1998年:「JUnit」1.0登場

2000年代

 開発の大規模化に伴うフレームワークの進化や、既存の資産を活用するというコンポーネントプログラミングの推進、設計や多人数での開発のためUMLツールの台頭など、開発を手助けする周辺環境が整ってきます。

2000年:「Ant」登場

2000年:「Subversion(SVN)」登場

 テストツール、ビルドツールの充実、バージョン管理ツールも当たり前のように使われてきます。

2001年:「@IT」創刊

2001年:統合開発環境「Eclipse」がオープンソースに

2002年:「Microsoft Visual Studio .NET」登場

「Microsoft Visual Studio .NET」の画面(記事『連載簡単!Visual Studio .NET入門:第1回 初めての「Visual Studio .NET」』より引用

2003年:Apple Xcode登場

2005年:「Git」の開発開始

分散型バージョン管理システム「Git」の概念(記事「ガチで5分で分かる分散型バージョン管理システムGit」より引用

2005年:「Eclipse 3.1」リリース

 Eclipseは、このころからJava開発に広く使われるようになりました。また、Javaに限らず、多用なプログラミング言語に対応した開発環境として親しまれるようになります。その一方、「遅い」「メモリ食い」などといった不評も目立つようになりました。

「Eclipse 3.1」の画面(記事「Eclipse 3.1を使おう(1):Eclipse 3.1の導入と日本語化」より引用

2005年:「Ruby on Rails」1.0リリース

 このころから、Railsのみならず、Perl、PythonPHPJavaScriptといったLL(Lightweight Language、軽量プログラミング言語)やスクリプト言語がWeb用途で活用すべく、再び脚光を浴びます。

2006年:「Amazon EC2」(ベータ版)発表

2008年:「iPhone 3G」登場

2008年:「GitHub」登場

2009年:開発環境と運用環境の双方の連携を考慮した「DevOps」という考え方がこのころ、初めて登場

 アジャイルや、テスト駆動開発、プロトタイピングといった、限られた人的リソース、限られた予算やスケジュールでできる限り品質の高いソフトウェアプロダクトを素早く作り上げるかといった、手法やプロセスにも興味を持ち、取り入れる人やチーム、企業が増えてきました。

2010年代〜現在

 スマートフォンも含め、Webを活用するユーザーや分野が増加しました。各種のWebシステムの増加や複雑化に伴い、デプロイツールや、テスト環境、本番環境などといった運用における信頼性や可搬性、人的ミスの排除といった考えも重要になってきました。

 SOA(Service Oriented Architecture:サービス指向アーキテクチャ)の台頭で、「プログラマが仕事がなくなるかも?」といわれた時期もありましたが、現実はそうなっていません。

2011年:オープンソースの継続的インテグレーションツール「Hudson」から「Jenkins」が別プロジェクトとしてフォークされる

 PaaS勃興により、大規模なサーバ資産を持たずとも、多くのユーザーを抱えたWebのサービスを提供できるようになりました。また、GitHubが流行し、テクノロジー企業の就職選抜の資料として使われる場面も出てきました。

 いわゆる「ノマドスタイル」と呼ばれるカフェやコワーキングスペースでノートパソコン一台で仕事するケースや、仲間や外部からの協力を得、助け合いならがら進めるソーシャルコーディング、開発側と、運用側の連携が密になり、よりスピード感を増したDevOps、「Vagrant」「Chef」などによるインフラ環境構築自動化ツールも便利に、実用的になってきました。

 「避けることのできるミスを減らし、開発のスピードを上げていく」「自動化できるところは極限まで自動化し、人間にしかできないコーディングに集中する」流れはこれからも止まらず、ますます勢いを増していくことでしょう。

 ツールや仕組みを活用し、品質の高いソフトウェアプロダクトを、素早いスピードで作り上げるために、日々現場では工夫と試行錯誤が続いているのです。

 本稿執筆時、Xcodeはバージョン5、Visual Studioはバージョン2012(2013が11月11日にリリース予定)Eclipseはバージョン4.3と、どの陣営も莫大な開発費用を投入して、開発ツールそのものを開発しています。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。