私なりに思う、Visual Studio Community、C# との関わり方。

当ページのリンクには広告が含まれています。
濃い木目調の机の上に、黒表紙で罫線が入っている手帳が、赤いボールペンと共に、開いています。

 こんにちは、皆さん。今日は、Visual Studio Community と、プログラミングとの関わり方について、私なりに思っていることを書いてみたいと思います。

 人それぞれ関わり方は違いますし、Visual Studio Community に関する、本家本元の「公式の見解」もあるので、それはこれから関わっていく間に、色々と出てくると思います。

 今回は、100%私の思っていることや、「信念」のようなものなので、一般的な使い方(職業等で使う場合)とは異なると思います。

 私の場合は、基本的に「サンデープログラマー」であり、「MS-DOS」の時代からプログラミングには関わって来ました。ですから、「古い習慣」とか「風習」のようなものは有ったりします(笑)。

 また、職業プログラマーとしては、「オフコンの時代」に主に「COBOL」や「RPG」をしていました。この時の経験が、実は重要だったりします。

 というのは、職業となるとプログラミングに関しても、色々と洗練される分けです。「構造化プログラミング」とか、「プログラムコードのステップ管理」とか、「納期」とかです。

 更に、仕事ですから、プログラマーとして「月に 3,000 ステップ」とかは有ったりして、相当勉強になりました。m(_ _)m

 また、構造化プログラミングについても、この時期に「ビジネスのイロハ」を、教えてもらいました。

 これらの事は、個人で「独学」している場合には、中々分らないことなんです。ですから、その辺りも含めて色々と書いてみます。

目次

何故、Visual Studio Community を使うのでしょうか?

 これが一番重要なんですが、私の経験からすると、以下の点が挙げられます。

IDEの環境が、一番「高性能」であり「マネージド言語」をサポートしています。

 高性能というのは、色んな言語に対応しているという事です。例えば、C++、MFC、C#、VB、WPF は勿論のこと、「WEB 開発」、「Python 開発」、「モバイル開発」、「Office 開発」、「ゲーム開発」まで、色々あります。

 まぁ、一人で使い熟すというのは不可能ですが、一定のパターン(基本的には、.NET Framework )で、色々なことが共有できるというのは、心強いですよね。

 次に、「マネージド言語」をサポートしているというのが、初心者にはありがたい分けです。勿論、プロの方にもありがたい分けです(笑)。

 「マネージド言語」というのは、「本来」プログラマーが気にしたり、行わなければならない色んなことを、代わりに行ってくれる分けです。m(_ _)m

 例えば、プログラマーが気にしなければいけないことに、「メモリリーク」というのがあります。

 これは、プログラム中に確保したメモリーを、開放しなければメモリが徐々に減って行き、システム全体のパフォーマンスが、悪くなるという現象です。

 回避方法としては、適切な時期や場所で、プログラマー自身が確保した領域を、開放しなければいけません。しかし、人がすることなので、完全でない場合が少なくありません。

 或いは、「型」の安全性ですね。「型」の不一致や、「バッファオーバー」とかが、厳密に管理されているので、起こり難くなっています。

 そうですね、早い話が「マネージャー」が、居るということです(笑)。

 つまり、「型」の安全性とか、ガベージコレクションとかが、プログラマーの意志とは関係なく、自動的に行われるので、プログラマーは、安心して、アプリケーションの作成に専念できる分けです。

 まぁとは言え、プログラマーが介入しなければ行けない場面は、少なからずありますが(汗・笑)。

一定の条件を満たせば、無料で使うことができます。

 詳しいことは、公式サイトで確認して欲しいのですが、例えば「個人で使う場合」、「小規模な会社で使う場合」、「学生さんが研究開発で使う場合」は、無料で使うことができます。

 ただし、「マイクロソフトのアカウント」が必要になるので、予め取得しておく必要があります。アカウントは、「メールアドレスとパスワード」で取得できます。

 しかし、これだけ豪華な統合開発環境(IDE)が、「一定の条件の下」で、無料で使えるというのは、良い時代になりましたね(感謝)。m(_ _)m

 まぁ、無料が必ずしも、「最良・最高の選択」とは言いませんが、初心者の方に有料のものを紹介する技量が、私にはありません。というか、持っていません(汗)。

 例えば、有料でも「可なり良い物」というものは、見たり聞いたりしますが、持っていないので紹介できません。m(_ _)m

お勧めしたいのは、「C#」なんです。

 プログラムというのは、実は、どんなに「簡単」と言われている言語でも、ある程度は難しいんです。というのは、ユーザーの要求(或いは、自分の要求)というのは、無限大なんです。

 例えば、入力時に「入力候補を選択したい」とか。となると、「TextBox」では無理なので、「ComboBox」になる分けです。しかも、入力候補をどこかに保存する必要があります。

 こうなると、途端に難しくなります(笑)。ファイル・データ処理が入ると、基本的に複雑になります。

 或いは、「この図形を選択したいんですが」ということになると、途中からそんなことは出来ないので、一から作り直すことになります(激汗)。

 例えば、Class(クラス)を作り変えたり、「複雑な数学の計算」が必要になったりします。 

 そうなると、一番重要なのが、その「要求」を「技術的」に実現できるのか、できないのか?という事になります。

 そして次に、出来るとすれば、迅速にできるのか?マニュアルはあるのか?「Q&A」はあるのか?、という「コストパフォーマンス」に、なると思います。

 つまり、そういう「現象」を、「最も広く・深く」達成できるのが、私の知っている範囲で、最もコストパフォーマンスが良いのが、「Visual Studio Community」の「C#」なんです(Good)

 もし、何の志も無く、プログラマーになる積もりも無い場合は、或いは「言語の選択」で迷っている場合は、「C#」をお勧めします

 勿論、プログラマーになりたい場合は、大いに結構です( Nice )。

 また、本格的にプログラマーになりたい場合は、「C++」も良いかも知れません。特に、「OS」とか、「ドライバー」とか、「ゲーム制作」とかに携わる場合は。

 ただし、職業プログラマーになる為には、何らかの技術的要件が必要だと、思っている方も多いと思いますが、そんなことは全然無いんです。

 「好きこそ物の上手なれ」ですよ。

 未経験の方が、会社に入ってからでも十分間に合います。というより、本格的な技術というのは、多くの場合「会社」で習得することが、多いと思います。どんな職業でも。

 例えば、学校で学ぶことは、飽くまでも、「標準値」とか「平均」ですよね。広く・浅くです。しかし、社会に出てから学ぶことは、現場の専門家の領域です。

 ですから、プログラマーも、会社に入ってから、本格的なスキルが身に付きます。頑張りましょう。

プログラミングには、失敗例が必ずあります。

 このサイトで私が紹介する「プログラムコード」の殆どは、一応私なりの「成功例」です。そして、その成功例から逆算して、色々と紹介しています。

 ですから、「魔法」のように全てが上手く行くように見えますが、実はその陰には「失敗例」が、数限りなくあります。

 そして、その「失敗例」こそが、実は財産な分けです(キザですね)。ですから、「ローマは一日にして成らず」なんです。しかし、その失敗例を見返すことは、余りありません(笑)。

 アプリケーションの作成履歴としては、残して置きますが、多くは備忘録として何処かに記録しておく方が良いですね。中々、過去を見直すという事は、ありそうで出来ないですから(激汗)。

 ところが、その備忘録も中々作成できないのが現実なので、非効率といえば非効率です。「ぐうたら」といえば「ぐうたら」です(反省)。

 まぁしかし、これは個人で中小規模のアプリケーションを作る場合なので、大規模なアプリケーションを作る場合や大勢で作る場合は、「ソース管理」や「バージョン管理」は、必須になるでしょう。

 尚、個人でアプリケーションを保存して置く場合は、自分が必要だと思う時点のスナップショットを、「TOPフォルダ」単位で、何処かにコピーすれば大丈夫です。

 その時に、「TOPフォルダ」の名前を、適選変更することが出来ます。「TOPフォルダ名」を変更しても、中味は変りませんので。

 もし、何らかの問題が発生した場合は、「フォルダ毎、一つ前に戻す」ことが出来ます。

 但し、テキストファイルと言えども、フォルダ毎になると相当大きな容量になるので、「Zip ファイル」等に圧縮しておくと、コンパクトになります。

 それと、実行ファイル等は、そのフォルダの何処かに必ず「.exe」や「.dll」があるので、それは単体で動きます(^_^;)。 また、何時か紹介します。

問題解決は、「習うより慣れよ」です。

 アプリケーションを作る場合は、必ず何らかの問題点が発生します。それは、何故かというと、誰でも「より高度な事」をしようとするからです。

 しかし、マニュアルには、極々基本的なこと(実は、一番大切な事なんですが)しか書いていません。

 次に、参考書を見ますが、こちらも基本的なことが多いですね。最後の頼みはネット検索なんですが、こちらは流石に「ピンからキリまで」色々とありますが、そのものズバリと言うのは、

 「ある場合」もあるし「ない場合も」あります。しかし、参考になることは多いですね。

 ですから、結果的には、「習うより慣れよ」なんです。失敗から、学ぶということです。全てのマニュアルを精読して、論理的に解決するというのは、実は無いんです(笑)。

 殆どは、「結果オーライ」なんです(爆笑)。

 どういう事かというと、例えば、「右から左に」、色々と知っていることを試した結果、偶々50/100回目で上手く行ったという事なんです。

 しかも、ダメもとで遣ったことが、思いの外ヒットすることは多いです(笑)。何故、上手く行ったのかは分かりません。m(_ _)m

 ですから私の場合は、問題解決した場合は、必ずしも「最適解」ではありません。もう少し進めれば、もっと良い方法があったかも知れませんが、それは未来に取っておきましょう。

楽しんで貰えれば、それが何よりです。

 このサイトで私が紹介しているプログラムは、過去に私が趣味で作ったプログラムです。

 そして、記事の順番は、私の思い付きだけなので、「起承転結」にも「理路整然」にも成っていません。ただ、皆さんに、楽しんで貰えたら良いと考えています。

 ですから、このサイトを「視聴」したからといって、「プログラマーへの切っ掛けになる」とか、「プログラミングが出来るようになる」とか、そういうことは一切ありません。

 それに記事には、「時代遅れのこと」や「最適解でないこと」や「私が気が付かないバグ等」が、含まれています。それも、考慮してください。

 まぁ、ですから、楽しみながら日常生活における、「何らかの参考」になれば良いかなと思います。

まとめ。

 まぁ兎に角、「本家本元」のIDEなので、しかも個人で使う場合は、無料で使うことが出来るので、パソコンに入れて置くことは、「必須」といっても過言ではありません(笑)。

 使うか使わないかは、別にして。

 そうですね、 私から言えることは、「それ以上でも、それ以下でも」ないです。全ては、本人の好みですね。「好きこそ物の上手なれ」ですよ。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次