menu
Last Update:2023/06/06

レンタルサーバー Ruby

レンタル サーバー Ruby | wepicks!
レンタルサーバー ruby

Q:Ruby(ルビー)とは何ですか?

A:コンピューター言語の1つで、掲示板やブログなど動的なWebページを作成するためのプログラム言語です

Ruby(ルビー)が使用できるおすすめレンタルサーバー

サービス名プログラム無料お試し初期費用月額費用SSDHDD容量WordPress
スターサーバー
エコノミー
PHP / Ruby / Perl / Python
14日間
1500円126円
10GB -
スターサーバー
ライト
PHP / Ruby / Perl / Python
14日間
1500円250円
50GB
スターサーバー
スタンダード
PHP / Ruby / Perl / Python
14日間
1500円500円
100GB
ロリポップ!
エコノミー
PHP / Ruby / Perl / Python
10日間
1650円110円
20GB -
ロリポップ!
ライト
PHP / Ruby / Perl / Python
10日間
1650円220円
160GB
ロリポップ!
スタンダード
PHP / Ruby / Perl / Python
10日間
1650円550円
200GB
さくらのレンタルサーバ
ライト
PHP / Ruby / Perl / Python
14日間
1029円129円 -
10GB -
さくらのレンタルサーバ
スタンダード
PHP / Ruby / Perl / Python
14日間
1029円515円 -
100GB
さくらのレンタルサーバ
プレミアム
PHP / Ruby / Perl / Python
14日間
1029円1543円 -
200GB
コアサーバー
CORE-MINI
PHP / Ruby / Perl / Python
30日間
0円218円
200GB
コアサーバー
CORE-A
PHP / Ruby / Perl / Python
30日間
0円436円
400GB
エックスサーバー
X10
PHP / Ruby / Perl / Python
10日間
3000円900円
200GB
エックスサーバー
X20
PHP / Ruby / Perl / Python
10日間
3000円1800円
300GB

Ruby(ルビー)とは?

  • Ruby(ルビー) はプログラミング言語の1つで、主にWebアプリケーション開発で使用されます。

Ruby(ルビー) はWebサーバーの CGI という仕組みを利用するプログラム言語(スクリプト言語)で、Ruby言語で記述したプログラムを実行することで、CGIを起動させ、動的なWebページを作成することが出来るようになります。Ruby はWeb系のプログラミング言語として非常に人気があります。Ruby はサーバーサイドの技術で、JavaScriptなどと違い、サーバー上で動作します。JavaScriptはWebブラウザ(Chromeなど)で動作します。

Webサーバーとは、インターネット上でhttpやWWWシステムに基づいて、Webページを配信するコンピューターやソフトウェアのことを指します。
CGI(シージーアイ:Common Gateway Interface:コモン・ゲートウェイ・インターフェイス)は、クライアント(Webブラウザ)の要求に応じてWebサーバーがプログラムの起動・処理・結果の送信を実装する仕組みです。
オブジェクト指向のスクリプト言語

また、Rubyは、オブジェクト指向のスクリプト言語です。通常の手続き型プログラミングに加え、オブジェクト指向プログラミングを行う事が出来ます。オブジェクト指向プログラミングとは、オブジェクト指向の概念を基に設計・記述する手法です。オブジェクト指向とは、「概念」であり一つの考え方です。そして、この概念に基づいたプログラミング手法のことをオブジェクト指向プログラミング(OOP:Object-Oriented programming)と言います。スクリプト言語とは、このプログラムで書かれたアプリケーションが、その動作内容を示すソースコードを台本のように解釈しながら実行する種類の簡易的なプログラム言語のことです。また、記述したプログラムは実行までの手順が簡略化されており、直ぐに結果を出力出来るのも特徴の1つです。C言語などのようにコンパイルの必要がありません。

コンパイル(compile)とは、プログラム言語を使用して人が記述したソースコードをコンピューターが実行できる形式(オブジェクトコード、ネイティブコード、マシン語や機械語と呼ぶ)に変換することを言います。

Ruby で何ができるか

Ruby を利用することで、動的なWebアプリケーションを作成することが出来ます。例えば掲示板やブログなどです。また、Webサイトに会員管理のシステムなどを組み込んだり、社内で利用するWebベースの業務システムを構築することなども可能です。

Ruby の開発者

「まつもとゆきひろ氏」通称 Matz(マッツ)

日本のソフトウェア技術者である「まつもとゆきひろ氏」通称 Matz(マッツ) 個人によって開発されました。Matz氏は「Rubyをシンプルなものではなく、自然なものにしようとしている」と発言しています。また、「Rubyの外観はシンプルです。けれど、内側はとても複雑なのです。 それはちょうど私たちの身体と同じようなものです。」とも言っています。

Ruby の歴史

Ruby は、1993年から開発が始まり1995年に一般公開されました。公開から徐々に人気を集め、2006年以降、飛躍的に支持を集めて知名度を上げ、世界中の主要都市に Ruby のコミュニティーグループが形成されました。現在では大規模なカンファレンスも開催されています。2011年3月22日にJIS規格が制定、2012年4月1日には日本産のプログラム言語として初めて、ISO/IEC規格(ISO/IEC 30170)として承認されました。2018年10月現在、安定版は 2.5.1 です。

Ruby on Rails

  • Ruby では Ruby on Rails(ルビーオンレイルズ) というWebアプリケーションフレームワークが使用される

Ruby には、Ruby on Rails(ルビーオンレイルズ) というWebアプリケーション開発用のフレームワークが存在します。Webアプリケーションの開発では、基本的に Ruby on Rails が使用されます。フレームワークを使用することで、複数人数による大規模な開発を効率よく行うことが可能になります。

オブジェクト指向プログラミング

  • オブジェクト指向とは考え方であり概念のこと
  • オブジェクト指向プログラミングとは、オブジェクト指向の概念を基に設計・記述する手法

オブジェクト指向とは、「概念」であり一つの考え方です。そして、この概念に基づいたプログラミング手法のことをオブジェクト指向プログラミング(OOP:Object-Oriented programming)と言います。OOP に明確な答えはありません。それぞれのエンジニアやプログラマーが各々の考えや定義を持っています。初めから完璧に理解するようなものではなく、知識の蓄積と共に OOP に対する考え方も変化するでしょう。

最初はおおざっぱに把握してみる。

初心者の方はまずオブジェクト指向やオブジェクト指向プログラミングの基本を覚え、なんとなく大ざっぱに把握してみましょう。その上で、OOP の概念を成長させ、自分なりに定義を定着させていきましょう!

OOP に基づいた アプリケーションソフトウェア は非常に保守性が高く、修正・変更・拡張・再利用 などが容易に行えるようになり、全体設計もシンプルにデザインできます。

クラス(class)

クラス は オブジェクト を作成する際の設計書となる雛形のことです。どのようなデータを持ち、どのような関数を使用するのか決められています。オブジェクト の プロパティ や メソッド を一まとめにして保持しています。

オブジェクト(object)

オブジェクト は、クラス を実体化させた モノ です。プログラム上では データ と 処理コード の集合体です。固有のデータがあり、データに対して行う処理コードを持っています。
オブジェクト と クラス の関係は 値 と データ型 の関係に似ているといわれます。文字列型は1つですが、文字列は無数にあります。ユーザークラスはプログラム内で1度定義して終わりですが、ユーザーオブジェクトは必要な分だけ作成することが出来ます。

プロパティ(property)

オブジェクトに関連付いたデータを プロパティ と言います。Blu-ray/DVDプレイヤーに例えると、「メーカー」「色」「サイズ」などのプロパティを持っていると言えます。データ、状態、変数ともいわれます。「現在の再生時間」などは状態を示すプロパティと言えます。

メソッド(method)

オブジェクトに関連付いた関数を メソッド(操作) と言います。Blu-ray/DVDプレイヤーで言えば「再生」「停止」「コピー」「録画」などの処理です。メソッド はオブジェクト自身に対する操作、振る舞い、を行う関数のことです。

インスタンス(instance)

設計図となる クラス から作成した オブジェクト を利用するために生成されたものを インスタンス と言います。インスタンス は 実体 実例 という意味で、クラス から実体化したもののことです。クラス から オブジェクト を生成するのを インスタンス化 と言います。

カプセル化(encapsulation)

カプセル化 は OOP の3第原則の1つと言われています。少し詳しく説明します。そもそもカプセルとは、中に何かを入れて密閉する容器のことです。では OOP における カプセル化 とはどのようなことでしょうか。オブジェクト の構造をカプセル状にすることです。カプセルの中に入れることで中が見えなくなります。これを 隠蔽 と言います。では何を 隠蔽 するのでしょうか。その クラス の オブジェクト が持つ データ(プロパティ) や 処理コード(メソッド) です。これらを利用する場合、外部から操作するための処理(メソッド)を別途作ります。この利用するための メソッド は インターフェース となり、クラス自身で提供します。 インターフェース を通してデータや処理コードにアクセスさせるようにする構造がカプセル化です。

カプセル化することで、オブジェクト のデータ構造を外部から直接操作する必要がなくなります。クラス内部のコードを修正変更しても、外部とのインターフェースさえ同じにしておけば、オブジェクトを利用しているその他のコードを修正する必要がなくなり、メンテナンス性が向上します。

継承(inheritance)

OOP の3第原則の2つ目 継承。新規クラス を作成する際に、既存クラス のメソッドやプロパティを引き継いで新しい プロパティ や メソッド を追加/変更 などが出来ます。これを継承と言います。

  • 既存クラス:スーパークラス、親クラス、基底クラス と言います。
  • 新規クラス:サブクラス、派生クラス と言います。

コードの無駄なコピー&ペーストを使用しないで基底クラスの機能を再利用します。そうすることで、不要なコードの作成やそれに伴う手間を省きます。
親クラスの変更は派生クラスにも反映されます。

ポリフォーリズム(polymorphism)

OOP の3第原則の3つ目 ポリフォーリズム。例えば、Blu-ray/DVDプレイヤー、録音機器、ポータブル音楽プレイヤーなどの家電のリモコンの「再生ボタン」があるとします。大よそこのボタンの機能は「再生する」ということで予測できるでしょう。内部動作は機器によって異なりますが。車のアクセルやブレーキなどにも似たようなことが言えます。
プログラムでも同じ処理名で多様な機能が動作すると便利です。この利点は OOP の基本性質となります。
ポリフォーリズム は、同一のメソッド(同じ処理名)で インスタンス によって異なる処理が実行できる性質のことです。クラス利用者が一見 スーパークラス をコールしているようで実際は異なる クラス を使っているなどで、共通の メソッド で インスタンス によって機能を変化させることです。この性質を持たない場合、 サブクラス の インスタンス を別々に生成することになってしまうなどの弊害が発生します。

polymorphism の意味は、多型、多形性、多型性、遺伝子多型、結晶多形 などがあります。OOP の場合、「多相性」、「多様性」の意味として使用されています。


タグ(=記事関連ワード)

日付

投稿日:2015年7月2日
最終更新日:2023年06月06日

このカテゴリの他のページ

この記事へのコメント

トラックバックurl

https://wepicks.net/rentalserver-qa-ruby/trackback/

page top