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

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

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

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

PHP

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

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

4165閲覧

IoTの仕組みについて

chapp

総合スコア233

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

PHP

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

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

3クリップ

投稿2015/02/03 12:49

お世話になってます。

今後、全てのものがインターネットと繋がる・・・という事が速いスピードで移り変わってくるものだと思います。

とても興味のある事ですが、お恥ずかしい質問だとは思いつつ、私自身、ブラウザベースでのプログラミングしか経験が無く、今後のIoTにおいて、流れ的な仕組みはイメージできても、言語や通信、そして端末機器など、どのような構成で成立つのか分かりません。

ここで質問なのですが、これら仕組みについて、端末にはどのようなコンピュータ?が使われ、どのようなプログラミング言語が使われているのですか?
また、通信機器や、通信方法はどのようなものになってくるのでしょうか?

あまりにも抽象的な質問で恐縮ですが、これまで学んできたPHP、MySQLにしても、知り合いに「会員サイトみたいなホームページはどういう仕組みで動いているの?」と単純な興味と質問から、「PHPとMySQLを勉強すれば出来るよ」と教えてもらったのが切っ掛けでした。

話が少しズレテしまいましたが、今後当り前となってくるIoTの構成について、お教え頂けると幸いです。

宜しくお願い致します。

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

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

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

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

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

guest

回答2

0

参考程度の情報ですが……。
IoT自体は徐々に盛り上がっているとはいえ、技術的に「こういう物だ」という明確なものがない印象です。以前盛り上がったWeb2.0のように。徐々に形になるとは思いますが、その過程で新しい言語やプロトコル、OSなども出てくると思いますので、これを勉強しておくと「確実に」「100%」IoTについていけると名言できるものがありません。

という前置きはある物の、ある程度の予測は出来るかと思います。
クライアント周りはあまり詳しくありませんが、例えば
・TCP、UDPなどが今後も使われる
・プロトコルは用途による
※HTTP(S)か、その上で動くものが多そう
・LinuxなどUNIXクローンベースのOSが内部で用いられる可能性が高いと思うが、
組込み用途の商業OS(Windowsなど)のシェアはそれなりにあり、
専用の新規OSの参入も考えられる
※ガラケーからスマホ移行期にiOSやAndroidが誕生したように。
・開発言語はある程度のトレンドがあるが、OSとの関連性が高いため、
現在利用されている物がそのまま用いられるか、延長線上にあるのでは?
といった感じです。

体に身につけるウェアラブルな小型デバイスと、クルマに搭載する機器では用途もハードウェア的な要件も異なりますので一概にこれだとは言いにくいかもしれないですね。例えばクルマのような大型の端末が搭載できるスペースがあればかなり高機能なスペックが期待できそうです。

また、これらクライアントと連動する形で、それらを制御したりデータの授受を行うためのサーバも今後はより必要になるかと思います。クライアント側で実際の処理は行わず、サーバ側で判断をするケースも増加するでしょう。ロボット分野ではクライアントに載せきれない「知識」をすべてクラウド上に置く試みが何年も前から行われていたりシますし、ゲーム分野ではストリーミングを用いたクラウドゲーミングなども最近話しをよく耳にします。こういった上ではPHPやMySQLも生き続けるのかもしれませんね。

非常に漠然とした話しになってしまいましたが、もしもエンジニアとしてこれらのことに関わりたいのでしたら、現在動いている端末の内部仕様を調べることから初めてはいかがでしょうか?例えばルータはもとより最近はネットにつながる家電製品はたくさんあります。その上でどんなOSが動き、どんな言語で開発されているかを知ればイメージがつきやすくなるのではないでしょうか。

あとは電子工作なんかも参考になると思いますよ。
http://readwrite.jp/archives/4888
http://www.amazon.co.jp/dp/B00LP8GDKW/
http://www.amazon.co.jp/dp/B00OJRLZ7W/
※マンガですが、猫に端末くっつけてTwitter連動する話はIoTっぽいなと思いました。

投稿2015/02/03 14:04

munyaX

総合スコア783

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

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

chapp

2015/02/04 09:05

munyaXさん こんばんは。質問投稿後、早速の回答ありがとうございます。 これまでPHPとMySQLくらいしか携わったこと無い者にとって、munyaXさんのように、このIoTのような仕組みを想像する機会は貴重でした。 興味のある分野なので今後も色々と調べて行きたいと思います。 ありがとうございました!
guest

0

ベストアンサー

こんにちは。

先月、開催された「世界経済フォーラム・年次総会(ダボス会議)」で、Googleのエリック・シュミット氏が講演し、インターネットは近い将来、生活のあらゆる面に浸透し事実上「姿を消す」だろうとの予測を示し話題になりました。
こうした背景には、IoT(Internet of Things)を取り巻く技術などの急速な進化があることはまちがいありません。

ということで、chappさんのご期待に応えられるかどうかはわかりませんが、僕なりに得ている IoTに関する情報をまとめてみたいと思います。

【通信技術】
一般的な通信手段と同様、モノとインターネットを接続する手段としては有線と無線があります。
有線には、おもに Ethernetが用いられますが、今後、IoTに用いられるケースは減少していくものと思われます。
無線には、WiFi、Bluetooth、WiMAX、IEEE802.15.4などが用いられていて、IoTの分野においてとくに注目されているのが最後にあげた IEEE802.15.4という通信規格です。
IEEE802.15.4が注目されている理由は、接続されるモノが多数ある場合、同一のエリアにある個々のノード接続に適切に対応できるナローバンドの通信技術が必要とされるためです。また、同規格の無線モジュールは低消費電力である点からも IoTに適しているといわれています。

【プログラミング言語】
これはひじょうにむずかしい問題です。極論すれば、現在すでにプログラミングに使用されている言語はどれでも使える(応用可能)といえるのではないかと思います。
僕個人としては、組み込みレベルのデバイス(モノ)をインターネットに接続して新しいサービスを生みだすのが IoTの本質であると考えていますので、そうしたサービスを実現できる開発スピードとメンテナンス性をそなえた HTML5や JavaScriptなどの Webプログラミングの言語が主流になるのではないかと思っています。
じっさい、HTML5や JavaScriptで IoTをプログラムしようという動きが世界の各所で起こっているという記事などを目にしますし、Intelは JavaScriptでIoTでバイスを自由に制御できるソフトウェアインフラを整えようとしているという話もききました。

くりかえしのようになりますが、IoTは、さまざまなモノがインターネットに接続され、センサーなどを用いてデータを収集したりコントロールしたりすることができる世界をあらわす概念です。そして、その本質はモノとネットワークとサービスの融合だと僕は考えています。

IoTのレイヤーの側には、アプリケーションの層として WoT(Web of Things)のレイヤーが存在します。このレイヤーには、開発者の裾野がひろい Webエンジニアの多くが IoTの進化に参加できる機会が用意されています。
たとえば、RESTful APIを使うことで、モノと Webとをシームレスにつなげ、最適なサービスを提供することができるようになるのです。
それを思うとき、とてもわくわくする世界がひろがっていると感じるのは、僕だけではないはずです。

以上、ご参考いただければ幸いです。

投稿2015/02/04 03:46

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

chapp

2015/02/04 09:11

GeorgeCohtaさん こんばんは。大変興味深いお話をありがとうございます。 > とてもわくわくする世界がひろがっていると感じるのは、僕だけではないはずです。 私も同感です。 私自身、知識が乏しいと自覚している身、これまで他の言語を学ぶ切っ掛けがありませんでしたが、今回を機に、HTML5や JavaScriptを学んでみようと思います。 また新たな視野が広がりそうな気がします。 大変貴重なお話しをありがとうございました!
退会済みユーザー

退会済みユーザー

2015/02/05 01:09

chappさん、コメント(返信)をいただきありがとうございます。 もっと先の未来は、スマホやインターネットにアクセスできないひとたちもその恩恵をうけることができる、デバイスやテクノロジーを感じさせない、空気のような存在になることが IoTのあり方の理想なのではないかと僕は考えています。 たとえば、あるひとが体調を悪くして病院を訪れたとしたら、そのひとが履いている靴は過去数カ月遡った歩行の変化に関するデータを、肌着は体温や発汗などの変化をクラウドからロードし、医師の診断にさきがけて予診が行われるといったようなことができる世界です。 もちろん、個人情報のあつかいやセキュリティなどの体制を万全にしておく必要はありますが、より多くのひとたちが快適に暮らすことのできる社会に貢献することがテクノロジーには求められていると僕は考えています。
chapp

2015/02/10 12:46

GeorgeCohtaさん こんばんは。ご丁寧にお返事いただきありがとうございます。 > IoTのあり方の理想なのではないかと僕は考えています。 GeorgeCohtaさんのように理想を求め、今後を描き続ける事ってとても大切ですよね。 良いお話しを聞けたと思ってます。刺激を受けました。 ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問