SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

【デブサミ2019夏】セッションレポート(AD)

早く、安く、うまくシステムを刷新! 驚異的なパフォーマンスを誇るユニケージ開発手法【デブサミ2019夏】

【C-8】はやい・やすい・うまく動くシェルスクリプトの極意

  • X ポスト
  • このエントリーをはてなブックマークに追加

ユニケージ開発手法の基本思想

 ユニケージ開発手法は、以下のようなUNIXの思想に大きな影響を受けている。

  1. スモール・イズ・ビューティフル
  2. 一つのプログラムには一つのことだけをやらせる(コマンド)
  3. できるだけ早く試作する
  4. 効率より移植性を優先する
  5. データはテキスト形式で保存する
  6. コマンドを梃子(てこ)として使う(再利用性)
  7. シェルスクリプトでアプリケーションを記述する
  8. すべてのプログラムをフィルタとして設計する(パイプ)
  • 出典:Mike Gancarz(著)、芳尾 桂(監訳)『UNIXという考え方―その設計思想と哲学』(オーム社開発局、2001年)

 こうした設計思想が、どのような特徴に結実しているのかを見ていきたい。まず、「データが命である」ことをユニケージ開発手法では信条とする。発生データは棄てず、すべて貯めておく。かつ実データを入手してから開発を始めることに特徴がある。

 「効率よりも移植性を重視する」というのも要点だ。コンピューターは時代の変化とともに処理性能が良くなるため、ソフトウェアを他のサーバーに移植するケースは頻繁に発生する。移植性の悪いプログラムでは、そうしたユースケースに耐えられない。ユニケージ開発手法ではシェルスクリプトを活用するため、移植性は極めて高い。シェルスクリプトはほぼすべてのUnix系OSでも動くうえに、基本仕様の変化が50年間ほとんどないからだ。

 さまざまな技術を混在させないことで「プログラムをできるだけ簡単にする」という特徴もある。技術的な制約を少なくし、ユーザーが多種多様なシステムを構築できるようにするためだ。

 こうした特徴が「システムは生き物」という設計思想に結びついている。見栄えや操作性を良くすることよりも、システムが柔軟に変化できることが大事だという哲学のもと、ユニケージ開発手法は成り立っているのだ。

 こうした利点から、数多くの企業がこの手法を採用している。

ユニケージ開発手法は多くの企業で採用されている
ユニケージ開発手法は多くの企業で採用されている

 製品ラインナップも豊富だ。OS標準のコマンドと組み合わせて使用するUSP研究所製のコマンドセット「usp Tukubai」や、クラスタシステムを開発するためのコマンドセット「usp BOA」、統計解析処理を行うためのコマンドセット「usp STAT」、Windows10/Windows Server 2016 WSL(Windows Subsystem for Linux)対応の「usp Tukubai for Windows」、macOS対応の「usp Tukubai for Mac」などがある。

 また、国内外に数多くの開発・研究パートナーや販売代理店を有している。「日本から発信した技術で世界と戦えることは、ユニバーサル・シェル・プログラミング研究所の事業が持つ大きな魅力です」と井上氏は力説する。

 「ユニケージ開発手法を導入することで、かつて何日もかかっていた処理を1日で完了させられるようになれば、企業の経営に大きなインパクトが生じるでしょう。だからこそ、私はこの開発手法に多大なる可能性を感じています。

 人の仕事を楽にするにはどうしたらいいのか。より良い方向にお客さまの事業が発展するにはどんなコマンドをつくるべきなのか。そうした課題と日々向き合いながら、私たちは活動を続けています」

お問い合わせ

 有限会社ユニバーサル・シェル・プログラミング研究所

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
【デブサミ2019夏】セッションレポート連載記事一覧

もっと読む

この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/11660 2019/10/18 12:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング