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

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

ただいまの
回答率

88.03%

最適な言語を教えてください

受付中

回答 4

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,806

score 10

これから,次のようなシステムを開発しようと思っております。
ところが,プログラミングを習得しようと本屋へ行ったところ,あらゆる言語があり,迷ってしまい,購入しないで帰宅してしまいました…

1 開発環境;Mac X 10.10.5
2 動作環境;windows(7以上),mac(X 10.10.5以上)にて動作するプログラム(仮想デスクトップを含みます。)
3 仕様;https://www.dropbox.com/s/gak2n9r46xjtf2k/%E4%BB%95%E6%A7%98.pdf?dl=0

専門家の視点から,どの言語が最適かご教授頂ければ,幸いです。
また,この本が最適だよというのもありましたら,併せて教えてください。

よろしくお願い致します。


【補足 9/6 14:45】
1.本システムは,プレイヤー側の自動ベットシステムです。(素人<質問者>が作った仕様書で申し訳ありません…)
2.Flex4はいかがでしょうか?

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

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

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

    クリップを取り消します

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

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

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

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

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

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

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

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

    質問の評価を下げる

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

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

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

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

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

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

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

    詳細な説明はこちら

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

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

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

回答 4

+6

1. ストレートな回答

発注者はブラウザ上で動作するプログラムを求めています。このためにはHTMLおよびJavaScript 言語で書く必要があります。

ただし、この仕様書が曖昧なためわかりませんが、サーバーシステムも構築することを求められているようにも読めます。こちらには多くの選択肢がありますが情報の得やすさからJavaもしくはRubyを採用することになるでしょう。

さらにサーバーシステムのデータベースも構築するよう求められているように読めます。これにはSQLを使う必要があります。


2. 質問者様に役立つはずの答え

まさかこれを未経験の状態からお一人で請け負おうとなさっていますか? 経験豊富な10人ほどのチームが数ヶ月従事する必要が見込まれるボリュームでありかつ、仕様書と呼ぶにはあまりにも曖昧な依頼書を読むに進行上のトラブルがありありと想像され、しかもお金を扱うシステムなのに責任範囲が明確にされていないため稼働後の金銭トラブルまで予想されるこの案件、まともな開発会社は確実に断ります。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2015/09/05 23:38

    >2. 質問者様に役立つはずの答え
    サイトを参考にこの仕様書は私が書きました。開発会社に見積もりを頂いたところ,1,000万円だったため,自ら開発しようと決意しました。
    (しかし,今は,質問のような状態です…)

    >1. ストレートな回答
    補足します。
    デスクトップ,ブラウザどちらでも構いません。
    サーバーは,ライセンス認証(ホワイトリスト)の役割と取引履歴の送信で足ります。カード決済につきましては,外部サービス等でも問題ありません。

    >こちらには多くの選択肢がありますが情報の得やすさからJavaもしくはRubyを採用することになるでしょう。
    JavaとRubyであればどちらを推奨されますか?

    誠にありがとうございます。
    参考にさせて頂きます。

    キャンセル

  • 2015/09/06 00:02

    質問者様が書かれた仕様書でしたか。これは失礼いたしました。
    1000万円の見積もりはかなり安いですね…
    15人月程の工数見込みということになりますが、3人で5ヶ月で仕様の詰め、設計から作成、テストまで。うーん、私が見積もり担当したら倍は要求すると思います。

    そして、追加の質問への答えにはなっていないのですが、やはり一番役に立つはずの回答としましては「お金を扱うシステムは素人には絶対無理です」となります。

    キャンセル

  • 2015/09/06 06:11

    倍…一瞬気絶しそうになりました(苦笑

    >「お金を扱うシステムは素人には絶対無理です」
    確かにその通りだと思います。
    困りました…

    キャンセル

  • 2015/09/06 09:57

    > 困りました…

    どんな世の中になっても儲かるのはギャンブルの胴元である、という目の付け所は悪くありません。
    さて実際このネットカジノシステムは儲かるかですが、厳しいかと思われます。

    集客はネット広告を打てば良いとして、実際に入金して賭けてくれるユーザーがどれほどつくか。ここで大事なのが信用です。
    なにせ違法サイトです。お金が返ってこないなどのトラブルが起こっても当局は絶対に助けてくれません。だから、これはWebサイトに限らないのですが違法な・闇の取引ほど信用が必要なのです。

    ではいかに信用を得るか? というとこれに答はなく、模範解答があるのならヤクザの人たちは指なんか詰めていないわけです。

    というわけで、同時プレーヤー数100人という目標を達成する筋道はほぼ存在しないと言えるのではないかと思われます。

    キャンセル

+1

これは難しいですねー。
わからないのが、このシステムはデスクトップ上で動くものなのかWEBで動くものなのかですね。

WEBの方が良いと思うのですが、自動アップデートとか関係なくなりますね。

WEBで作るとして
JavaScriptは必須です。ゲーム部分のところ。
データを保持するのにDBが必要なのでSQLを覚える必要がありますね。
テーブル設計も重要ですね。
あと、どうにもサーバの管理もしないといけなさそうなのでサーバ管理系の知識も必要です。
サーバサイドはJavaでもRubyでもPythonでもPHPでもなんでもできるでしょう。

というか、仕様書というか顧客の要望ですよね。
ここからどうやって顧客の要望を現実的なレベルまで落とすかが重要になると思います。
このままでは、一人で作るのは相当な経験者じゃないと無理だと思います…。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2015/09/06 06:12

    誠にありがとうございます。
    参考にさせて頂きます。

    キャンセル

+1

要求項目3,4あたりを見る限り、カジノ機能そのものは作らずに既存のオンラインカジノのフロントエンドを作るようなイメージでしょうか?
であれば、例えばChrome拡張やfirefoxとして作るというのも選択肢に入ってくるかと思います。
ただし、オンラインカジノ側の仕様変更があった場合に追従し続けないといけないので、原理的に24時間365日システムを正常稼働させるのは不可能になります。

言語としてはクライアントサイドのJavascriptとサーバサイドのPHP、Ruby(Ruby On Rails)、Java等の組み合わせになるかと思います。

サーバサイドの言語は全て入門書を一冊終わらせてみて、自分に合うものというような選択の仕方で良いかと思います。

プログラムを学習するところから始めると、将来的にスーパープログラマーと呼ばれるような素養のある人でもそれっぽく動くところまで数か月、セキュリティやパフォーマンスまで考えると1年以上はかかると思われますので最初1-2か月を言語選定に使うのは微々たる分量です。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2015/09/06 13:23

    言葉不足で申し訳ありません。
    カジノの運営側ではなく,プレイヤー側で賭けを自動化するプログラムです。

    >言語としてはクライアントサイドのJavascriptとサーバサイドのPHP、Ruby(Ruby On Rails)、Java等の組み合わせになるかと思います。
    参考にさせて頂きます。

    キャンセル

0

マルチプラットフォームという観点から開発言語を考えると「Java」かWebアプリが候補に挙げられます。
業務フローを見た限りおそらくデスクトップアプリケーションと思われますのでJavaをおすすめします。

投稿

  • 回答の評価を上げる

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

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

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

  • 回答の評価を下げる

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

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

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

  • 2015/09/05 23:27

    誠にありがとうございます。
    参考にさせて頂きます。

    キャンセル

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

  • ただいまの回答率 88.03%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

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