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

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

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

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

C#

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

Java

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

PHP

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

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

Q&A

解決済

6回答

1599閲覧

ソフトウェア設計

Susanoo2442

総合スコア153

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

C#

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

Java

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

PHP

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

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

0グッド

3クリップ

投稿2016/03/29 15:18

ソフトウェア設計の流れについて
質問です。

ソフトウェアを作成するに当たって
いくつかの、言語を組み合わせて作る場合も
当然、あると思います。

そこで、質問なのですが
例えばeclipseで、Facebookやlineに似たような
SNSソフトを、Windows用に作っているとします。

そこで、ソフトの基本となるような所は
Cで、プログラミングして

ユーザー情報を管理するために
PHPで、プログラミングする必要性が出てきたとします。

となりましたら、どうやってこの2つの言語を
組み合わせて、開発すれば宜しいのでしょうか?

ご回答お願い致します。

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

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

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

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

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

guest

回答6

0

クライアントサーバモデルをお考えならば、ユーザーが使うクライアントをCで、ユーザ情報を管理するサーバサイドをPHPで、という感じになるかと思います。

この場合のデータのやり取りはHTTP通信で行う場合が多いです。サーバ(PHP)でREST APIを作成しておき、クライアント(C)からアクセスすることで、クライアント/サーバ間でデータのやり取りを行います。

投稿2016/03/29 16:15

shiolier

総合スコア1156

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

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

0

失礼ながら、1つ前の投稿についた回答をご理解されていないように見えます。
LINE や Facebook はまず巨大なサーバー群が存在し、ユーザー情報などを管理しています。
アプリは、ユーザーから受け取った入力をサーバーに送信し、サーバーから受け取った情報をユーザーに提供します。

[LINE 会社]
サーバー(ユーザー情報の管理)

|インターネットを介して通信を行う

アプリ
[ユーザー]

SNS を作るにはまず、サーバー側とアプリ側の両方を作らなければなりません。
まずはこの2つを切り分けて考えて下さい。

それぞれは言語を組み合わせなくても、1つの言語で構いません。
サーバー側はPHP、アプリはC言語で問題ないと思います。

投稿2016/03/29 16:15

編集2016/03/29 16:19
ttoonnaa

総合スコア57

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

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

Susanoo2442

2016/03/29 16:18

ご回答ありがとうございます。 2つを別に作る必要があるのですね! ちなみに、最終的にこの2つを 結びつけるとなると どのような、手法を施せば 宜しいのでしょうか?
ttoonnaa

2016/03/29 16:29

サーバーに住所を設定すれば、後はアプリはその住所宛に通信を行うだけです。 例えば Google の住所は www.google.com です。 住所については、IP アドレスなどで調べればいいと思います。
Susanoo2442

2016/03/29 17:09

ありがとございます。 ちなみになんですが LineやFacebookは iphoneやアンドロイドに インストールして使うものと 直接インターネットのブラウザにアクセスして使うものと PCにインストールして使うものが ありますけど それぞれ、なんていうアプリケーションか 分かったりします?? ネイティブなのか、ハイブリットなのか さては、Webアプリなのか この辺りが全然理解できて おりません。 よろしければご回答お願い致します。
guest

0

・ユーザーが使うクライアントアプリをCで開発して配布する
・ユーザーを管理するWebアプリをPHPで開発する

投稿2016/03/29 15:39

root_jp

総合スコア4666

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

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

Susanoo2442

2016/03/29 16:17

ご回答ありがとございます。 まさしくそれが最終的にやりたい事と なります。 そして、今その工程を模索している 途中なのですが 単純明快に C言語でのクライアント開発と PHPでの、Webアプリ開発なのですが この2つを関連付けると言いますか 結びつける為には どういった手法を施せば 良いのでしょうか?
guest

0

他の方の回答とそれに対する質問者さんのコメントを読んでいると、最初の質問とコメントで質問者さんが
話されていることと内容が異なってきているようです。
最初の質問は
SNSシステムを構築する場合、ユーザーインターフェースとデータ管理を異なる言語で作成した場合、
この2つを繋ぐ部分はどのように実装するのか?例えばCとPHPの場合。
と言う意味だと思います。
しかし、コメントを読んでいると
サーバー側とクライアント側をどうやって繋ぐのか?
ということに関心があるように見えます。

何れにしろ、2つ(以上)のシステムが繋がる部分をインターフェースと言います。
インターフェースさえしっかり作られていれば、使用する言語は余り関係ありません。
(もちろん言語により、向き不向きはあります)

2つ(以上)のシステムが情報をやりとりする方法はプロトコルと言います。
Webで使われるプロトコルは HTTP が代表的です。

このあたりのこと (インターフェース、プロトコル、クライアント・サーバーモデル)などを
整理して再度質問をしてみて下さい。

投稿2016/03/30 01:16

nob.

総合スコア711

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

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

0

ベストアンサー

本来聞きたい回答とは異なるかもしれませんが(すいません...)
現実的なアドバイスだと、
CとPHPでプログラムを作って維持、管理する(継続的なプログラムのアップデート、テスト、デプロイも含みます)のであれば、RubyやC#などを使った方が、学習コストを加味しても、安価に、そしてよいものができる(特に運用面で)可能性はあります。

(一回作ったら更新も管理もしないようなアプリの話だったら考慮はいらないです...)

そのあたりも考慮に入れるのも、要件・設計の大事な要素です。

アプリケーションは、リリース(=ユーザーが利用開始する)がゴールではなく、リリースがスタートのなので、
初期開発だけのコストを考えるのではなく、運用面も考慮しないとその場しのぎの設計では悲しい結果を招くことが多いです、ご注意いただければと思います♪。

投稿2016/11/07 08:52

BEACHSIDE

総合スコア294

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

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

Susanoo2442

2016/11/07 09:12

回答ありがとうございます。 なるほど! 勉強になりました!
guest

0

組み合わせて開発というところがイメージしにくいのですが…
もし、双方の言語で作ったシステムから双方を直接呼び出す
などと考えているとしたらオススメしません。

まず、データが主であり、プログラムは従であると考えましょう。
そのプログラム群は個々に関連性が薄いほどよい設計である
と考えて…

あー、ひょっとしてEclipseで複数言語を同時に開発する時の
ノウハウについて質問されてる?

投稿2016/03/29 15:41

takasima20

総合スコア7458

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問