何を学習すればいいか教えてほしいです
こんにちは。
私は今10代中間くらいで、HTML,JavaScript,CSSは大体分かっています。
なので、他の言語を学習したいと思っているのですが、何の言語を学習するのが良いでしょうか?
または、HTMLなどを100%理解できるまでしっかりと学習したほうが良いのでしょうか?
ご回答よろしくお願いいたします。
こんにちは。
私は今10代中間くらいで、HTML,JavaScript,CSSは大体分かっています。
なので、他の言語を学習したいと思っているのですが、何の言語を学習するのが良いでしょうか?
または、HTMLなどを100%理解できるまでしっかりと学習したほうが良いのでしょうか?
ご回答よろしくお願いいたします。
JavaScriptはシングルスレッドなので、マルチスレッドをサポートしているプログラミング言語を勉強してみましょう。
と言えます。
言えますが、おそらくこの回答はクリティカルなものでは無いと思います。
もしあなたが本気で「なんの言語を学習すればいいか悩んでいる」ならクリティカルな回答になりますが、本質はそこじゃないと思います。
ゲームを作る、ソフトウェアを作る、生産性を向上させる、
何となくそういうことが目的であるならば実際にそれを使ってみることがスタートラインです。
ゲームプログラマを目指したいし、勉強する時間も体力も余ってるけど、何をしたらいいのか分からない。。。
というのであれば、例えばマリオをプレイしてみてください。
マリオをプレイして、ここはどうなってるんだ?これはどうやってるんだ?と疑問を持ってください。それを解決する作業が「何を学ぶか」の答えになります。疑問は十人十色で千差万別です。
サイト制作に興味があるならたくさんのサイトを見てみてください。不便だと思った時、ここを変えたいなと思った時、実際にプログラミングを勉強することが出来ます。
ポータブル版ってなに?インストーラってなに?
何がユーザーにとってエントリポイントなの?そこまで行くのに、何をしたらいいの?と疑問を持ってください。
OSやプロトコルなど、あなたにとってプログラミング言語よりももっと複雑で難解でそれでいて基礎中の基礎でありながら本質的な部分にぶち当たるでしょう。
基礎ができたとしたら、マルチプラットフォームなどモダンな環境にも興味関心を向けるといいでしょう。
そういう意味では JavaScript の Web Worker を勉強して JavaScriptのマルチスレッドに手を出すのも手ですね。
C#やjavaをイメージして回答したのですが...
学習面での話で言うと、JavaScriptのWeb WorkerですとAPIの方に関心が向きそうです。
APIやインタフェースに十分理解があれば良いでしょうが、質問者さんの場合、遠回りかも知れません。
どういった意図でご返信されたのかを明らかにして下さればもう少しご助力できるかもしれません。
(そもそもとしてプログラミング言語は何か触ってみて興味関心を持った後に後追いで選べば良いだろうという意見なので、JavaScript前提でのご返信はレス先を間違っているかもしれません。また、JavaScriptはシングルスレッドを大前提としていますので、C#やjava特有のUIスレッドでの高負荷処理によるミス、ハードウェアの知識というのは身につかないでしょう。その点においてもWeb Workerを勉強という話題がコンテキストにマッチしていないと思います。)
@MORO-YOSHI
Questioner
なるほど、まずは興味や疑問を持つことが大切なのですね。
ご回答ありがとうございます!
皆さんからのご回答を十分な量いただきました、本当にありがとうございました!
結果、C#を学習してUnityでゲーム制作をすると決めさせていただきました!
C#を勧めてくださった方、それ以外にもプログラミングに役立つことや大切なことを教えてくださった方、ありがとうございました!
Great question, and you're already off to an amazing start by learning HTML, CSS, and JavaScript in your teens!
Here’s the thing: you don’t need to wait until you know HTML, CSS, and JavaScript 100% before learning something new. Nobody really knows them 100% — even experienced developers keep learning more every day.
Since you already have a good base, I’d suggest learning a programming language that can take you to the next level.
Here are a couple of good choices:
So, in simple words:
👉 No, don’t wait to “know everything” about HTML/CSS/JS.
👉 Yes, keep practicing them while learning a new language like Python or something like Node.js, which builds on what you already know.
@MORO-YOSHI
Questioner
I learned for the first time that I don't have to wait until I understand everything about HTML
Thank you for your answer!
簡単なところから進めるならPythonです。一般的に小規模なプログラム作るのに向いていて、簡単なゲームがつくれる機能(pygame)もあります。
少し難しいことにチャレンジするなら、C#です。Unityにも使われている言語で、WEBでも使えます。バックエンドの中では、比較的初心者におすすめの言語です。
個人的にはフロントエンド言語しか経験がないようなので、Pythonをおすすめします。
人気の言語で、解説多いですし、すぐにアウトプットが出てくるものが多いので楽しいかと
@MORO-YOSHI
Questioner
どちらの言語もやっぱり大事ですよね、ご回答ありがとうございます!
やりたいことがゲーム制作であるなら、Unity
とかじゃないですかね?
あるいは現状の知識を活かしてWebアプリでゲームを作りたいというのであれば、Node.js
やDeno
といったサーバサイドJavascriptに触れてみるというのもいいのではないでしょうか。
なんにせよHTML,Javascript,CSSが大体分かっているのなら、もうゲームを作れます。
まず作りたいと思っているものを完成するまで作りましょう。
多分作っているうちに、自分に足りないものが何か分かってくると思います。
そうしたら、それを学べばいいんです。
@MORO-YOSHI
Questioner
自分に足りないものを探してみることにします。
ご回答ありがとうございます!
こんなの作ってみたい!
をスタートにする方が良いと思います。
blogを作ってみたい、こんなウェブサービスを作ってみたい、こんなツールを作ってみたい、こんなbotを作ってみたい・・・
私はいわゆるプログラマーではないのですが、作ってみたい、興味、好奇心から、discord bot、blog、動画ツールを作成しました。
その中で、Python、typescript、C#、C++を触りました。
どれも全くの初見でド素人でしたが、QiitaやZennの記事や、最近ではWindows copilotの力も借りて、なんとか形にできました。
全くわかってないことも多いですし、未だにできないこともたくさんあるのですが、これを作りたい!というモチベーション(動機付け)は強力ですよ!
@MORO-YOSHI
Questioner
やっぱりモチベーションや目標は大事なのですね。
ご回答ありがとうございます!
何をしたいのか、どのようなアプリを作りたいのかを書きましょう。
@MORO-YOSHI
Questioner
将来のため、サイト制作やexeファイル、ゲーム制作など多様なものを作りたいと思っています。
1つに絞るとしたらゲーム制作です。
1つに絞るとしたらゲーム制作です。
C# 言語で作る Unity を検討してみてはいかがですか?
@MORO-YOSHI
Questioner
調べてみたらすごく面白そうでした!
頑張ってC#を勉強していつかUnityができるようになりたいと思いました、ご回答ありがとうございます!
変化の速い世界なので「将来どういったものが役に立つか」はあまりあてになりません。
だからやりたいことがはっきりしていない状況なら、自分が興味を持てるもの、動かしてみる環境をお金をかけずに用意できるものを探してみるといいのではないでしょうか。
@MORO-YOSHI
Questioner
なるほど、ご回答ありがとうございます。
興味を持てるもの、探してみます!
軽く何か 静的サービス(静的ファイルだけで作成するサービスのこと) でも作って github page に host してみてはいかがでしょうか?(言語理解も深まると思います。
そういう意味では github action とかいいかもしれませんね。
@MORO-YOSHI
Questioner
なるほど、そういう学習の仕方もあるのですね。
ご回答ありがとうございます。
何を学習すればいいか教えてほしいです
何をしたいのか不明なのでアドバイスは難しいですが、数学(線形代数、微積分、幾何学)を勉強するとプログラミングと合わせて将来役に立つ可能性が高いかと思います。
プログラミング言語であれば強い型付けやコンパイルが必要な言語を学んでみるのが良いかと思います。
@MORO-YOSHI
Questioner
数学ってプログラミングにおいて結構大事なものなのですね…
プログラミングも頑張りながら、数学の勉強もしてみたいと思います!
ご回答ありがとうございます!
ゲーム制作に興味があるとのことなので・・・「ゲーム 数学」で検索すると色々出てきます。ゲームの種類にもよるとは思いますが、シューティングゲームの当たり判定とかカードゲームの確立の計算とかに数学は必要だと思います。ライブラリがあると思うので一から全てを実装する必要はありませんが物理学の基礎くらいは必要かもしれません。