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

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

ただいまの
回答率

90.48%

  • JavaScript

    20863questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • React.js

    1141questions

    Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

ReactJS.NETでPHPのようにサーバサイドのプログラミングができるので、 問い合わせフォーム、ショッピングカートなどを製作できる?

解決済

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 1,236
退会済みユーザー

退会済みユーザー

ReactJS.NETでPHPのようにサーバサイドのプログラミングができるので、
問い合わせフォーム、ショッピングカートなどを製作できると聞きました、

若干は違うのでしょうが、reactができるようになればほぼ同じ文法やメソッドで、
非常に少ない学習コストでサーバサイドのプログラミングができるようになると考えてよいでしょうか?

meteorほどではないですが、reactもネイティブアプリ制作もできるフルスタックもどきということでよいですかね?

ただ、レンサバを使っての小規模サイト制作の場合は結局PHPのようにはいかず、
VPSなどを使わないといけなくなるので、割高、無駄な作業や学習が増え、
結局実務では使えないのでしょうね。

クライアント、引継ぎの人も嫌がるでしょうし。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

checkベストアンサー

+1

meteorほどではないですが、reactもネイティブアプリ制作もできるフルスタックもどきということでよいですかね?

違います。

まずReactの公式サイトを見てください。ここには

A JavaScript library for building user interfaces

と書かれていますね。ReactはUIを構築するためのJavaScriptのライブラリ、即ちMVCで言えばViewの部分を担当するライブラリであって、それ自身はフルスタックという言葉から程遠い存在です。

一方、Reactを使ったフレームワーク(例えばReactJS.NETReact Nativeなど)はWebやネイティブアプリなど多岐に渡り、フルスタックであるものもあるかもしれません。
(このように、色々な場所で利用することができる、というのがReactの特徴の一つだったりします)
これらはReactを根底に据えているという点で共通しているので、Reactを理解していると素早く習得することができます。Reactを学習するメリットはこの辺りにあるでしょう。

若干は違うのでしょうが、reactができるようになればほぼ同じ文法やメソッドで、
非常に少ない学習コストでサーバサイドのプログラミングができるようになると考えてよいでしょうか? 

この点についてはそういう認識で構わないかと思います。

ただ、レンサバを使っての小規模サイト制作の場合は結局PHPのようにはいかず、
VPSなどを使わないといけなくなるので、割高、無駄な作業や学習が増え、
結局実務では使えないのでしょうね。 

どうしてVPSを使わないといけないと思ったのでしょうか?

先程挙げた通り、React自身は単にJavaScriptのライブラリであり、クライアントサイドでも動作することができます(jQueryのように<script>タグで読み込めばいいのです)。
なので、PHPをバックエンドにしてブラウザ側でのHTMLの操作にReactを使う、というようにすればレンタルサーバーでも十分に動かせます。

また、Reactそのものは一つのことに特化したライブラリなので、包括的なフレームワークよりも学習コストは低いです。ただ、その分全てをケアしてくれるわけでも無いので作業は増えるかもしれません。
しかしそもそも、ライブラリとフレームワークでは性質が違うので、これを比較するのはナンセンスな感じもします。

クライアント、引継ぎの人も嫌がるでしょうし。

クライアントが嫌がるかどうかは知りませんが、既存のフローが完成しているのなら敢えて積極的に導入するものでもないと思います。

一つ覚えておいてもらいたいこととしては、ReactはFacebookがサイトのパフォーマンスの問題を受けて作られたライブラリです。なので、サイトのJavaScriptが重いなと感じたら導入を考えてみてもいいかもしれません。

最後に、いくつか参考になるかもしれない記事を載せておきます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/08/30 12:04

    ありがとうございます。


    ーーーー
    一方、Reactを使ったフレームワーク(例えばReactJS.NETやReact Nativeなど)はWebやネイティブアプリなど多岐に渡り、フルスタックであるものもあるかもしれません。
    (このように、色々な場所で利用することができる、というのがReactの特徴の一つだったりします)
    これらはReactを根底に据えているという点で共通しているので、Reactを理解していると素早く習得することができます。Reactを学習するメリットはこの辺りにあるでしょう。

    若干は違うのでしょうが、reactができるようになればほぼ同じ文法やメソッドで、
    非常に少ない学習コストでサーバサイドのプログラミングができるようになると考えてよいでしょうか?

    この点についてはそういう認識で構わないかと思います。


    やはりバニラjsと違ってReactは
    それを学べばそのごはフレームを遣って容易にアプリ、サーバサイドのプログラミングまで、すべてを容易に出来ると言うことですね。

    キャンセル

  • 2016/08/30 12:11

    ーーーー
    どうしてVPSを使わないといけないと思ったのでしょうか?

    先程挙げた通り、React自身は単にJavaScriptのライブラリであり、クライアントサイドでも動作することができます(jQueryのように<script>タグで読み込めばいいのです)。
    なので、PHPをバックエンドにしてブラウザ側でのHTMLの操作にReactを使う、というようにすればレンタルサーバーでも十分に動かせます。



    うまく伝わらんかったようですね。
    アニメーションは苦手なようですが
    フロントは確かにサーバは無関係に使えますが、フレームワークを使って問い合わせフォームなどを作るときにphpはロリポップなどでも使えますが、Reactのフレームワークの環境があるレンサバは皆無でしょうから、Awsかvpsで自分で環境を構築するしかないという意味です。

    海外ならあるかもしれませんが

    キャンセル

  • 2016/08/30 12:14

    ーーーー
    一つ覚えておいてもらいたいこととしては、ReactはFacebookがサイトのパフォーマンスの問題を受けて作られたライブラリです。なので、サイトのJavaScriptが重いなと感じたら導入を考えてみてもいいかもしれません。




    バニラjsよりは遅いようですが、jqueryよりはずっと早いようですね。

    キャンセル

  • 2016/08/30 12:23

    比べるべきでは無いのでしょうがBabelと比べるとjs基礎をやっている人にはどちらの方が簡単に理解出来、Webアプリが作れるでしょうか。
    Htmlは解るので、タグを使うReactは非常に分かり易いのでしょうかね

    キャンセル

  • 2016/08/30 12:26

    BabelはJavaScriptトランスパイラであって全く比較対象にならないので答えようがありません。
    ただ、Reactを使うのであればBabelの使い方も多少は分からなければいけないでしょう。

    キャンセル

  • 2016/08/30 12:40

    そうですね。そういわれると思いました。

    それではバニラJSとreactではどうでしょうか?

    reactはjQueryのように、よく使うメソッドがまとめられていて、
    バニラjsだと大量に記載をしないといけないのが、iQueryのようにほんのわずかなメソッドを記載しただけで実現できるメリットはあると考えてよいでしょうか?

    それでバニラjsよりjQueryは圧倒的に簡単になっていると思います。
    reactも同じでしょうか?

    バニラjsですと、仮にbabelをつかってフューチャーシンタックスで記載しても、
    jQueryやreactよりも大量のメソッドの記述が相変わらずひつようで、大変なことに変わりはないのでしょうか?

    キャンセル

  • 2016/08/30 12:57

    多くの場合Reactの方が簡潔に書けますし、だからこそReactは広まったのではないかと思います。

    一つ提案なのですが、こうやって逐一考えを確認するのであれば、一度Reactのtutorialを試してみてはいかがでしょうか。
    人から話を聞くよりも実際に手を動かしたほうが理解は早いと思います。
    https://facebook.github.io/react/docs/tutorial-ja-JP.html

    キャンセル

同じタグがついた質問を見る

  • JavaScript

    20863questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • React.js

    1141questions

    Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

  • トップ
  • JavaScriptに関する質問
  • ReactJS.NETでPHPのようにサーバサイドのプログラミングができるので、 問い合わせフォーム、ショッピングカートなどを製作できる?