配属された現場でC++を扱っているのですが、、、

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
SuperBeginnerMAN

配属された現場でC++を扱っているのですが、、、

#1

投稿記事 by SuperBeginnerMAN » 7年前

配属先では開発言語がC++で、
並行して開発対象の評価なども行っている為、最初は評価ばかりです。
しかし、私はC言語もろくに習得できていません。
なので、C++の開発の前にCを習得しないといけないのか戸惑いながら
勉強をしています。

初心者の勉強の手順としておすすめのルートがあればご教授頂きたいです。

あとライブラリとかも自分用にコツコツ作成していったりするものなのでしょうか?
使わないとすぐに忘れてしまうので、中々勉強が進まなくて困っています…

sleep

Re: 配属された現場でC++を扱っているのですが、、、

#2

投稿記事 by sleep » 7年前

SuperBeginnerMAN さんが書きました: 配属先では開発言語がC++で、
並行して開発対象の評価なども行っている為、最初は評価ばかりです。
しかし、私はC言語もろくに習得できていません。
なので、C++の開発の前にCを習得しないといけないのか戸惑いながら
勉強をしています。
やれることだけやりましょう。
できないことを無理にがんばろうとしても必ず破たんします。

プログラミングに関しては勉強の量は底無しなので急ぐ必要はありません。
一度勉強した同じ基礎を何度も勉強し直すのは普通です。忘れて当然だと考えてください。
繰り返しているうちに身に付きます。記憶に頼るのは不可能だと思ってください。
情報量は膨大なので、覚えるよりもすぐ逆引きできるように辞書のようなメモを取りましょう。
そのメモをどのように管理するかが重要です。役に立たなければ意味がありません。

言語ですが、C言語は勉強しなくて良いです。
C++のみ勉強してください。
言語のキーワードも全部網羅する必要はありません。
他の人のプログラムを見て「便利そうだな」と思ったものや自分にとって必要になったものだけ使用すれば良いです。
templateという難しいものが存在しますが、現段階で自分で書く必要はありません。
STLというライブラリの std::string と std::vector という動的配列の2つを使用すれば大抵のことはできます。
std::string と std::vector以外はtemplateに自分から無理に関わる必要はありません。その2つの使い方だけ覚えてください。

大事なのは苦にならないことです。
好きこそものの上手なれ、です。続けられることがとても重要です。
続けていればいつか花開きます。
SuperBeginnerMAN さんが書きました: 初心者の勉強の手順としておすすめのルートがあればご教授頂きたいです。
日本の学校の勉強と違って、基本的に手順を追ったカリキュラムのようなものは無いです。
もし、そのようなものをお求めであれば、日本の技術書籍を参考にすると良いです。効率的な順序で勉強方法が記述されています。
日本の技術書籍は基本的に順を追って学習できるように、前から順番に知識が蓄積するように記述されています。
海外の書籍は1つ1つが詳細に記述された辞書のようなものが多いです。が、最近は日本の書籍のような記述をしたものも存在します。

インターネットは、詳細や細かい違いを知りたい場合に活用してください。

あと、自分が分からないところのみをテストできる小さなテストプログラムを書く癖をつけてください。
他社に質問する際にそのまま提出でき、要点をまとめるのが楽になります。また、自身も相手に説明しやすくなります。
SuperBeginnerMAN さんが書きました: あとライブラリとかも自分用にコツコツ作成していったりするものなのでしょうか?
使わないとすぐに忘れてしまうので、中々勉強が進まなくて困っています…
作る必要はないです。
すぐ忘れるのは気にしないでください。ただし、必要となる度に何度も勉強してください。
繰り返すうちに使用頻度が高いものは嫌でも覚えます。使用頻度が低いものを無理に覚える必要はありません。
どの道どちらも忘れます。そういうものです。すぐ思い出せるような準備をしておくことが重要です。

T1

Re: 配属された現場でC++を扱っているのですが、、、

#3

投稿記事 by T1 » 7年前

std::stringや、std::vector以外にも、
std::mapと、std::dequeもおさえておく方が良いように思います。
これらに加えて、<algorithm>ライブラリを併用できるようになると一気に便利になりますよ。

コマンドライン特化になりますが、
こんな勉強方法はいかがでしょうか。

プログラムを書くこと自体が初めてである場合、
ネット上にも存在するため、
ロベール著のc++入門講座をお勧めします。

それと併用しながら、Hackerrankというサイトに、
C++の仕様に特化した問題があるため、
それらで基礎力を身につけてください。

前提:上記に挙げたHackerrankのc++の問題を殆どこなせる技量が身についていること。
ピアソン・エドゥケーション社の書籍が効率よく学習できると思います。
ただテンプレートが題材になっているModern C++ Designに関しては、
テンプレートの読解に慣れが必要になる為、他の書籍をあたった方が良いように思います。

ただ、SuperBegginerManさんの場合、実用を目的としている為、
Hackerrankの問題をこなした後は、イディオムや、コンパイラの知識、
キーワードの詳細などを先に身につけた方が良いかもしれません。

春ですね

Re: 配属された現場でC++を扱っているのですが、、、

#4

投稿記事 by 春ですね » 7年前

他のプログラミング言語で習得しているものはあるということでしょうか。

一番手っ取り早いのは、同じチームの優秀そうな人に勉強法や、おすすめの本を聞くことだと思います。
聞くタイミングと質問内容さえ間違えなければ、勉強する意欲がある人に対しては親切に教えたくなるものです。
中には雰囲気の悪い職場もあるとは思いますが、自分の職場の雰囲気を推し量る意味でも、
まずは身近に質問できる関係を築けるかどうか試してみましょう。

C/C++ の文法を全く知らないというのであれば、C++ の入門書を一冊読破してみるのがいいと思います。
本屋で適当に立ち読みして、一ヶ月以内に読破できそうな文量で、自分に合いそうなものなら何でもいいでしょう。
目的としては、C/C++ に出てくる基本単語 (ポインター、クラス、テンプレート、STL、などなど) の
意味を知っておくことです。単語が分からないと、人に聞いたりネットで調べたりすることすらできませんので。

また、自分でプログラムをデザインしてコードを書く技術と、人の書いたコードを読んでロジックを理解する技術は微妙に異なります。
仕事で触ることになるソースコードをデバッグして、ロジックを部分的に追いかけられるようになる必要があります。
これによって、仕事で使う開発環境やツール類にも慣れることができます。

あと、仕事でコードを書くのであれば、英語への抵抗はなくしておいたほうが断然有利です。
分からない文法やエラーメッセージが出てきた時に、英語で調べられるようになっておくと
日本語でしか調べられない人よりも知識が広がりますし、高い評価に繋がると思います。

仕事を楽しめるようになるといいですね。焦らず頑張ってください。

アバター
usao
記事: 1889
登録日時: 11年前

Re: 配属された現場でC++を扱っているのですが、、、

#5

投稿記事 by usao » 7年前

職場に勝手に読んでいい言語の本とか置いてあったりしないものでしょうか.
存在するなら,まずはそういうのを合間に読むようにしてみたらどうでしょう.
オフトピック
仮に,書籍を調達せねばならない事態になるとしても,言語系の本は結構値段が高いので,
個人で買うのではなく,職場で経費で買ってもらえる方策を取ったほうがいいかも.
そういう意味でも,
>一番手っ取り早いのは、同じチームの優秀そうな人に勉強法や、おすすめの本を聞くことだと思います。
という感じにしておいた方がよいかも?

アバター
Dixq (管理人)
管理人
記事: 1661
登録日時: 13年前
住所: 北海道札幌市
連絡を取る:

Re: 配属された現場でC++を扱っているのですが、、、

#6

投稿記事 by Dixq (管理人) » 7年前

専門書に慣れていない最初のうちは「c++の絵本」のような
読みやすい本を読みながら自分で色々プログラムを書いてみるのがよいかと思います。
とにかくプログラムは書いて書いてかきまくるべし。
何か作りたいアプリやツールなどを目指すと目標があっていいと思います。

ライブラリ自作は別にやらなくていいと思いますが…。

返信

“C言語何でも質問掲示板” へ戻る