用語集（備忘録）

#ランディングページ（LP）
検索結果や広告などを経由して訪問者が最初にアクセスするページのことで、訪問者が知りたい情報が1ページに集約されているものが代表的。かなり広範囲を意味しており、広義と狭義に分けられるが、一般的には狭義を指す。
#####<目的>
・商品の注文やお問い合わせ→直接的な売上げアップ
・見学会や内覧会などのイベントの予約→見込み客の発掘
・試供品や無料会員、無料体験版への申込み→見込み客の発掘
・求人募集への申込み→人材の獲得

#####<特徴>
特徴1.縦長のレイアウトである（訪問者が知りたい情報が1ページに集約されている）
特徴2.他のページへのリンクが少ない（ページ移動による訪問者の離脱が少ない）
特徴3.デザインに制限がない（理想的な順番で訪問者に情報を伝えられる）
特徴4.デザインが派手でインパクトが大きい（デザイン性が高く訴求力が強い）

効率の最大化には、`あらゆるページからアクセスを確保`して、集客力を高めることが必須。図のように、ランディングページからのアクセスだけではなく、他の流入経路からのアクセスを増やす必要がある。

![Screen Shot 2020-10-14 at 10.13.27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/736153/473c5d7c-282a-2332-027a-23c9c12f02bd.png)
成功しているホームページではトップページからの流入は全体のアクセスのうち、たった20％、残りの80％は多種多様な下層ページ（個別ページ）へ、検索エンジンをとおして直接流入している。また、20％～40％はスマホからのアクセス。


####<流入経路>
#####1.検索結果からのアクセス（自然検索）
Yahoo！やGoogleなどの検索エンジンからのアクセスのこと。


#####2.リスティング広告
検索エンジンの上部やサイドに表示される広告のこと。
費用は検索ユーザーが広告をクリックしたときに発生。費用を払えば確実に検索結果に表示できるので、`SEOに比べて即効性と確実性に優れています`。ただし、コストを継続的にかけないと広告が表示されないので、長期的な費用対効果はSEOに劣ります。

#####3.FacebookやTwitterなどのSNS
SEOやリスティング広告にくらべて、SNSは`情報の拡散力や拡散スピードの面`でアドバンテージがあります。

###広義のランディングページ
`ホームページの中で最初にアクセスされたページ`＝ランディングページ。

###狭義のランディングページ
訪問者のアクションを誘導することに特化した縦長のレイアウトのページのことを指し、検索結果やリスティング広告、SNSなどから流入した訪問者をダイレクトに注文やお問い合わせなどのアクションに結びつけることに特化したページ。
一般的にランディングページ（LP）というと、こちらの狭義のランディングページを意味することが多いです。

#SEO(Search Engine Optimization)
検索エンジンからサイトに訪れる人を増やすことで、Webサイトの成果を向上させる施策のこと。titleとdescriptionにキーワードを仕込む手段などが一般的な方法。


#App系広告最適化
###UAC(ユニバーサルアプリキャンペーン)
使用は、画像や動画、広告文を入力して目標インストール単価の設定をするのみ。
ユーザーの行動などをリアルタイムで分析し、Google検索、Google ディスプレイネットワーク、Google play、You Tubeの配信画面において、自動的にユーザーに関連するアプリを宣伝できるのが特徴です。なお、学習機能が備わっているため、キャンペーン活動において手動でターゲティングする必要がありません。アプリプロモーションにおいて今や欠かせない存在になりつつあります。
一方で、指定KWでのコントロールができない、youtubeの動画広告やIOSモバイル検索広告に対応していない等のデメリットがあります。

###ASA(Apple Search Ads)
App Storeの検索結果の最上部に表示される検索連動広告で、効率的にユーザーを獲得できるAppleの広告メニュー。

#一般広告最適化
###GDN(Googleディスプレイネットワーク)、YDN(Yahoo!ディスプレイネットワーク)
Webサイトやアプリの画面に表示される広告。典型的には画像での広告が多く、バナー広告と呼ばれることもありますが、画像だけでなくテキストや動画の形式をとることもできます。

####Googleが最重要視する3つの評価基準　E-A-T
Expertise（専門性）
テーマが統一されており、問題が解決できる、新しい情報を得る、情報が網羅されているなど、深く価値を得られる高品質なコンテンツであること。
Authoritativeness（権威性）
信頼できる第三者から評価されているコンテンツは、価値の高いコンテンツであること。
Trustworthiness（信頼性）
オリジナル性が高く、コピーや模倣されたコンテンツではなく、専門家としての認知や信頼性が得られていること。

###MEO(Map Engine Optimization)
Google検索に表示されるローカル検索結果でGoogleマイビジネスの情報を上位化する施策のことを指します。

###ASO(App Store Optimization)
アプリストア最適化のことを指します。WebのSEO(検索エンジン最適化)をイメージされ、特定のキーワードで検索上位を狙うことがASOだと考えられる方も多いかもしれませんが、一般的に以下の２つの施策を合わせたものをASOと呼びます。
・「ストアランキング上昇による自然流入の増加」(SEO)
・「アプリ詳細ページの最適化におけるDL率の上昇」(CRO：Conversion Rate Optimization）

###CVR(Conversion Rate)
Webサイトへのアクセス数（ページビュー、またはユニークユーザー数）のうち、コンバージョン（商品購入や資料請求など、会員登録など）に至った割合です。
[例]
[A]　コンバージョン数100、月間アクセス数：1万（CVR=0.01）
[B]　コンバージョン数200、月間アクセス数：4万（CVR=0.005）


#FTP（File Transfer Protocol）
###できること
① サーバーにアップされたファイルの一覧を見る
② ファイルをサーバーにアップロード、またダウンロードやバックアップを行う
③ FTPサーバーに接続し、データの操作を行う

###SFTP（SSH File Transfer Protocol）
　FTPは、通信経路が暗号化されていません。そのため、悪意をもった第三者から盗視や侵入をされ、パスワードや大切な情報が盗み取られるという危険性があります。
　その対策として、最近ではFTPにセキュリティを加えたSFTP（SSH File Transfer Protocol）などの通信を暗号化する手段を用いることが主流になっています。

###通信の仕組み（コネクション）
　FTPでは、２つのコネクションを使用している。
　①制御用コネクションの`「コントロールコネクション」`
　　ログインするためのユーザ名やパスワード情報やファイルの転送方法などの命令と応答などのために使用される。
　②データ転送用コネクションの`「データコネクション」`
　　転送されるデータの送受信のために使用されます。

　この２つのコネクションを使用することで、スムーズにデータの送受信をすることができます。

#クラウドサービス
###IaaS(Infrastructure as a Service)
 サーバーやストレージ、ネットワークなどのハードウェアやインフラまでを提供するサービス。
(ex)
「Amazon Elastic Compute Cloud （Amazon EC2）」
「Microsoft Azure」
「Google Compute Engine（GCP）」

###PaaS(Platform as a Service)
システム開発領域をターゲットにしているサービス。システム開発に必要なアプリケーションとOSをつなぐ`ミドルウェアやデータベース管理システム、プログラミング言語、WebサーバーOS`などといったソフトウェア一式を提供。
(ex)
Google App Engine
Heroku

###SaaS(Software as a Service)
パッケージとして提供されていたアプリケーションを、インターネット上で利用する提供形態。
(ex)
Microsoft Office 365
Gmail
Dropbox
サイボウズ

#TCP/IP　プロトコル群

###階層・組み合わせ
アプリケーション層・・・HTTP、POP3、SMTP、FTP、DHCP
トランスポート層・・・TCP、UDP
インターネット層・・・IP、IPsec
ネットワークインターフェース層・・・Ethernet、PPPoE

###データの送信
データを送る際は、上の層から下の層へ渡されていきます。また逆に受け取る際は、下の層から上の層へ渡されていきます。
(ex)
HTTP・・・・ブラウザ起動 URL入力 HTTPリクエスト
TCP・・・・送信元ポート・送信先ポート番号指定
IP・・・・送信元、送信先IPアドレス指定
Ethernet・・・・ビット列・電気信号に変え LANで運ぶ

###パケット
インターネット、ネットワークにおける通信では、データはすべてパケットという単位に分割して行われています。パケット通信、パケット通信方式といいます。
データはパケットに分割され 送信元・送信先のポート番号やIPアドレスなどの情報が付きます。
分割されたパケットは、伝送先のトランスポート層のプロトコル TCPやUDPで元のデータと同じものに復元され、アプリケーションに渡されます。
IP層で処理されるものを、特にパケットといいますが、トランスポート層ではセグメント、ネットワークインターフェース層ではフレームということもあります。

###ポート番号
IPアドレスは`住所`、ポート番号は`部屋番号`によく例えられます。

IPアドレスでは パソコンやサーバーなどの住所を特定しているのですが、あくまで場所が分かるだけです。サーバーまで行ってもそこから先へ進めません。そこでポートというものが使われます。

ポートは、0～65535まで 65,536個あります。出入口です。それぞれのアプリケーションで使われるポートが異なります。つまり、IPアドレスで住所まで到達したら、次はポート番号で具体的なところまで行けることになります。



ポート番号は 大きく3つに分けられています。

0～1023・・・ウェルノウンポート
1024～49151・・・レジスタードポート
49152～65535・・・ダイナミックポート

ウェルノウンポートとは よく知られているポートという意味で、サーバーのアプリケーション待ち受け用などに使われるポートです。

レジスタードポートとは 登録済みポートという意味で、メーカーの独自アプリケーション用のポートです。

ダイナミックポートとは、プライベートポートともいいます。クライアントPC、ローカルPCで使われるポートです。パソコン側ではこのポートが使われます。

具体的にサーバーでは、以下のようになります。
HTTP・・・80番 ホームページ閲覧
POP3・・・110番 メール受信
SMTP・・・25番 メール送信
HTTPS・・・443番 ホームページ暗号化閲覧
FTP・・・21番 接続、20番 データ送受信

サーバーは、これらのポートを常に開放して 待ち受けていることになります。ブラウザを起動した時は、サーバーの80番のポートに対して要求しています。

またメール設定で POP3に110、SMTPに25というのは、メールサーバーと通信できるように設定していることになります。

パソコン側は、サーバーと同じポートを使うわけではありません。ダイナミックポートで、そのとき使われていないポートが自動的に使われます。使われていないポートは基本的に閉じているということになります。

このように、パソコンやサーバーの通信は TCP/IPプロトコル、IPアドレス、ポートによって行われています。

###ポート開放
パソコンとサーバーの必要な通信は、ルーターが管理して通しています。
ポート開放というのは、主に外部からアクセスを許可するためのものです。

通常は 外部からの通信は サーバーから帰ってくるものだけですが、意図的に常時 アクセスが来るようにすることがあります。リモートアクセス、自宅・自社サーバーの公開などです。
こうした際に ルーターでポート開放を行うことがあります。

###デファクトスタンダード
通信プロトコルには、他に国際標準化機構 ISOが規定している OSI参照モデルがあります。TCP/IPプロトコルが4層であるのに対して、OSI参照モデルは7層になっています。

OSI参照モデルは、現在でもネットワークの階層や理論を説明するときによく用いられています。しかし、実装は難しくネットワークや機器では実際には使われてはいません。それに対して、TCP/IPプロトコルは、米国においてインターネット初期のARPANETで導入されたのをきっかけに、その後開発や改良が進み、ネットワークや機器で標準的に使われるようになりました。

TCP/IPプロトコルは、ISOなどによって公的に標準化され普及したわけではなく、実用性や利便性によって広く普及し、事実上の標準、デファクトスタンダードとなった代表的な事例です。

#MVCモデル(model, view, controller)
`プログラムの処理を役割毎に分けて開発を行う考え方`で、Webシステムの開発に頻繁に用いられる。

###Model
簡単に言えば、データを処理したり、データをDBへ保存したりする部分になります。また、DBからデータを取得して、Controllerへ送る部分でもあります。
Modelは、DBを操作するイメージが強く、データを処理する部分は、Logicという別の場所を用意して、そこに書くこともあります。Logicを使うか使わないかは、プロジェクトによって様々です。
なお、ModelとDBは別物。

###View
ユーザーが実際に見る画面。
れは、Controllerから受け取ったデータ(レスポンス)を画面に表示したり、画面で処理を書いた方が都合が良い時があるからです。
また、`ユーザーからのリクエストをControllerへ送る役割`も果たしています。新規登録画面でユーザーが入力した値をControllerへ送って、その後の処理を行うイメージです。

###Controller
ViewとModelを操作する部分。
具体的には、Viewからリクエストを受け取り、Modelへ処理の命令を出します。また、Modelから処理の結果を受け取り、レスポンスとしてViewへ返したりします。
つまり、VIewとModelの仲介役。

#Node.js
ブラウザ上という制限された環境でしか動けなかったJavaScriptを、PythonやRubyのようにパソコン上で動かせるようにしてくれるのが「Node.js」。

###「ブラウザ上」の意味
Node.jsは`（ブラウザ上ではなく）パソコン上`でJavaScriptを動かすための環境
この「サーバ」というのは「Webサーバ」のことではなく「パソコン」のこと。
サーバサイドのJavaScript実行環境 ＝ パソコン上でJavaScriptを実行する環境ということ。

###npmって何者？
npmはNode.jsの`パッケージ管理ツール`です。
Pythonにおけるpip、Rubyにおけるgem(RubyGems)、Debianにおけるapt、MacにおけるHomebrew、Rustにおけるcargo。だいたいそんな感じです。たまに`yarn`というのが出てきますがnpmと同じことができる物。