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

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

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

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

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

9回答

1998閲覧

一つを極めるのか複数覚えるのか

muchi

総合スコア0

JavaScript

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

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

2クリップ

投稿2021/05/29 19:07

複数学ぶか一つの言語を集中して学ぶか

高校生です。
最終的にはFPSゲームなどの制作にかかわりたいです。
高校生のうちは、多くの言語を学ぶべきなのか、
一つの言語を学ぶべきなのか教えて欲しいです。
また、学ぶべき言語は何か教えて欲しいです。
独学する際何を準備するべきか教えて
いただきたいです。

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

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

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

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

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

thkana

2021/05/29 21:46

質問の内容の推奨非推奨はともかく、こういう質問こそ「プログラミング言語」タグだと思う。 よく、特定の言語を使う質問に「プログラミング言語を使うから」と考えるからか「プログラミング言語」タグをつける人がいるけれど、そもそもプログラミングがお題のQ&Aの場でそれをやったら全ての質問に「プログラミング言語」タグがついてタグの意味がなくなっちゃう。 逆に、汎くプログラミング言語を話題にするのなら、特定言語のタグは外して「プログラミング言語」にすべきでしょう。
guest

回答9

0

ゲーム作りたいならばまずは言語に拘らず、ゲームっぽいものを作ってみることをオススメします。

もちろん、いきなり最終目標レベルを作ることは無理でしょうが、とりあえず「作る側の立場の考え方を知る」ことが大事。その上で、言語毎の違いを知ることができれば良いと思います。

さらにいえば、プログラマだけではなく別の担当者(グラフィックとか)にも目を向けられれば理想(後ろ向きな考え方だが、不適正ならプログラマへの「諦め」を早期に判断できる)。

そもそも言語が複数存在するのは、要所要所で有効なものが異なるためです。視野を広げることが大事だと思います。

以下は、興味がないならばあまり気にしないでください

逆に言語毎の違いについて詳しく知りたいならば、コンピュータの歴史背景を学ばないといけないです。例えばC言語はUNIXとペアで発展した経緯があります。また、javaは仮想技術と関連性、多くのスクリプト言語はWeb技術の発展と関連性があるなどです。

この手の話題は、コンピュータの性質上、互換性や移植性といった(エンドユーザから見れば全く面白みのない)課題がどうして付き纏います。挙げ句の果には、派閥論(「偉い人」の推す言語が優勢になる、「嫌われている人」の使う言語は避けられる等)も絡んできます。こうなるともう関わりたくなくなります。根を詰めて考えないほうが良いです。

投稿2021/05/30 02:10

HogeAnimalLover

総合スコア4830

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

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

0

日本の中学校で英語の授業がある理由の一つに、「日本語を理解するため」というのがあります。
一つしか言語を知らないと、その言語が全てだと錯覚して、本当に理解できないことがあるのです。

コンピュータ言語でもこれは同じだと思いおます。

私のお勧めは、本当に使いたい言語をひとつ選んで深く勉強し、それとは全く違う言語をひとつかふたつ選んで浅く勉強し、それらの三つの言語を比較しながら理解するという方法です。

私の場合は、最初の三つはFORTRANとCとLispでした。
これはかなり昔の話ですので、今だと

C/C++/C#/Java の中から一つ (実コーディングするより、入門書を読むだけでもよい)
Python/ruby の中から一つ (入門書を読んだ上で、ネットのアプリ例を動かしてみる程度でも良い)
その他として、上記とは違うものをひとつ(おそらくこれが本命)

ぐらいがよいかなと思います。

投稿2021/05/30 02:09

編集2021/05/30 02:17
ppaul

総合スコア24670

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

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

0

色々回答付いてますが、私個人としての意見も回答させて貰います。

複数学ぶか一つの言語を集中して学ぶか

そもそもプログラミング言語はただの道具なので学ぶのを目的にするべきじゃないですね。
やろうと思えば大抵どの言語でも同じような事が出来るので。(向き不向きがあるだけです。)
質問者は高校生とのことなので、まぁ進学のための勉強をメインにしつつで良いと思います。
進学すれば基本的に時間は余りますからね。
強いて言うなら数学と英語はしっかり出来るようにしといた方が良いです。

学ぶべき言語は何か教えて欲しいです。

C#、Python辺りになるのかな。
C++もアリですが、正直難易度が高いので最初に学ぶのは挫折する可能性があるので私は
あんまりお勧めしないです。

最終的にはFPSゲームなどの制作にかかわりたいです。

どういうFPSに関わりたいのか分かりませんが、今流行りのビッグタイトルのナンバリングに
関わりたいとかなら元々狭い門を更に狭くしたものを潜り抜けないといけません。

夢を追いかけるのは結構ですが、ある程度妥協する道を考えておいても良いと思います。
別に大学、専門学校出てすぐゲーム会社に就職できなかったら終わり、って訳でもないですから。

投稿2021/05/31 02:13

K_3578

総合スコア1282

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

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

m.ts10806

2021/05/31 02:16

ゲームに限らずプログラマーだけいても作れませんしね。
K_3578

2021/05/31 02:29

@m.ts10806さん >ゲームに限らずプログラマーだけいても作れませんしね。 プログラマーだけ居たら地獄みたいな事になりそうです。 特にFPSなんかはユーザー側からは予想出来ないほど多くの人間の協力で成り立ってますから。 高校生って事ですし漠然としたイメージだけで考えてるならしっかり考えてからで良いと 思います。
fana

2021/05/31 03:12

> 強いて言うなら数学と英語はしっかり出来るようにしといた方が良いです。 (私はゲームとは無関係な仕事をしてますが)数学で毎度苦労していますので,個人的な観点での重要具合(というか,勉強しとかないと必要になったときに困る度)としては 数学 >>> 英語だのプログラミング言語だの という気がしますね. 英語は翻訳手段が使えるし,プログラミング言語も都度調べられるけども, 数学は土台が無いともうね… という感じなので.
K_3578

2021/05/31 03:22

@fanaさん 多分今メジャーで売れてるFPSって海外産が殆どなので、そう考えると英語は話せないとキツいかなと 思って挙げてみましたが、ゲーム開発だと数学が出来ないとそもそも無理ですね。 (私も業界への入りはゲーム作成意欲からでしたが、数学理解出来なくて諦めました)
fana

2021/05/31 04:07

(開発時の公用語が英語というのは考えてなかった)
K_3578

2021/05/31 05:25

@fanaさん あくまで人づてに聞いた話なので英語で会話してるかは分からないです。 まぁ仮にそうじゃなかったとしても覚えて損する事は無いかなと・・・。
退会済みユーザー

退会済みユーザー

2021/05/31 05:34

結局、どういう形でゲームと関わりたいかってとこになりますね。 最近は開発コスト抑えるのにゲームエンジン採用してるとこが結構見られるので、UnityやUnrealEngine辺り知ってると多少有利にはなるのかな?とはいえ、開発手法やメインの言語・フレームワークって会社によって色々違いそうだし、どこ行っても共通で役に立ちそうなのは結局数学、物理、英語などの基礎学力になりそう。
K_3578

2021/05/31 06:59

@radianさん まぁUnityとか考えるとやっぱりC#辺りにはなりそうですけどね。(UEはよく知らない) >どこ行っても共通で役に立ちそうなのは結局数学、物理、英語などの基礎学力 結局要件、仕様次第なのでそこになってくると思います。質問者はまだ高校生ですし、 勉強する時間はありそうですからね。
guest

0

最終的にはFPSゲームなどの制作にかかわりたい

目ぼしそうなゲーム会社に質問のメールしてみてはどうですか。
金の卵として扱ってくれるかもしれませんよ。

補足

ゲーム制作を目指しているなら、実際の現場に接触してどんな言語が良いのか聞ければ、ここでの回答より良いものが得られるかもしれないし、職業としてのコネクションも得られるかもしれない訳だし。
企業の担当者も、高校生から質問されたら、煉獄さんのように振舞ってくれるでしょう。

そんなイメージが湧いて勢いで回答しましたが、意図が伝わらないという指摘がありましたので、補足しておきます。

投稿2021/05/30 04:03

編集2021/06/01 02:12
sazi

総合スコア25327

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

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

sazi

2021/06/01 02:01 編集

低評価されてますが、冷やかしの回答のつもりではないですよ。 実際にゲーム制作を目指しているなら、実際の現場に接触してどんな言語が良いのか聞ければ、ここでの回答より良いものが得られるかもしれないし、職業としてのコネクションも得られるかもしれない訳だし。 企業の担当者も、高校生から質問されたら、煉獄さんのように振舞ってくれるでしょう。
sazi

2021/06/01 02:34 編集

いつも言っている事なんですが、低評価の理由はコメントして欲しいものです。 まあ、陰に隠れてコソコソしか言えない小物は対応してくれた事はありませんが。 低評価の意味が分かる人が、コメントしてくれるだけでもありがたい。
K_3578

2021/06/07 06:47 編集

@saziさん 回答の本意は、 >実際にゲーム制作を目指しているなら、実際の現場に接触してどんな言語が良いのか聞ければ、ここでの回答より良いものが得られるかもしれないし、職業としてのコネクションも得られるかもしれない訳だし。 だと思うんですが私はこの回答だとそこまで読み取るのは難しいかな、と思いました。 なので、これを回答に含めていると分かりやすかったかもしれないです。 私は低評価してませんが、低評価の意図が知りたいようなので個人的に推察してみました。 とは言え、非推奨の質問ですのである程度こういう回答になるのも仕方ないかと思います。 ↑補足事項追加により回答として良いものだと感じたので高評価しました。
sazi

2021/06/01 02:00

@K_3578さん フォローありがとうございます。 最初の低評価は、「高校生になんてことを!」というような意味合いで低評価されたのかなと思って、コメントで補足したんですけど、補足した後にも低評価されたので、どんな理由なんだろうって所です。
m.ts10806

2021/06/01 02:07 編集

念の為回答編集して低評価した人に通知したほうが良いかもしれません。コメントだけだと通知もなく、見ない人もいますし。 ※私は高低どちらもしてません
sazi

2021/06/01 02:11

@m.ts10806さん フォローありがとうございます。 通知ありで回答編集しました。理由が聞けると良いんですが。
m.ts10806

2021/06/01 02:18

私も嫌がらせと思わしき低評価を受けることはありますが、コメント得られるのは2割もないですね。 嫌がらせで低評価は運営から迷惑行為として禁止されてるという旨を書くと低評価がなくなることはありますので、不順な人がいるもんだと。 補足事項は回答としても十分と感じましたので高評価しました。
dodox86

2021/06/01 02:22

@saziさん 質問内容を読むに、直近の疑問が「高校生のうちは、多くの言語を学ぶべきなのか、一つの言語を学ぶべきなのか」であり、その点を踏まえていないように読める回答であった為かもしれないと思いました。ですが、私自身は誠実なオルタナティブ回答は有意義なものだと思いますので、興味深く読ませていただきましたし、低評価もしていません。
sazi

2021/06/01 02:32 編集

@dodox86さん フォローありがとうございます。 ここで具体的な回答を得るという意味では代替案ですね、確かに。 だけど、質問者自身が何を思って質問しているのかについて考えて、この回答に行き着きました。
K_3578

2021/06/01 02:58 編集

ゲーム開発って人気の分野ですし、そう考えると誰でもやることの他に、 誰もがやることではないことをやることはライバルと競争する上で優位に立てるのではないかと思います。 (私は少なくとも、自分の分からない事を放置する学生より聞きに来る学生の方が肯定的な印象を 持ちます。)
sazi

2021/06/01 02:50 編集

@K_3578さん 思い立ち先ずは行動する。間違えていても大概は許される。 それこそ若者の特権だし、好ましい事だと思います。
dodox86

2021/06/01 02:55

回答への補足、コメント欄の記述で充分補完されたと思いましたので、高評価させていただきました。
guest

0

この手の質問は非常に多いけど、大体同じ指摘が入ってます。

聞いてる暇があれば1つ選んで入門書買うところからだと思う。
自分への投資は惜しむべきではないし、人に薦められたことで進めると「やらない」ことを人のせいにできる。
自分の人生だし、思いついたことは全部やるくらいの気概がないとやりたいことは絶対に成らない。

独学にこだわって全然基本身につかないよりはお金かけて家庭教師なりスクールなりいったほうがいいこともあります。ホントtime is money。
嘘書いてるかもしれないネットの記事鵜呑みにするくらいなら(自分で検証、判断できないなら)、
「プログラミングとは」あたりから体系的に書かれている入門書。

投稿2021/05/29 23:31

編集2021/05/29 23:34
m.ts10806

総合スコア80875

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

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

0

FPSゲームなどの制作にかかわりたい

とのことですが、どういう風に関わりたいかにもよります。

普通に考えるならゲームメーカー等の組織に入って大勢の人と協力して作ることになると思います。当然扱える言語も重要ですが、それだけでは当然ダメでして、総合的な知識や見識、そしてコミュニケーション能力なども求められます。なので、"一つを極める"ってのは、その目標にたどり着くための手段としては決して得策ではないです。ご存じかと思いますが、ゲームメーカーは就職先としては人気で、新卒採用はかなり狭き門です。高校生ということですので、次の進路を考えている頃だと思いますが、頑張って勉強していい大学もしくは専門学校に入ることが一番の近道だと思います(ぶっちゃけ、プログラミングの学習は後回しでもいい)。

仕事にはせずに個人やサークル的なのりで気軽にゲーム制作に携わりたい、ということであればこの限りではありません。言語に関してはゲーム制作をメインとするならC++、C#、pythonあたりを扱えると困ることが少ないのではないのかな?と思います。どれも極めようとするとなかなか大変な言語(特にC++は)なので、あまり構えずにその時の状況や時勢に合わせて学習を進めるといいと思います。とっかかりとしてはpythonがいいかもしれません。

投稿2021/05/30 02:42

編集2021/05/30 02:46
AbeTakashi

総合スコア4853

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

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

0

中途半端にかじっただけで他の言語に行ったところで、中途半端が増えるだけです

一つを徹底的にやりましょう

投稿2021/05/29 21:37

y_waiwai

総合スコア88042

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

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

0

FPSってのはきっと,いわゆる「3D」な空間であれこれするやつだと思うので,
そこに焦点を絞って考えると,

準備

としては,

「カメラを平行移動したいのですが,どうしたらよいかわかりません><」
「モデルをモデルの中心まわりに回転するにはどうしたよいのでしょうか?」
「カメラをキャラクタに追従させるには(略」

とか何とか言い出さないように,必要な数学的基礎を学ぶこと,が相当するんじゃないかな? と思います.

例えば,「なんか3Dなプログラム」を「3Dの面倒を見てくれるライブラリを用いずに」作ってみる,とかをやってみたら良いんじゃないかな,とか.

投稿2021/06/01 02:19

fana

総合スコア11996

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

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

0

ゲームはプログラミングの中でもかなり難しいジャンルです。
言語はUNITYを使うならc#が良いんではないでしょうか?

投稿2021/05/30 06:06

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問