
高校生です。将来プログラミング関連の仕事に就きたくて、勉強を進めています。
とりあえず、c言語のポインタと構造体、c++のクラスの継承からテンプレートまで一通り勉強しました。
ここで次向かうべき目標を見失っています。
実践で通用する技術を養うために必要な知識は何なんでしょうか。
将来は企業に就職し、知識を蓄えたあと、フリーランサーになるのが夢なのですが...
やりたい仕事は、やはりOS上で動くソフトウェアの開発です。ハードウェア知識が絡んだりする組み込み系はあまり興味がありません。
スマートフォンアプリの開発に一番興味があるんですが、開発環境を手に入れるために8400円/年かかると聞くので(iPhone)、もっと確かな開発技術を手にしてから手をつけたいと考えています。
オンラインゲームの開発に携わるのにも興味があります。
業界にはあまり詳しくないので、是非経験者の方、お話を聞かせてください。
ちなみに、諸事情で情報系の大学には行くことは出来ないです。
No.4ベストアンサー
- 回答日時:
将来高級エンジニアになりたいのであれば、色々なプログラミング言語に触れてパラダイムを学ぶと良いと思います。
* 静的型付け言語 / 動的型付け言語
* クラスベースオブジェクト指向 / プロトタイプベースオブジェクト指向
* 手続き型言語 / 関数型言語
など色々あります。
最近は 動的型付けクラスベースオブジェクト指向言語 (Ruby, Python など) と 静的型付け関数型言語 (Scala, Haskell など) が流行です。
これらはWeb開発用フレームワークを用いることで簡単にwebアプリを作ったりできるので、目に見える成果物を作りやすくおすすめです。
また、スマホのアプリ開発に興味が有るのであれば、Java、Objective-C、JavaScript あたりの知識が必要になるでしょう。
他にもLisp系の言語は最低一つは触れておくと良いと思います。
また、
* アルゴリズム・データ構造と計算量
* デザインパターン
* 開発手法 (ウォーターフォール、アジャイルなど)
なども学ぶと良いでしょう。
これらを知っているかどうかで開発効率に雲泥の差が出ます。
最後にどんなプログラムを書くかといったことですが、特にやりたいことがないのであれば、プログラミングコンテストの問題を解いてみるのをおすすめします。
また、なにか好きなゲームなどがあれば、それを真似して作ってみるのもよいでしょう。
ある程度知識をつけたら俺々プログラミング言語を作ってみるのもよいかもしれません。
知らない単語ばかりで自分の知識の無さを再確認しました。Lisp系言語は興味がありませんでしたが、必要ならば学んでみたいと思います。
その他、たくさん学ぶべきことがあるみたいなので、頑張ってみます。
ご回答ありがとうございました。
No.3
- 回答日時:
iOSの有料開発会員は、$99なので、今は、1万するんじゃないかとおもいますが、これが、必要なのは、実機での実行であって、シミュレータでの実行の場合は、無料会員で、実行は、できます。
だから、Objective-Cや、iOSのApp開発を学ぶのには、有料開発会員でなければ、ならない必要は、ありません。No.2
- 回答日時:
実力を付けるなら
・アルゴリズム
・データ構造
・オブジェクト指向
といった、プログラムの元になる考え方の勉強ではないでしょうか。
例えば
「doubleを要素とする双方向リスト」と聞いて、プログラムの一部でも思い浮びますか?
どんなときに「継承」を使うか、あるいは、使うべきでないか、といったことも学ばれたのでしょうか?
「ポインタと構造体」「クラスの継承からテンプレート」などは、有効に使えば便利ですが、使い方を間違えるとプログラムを難しくするだけのものです。
有効に使うにはどうしたらいいか、というのを学ぶのがよいと思います。
あとは、実践です。
プログラムを沢山作りましょう。
ここの、他の質問を見て、自分だったらこういうプログラムを作る、というのを考えるのもよいでしょう。
この回答への補足
そうなんです、学んだ技術の有効な活用法を知る方法を探してるんです。
継承も、テンプレートも、簡単な活用法しか思いつきません。
こういったものはやはり経験で身に着けるしかないんでしょうか?
あと、双方向リストはクラスの要素に前後ノードへのポインターを作って接続する以外に方法はあるんでしょうか...
No.1
- 回答日時:
自分の経験談だけ。
私は業界に入ってからですが、新人の頃は仕事とは別に
毎週何か1つ機能を持ったアプリをJAVAで作っていました。
1週目はシンプルなアプリを作り、2週目はそれに1つ機能を足していく・・・
といった感じです。
繰り返しやれば、コーディングもなれますし。
毎週機能拡張すれば、拡張しやすい汎用的な作りも(ノリを)何となくわかりますし。
JAVAで基本的に概念やノリをつかめたら、
JAVAがCになろうが、C#なろうが潰しが利きましたよ。
今のうちに、色々作ってみて、
一番作っていて楽しい方向に進んでみればよいのでは?
スマフォなら、Andoroidから初めて見れば無料でできますよ。
最初に簡単なものを作って、拡張していくというのはとても身になりそうですね!
それならば挫折することも無さそうですし、プログラムの最適化の経験もつきそうです。
ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 大学受験 専門学校の志望理由書について自信が全く無くて…添削してください。 「 私は将来、IT企業の第一線で活 3 2022/10/11 01:12
- 書類選考・エントリーシート 【急ぎです】指定校推薦の志望理由書の添削お願いしたいです! 商学部で1600字中1595字です 志望 1 2023/08/24 02:54
- その他(自然科学) 科学技術計算の仕事について 2 2023/02/04 18:09
- 新卒・第二新卒 職場の悩み 2 2022/06/06 08:52
- その他(就職・転職・働き方) 大学で学んだ専門分野の勉強は仕事で使いますか? よく「仕事に必要なことは会社に入ってから学ぶ」「大学 2 2022/04/09 04:23
- 経済 日刊工業新聞の活用方法について ( ´ー`)y-~~ 1 2023/07/01 10:14
- 就職 就活に関して 2 2023/02/13 21:46
- 就職 こんにちは 将来パン屋を開きたいと思っています そこで、進路に迷っています 現在、高校卒業して1年目 7 2022/09/11 20:29
- IT・エンジニアリング IT企業で働くには、興味関心がないといけないのか? 2 2023/07/22 03:29
- その他(プログラミング・Web制作) 次に、楽天のアジャイル就活に参加して、1日で内定を獲得できる。私は大企業に就職できる? 2 2022/04/17 13:38
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
オブジェクト指向について
-
文字列に半角スペースがあるか...
-
WebLogicによるデバッグについて。
-
ファイルアップロード時の文字...
-
.NETについて
-
Mac、Javaのライブラリ追加場所...
-
JAVAを使って管理システムを構...
-
eclipseでtomcatを使うには
-
この便利な時代に開発環境すら...
-
PowerBuilderの知識が必要です。
-
今でも、TomcatとApacheの連結...
-
webアプリケーション開発でおす...
-
vba クリップボードクリアにつ...
-
JSPファイルで生じるエラーをど...
-
gitでバージョン指定してダウン...
-
unzip32.dllの利用について(64b...
-
MSCOMCTL.OCXのアップデートの方法
-
使用しているJUnitのバージョン...
-
visual stadio 参照問題
-
VBAの「for i=1 to cells(…」...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Eclipseソース開発画面の行番号...
-
PL/SQLを使った開発について質...
-
オブジェクト指向について
-
フリーソフトの作成言語
-
JAVAを使って管理システムを構...
-
「C#ができればJavaもできる」...
-
この便利な時代に開発環境すら...
-
今でも、TomcatとApacheの連結...
-
JavaMailを使う前のTomcatの設定
-
Javaのフレームワークについて
-
Javaでバッチ処理
-
Mac、Javaのライブラリ追加場所...
-
コマンドボタンの文字が消える!
-
AndroidとJavaの違いについて
-
eclipseでtomcatを使うには
-
プログラミング開発経験とは?
-
PowerBuilderの知識が必要です。
-
How to import HorizontalGridV...
-
OS作りについて
-
JAVAで開発するシステムの...
おすすめ情報