回答一覧
ステージ1の回答
※回答のアドレスは、非公開なため公開はしないでください。お願いします。
・PHPやjavascriptは、○言語に似た、手続き型言語のような文法である。
回答は、cです。PHPは、javascriptと同じくC言語系の言語です。
・PHP(ピー・エイチ・ピー)は "The PHP Development Team" によってコミュニティベースで開発されているプログラミング言語である。
そして、○○○サイドで動的なウェブページ作成するための機能を多く備えている。
全角カタカナ3文字を記入してください。
回答は、サーバです。WEBのサーバ側の処理以外ではほとんど使われていません。
・PHPとは、 "PHP: ○○○ertext Preprocessor" を省略した単語である。
半角英数で3文字を記入してください。
回答は、hypです。htmlに似ていますね。
・PHPは、○○○cheを使って構築されたWebサーバーから、一般的なインターフェイスを通して実行することが出来る。
半角英数で、空白3文字を記入してください。
回答は、apaです。アパッチは、サーバを構築する際のベースとなるプログラムです。
・PHPは、数多くのオープンソースウェブアプリケーションに利用されている。
しかし、何度か、○○○(セキュリティ上の弱み)が発見されて、大きな問題を起こしている。
「脆」から始まる漢字3文字を記入してください。
回答は、脆弱性です。
・PHPのマスコットアニマルに、ele○○○antという象が用いられている。
半角英数で、3文字を記入してください。
回答は、phpです。エレファントとかけているのですね
・式を評価し、その式の値がcaseのラベルと一致するなら、そのcaseに関連付けられた文を実行する構文があります。
この構文6文字を、半角英数で記載してください。
回答は、switchです。
・ループを作成する時に使う、最も基本的な構文、5文字を記載してください。
回答は、whileです。
・PHPは、C言語や、プログラミング言語の「○○○a」に似た、平易な文法を使っている。
半角英数で3文字を記入してください。
回答は、javです。
・phpは、WEBサーバをApacheで動作させる場合は、mod_phpとFastCGIを使う。
また、○○○でWEBサーバを動作させる場合は、FastCGIとISAPIを使う。
この○○○は、主にwindowOSのWEBサーバで使われている。
半角英数3文字を記入してください。
回答は、iis(アイアイエス)です。apacheの次に有名なので覚えておきましょう。
ご利用大変ありがとうございました。今後さらに学んでいただくためにアプリを発展させたいです。モチベーションアップのために、当アプリを広めていただけると幸いです。宜しくお願い致します。
ステージ2の回答
回答一覧
※回答のアドレスは、非公開なため公開はしないでください。お願いします。
・変数とは?
回答は、解説1:正解、解説2:正解です。
名札の例えは、あまり知られていないですが、箱の次に有名な例えなので覚えておきたいですね。
・定数とは?
回答は、解説1:正解、解説2:不正解です。
変数は中身を自由に変更できるので定数ではありません。
・参照型とは?
回答は、解説1:正解、解説2:不正解です。
参照型は、値は別の場所にあり、その別の場所を示すアドレスのみが入っています。よって別のところにある値が変更されると結果的に、参照先の値が変わってしまい中身が変わったと同等の状態になります。
・基本型とは?
回答は、解説1:正解、解説2:不正解です。
参照型と違いアドレスではなく値その物が入っています。アドレスではないので参照先の話は、基本型には関係ありません。
・コメントアウトとは?
回答は、解説1:正解、解説2:不正解です。
コメントアウトはブラウザの画面には表示されません。また、意外に知られていませんが、コメントアウト無しで変数名だけで理解できる変数名を付けることが、最高のプログラミングと考えている方が主流です。もちろん使ってはいけないわけではないのであくまで、理想を言えばの話です。
・サーバとは?
回答は、解説1:不正解、解説2:正解です。
ハードウェアはどんなものでもサーバにできるので一切関係がありません。クライアント用のハードウェアでもIISなどをインストールすればサーバにすることが出来ます。
・フレームワークとは?
問1.すでに完全に出来上がったプログラムの事であり、これを導入するだけでWEBアプリが作れる。
問2.ライブラリと同じ物で、ただの別名である。
回答は、解説1:不正解、解説2:不正解です。
フレームワークは悪魔で、アプリの土台であり、これだけでアプリが出来上がるわけではありません。
ピザを作ることに例えると、ピザの生地だけがフレームワークにあたります。つまり、ピザの土台は、存在しますが、具やチーズは自分で乗っけて、自分で焼かないとピザは出来上がりません。
あくまで土台だけという事を覚えておきましょう。
・フレームワークとは?
問1.PHPのフレームワークとしてCakePHPやReactが有名である。
問2.laravelがPHPのフレームワークで2018年現在最も伸びている。
回答は、解説1:不正解、解説2:正解です。
Reactは、javascriptのライブラリです。
・ライブラリについて。
回答は、解説1:正解、解説2:不正解です。
ライブラリは、プレーンなプログラム言語をもっと便利に、簡単に使えるようにした、改良版のプログラム言語というイメージで、phpとは違う別のプログラム言語というわけではありません。phpのグレードアップや改良版と考えるとわかりやすいです。
・クッキーとは?
回答は、解説1:不正解、解説2:正解です。
クライアント側に保存されるテキストファイルです。閲覧者の情報が保存されています。サイトに2度訪問すると、自分が誰かサイトが認識しているのはクッキーが自動的に作られているからです。
ご利用大変ありがとうございました。今後さらに学んでいただくためにアプリを発展させたいです。モチベーションアップのために、当アプリを広めていただけると幸いです。宜しくお願い致します。
ステージ3の回答
・PHPとは?
解説1: 文法はC言語、Java、Perlなどのプログラミング言語から強く影響を受けている。
解説2: 連想配列は、配列ではなくオブジェクトのことである。
回答は、解説1:正解、解説2:正解です。
連想配列は、javascriptのオブジェクトと同じです。
・エスケープシーケンスについて?
解説1: エスケープシーケンス「\n」はシングルクォーテーションかダブルクォーテーションどちらで囲んでも、同じ結果になる。
解説2: 改行など特別な意味を持つ特殊文字の事である。
回答は、解説1:不正解、解説2:正解です。
・PDOとは?
解説1: Program Data Objectの略である。
解説2: PHP Database Objectの略である。
回答は、解説1:不正解、解説2:正解です。
・PHPについて
解説1: 主にWEBアプリのサーバサイドで使うために作られたプログラム言語である。
解説2: デスクトップアプリも頑張れば作れるが、それ専用のフレームワークがないため、不向きである。
回答は、解説1:正解、解説2:正解です。
・PHPについて
解説1: HTML内に直接記載することが出来るが、保守を考えるとあまり良い書き方ではない。
解説2: javascrptと全く違う構文なため、javascriptをやった人にはお勧めできない言語である。PHPはC言語系の言語でないことが原因です。
回答は、解説1:不正解、解説2:不正解です。
まず出来るだけ、外部ファイル化した方が良いですね。
PHPもC言語系なので、javascriptと文法が似ています。
・繰り返し処理について
・解説1: 繰り返し処理は、必ず「i」という変数名から始めないといけないというルールがある。
・解説2: 一説によると「i」から始まるのはindexの「i」であると言われています。
回答は、1不正解、2正解です。
「i」を使う慣習はありますが、「i」でなくても問題ありません。
「i」では何を繰り返しているかわからない場合は、「i」以外を使うこともあります。
・繰り返し処理について?
・解説1: while、forは根本的に違うものなので、同じような繰り返し処理をどちらでも、出来るわけではない。
・解説2: 「i」(アイ)の初期値を0からではなく好きな数値から始めたい場合はwhileが適している。
while、forは、繰り返し処理をする構文なので、ほぼ同じものです。
また、forは、引数でi=0とする慣習があので、好きな数値から始めるのにはあまり適しません。
回答は、1正解、2不正解です。
・関数について
・解説1: 即時関数を利用することでカプセル化が出来る。
・解説2: 無名関数は、再利用を基本考えていないので複数存在することはほとんどない。
回答は、1正解、2正解です。
・型について
・解説1: プリミティブ型は参照を渡す。
・解説2: オブジェクト型は値を渡す。
回答は、1正解、2正解です。
・バグとは
解説1: 昔虫がPCに入ってしまい故障したことからこのように言われるようになった。
解説2: プログラムに不具合があって、プログラムがちゃんと動いてくれないこと。
回答は、解説1:正解、解説2:正解です。
ステージ4の回答
・オブジェクトとは?
解説1: キーと値がペアになったデータの集まりの事。
解説2: どの言語でも同じく、オブジェクトという呼び方をしかつ、配列と考える言語はない。
回答は、解説1:正解、解説2:不正解です。
PHPは、オブジェクトではなく、連想配列と言います。オブジェクトと呼ぶのは、主にjavascriptです。
・繰り返し処理whileとは?
解説1: 繰り返し回数を代える際には、条件式以外も変えないといけないのが難点。
解説2: 自分で数えて回数分式を記載しなくても、回数分の処理が自動で実行できるようになる。
回答は、解説1:不正解、解説2:正解です。
繰り返し回数を代える際には、条件式「例(i < 3)」だけを変えればOKです。
・WEBアプリとネイティブアプリの違いや共通点とは?
解説1: インストールして使う事はどのアプリも共通。
解説2: ネイティブアプリとは、パソコンにインストールして使うexcelなどに代表される昔からあるアプリケーションの事。
回答は、解説1:不正解、解説2:不正解です。
このページにある、PHP学習アプリゲームが、まさにWEBアプリです。インストールをせずに遊べましたよね。だから、WEBアプリはインストール不要です。
また、ネイティブアプリとはスマホにインストールするスマホ用アプリの事です。GooglePlayからインストールして使いますね。
つまり、パソコンにインストールするアプリケーションではありません。スマホで使います。
窓の杜などから、パソコンにインストールするアプリケーションは、デスクトップアプリと言います。
・マザーボードについて
解説1: HDDなどがつながれている基盤となる大きな板上のパーツである。
解説2: メインメモリーを刺すスロットがある。
回答は、解説1:正解、解説2:正解です。
・returnについて
・解説1: returnは、ブラウザ上に、alertや文字列を表記する
・解説2: 省略した場合は、実はjavascrptが、nullを自動的に補ってくれます。何もないように見えますが、実は補われているという事を知っておきましょう。
回答は、1不正解、2不正解です。
returnは、関数の処理結果を、関数の呼び出し元に返す役割です。ブラウザ上に表記する役割ではありません。
省略されている場合は、nullではなくundefinedを自動的に補ってくれます。
・MACアドレスについて
解説1: IPアドレスとも言われる。
解説2: ネットワークインタフェースカードに製造段階で記載している。
回答は、解説1:不正解、解説2:正解です。
MACアドレスとIPアドレスは、全く別物です。
・繰り返し処理について?
・解説1: while、forは根本的に違うものなので、同じような繰り返し処理をどちらでも、出来るわけではない。
・解説2: 「i」(アイ)の初期値を0からではなく好きな数値から始めたい場合はforが適している。
回答は、1不正解、2不正解です。
while、forは、繰り返し処理をする構文なので、ほぼ同じものです。
また、forは、引数でi=0とする慣習があので、好きな数値から始めるのにはあまり適しません。
・グローバル変数について
解説1: コンピュータプログラミングにおいて全てのスコープからアクセスできる変数のことである。簡単に言うとどこからでも参照できる変数の事。
解説2: 一般にグローバル変数は、その非局在的な性質ゆえに、好ましくない実践だと考えられている。つまり、どこからでも参照出来て意図しない変更が起きる可能性があるので、必然性が無い時はあまり使わない方が良い。
回答は、解説1:正解、解説2:正解です。
・スーパーグローバル変数ついて
解説1: どこからでも参照できる自作の変数の事。
解説2: グローバル宣言をしないと一切のスーパーグローバル変数は利用できない。
回答は、解説1:不正解、解説2:不正解です。
スーパーグローバル変数は、自分で宣言する変数ではありません。
始めから存在する、すでに作られた変数なので、自作の変数というのは間違えです。また、始めから存在するので、グローバル宣言をしなくても、利用できます。
スーパーグローバル変数の例
$_GET
$_POST
$GLOBALS
$_SERVER
$_FILES
$_COOKIE
$_SESSION
$_REQUEST
$_ENV
$php_errormsg
・sqlインジェクションとは
解説1: データベースの情報を盗まれる可能性がある。
解説2: データベースの情報を改ざんされる可能性がある。
回答は、解説1:正解、解説2:正解です。
sqlの命令文をデータベースサーバに送りつけられて、その命令文を実行してしまいます。
つまり、セキュリティ対策を何もしていなければ、命令文を変えれば、盗むことも、改ざんすることも、ほとんどの事を自由自在に出来ます。
ステージ5の回答
・エスケープシーケンスについて
・解説1: エスケープは、特別な意味を持つ文字列のこと。
・解説2: エスケープシーケンスは、特殊文字とも言う。
回答は、1不正解、2正解です。
エスケープは、クロスサイトスクリプティングというサイトを改ざんする攻撃を避けるために行う回避策です。
・エスケープシーケンスについて
・解説1: 「?」という文字を表示したい時は、そのまま?とだけ記載すれば画面上に、「?」と記載できる。
・解説2: ¥は、¥を表示してくれる記載なので、これだけで記載できる。
回答は、1不正解、2不正解です。
「?」マークを表記したい場合は、「¥?」のように円マークを付けて、これはエスケープシーケンスであるとブラウザに伝えます。
円マークを表記したい場合は¥¥のように二つ記載します。
・データ型について
解説1: PHPでは、数値を格納するために用意された変数に文字列を格納することは、出来ない。javaはそのような使い方が可能である。
解説2: PHPは緩いので、他のデータ型の値を入れることが可能です。javaはきっちりしているので、数値型の変数に文字列を入れることは出来ません。
回答は、解説1:不正解、解説2:正解です。
緩いので、PHPでは、数値を格納するために用意された変数に文字列を格納することは、出来きます。javaは、厳しいので出来ません。
・varNameという変数が全く存在しない時に、その存在しない変数を参照した場合に出現するエラーついて。
・解説1: Uncaught ReferenceError: varName is not definedというエラーの、ReferenceErrorの意味とは、varNameを参照したが、その変数が無かったという意味と解釈することもできる。
・解説2: Uncaught ReferenceError: varName is not definedの意味は、varNameが定義されていないという意味。つまり、定義されていないのに使っているよという意味と解釈することもできる。
回答は、1正解、2正解です。
・コンピューターについて
解説1: コンピューターは、戦争の際大砲でターゲットを攻撃する際の計算処理のために作られた。
解説2: コンピューターは、不揮発性の記録媒体(HDDやSSDのこと)がなくても、最新の技術を導入すると使う事ができるようになった。シンクライアントと言われる。
回答は、解説1:正解、解説2:正解です。
サーバにあるHDDを、ネットワーク経由で使えば、クライアントPCにHDDがなくてもPCを使えるようになりました。
・サーバサイドについて
解説1: HTMLは、クライアントサイド限定の言語なので、他の言語を学ぶ事が必須。
解説2: Mysqlは、無料で使えるので、特別なこだわりがなければ無難な選択である。
回答は、解説1:正解、解説2:正解です。
・等価演算子(==)と同値演算子(===)の違い
・解説1: 等価演算子は、同じ値かどうかのみを判定する。
・解説2: 同値演算子は、同じ値かどうかのみを判定する。
回答は、1正解、2不正解です。
等価演算子は、値が同じかのみ判定するので、数値の1と、文字列の1を比べた時でも真と判定します。よって解説1は正解になります。
同値演算子は、データ型(数値型、文字列型など)まで判定するため、数値の1と、文字列の1を比べた時に、この二つは、データ型が違うので、偽になります。よって解説2は間違えになります。
・条件式で使う!について
・解説1: !は日本語で示すと、一致しない、~でない、という意味である。
・解説2: データ型の一致まで判定する条件式の書き方は(!===)である。
回答は、1正解、2不正解です。
!==には三つのイコールを使うことはありません。
・PHPという名前について
解説1: 「PHP: Supertext Preprocessor」を略して、PHPという。
解説2: 関数型のプログラム言語である。
回答は、解説1:正解、解説2:不正解です。
関数型のプログラム言語は、あたらしい言語のScalaなどが該当します。
PHPは古いので、関数型のプログラム言語ではありません。
・イディオムとは
・解説1: イディオムは慣用句(慣用的に使われるコード)の事。
・解説2: イディオムとは、わかりやすく言うと、よく使われる書き方という意味。
回答は、1正解、2正解です。
ご利用大変ありがとうございました。今後さらに学んでいただくためにアプリを発展させたいです。モチベーションアップのために、当アプリを広めていただけると幸いです。宜しくお願い致します。