IT女子のゆるふわリファレンス

ITの話題をお届けします

...エンコード...


少し暖かくなったかと思ったらまた寒い日が続いてますね~

都心は雪が降ってきたようで(´-`).。oO

ぽかぽかなお天気が待ち遠しい今日この頃です・・・

 

こんにちは!ふわりです(´・ω・`)

 

今日は、エンコードについてお話ししたいと思います(*´ω`*)

エンコードとは、データを別の規則にのっとった異なるデータに変換したり、圧縮することです('ω')


いきなりですが、コンピュータは0と1の二進数で情報を処理をしています。
私たちが理解できる言葉とコンピュータが理解できる言葉は異なるため、私たちが理解できる文字と対応させ、コンピュータ内に登録させます!それが文字コードで、Shift-JISやUTF-8など様々な種類があります(*'ω'*)

 

みなさんはWEBサイトなどで文字化けしているのを見たことありませんか?

 

これは、HTMLファイル自体の文字コードと、WEBブラウザが解釈した文字コードが異なる時に現れます。。。

そのため、この文字化けをさせないためには正しく文字コードを指定しWEBブラウザに正しく読み込んでもらうことが大切です!

そして、万が一文字化けしてしまったときは、エンコードし正しい文字コードを指定してあげます(*´з`)

 

また、Web上などで動画を配信する場合も、動画をエンコードする必要があります。
理由は、元の動画データをそのままWeb上で配信しようとするとデータ量が非常に多く、動画を視聴することが困難となるためです( ゚Д゚)

そのためエンコードし、動画を圧縮することでWEB上で動画の視聴が可能となります(^^)

 

しかし、変換形式によっては画質や音質などが劣化してしまします(/_;)
なのでどんなエンコードをしたいかによってソフトウェアも選定する必要があるようです。

エンコードした後のデータはデコードといってもとの状態に戻すこともできます!
しかし、デコード形式がエンコードされた際の形式と異なるとここでも文字化けを引き起こしてしまうので注意が必要です・・・

 

それでは今日はこの辺で~( *´艸`)

 

 

...WebAPI...


こんにちは!ふわりです(´・ω・`)

 

前回のAPIに続きまして今日はWebAPIについてお話ししたいと思います('ω')ノ

APIにつきましては下記記事をご覧ください

yurufuwa-ref.hatenablog.com

 

APIは汎用性の高い機能を外部から利用できるように提供する仕組みとしてご紹介しました('ω')
WebAPIはその一種で、オンライン上でHTTPを利用してネットワーク越しに処理を実行して結果を受け取る仕組みです( *´艸`)(諸説ありますが今日は上記内容でご紹介したいと思います)

 

HTTPとはWebサーバとWebブラウザが通信するためのプロトコルです(*´ω`*)
WebAPIの仕組みとしては、Web APIで機能を公開しているサーバに対して、このHTTPリクエストを送信します。
すると、処理結果がHTTPレスポンスの形で送られてきます。その形式は、XMLやHTML、JSONなどが一般的です(^^)

 

また、WebAPIのレスポンスのフォーマット種類としては

XML-RPC
データ形式XMLを利用し、転送にHTTPを利用する
SOAP
リクエストおよびレスポンスともにXMLのデータで行う
・REST
HTTPリクエストを送信し、レスポンスをXMLJSONで受け取る

などが主に利用されます(´ω`)

 

WebAPIは様々な企業が公開してますが、中でもAmazonProduct Advertising APIが有名です( ..)φ
こちらのWebAPIは、Amazonの商品情報や関連コンテンツを自分のWebサイトに表示し、商品などを紹介することによってその収益の一部を得ることができます!

Product Advertising APIは、多くの開発者が導入し同時にAmazonの収益も上がったそうです(´-`).。oO

一方、WebAPIを公開することによってリスクもあります。不特定多数の誰でもアクセスできるWebAPIだと多くのアクセス、または攻撃があるとサーバがダウンしてしまうリスクがあります( ゚Д゚)

 

また、クロスサイトスクリプティングなどでデータの改ざんや情報漏洩を起こす可能性もあります。
そのため、公開するにあたり対策が必要となります(´・ω・`)

 

クロスサイトスクリプティングにつきましては下記記事をご覧ください

yurufuwa-ref.hatenablog.com


それではこの辺で~!!

 

 

...API...


こんにちは!ふわりです(´・ω・`)

 

今日は、APIについてお話ししたいと思います!


APIとは、アプリケーションプログラミングインタフェースのことで汎用性の高い機能を外部から利用できるように提供する仕組みのことです(*´ω`*)

 

サービス提供者側で特定の指示や命令などのプログラムをAPIで公開しておくことで、利用者であるソフトウェア開発者がすべての機能を最初から開発する手間がなく、呼び出すだけでその機能を利用することができます!
そのため時間の大幅短縮と効率的な開発が可能となるのです('ω')


APIには様々な形態があります!

 

  • POSIXのような国際規格

POSIXとはUNIXを始めとする異なるOSの互換性維持のための標準仕様で、移植性の高いアプリケーションソフトウェアの開発を容易にすることを目的としてIEEE(米国電気電子学会)が策定したアプリケーションインタフェース規格です。

 

例えばマイクロソフトが提供するWindows APIWindowsの機能をプログラムから使うための機能で文字列やグラフィックスの描画に関するサービスを提供してくれるAPIやプロセスやメモリ、周辺装置を管理してくれるAPIなどたくさんあります。
このようにベンダーから提供されているAPIもあります。

 

プログラミング言語の中で使用するAPIで、簡単に文字列を比較できたりアルゴリズムによって乱数を返してくれるクラスなど多種多様に用意されているので最初からコードを書く手間が減ります。
もともと用意されているものを呼び出すだけなのでエラーが発生する可能性も減り効率的に開発を行うことができます。

 

身近なところだと、Google Maps APIなどがあります!Google Maps APIを利用することによりWEBサイトなどに地図を簡単に組み込むことができるので開発者側も効率的に開発を行えるようになります( *´艸`)

 

それでは今日はこの辺で~('ω')ノ