[Ruby][PHP]PHP使いから見たRuby - HelloWorldから分かる8つのこと

このエントリは、「[Ruby][PHP]PHP使いから見たRuby - 先ずはHelloWorldしてみる」の続きです。

HelloWorldから分かる8つのこと、行ってみよー。

2. HelloWorldから分かること

2-1. コンパイル不要

  2-1-1. PHP
    ・インタプリタ言語(実行時に自動的にコンパイルされる言語)なので、
     意識的にコンパイルする必要はない
    ・但し、敢えて事前にコンパイルすることで速度を上げる方法もある
  2-1-2. Ruby
    ・PHPと同じインタプリタ言語なので、こちらもコンパイルは不要
    ・コンパイルの手間や時間は節約できるが、エラーの原因が探しにくい
    ・パフォーマンスが悪い面もある

2-2. クラスは作成しなくても良い

  2-2-1. PHP
    ・PHP4までは基本的に手続き型の言語、クラスは作らなくても良い
    ・PHP5以降はオブジェクト指向言語のように書くことも出来る
  2-2-2. Ruby
    ・RubyはPHPと異なり、オブジェクト指向型の言語
    ・でもクラスは作らなくても良く、手続き型のように書くことも出来る

2-3. 標準出力はputs

  2-3-1. PHP
    ・PHPの標準出力は「echo」や「print」
    ・echoとprintの細かい違いについては「[PHP]echoとprintの違いを再確認」を参照
  2-3-2. Ruby
    ・Rubyの標準出力は「puts」や「print」
    ・putsとprintの細かい違いについては、「[Ruby]putsとprintの挙動の違いを確かめてみる」を参照

2-4. 文字列は「'」か「"」で囲む

  2-4-1. PHP
    ・文字列は「'」で囲っても「"」で囲っても構わない
    ・「'」で囲うと式の展開が行われないなどの違いがある
    ・この辺りの詳細は「[PHP]文字列内の変数の括り」を参照
  2-4-2. Ruby
    ・文字列は「'」で囲っても「"」で囲っても構わない
    ・「'」で囲うと式展開が行われない点など、PHPと感覚はほぼ同じ
    ・式展開を行いたい場合は、「"」で文字列全体を囲み、式展開したい箇所を「#{ }」で囲む

2-5. 式ごとの「;」は不要

  2-5-1. PHP
    ・式の終わりごとに「;」が必要
    ・書かないとどこが式の終わりだか分からなくなったPHPに
     「Parse error: parse error, unexpected ...」などと怒られる
    ・「;」で区切られていれば、「$a = 1; $b = 2;」のように1行で書いても問題ない
    ・「?>」直前の最後の行だけは、「;」がなくても大丈夫
  2-5-2. Ruby
    ・PHPとは異なり、式ごとの「;」は不要
    ・「;」の代わりに「改行」がその式の終わりを示す

2-6. ファイル名は自由

  2-6-1. PHP
    ・ファイル名は自由、拡張子は.php
  2-6-2. Ruby
    ・ファイル名は自由、拡張子は.rb

2-7. 開始と終了の宣言はない

  2-7-1. PHP
    ・最初と最後を「<?php ?>」で囲う
  2-7-2. Ruby
    ・ファイルの最初から最後までがソースなので、特に何かで囲う必要はない
    ・もしくは「__END__」という行を読み込んだ時点で終了となるので、
     その次の行以降に何か別のことを書いても構わない

2-8. 実行コマンドはruby

  2-8-1. PHP
    ・phpコマンドで、引数にファイル名を与えてやれば実行できる
  2-8-2. Ruby
    ・rubyコマンドで、引数にファイル名を与えてやれば実行できる

比較しながら書くって難しいな、でもこうして書くことで新しい発見もある。
なので、また次のエントリに続きます。

テーマ : PHP
ジャンル : コンピュータ

トラックバック


この記事にトラックバックする(FC2ブログユーザー)

PHPを使う意義

PHPやデータベースの勉強をする上で大変参考にさせていただきました。

コメントの投稿

非公開コメント

プロフィール

Author:mochiko
前職は携帯コンテンツ会社のエンジニア、現在は独立系SIerで色々。
GenesisLightningTalksのお手伝いをしたり、気になる勉強会に参加したりしつつ、毎日本を読んで過ごしています。
どれだけ本を読んでいるのか、はライトニングトークの動画を見てもらえれば・・・。

テクノラティお気に入りに追加する
はてな
mixi
SlideShare
Ustream.TV
YouTube
Wassr

最近の記事
最近のコメント
最近のトラックバック
全記事表示リンク

全ての記事を表示する

月別アーカイブ
カテゴリー
mochikoAsTechCnt
ブログ内検索
RSSフィード