Cからの移行

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

Cからの移行

#1

投稿記事 by ひろゆき » 18年前

はじめてこのHPを拝見しましたひろゆきです。僕は高2で、今大体のC言語を勉強し終わった(入門書を勉強修了した)のですが、あまりCの企業での需要は少ないと聞いたのでC++かJava(特にJava)へ移行したいのですが、JavaはCの影響を受けていることは大体知っているのですが、今Javaへ移るべきか、もう少しCを極めてから(C++へいってから)Javaへ移行するべきか迷っています。どうすればいいでしょうか?将来はSEになりたいのです。

大工

Re:Cからの移行

#2

投稿記事 by 大工 » 18年前

C言語はとっても深いですよ!!printf();だけでも色々ありますから。C言語の入門書 → 応用編 → ポインタ → アルゴリズムって感じで勉強してみたらどうでしょう?そこからC++ Javaに進んでみては?いまは企業よりプログラミングを楽しんでみましょう

Justy

Re:Cからの移行

#3

投稿記事 by Justy » 18年前

あまりCの企業での需要は少ないと
 そうでもないです。
 業種によっては、Javaの需要が皆無な方面もあります。
 結局入った会社・業種によって変わってきます。
 それにひろゆきさんが就職する頃にはまた状況は変わっていると思います。


今Javaへ移るべきか
 幅広くやっておくことに超したことはありませんが、
まだ就職まで長いのでこの際、1つの言語を極めておくのが得策だと思います。

 1つ言語をきちんと修めたのなら、2つ目、3つ目の言語は驚くほど
あっという間に覚えられます。
 焦らず自分のペースで1つ1つ足固めをしていった方がいいでしょう。

ひろゆき

Re:Cからの移行

#4

投稿記事 by ひろゆき » 18年前

わざわざ返答ありがとうございます。いろいろな言語に興味を持ってしまい、気持ちがゆらいでいました。みなさんの言うとおりCを極めてみます。ところで、Cを極めるといっても自分で考えてもっと実用的なことをしたいのですが・・・。マイコンなども興味あるのですが・・・。とにかくもっとソースコードを見て(解析)したいのです。

今持っている本は、

C言語によるプログラミングースーパーリファレンス

プログラミング作法

たのしいC(柴田氏の著作)

です。アルゴリズムを学ぶ上での本やその他のおすすめの本を教えてください。

Justy

Re:Cからの移行

#5

投稿記事 by Justy » 18年前

Cを極めるといっても自分で考えてもっと実用的なことをしたいのですが
 入門書を読了した段階でしたら、読むより書くことを重視した方がいいでしょう。
 言語の基本を正しく理解する為にもある程度本格的にたくさん書いたいた方が
より理解が深まると思います。

 何か実際に作ってみてはどうですか?
 自分が欲しいと思っている(でも世の中に存在しない)ツールとか。
 或いは適当に課題・目標を設定してそれに挑戦するのもいいかと思います。
 とにかく手を動かして1行でも多くのコードを書いてみて下さい。




アルゴリズムを学ぶ上での本やその他のおすすめの本

 アルゴリズムならこのあたりでしょうか。

新版 C言語によるアルゴリズムとデータ構造
http://www.amazon.co.jp/dp/4797331631

C言語による最新アルゴリズム事典: 本: 奥村 晴彦
http://www.amazon.co.jp/dp/4874084141


 後者は
http://oku.edu.mie-u.ac.jp/~okumura/algo/

 からソースがDLできます。


 あとお勧め書籍はformz.cgi?action=res&resno=6623&page=&l ... 72&vino=52に書いてあります。

管理人

Re:Cからの移行

#6

投稿記事 by 管理人 » 18年前

私は基礎も出来ていない頃から(今もそうですが・・)プログラムコードを書いてばかりいました。
参考書を読んでちまちまやっていくより、自分の興味あるものを作りながら勉強していくスタイルが私にはあっていました。
私はゲームを作るのが好きなので、ゲームを作りながら、「ここはもうちょっと効率よくかけるのでは?」という疑問が出てきたり、
「敵の弾幕はどうしたらきれいにかけるのかな?」という疑問からベジェの書き方を勉強したり、
作っている中で色々勉強していきました。
「勉強」と思ってやっているものと「趣味」と思ってやっているものは天と地ほどの開きが出来ると思います。
何に興味がおありかわかりませんが、ウィンドウズプログラミングを勉強してツールを作ってみたり、ゲームプログラムを勉強してゲームを作ってみたり、自分の興味あるものを一つ作ってみることも大きな勉強になると思いますよ。

柴田氏の本はいいものが多いですよね。私は明解C言語には何度も助けられました。
入門編と実践編があるので、よければ参考にしてください。

ひろゆき

Re:Cからの移行

#7

投稿記事 by ひろゆき » 18年前

僕は将来、高度なソフト(オフィスで活躍するようなソフト)を作りたいのです。あるところではJavaのほうがC++よりもいいといわれ、ここではCのほうがいいという返信がありますが、、、結局はどうすればよいでしょうか???

バグ

Re:Cからの移行

#8

投稿記事 by バグ » 18年前

結局は好みの問題じゃないでしょうか?
個人的な意見ですが、さまざまな言語がありますけれど、ほとんどの言語はC言語やC++に似ているように思います。ですから、C言語を勉強しておいて損をする事はないでしょう。
逆に言えば、どれか1つでも極めてしまえば、他の言語への移行もそれほど難しいものではないという事にもなりますよね?

Justy

Re:Cからの移行

#9

投稿記事 by Justy » 18年前

あるところではJavaのほうがC++よりもいいといわれ、ここではCのほうがいいという
 C/C++がいいのか、 Javaがいいのかは人に勧める場合、非常に悩むところです。
 人によって意見はまさに真っ二つに分かれるでしょう。
 どちらも利点と欠点を含んでいるので個人的には両方やりましょうと言いたいところですが、
どちらか?と訊かれるとどっちでもいいと思います。
 先にも書きましたが、1言語を覚えれば後の言語の習得は非常に短期間で済みますから。

 それにまだ就職されるまでにまだ何年もありますよね?
 移り変わりの激しいこの業界、ひろゆきさんが就職された会社で(6年後くらいでしょうか?)、
どんな言語が使われているかなんてわからないわけですし、ひょっとしたら現在の主流言語の
主な仕事が過去の資産のメンテナンスだけしかなくなっている、なんてことがあり得るわけで。

 であれば焦らないでとりあえず1つの言語をきっちり覚えるという意味で、
既に C/C++に着手しているのであればそれをある程度追求してみるのが手だと思います。

 で、C/C++で覚えることはもうない、と思ったら次に(Javaとか)に移ればいいんです。


 本題からは若干外れますが
結局はどうすればよいでしょうか???
 結局は、プログラミングの本質を覚えましょう、ということです。

 重要なのは「言語」ではないんですよ。
 ざっくり言ってしまえば、Rubyだろうが、C#だろうが、Haskellだろうが何だっていいんですよ。

 重要なのはひろゆきさんがその言語を使って、何を作れるのか、どう作っていくのか・・・
一言で言えば「プログラミングセンス」なんですよ。
 それを磨かないことにはどの言語をやっても一緒です。


 あと、SEは直接プログラムを組むことなく、主に資金・人的リソースの管理だったり
システムの仕様・仕組みを考えるのが主な仕事となります。

 プログラミングをしながらどういう仕様にすれば、より便利になるか、コスト(時間・人)が
安くできるかを考えながらアプリ・システムを考え作っていくと勉強になるかと思います。

通りすがり

Re:Cからの移行

#10

投稿記事 by 通りすがり » 18年前

本当に“高度なソフト”を開発するためには、
1)ベンダー系 ニーズを予想してソフトを作る
2)コンサル系 クライアントに合わせたソフトを作る
のいずれかの上級職に就くことなります。通常は、2)のコンサル系の方が大規模です。
例えば、システムがダウンして大問題になった東京証券取引所の基幹システムがそうです。

そうなると、プログラミング言語うんぬんよりも、
ソフトウェア工学の中でも特に要求工学と呼ばれる分野を勉強する必要があります。
私は、学歴が全てだとは思いたくありませんが、
日本で大規模開発の上級職に就いている人たちは、旧帝大や有名私立出身の人が多いです。
小さな会社に入るか、日曜プログラマとしてVectorなどに出品したいのならば別ですが、
本当に上級職を目指すのなら、今は学校の勉強に専念することをお勧めします。

実際にプログラミング言語を使ってプログラムを書くのは、プログラマの仕事です。
プログラマは仕様書に基づいてプログラムを組むだけで、
それまで開発をしたことが無い文系出身者が多いのも事実です。
加えて、新しい技術や言語を覚える必要があるため、35歳定年説があったぐらいです。
(もちろん、スーパークリエータと呼ばれる人たちもいますが。)

それでも、勉強の息抜きにプログラミングをしたいということであれば、
個人的にはJavaを推薦しておきます。オブジェクト指向という観点では
C#の方が好きですが、JavaもTigerあたりから頑張っているので。

管理人

Re:Cからの移行

#11

投稿記事 by 管理人 » 18年前

個人のフリープログラマーとかじゃなく、
大規模になってくると、ソフトウェアを作るという作業は

「設計」なのか「実装」なのかで変わってきます。

「ソフトウェアの設計図を作る人」

「渡された設計図通りに実際に作る人」

ということですね。
前者においても、様々な役割があります。
まず、ソフトウェア開発の一番最初に位置する部分を「上流工程」といいますが、
最上流工程は、「人々はどんなソフトを求めているのだろうか?」という事を性格に判断する作業になります。
これは要求定義という工程です。
つまり、上流工程になればなるほど、実際のプラットフォームには依存せず、
どんな言語だろうと関係ない、
「○○というソフトを作ろう」
という意見を出すような役割になります。

よくわからなければもう少しお話いたしますが、どちらの方面に進まれる予定でしょうか?

ひろゆき

Re:Cからの移行

#12

投稿記事 by ひろゆき » 18年前

ありがとうございます。僕はいずれにしろ趣味でのプログラミング言語や仕事でのプログラミング言語を考えてませんでした。僕はプログラミングが趣味で使う言語はなにか?というのを聞きたかったのです。で、結局Javaを極めることにしました。Cはこれから進化していく仕事のベース(もちろんJavaのベースでもあります)の上での勉強、つまり通過点で習得したわけです。もちろん、Javaの勉強もCの影響を受けているのでCの復習はかかせないと自分でも感じております。つまり、仕事ではもちろんこれから普及していくPerlなどの言語ではまた改めて習得が必要であることはわかっております。まずは、Javaを勉強して趣味でのプログラムを作ってみます。矛盾する点がありましたら、ご容赦ください。

管理人

Re:Cからの移行

#13

投稿記事 by 管理人 » 18年前

C,JAVAはどちらも肩を並べる有名な言語ですし、どちらを学ばれても後悔はしないと思いますよ^^
JAVAはウェブでも活躍しますから、趣味での用途も広がると思います。

頑張ってください☆

ひろゆき

Re:Cからの移行

#14

投稿記事 by ひろゆき » 18年前

お忙しいなか、僕のつたない質問に対して時間を割いていただきどうもありがとうございました。これからも当サイトにてお世話になることがあるかもしれないのでそのときはよろしくおねがいします。

閉鎖

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