- ベストアンサー
職業訓練コースの選択
- ハローワークで申し込んで受けられる職業訓練なのですが、プログラミングの経験はなく、組込みソフトウェア科かVB.NETプログラマー育成科のどちらにするか迷っています。
- 組込みソフトウェア科ではC言語の学習だけでなく、電気系統やマイコンの勉強もあります。一方、VB.NETは学習の負担が軽く、日曜プログラマーにも向いています。
- 経済産業省の調査によると、組込みソフトウェアの技術者は不足している一方、VB.NETプログラマーの需要は不明です。開講まで時間がないので、オススメのコースをアドバイスしていただけると助かります。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
Windowsアプリから組み込みまでやる(やらされている)なんでも屋です。 No.1氏と同じような回答になりますが「何を行いたいか」によります。 こういったもの全般になりますが、やる気が一番重要なものになりますので。 >組込みは3Kなどとも言われているようですが、結構、身体労働的な面や、単純作業などが多いのでしょうか。 後ろの文も関係しますが、私の認識とは多少違う「組み込み」のような気がします。 (私の認識では、携帯やデジカメなどを制御する為に内蔵されるプログラム開発) 私から見れば「動かす対象」が「PC(OS)」か「専用H/W」かの違いだけで、基本的にはどちらもプログラミングでデスクワークが主ですから、それほど違いはありません。おかげで運動不足で(略) (回路図を読んだりすることもある分、組み込みの方が難しいかもしれません) >職業訓練コースでも、半田付けや、オシロスコープなどを使った実習が相当取り入れられているようです。 確かに、「組み込み」という「H/Wを直接動かす」という観点から、どうしても電圧や波形の測定が必要な場合はありますが、半田付けというのは…… >また、VB.NETで仕事をしつつ、JAVAを習得している方も珍しくないのでしょうか。 別に珍しくはないですよ。 私もCから始まって、C++、.NET、Javaはやっていますし、最近はC#とVHDLにも暇を見て手を出してます。 この業種は、持っている知識や経験が多いほどやれる幅が広がりますから。
その他の回答 (6)
- feisama
- ベストアンサー率0% (0/1)
若輩者の意見です。参考程度で聞いて下さい。 C,C++,VB,マイコン組込みと複数の分野を経験しましたが、 仕事で見た目で楽しいのがC++だったりVBだったりします。 ※UIとして結果がすぐに現れてくるという意味で。。。 逆に、一般的に組込みは見た目で結果が現れる機会が少ないです。 この辺りは、自分の性格で向き不向きが出てくるところなので、 じっくり検討した上で判断して下さい。 ※組込みが面白い!っていう人もいれば、見た目で分からず面白くない!っていう人もいます。 仕事をするのであれば、自分の性格にマッチしたものを選択するほうが、 長続きすると思います。 ※あくまでも個人的な感覚での意見です。
補足
回答ありがとうございます。 経験者の方の意見として貴重です。 参考になり御意見、感謝致します。 VBとかだと、アプリケーション・ソフトなどの作成においてパソコンの画面上にプログラム結果がすぐに表れるからおもしろいと意味でしょうか。 確かに組込みだと、そうはいかないかもしれませんね。 私はプログラミングもいいと思うものの、マイコンや、回路のことも学習してみたいんです。アセンブリなんかも興味あります。 feisamaさんは、そんなに複数の分野を経験されたようですが、どのような経歴をたどられたのでしょうか。 例えば、VBからC++から移行するのには(またはその逆)、新たな言語を勉強することって、たいへんだったのではないですか。 ましてや、言語とは違う、マイコン組込みの知識についてはまた、別個の学習を新たに一から習得しなければならず、これもたいへんだったのではないでしょうか。
- Interest
- ベストアンサー率31% (207/659)
私も、Windowsのプログラム(VC++、VB、C#)からマイコン上で動作する組み込みソフト開発まで幅広くやっています。 VBが使える、Cが使えるというのは所詮、日本語が話せる、英語が話せると言っているのと同じことで、言語毎に文化の違いはありますが、ひとつ使いこなせるようになれば2個目、3個目は比較的簡単に身に着きます。 肝心なのは言語そのものではなくて、開発対象(や業務)に対する知識です。組み込み系ではそれが例えば無線機の基本的な仕組みであったり信号処理の理論であったり、業界の標準規格であったりします。これらの知識が無いと、仕様書を読んでも書いてある内容が理解できません。 といっても本当に専門的なことは仕事をしながら学ぶことの方が圧倒的に多いので、分からなくてもやるしかないですね。 > まあ、あまり、プログラミングばかりで画面とにらめっこしている > ばかりよりもマイコンなどのハードウェアに直接関わって、モノ作り > を実感するのもよさそうですが。 私も、実際にものが動く方が好きです。一時期組み込み系から離れてJavaを使っていたこともありましたが、結局組み込みに返ってきました。 > 組込みは3Kなどとも言われているようですが、 > 結構、身体労働的な面や、単純作業などが多いのでしょうか。 配属されたばかりの新人さんには難しいことを頼めないので「単純作業」になってしまっているかもしれません。いわゆるデスマーチになるのは組み込み系であろうとかなろうと関係ないものと思います。ファーム屋さんが肉体的つらいというのはあまり聞きません。ハード屋さんが実装済みの回路を手直しするために砂粒ほどの部品を一つ一つ回路に半田付けしていき、首や目が疲れるという話ならよく聞きますね。
補足
回答ありがとうございます。 複数の言語を駆使して組込みもアプリも幅広くやられているようで、すごいですね。 VBはとっつきやすさが魅力で、その上、奥も深いということですし、他の方の回答にもありましたとおり、OSのVistaもVBで作られたというのを知り、見直しました。 初心者なので素人考えですが、JAVAとC、C++は割合、似ている気がしますが、VB.NETは歴史が浅いものの、前者に比べもっと独自の思想で考え出された言語のような気がしました。 私も純粋な言語によるプログラミングもいいものの、マイコンなどの電気系統の回路の方も学んでみたいです。
- SilverThaw
- ベストアンサー率32% (260/806)
No.3です。 >組込みは電気系の知識が要るところが、アプリのみの開発とは違うところでしょうか。 組み込みも幅が広いので、一切電気回路の知識がいらない場合もあります。 最近は高性能になったため、直接H/Wを制御するのではなく「組み込み専用OS」や「ミドルウェア」を使用し開発を行うことが多いです。 その為、Windowsアプリと変わらないレベルで開発『できる場合も』あります(但し、メモリ管理のシビアさは比ではないし、μsレベルでの処理タイミング管理が必要な場合もある)。 当然、対応できなければ直接H/W制御をおこなうことになります。 >まあ、あまり、プログラミングばかりで画面とにらめっこしているばかりよりもマイコンなどのハードウェアに直接関わって、モノ作りを実感するのもよさそうですが。 慣れれば気楽に考えられるようになるかもしれませんが、残念ながら大抵の場合は専用品でありワンオフのH/Wですから、仕様書とにらめっこして……というのが多いですよ。 H/Wがつながっている先の機能の仕組みやI/F、プロトコルなんかも理解していないといけない場合もありますので、必要知識は膨大です。 極端な話、Windowsアプリは「OSがどんな動きをしているか」なんて知らなくても作れますが、組み込みは「H/Wの仕組み」と「OSの仕組み」を知った上でないと作れないレベルのものもたくさんあります。 問題が起きた場合に、S/WなのかH/Wなのかの切り分けも大変ですし(愚痴)。
お礼
回答ありがとうございます。 組込みといっても実務では色々とあることがわかりました。 解説、感謝致します。
- hidebun
- ベストアンサー率50% (92/181)
組み込みはソフトウェアのことだけでなく、ハードウェアについても 広く、深く知っている必要があるので、例えば、Cについて、業務経験が 豊富で、言語知識を十二分に習得されている方でも、組み込み系に 飛び込んで、苦労することも多々あると思います。 未経験ということであれば、まず1つ、理解しやすい言語を1つ学び、 実業務でその言語や他の言語の知識、システムの分析・設計能力を 養うことをお勧めします。 言語知識だけでは食べていけません。 質問者さんも、30代後半ということでしたら、何らかの業務に 携わってこられたことと思いますが、その業務の難しいところ、 よく考えるべきところ、やってはいけないこと、などを体感し、 よく知っているおられることと思います。 それと同じようなことが、ソフトウェア開発の中にもあり、 組み込み分野は、特にそのような知識が豊富に必要なところなので、 まずは足固めとして、VB.NETで良いのではないかと思います。
お礼
回答ありがとうございます。 組込みは必要知識が膨大みたいですね。
- hide76318
- ベストアンサー率18% (2/11)
こんにちは。 >組み込みの3kについて 私は半年しか組み込み開発に携わっていなかったので大したことは言えませんし、プロジェクトによりけりだと思いますが、終電前まで仕事することは日常的にありました。中には泊り込みでやってる人もいました。単純作業で言えば、テストなどはそれに当たるかもしれません。 後、ほかの業界を知らないのでなんともいえませんが、病気のため休職する人はちらほらいます。 >半田付け、オシロスコープについて 私のいたプロジェクトでは、確かに半田付けする人もいましたが、C言語でプログラムを書く人はそういった業務は行わないと思います。 >仕事をしつつ他の言語を覚える たとえば2年のVB.NETのプロジェクトの後、次はJavaの案件にJava未修得のままプロジェクトに参画し、そこで必要に駆られて習得する感じです。習得方法は、先輩社員から教えてもらったり、本で自習して覚えたりさまざまです。自己啓発としてやっておられる方もおられます。(仕事の幅を広めるという意味で。)
お礼
たびたびの回答ありがとうございます。 わざわざ補足をありがとうございました。
- hide76318
- ベストアンサー率18% (2/11)
こんにちわ。 20代からIT業界で働いている、30代前半の者です。 私はVB.NET、C言語の案件もどちらも経験があります。 VB.NETもC言語ほどではないかもしれませんが、ビジネスアプリ系(例えば営業業務支援システム等)の開発で元々VBで作られている物をVB.NETで作り直したり、VB.NETで作られている物のシステムを保守したり、じゅうぶん需要はあります。その辺りは危惧なさることはないと思います。 VB.NETの場合(というよりオープン系の開発をする場合)逆にVB.NETしか出来ない、というと弱い気がします。まぁその辺りは会社にもよりますし、入社してからJava等を覚えてもよいことです。 言語を比較すると、確かにC言語の方が敷居が高いです。ただし、VB.NETも、マイクロソフトが用意しているクラス(部品)の使用方法や、たいていの場合はデータベースと接続して使うだろうと思われるので、その辺の連携方法、後、データベース操作言語等々、こちらも覚えないといけないことが多いです。組み込み開発も携帯でいうと、OS(Linux)の仕組みを覚えたり、いろいろと大変なことも多いです。 さて本題ですが、(強く思いますが)どちらが大変か、需要があるか、で決めるよりも、何を作りたいか、で決めた方がいいです。私なんかはビジネスアプリよりも、携帯電話の開発のような、世に出ている品物を作った方が、作り終えてその商品が店頭に並んだときに得られる満足度が高かったです。 後、余談になりますが、厳しい事を言いますと、30代後半という事で、いくら職業訓練コースを終えたからとはいえ、実務未経験OKで募集している会社は結構少ないです。そのご年齢ですと、マネージメントが出来ないと厳しいからです。 結局私はC++のWindows向けのパッケージ開発で落ち着きそうです。 乱文失礼しました。参考になれば幸いです。がんばってください。
補足
朝早くから回答ありがとうございます。 たいへん参考になりました。 組込みは3Kなどとも言われているようですが、結構、身体労働的な面や、単純作業などが多いのでしょうか。 職業訓練コースでも、半田付けや、オシロスコープなどを使った実習が相当取り入れられているようです。 また、VB.NETで仕事をしつつ、JAVAを習得している方も珍しくないのでしょうか。 ただ、頂いた回答の中でVBにも十分需要はあるということですのでそのあたりは少し安心しました。 確かに、学習の難易度よりもどんなモノ作りに将来携わりたいかで選択を決めるほうがよいですね。 年齢的なことは、私も自覚しております。こればかりは努力で若返ることはできないですが(^^;)
補足
回答ありがとうございます。 組込みは電気系の知識が要るところが、アプリのみの開発とは違うところでしょうか。 まあ、あまり、プログラミングばかりで画面とにらめっこしているばかりよりもマイコンなどのハードウェアに直接関わって、モノ作りを実感するのもよさそうですが。