質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

3回答

1890閲覧

phpのclassの意味

退会済みユーザー

退会済みユーザー

総合スコア0

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2017/05/05 01:46

編集2017/05/05 02:29

phpのclassをだいたいしか把握してないのですが、
例えば、SNSのようなユーザーを扱うサイトを作る際でのclassを使うメリットを教えてください。(私は、わざわざclass使う必要があるのかと思ってしまいます。)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Zuishin

2017/05/05 01:55

質問が二つあり、一つは粒度が大きすぎます。分割することをお勧めします。
Zuishin

2017/05/05 02:27

箇条書きにしても中身は一緒ですよね? 回答がぶれるので別々の質問にしたらどうですか? また二番目の質問は粒度が大きすぎて大雑把な回答しかできなくなるのと、一番目の質問との関係が不明なので、もう少し自分で調べた上で具体的な質問に分割したらどうですか?
kei344

2017/05/05 04:19

まだ質問が「受付中」になっていますが、いったん「解決済」にされてはいかがでしょうか。
退会済みユーザー

退会済みユーザー

2017/05/05 04:22

あ、忘れていました。そうします。
guest

回答3

0

一口にSNSっておっしゃいますが、
古くはモバゲーやmixi、TwitterやFacebook、LINE、Whatsapp、カカオトーク、話題?のMastodonとかいろいろあるわけです。
どういう仕様で動いてどういう機能を持っているシステムを想定しているか、
要件定義と言いますがとっても大事なところです。
これだけで本一冊書けちゃうくらいの膨大な話です。

で、classやnamespaceは
大規模開発できるスキルを身につける上では欠かせない要素だと思います。
システムを実現するのにどういう機能が必要か、
根を張り幹を伸ばして枝を付けて葉を茂らせてシステムが出来ます。
掲示板BBSくらいならプログラミング言語のテキストにも登場するくらいに
要件定義がシンプルでわかりやすく、組みやすいです。
SNSって例えば
・各人が投稿する文章を時系列で管理する。
・各人のフォロー(友だち)関係を管理する。
・写真や動画をアップロードして管理する。
とか複雑に様々な機能の詰め合わせになっているので、
十分に大規模です。

全部自分ひとりで組めるのであれば設計の仕方も
自分でコントロールできる方法ならなんでも良いです。
(ただし、問題発生しても自分で解決してください、他人には理解できませんから。)

大規模開発になると分業して作業を並行してやりますし、
他人が書いたコードをマージしてシステムのテストをする必要もあります。
テストのボリュームを削減するため(だけではないですが)にカプセル化を用いて、
局所ごとに仕様を全うしていることをユニットテストで確認しつつ、
システムに組み込んで適切に機能するかをテストします。

また、生産性を高めるフレームワーク(CakePHPだのLaravelだの)は
classやnamespaceの高度に集積した塊です。
実現する機能ごとにclassが細分化されており、
フレームワークを理解して使えば大幅にコーディング量を削減できます。

知らなくても使えなくてもシステムは組めますが、
他人と同じシステムの開発に取り組むことがあるなら
習得しておいて損はありません。

(ツッコミどころ満載かと思いますがお収めください。)

投稿2017/05/05 02:54

編集2017/05/05 03:05
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

SNSサービスの構成が練られないのに、「私はクラスを使う意味がないと思います!」という考えに至った経緯がわかりませんが、ほかの方もおっしゃるように質問の粒度が大きすぎると、ジャンルが飛んでいます。(質問1はコーディングの話、質問2はアプリケーション設計の話と思います)

プログラミングの学習を進めつつ、きとんと動くWebアプリケーションを作っていくような実践的な入門書を読んで基礎知識を学ぶことをおすすめします。

おすすめの入門書をあげておきます。

最後に、質問に無理矢理答えるのであれば、質問1・質問2ともに「場合による」と答えます。

投稿2017/05/05 02:41

miyahan

総合スコア3095

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

phpも独学でネットのみで学び、個人開発しかしてこなかったので、まだまだ知識が浅く大雑把な質問になってしまいました。
改めてフレームワーク等について、学んでみようと思います。

投稿2017/05/05 03:11

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問