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

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

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

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

C++

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

Q&A

解決済

8回答

2431閲覧

新しい言語の勉強方法

akamakku

総合スコア191

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

C++

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

0グッド

7クリップ

投稿2015/11/12 06:23

編集2015/11/12 12:47

みなさんはプログラミングを勉強する際にどんな方法でしましたか?

自分はとりあえず本を買ってきて、頭から読みながら演習をするという、まじめなというか、つまらない方法でやっているんですが、、

このサイトなんかを見ていると、webサイトだけで習得したとか、「勉強」は特にせず、基本を押さえてものを作る段階で調べながら習得したとか、さまざまで、、

結局どうするのがいいのかなと悩んでいます。

Java(Android)、C++を習得したいです。

皆さんのご意見お待ちしています。

追記)
情報不足でした…
僕は工業系の学校で情報を勉強している学生です。
Cは5年ほどやっていて、1通り習得したつもりです。(この秋の基本情報はCを選択して勝手に合格を確信しています(笑)
Javaは実験でGUIアプリをなんとか作った程度です

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

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

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

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

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

guest

回答8

0

例えば、
「Java経験が10年あります」って人が「C#をやろう」と思ったら本なんか読まずにツラツラ書けてしまいます。
でも、「Java経験が10年あります」って人でも「Cをやろう」と思ったらある程度は調べないといけないし時には本を買うこともあるでしょう。

私はJavaはわかるけどAndroid開発はわからない。なので入門だけWEBで見て後は本を買うでしょう。
基本はわかるとしても、細かいところはわからない。

結局どうするのがいいのかなと悩んでいます。

1)本を読んで演習を行なって数をこなす。堅実であり確実。

2)既存のソースをひたすら読む。最近はgitとかあるし。超便利。

3)teratailで「こういうソース書いて!」ってお願いする。冗談ですよ。

4)仕事で放り込まれたら泣きながらどんな手段を使ってでも覚えるので、そういうのも有りかな。

人それぞれだし、風呂の中で本を読むほうが覚えられる人もいればスタバの机じゃないと効率が上がらないって人もいるでしょう。

自分はとりあえず本を買ってきて、頭から読みながら演習をするという、まじめなというか、つまらない方法でやっているんですが、、

つまらないと言うけれど、それができるのが一番良いです。
私は「最初はわかるから!」といってすっ飛ばして10ページ後で躓く人を何人も見てきたので、頭から読んで演習できる人は伸びると知っています。

投稿2015/11/12 06:44

anonymouskawa

総合スコア856

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

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

akamakku

2015/11/12 12:58

回答ありがとうございます! 3)←冗談で安心しました(笑) gitあまり使ったことがないので試してみます!
guest

0

ベストアンサー

習得の順番について

個人的には、Java や、C++ 等の、高機能な言語をいきなり勉強するのは得策ではないような気がします。
進む方向にもよると思いますが、方向によっては極めようとした時に、壁にぶつかる気がしています。
個人的には、Cやアセンブラ(さすがに今はこれは無理かな?)などの低機能な言語で、基本的な言語とプロセッサの動作を理解してからの方が学習し安いと思います。
Cを習得後にJavaやC++を勉強するのは、足し算の後に掛け算を勉強するようなものです。感の良い人なら数日~数週間程度でそれなりのレベルになれるでしょう。いきなり、javaやC++を始めるのは、足し算をすっ飛ばしていきなり掛け算を勉強するようなものに思えます。

習得のしかたについて

なにがしか、自分の興味が持てそうなものを題材にして、とにかく自力で調べてコードを書いてみる事です。以下、自分や後輩が言語習得や、OS環境の習熟のために使用したテーマです。
・ストップウオッチ、アラームタイマ
・テトリス
・オセロ
・倉庫番
パズル系は意外に簡単?(笑)

追記

・数独
・ロジックパズル

投稿2015/11/12 10:07

編集2015/11/12 13:14
T.Kanno

総合スコア915

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

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

akamakku

2015/11/12 12:51

回答ありがとうございます! 情報が不足していて申し訳ありませんでした。 追記したとおりCはそこそこ習得していまして、 実は、、、 アセンブラも実験でやったし、授業でパソコンの中身の話もやっていて、まあまあわかるので勉強はできそうです! なので、T.Kannoさんの回答で飛び跳ねて喜んでいるところです(笑) パズル系は自分で解くのも好きなので、作る方もやってみたいとおまいます!!
T.Kanno

2015/11/12 13:16

題材を追記しておきました。(笑) 解けないパズルに頭にきて! と言うもの学習の動機としては面白いですよね。
akamakku

2015/11/12 14:53

数独やオセロは頭にあったのですが、倉庫番は盲点でした! パズルを作りつつ、解く方のアルゴリズムなんかも勉強してみます!!
guest

0

始めてコンピュータ言語を勉強するならお金がかかっても有償研修を使う。
今まで使っていたコンピュータ言語と似た思想の言語ならインターネット検索と書籍でできるかも?要努力。
趣味でプログラミングするなら、インターネット検索や書籍で勉強しても良いかもしれないが、業務でそれなりのお金をもらって仕事をするなら、職場にサポートしてくれるコンピュータ言語の熟練者がいなければ、やはり有償研修が必要。
COBOLなど汎用機のコンピュータ言語を使っていた人が全く思想が違うオープン系の言語を使うにはやはり有償研修が必要。

3)teratailで「こういうソース書いて!」ってお願いする。冗談ですよ。

わたしのテリトリなら有償で。爆
teratail にこの手の有償サービスがあっても良い。

投稿2015/11/12 07:29

Orlofsky

総合スコア16415

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

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

anonymouskawa

2015/11/12 07:33

プロフィール拝見しましたが、興味深い分野を特技とされていますね! DBの論理物理設計&パフォーマンスチューニングならお金払ってでも識者に学びたいです。
Orlofsky

2015/11/12 09:06

無料で使用期限のないOracle Database Express Edition(以下 XE, Standard Editon相当)がいまのところOracle11.2.0版のみが http://www.oracle.com/technetwork/jp/database/database-technologies/express-edition/overview/index.html で公開されています。Oracle SQLの入門の勉強にはこれで十分でしょう。 Oracleの日本語マニュアルは以下に無料で公開されています。 http://www.oracle.com/technetwork/jp/indexes/documentation/index.html [Oracle 入門]といったキーワードでググるとかなりの情報が拾えます。 DBの論理物理設計&パフォーマンスチューニングは簡単には教えられません。キーワードでググるとそれなりの内容を調べることはできますが、できればOracle社の有償研修に行かれた方が良いです。わたしが教えるならいっしょに仕事をする必要があります。
akamakku

2015/11/12 12:55

回答ありがとうございます! いま情報な学生で、ある意味有償研修中のようなものなので、今のうちにめちゃくちゃ勉強します!!!
guest

0

どんな背景(知識や経験)を持っているか、どんな目的で学ぶか、どの程度の期間で身につける必要があるか、もちろん懐具合によっても違って来ると思います。本人の性格によっても異なってくるでしょうし、それと忘れてならないのは、対象とする言語による違いもかなり大きいと考えています。
つまり、人それぞれですね〜。だからこそ、こういう場でいろいろな方のご意見を拝聴することに意義があるのだと思いますが。

さて自分の場合について少し書きますと、
若いころは、取り敢えず良さ気な参考書を入手して最初のページから順番に読み、演習問題をやっていたように思います。
しかし、現在はWeb上に情報が溢れているせいもあり、まずはWebで入手した情報である程度学習してから、必要があれば書籍を購入する(あるいは図書館で借りる)ようにしています。

いま振り返ってみると、Webから得られる情報は年々重要性を増しているように感じます。と言うのは…

  • 学ぶべき技術の分野が益々幅広く、かつ細分化されて来たため、全てを書籍で学ぶのは大変(金銭的にも)
  • その一方で、Webから得られる情報が、量・質ともに年々充実度を増している(玉石混交なので情報の洪水に流されないよう注意も必要だが)
  • 技術の進歩が速く、新しい技術の場合は書籍化が間に合っておらずWebに頼るしかないものも増えている
  • 書籍の種類も豊富になり選択も大変なので、ある程度予備知識を得てから選んだ方が間違いがない
  • せっかく高価な書籍を購入しても、本当に必要な部分は一部だけの場合も多い(というよりも一冊の書籍をじっくり学んでいる時間もない?

ただし、情報の入手方法がどうであれ、実際に手を動かし物を作ってみなければ身に着かないという点は変わりないと強く感じています。しかも趣味でタラタラやっている場合と比べると、なんといっても仕事上必要に迫られて取り組んだ場合では、理解の幅も深さも比較になりません。

どんな情報であれ、実際に使える形できとんと身に着けるには、積極的にアウトプットして何らかのフィードバックをもらうことが一番重要だと思います。そういう意味では、こうした質問サイトなどで積極的に質問・回答を繰り返すというのも良い学習方法だと思っています。

投稿2015/11/12 13:32

pi-chan

総合スコア5936

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

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

akamakku

2015/11/12 14:50

回答ありがとうございます 実際にものを作ってみたいと思います!
guest

0

人それぞれな部分が大きく、他のプログラミング言語を知っているかどうかによっても違うかもしれません。

私の場合ですが、本はリファレンスくらいにしか使わずに、ひたすら悩みながら自分が作りたいプログラムを作ってみます。悩んだ分だけ覚えますし、本の内容を一からなぞるような受身な学習になりません。

習うより慣れろ。
プログラミング言語を習得するときによく聞く言葉です。

ちなみに言語以外の本はちゃんと読むものもあります。

投稿2015/11/12 08:56

kazzzstudio

総合スコア94

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

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

akamakku

2015/11/12 12:53

回答ありがとうございます! 習うより慣れます!!(笑)
guest

0

とにかくコードを書くことが重要です。
本を読むこともとても重要ですが、実践しない知識は意味がありません。当日中に実際に使ってみるといいでしょう。

Androidの場合はコーディング→起動→成功・失敗までのサイクルをとても短くすることができます。「理想に向けてとにかく繰り返し、失敗したら調べる」を続けることで習得できます。

また、ある程度慣れてくると、綺麗な書き方や効率等の向上を目指すといいでしょう。

投稿2015/11/12 07:18

yona

総合スコア18155

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

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

akamakku

2015/11/12 12:56

回答ありがとうございます! 実践大事にしたいと思います!
guest

0

未経験からWebプログラマーになる...
って案内が来た。受講もできるし、やる気があれば講師にもなれる。

投稿2015/11/12 22:53

Orlofsky

総合スコア16415

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

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

0

私もyonaさんの意見に賛成です。
自分が作っていて楽しいと感じられるソフトを作るのがベストと思います。
オブジェクト指向言語を経験していれば、Javaの基本を習得するのにたいして時間はかからないので、どちらかと言うとC++の方に注力するとより力が着くと思います。
画像処理に興味があれば、WEBカメラを買ってきてOpenCVでARってなかなか楽しそうですよ。

投稿2015/11/12 07:43

Chironian

総合スコア23272

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

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

akamakku

2015/11/12 12:54

回答ありがとうございます! ARなんて出来たらかっこいいな~~~というレベルですまだ(笑) がんばります!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問