#22 .NETの世界がなぜ難しいのかと最近面白いって思い始めた話
.NETの勉強の仕方が分かってきた話
自分はお仕事でASP.NETでWebアプリ開発をしていますが、ほんとに1ミリも理解出来ている気がしません。雰囲気で理解して雰囲気で動かしてます。でも最近頭の中で少し分類が出来るようになってきて、以下を一通り勉強して経験を積めばプロになれるのかなと思い始めました。
ASP.NETでのWebアプリ開発に欲しい知識をコマ切れにするとこう
- .NETの知識
- Visual Studioの知識
- ASP.NETの知識
- ASP.NET MVCの知識
- C#の知識
- HTML/CSSの知識
- JavaScript(JQuery)の知識
- HTTPやURIなどWeb技術の知識
- WindowsServerの知識
- IISの知識
今の理解ならこのように分類します。自分のプロジェクトだとDBがOracleなのでその勉強も必要です。この世界は勉強すること多いですね。。。
また、なぜ理解に苦しんだのか理由を上げてみます。
.NETの理解が難しい理由①.NETの世界広すぎて何の技術使ってるのかすら分からない問題
.NETって本屋さんだと分かりにくい本の配置してあって「.NET」っていうジャンルに分類されてることが多いです。でも実際はASP.NETとASP.NET CoreとASP.NET MVCは別物だし、ASP.NETの本にはVisual Studioの使い方は載って無いんですよね。.NET FrameWorkって言うから1つのものだと思ってたんですけど、.NETという大きな概念があってその下に沢山のFrameWorkがあるみたいです。
また、実際のコードはもっと複雑になります。自分が分からないのが.NETの知識なのかWebの知識なのかASP.NETの知識なのかプログラミング言語の知識なのかプロジェクト自作ライブラリなのかが分からなくなります。自分は新規開発からプロジェクトに参画していない&教えてくれる人は辞めているため、必要な知識が分からない状態で暗中模索してます。ただ逆に言うと既にコードがあるため、答えが目の前に転がっている状態なのは勉強する環境としては良いと言えるかもしれません。メンターがいればですが…
.NETの勉強が分かりにくい理由②プログラミング言語は?って質問が実は的外れ
自分は当初、プログラミングはプログラミング言語を理解していれば出来るものだと思っていたので、「プログラミング言語は何を使っているんですか?」の質問に返ってくる「C#」を勉強すれば良いのだと思っていました。でも実際はC#を使うのはロジックの部分だけだし、Webの知識は必要だったりと上手いこと質問が出来ていなかったんだと思います。
.NETの勉強が分かりにくい理由③Visual Studio自体の勉強が必要
.NETの最大のIDEであるVisualStudioくん。この子機能がありすぎてまともに使いこなせてません。エディタ、コンパイル、デバッグとなんでも出来ますが、それ故に使いこなそうと思うとコイツの勉強も必要です。最近やっとVisual Studio自体の専門書が存在していることに気付いて買いました。TFSの分岐とかマージとかまた難しいんですよコレが。賢い機能使うには賢い頭が必要なんですね。
まとめ
自分は.NET開発をする上で大切なことが全然分かってませんでした。ASP.NETとC#を勉強すればよいものだと思っていましたが、.NETとVisualStudioの勉強も重要です。これからそこら辺の知識と理解を深めていけたらなぁと思います。とりあえずまた1つ成長したので寝る\(^o^)/オワタ