ここから本文です

某サイトを見ていたら、プログラミングで最初にCとJavaをやるのはおすすめしないと...

pap********さん

2019/3/923:21:06

某サイトを見ていたら、プログラミングで最初にCとJavaをやるのはおすすめしないと書いてありました。
最初に勉強しといていいプログラミングは、なんですか?

いずれCにステップアップするって言うのが前提です

閲覧数:
201
回答数:
8

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

あみやさん

編集あり2019/3/1008:41:54

プログラミングを勉強しようと思った場合、まずはプログラミングの考え方を学ぶ事から始めます。

プログラミングを学ぶというと○○言語入門的な本を最初に読みがちですが、
実はプログラミング言語を学ぶ事と、プログラミングを学ぶ事は、別なのです。
日本語の文法だけ知っていれば、小説が書けるわけではないように
プログラミングも言語を覚えただけではプログラミングは出来ません
なので、最初に学ぶ必要があるのはプログラミングの考え方についてです。

それらについては、例えばこれらの本が評判が良いようです。

改訂3版 これからはじめるプログラミング 基礎の基礎
https://www.amazon.co.jp/gp/aw/d/4297101181/
(まだ発売間もないのでレビュー等は旧版の方を参考に
https://www.amazon.co.jp/dp/4774137103/ )

プログラミング入門講座――基本と思考法と重要事項がきちんと学べる授業 https://www.amazon.co.jp/dp/4797383100/

これらの本はプログラミングの考え方の説明のための本で、それだけ読んでもプログラミングが出来るようには成らないのですが
各種プログラミング言語の使い方を覚えたあとで(言語の仕組みを理解する為にも)必ず役に立ちます。

1冊目の本のレビューの中にあった以下の文が非常に的確だと思います。
『購入を迷っている方に忠告しておきます。
これは本当に「基礎の基礎」です。
もしこの本1冊を丸暗記するほどに読み込んだところで、プログラムを組めるようにはなりません。

しかし、
「この本の内容が理解できていないとプログラムは組めません」

それほどまでに基礎の基礎の大切なことが書いてあります。
文系の方からよく聞く、
「プログラミングについて学習したいけど、何から勉強すれば良いのかわからない」という発言。
これです。この本の内容からです。

この本をしっかりと理解していれば、
これから先、プログラム言語を学んでいく過程で、
しっかりと頭で理論を組み立て理解することができると思います。』


その上で、言語に関してですが、C言語というのは、大昔に作られた言語なので、作りがかなり古臭いのです。
車で言えば、物凄く初期の自動車でとても一人では、運転できず、
車自体の操縦を行う運転手とは別に、エンジンの状態を管理する助手が必要だった時代というぐらい古臭くて
何から何まで、プログラマーが全ての状態を自分で管理し把握していないと、簡単に暴走してしまう
危なっかしい言語なのです。
なので、他の言語を学んだ後からでも、C言語に手を出す事を、「ステップアップ」と言えるかどうかすら、かなり微妙です。
余程の必要がなければ、C言語は今更わざわざ手を出すこともないかな、と。

一方、Javaはそれに比べると遥かに現代的な言語です。
低レベルなメモリ管理に神経を尖らせる必要もありませんし。
最初に書いた基本が理解できていれば、そんなに難しくもないと思います。
というより、基本が出来ていればJavaでも既に書かれているRubyでも、最近話題のPythonでも、表現できる事に大きな違いは無いです。(表記の好き好きや用途毎の得手不得手はありますが)

あと、プログラミング言語は宗教のようなもので、それぞれに熱狂的な人達がいるので、
何が良いかって話は、コレコレこういう理由で自らの信じる言語こそが素晴らしい!という人達が現れてよく揉めますw
目的や用途が限定されていれば、かなり絞り込まれたりするんですけどね。

質問した人からのコメント

2019/3/14 20:10:32

Rubyの勉強はじめました

ベストアンサー以外の回答

1〜5件/7件中

並び替え:回答日時の
新しい順
|古い順

プロフィール画像

カテゴリマスター

n2q********さん

2019/3/1010:15:24

【最初に勉強しといていいプログラミングは、なんですか?】

C# です。Java でも良いと思います。


【いずれCにステップアップするって言うのが前提です】

というと…


C 言語から離れると C 言語に戻ることは難しくなるとお考えいただいた方が良いように思います。質的に他の言語と異なるところがありまして、C 言語をやるのであれば、初めからやっておかないと大変かも。

ただ、C 言語をやる必要があるのかどうかというところもあります。通常、やる必要は無い筈です。

him********さん

2019/3/1009:54:06

C使う予定なら最初からCで良いかと

2019/3/1009:53:04

「Cにステップアップ」というのに激しく違和感があるのだけど...

その前提が妥当なのかの検証をちゃんとした方がいいと思います。間違った前提で走り出したら変な場所にたどり着いてしまうでしょうから。

「某サイト」ではわかりませんが、JavaはともかくCは、「今後一生使わない」という前提で論を展開していたりしませんか? だったら、あなたとは「前提」が違うのです。本当にCが一つの目標だというのなら、他人のおすすめなんか無視して最初からCを始めればいいと思うのですけれど。

yam********さん

2019/3/1009:17:51

>いずれCにステップアップする

PCでカチャカチャ文字ベースでやっていてもモチベーションは上がらない。

電子工作でもやってみては?

マイコン使ってLED光らせたり、モータを制御してロボット作ったり。

目に見える結果があるというのは励みになるよ。

マイコンなら、選択肢はC言語オンリーと言っていいけど。

(オレはBASIC使ってるけど)

プロフィール画像

カテゴリマスター

原沢信道さん

2019/3/1009:03:09

プログラミング言語はどれもそれなりに難しいので、最初に勉強すべきプログラミング言語は特に有りません。何をしたいかが決まっている場合はそれに一番適したプログラミング言語を選びます。決まっていない時はC言語でもJavaでも構いません。一応、C言語は、UNIXと呼ばれるOSの移植性を高める為に開発された言語です、OSを作れるくらいですから、限りなく機械語に近い言語ですので、どんなニーズのプログラミングにも柔軟に対応出来る物です。一方、JavaはOS上ではなくJavaVM上で動くソフトでJavaVMが動くOSで有れば、どのOSでもC#同様に同じプログラムで動かせます、尚、Oracleがバージョン11から有償サポートに切り替えたので、今後企業の採用は減ると推測されます。将来C言語を勉強したいのであれば、最初からC言語を勉強される事をお勧めします。

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる