Microsoft(.NET)スタック開発者としてのスタート(Foundational Concepts Series)

ファーストシングスファースト

「一番上から始めるのは穴を掘ることだけです。」

では、Microsoft(.NET)スタック開発者になりたいですか?他の人から聞いた、またはオンラインで読んだ(Redditなど)すべての情報や推奨事項から頭が回転している可能性があります。いくつかの方向に引っ張られているように感じるかもしれません。

お手伝いしたいのですが。

このブログシリーズのFoundalConcepts Seriesの目的は、初心者のソフトウェア開発者にMicrosoftスタックでのプログラミングを紹介することです。私は子供の頃にコーディングを始め、2003年からC#と.NETを使用しているので、何年にもわたっていくつかのことを学んだと思います。中級または上級のソフトウェア開発者でさえ、このブログシリーズから何か新しいことを学んだり、知識のギャップを埋めたりすることがあります。私の目標は、楽しくアクセスしやすい形式で資料を提示することです。これにより、読者はプログラミングの概念と、そこにある最高のエコシステムの1つを使用して高品質のソフトウェアを作成する方法をより深く理解できるだけでなく、学習への情熱も得られます。 、あなたがプロとしてそして人として成長し続けるように。

旅に出ましょう!

前提条件

ハリウッドは、プログラマーや他のコンピューターの専門家を、風変わりで、社会的にぎこちなく、しばしば特別に才能のある天才(または悪役)として描写するのが大好きです。 ) 世界。真実から遠いものはありません。他のすべての分野と同じように、プログラミングに自然なコツを持っている人もいるのは事実ですが、優れたプログラマーは生まれるのではなく作られています。 A.)ハードワークをせずにプログラミングが上手になる、またはB。)________のために優れたプログラマーになることはできないという信念に固執している場合は、Mindset:TheNewという本を読むことをお勧めしますキャロル・ドウェックによる成功の心理学。

私の謙虚な専門家の意見では、優れたソフトウェア開発者になるために必要な唯一の必須の資質は次のとおりです。

1。あなたは賢くなければなりません。

これを読んでいるなら、おそらくすでに読んでいるでしょう。さらに、知性は固定されていないので、本を割って開いて、自分を賢くしてください。あなたのI.Q.が100を超える場合、コンピューターをプログラムするために必要なインテリジェンスはほとんどありません。ジャージーショアのキャストがソフトウェア開発者になることはできません。

2。難しい問題の解決を楽しんで、仕事の複雑さをうまく処理する必要があります。

キャリアの過程で遭遇するすべてのプロジェクトと問題は、ボトル内のカオスのユニークなインスタンスになります。準備して。仕事ではさまざまな形の複雑さに直面し、その複雑さを管理することが仕事になります。

3。成長し続けるには、学習への情熱と規律が必要です。

学習を楽しんでおらず、自分自身を成長させ続けるというコミットメントがない場合、これはあなたのキャリアではありません。真剣に、私の職業から離れてください。テクノロジースペースは文字通り絶え間ない変化の状態にあり、新しい開発が毎日毎分発生しています。すべてに追いつく必要はなく、試してみるのもばかげていますが、スキルを磨き、1つか2つの分野に特化する必要があります。

これらを除けば、ソフトウェア開発者になるために必要なことはそれほど多くありません。 4枚のグラフィックカード、64コア、128GBのRAMを備えた素晴らしいゲーミングリグは必要ありません。それはやり過ぎです。適切な考え方を身に付け、学習することを約束した後、ソフトウェアを開発するための実際の重要な要件は次のとおりです。

1。コンピューター。

これは明らかです。コンピューターのプログラミング方法を学びたいのなら、コンピューターが必要です。私はラップトップをお勧めします。どうして?それはあなたに自由を与えます。これは、フリーランスやコンサルティングなどを始めたい場合に非常に重要です。さらに、ソフトウェア開発は創造的なプロセスであり、コーヒーショップや共有オフィススペースなど、通常のワークスペース以外の環境から作業したい場合もあります。さらに、旅行が必要になる場合があり、ATXタワーを飛行機に乗せることができなくなります。さて、このコンピューターのスペックはどうですか?実際には、ソフトウェアを開発するのに驚くほど強力なマシンは必要ありません。あなたは1000ドル以下で完全に合理的なプログラミングラップトップを手に入れることができました。もう少しお金をかけることをお勧めします。その理由については後で説明します。私がほのめかしたように、ゲーミングノートパソコンはやり過ぎであり、次のような非常に特定の分野に従事している場合を除いて、限界に達することはありません。

上記のニッチな領域の1つに入る計画がある場合は、先に進んで、64コアのスレッドリッパーCPUと多数のCUDAカードを搭載したモンスターデスクトップマシンを構築します。ただし、Web /モバイル開発(現時点ではおそらくフィールドの約80%)とデスクトップアプリのわずかな部分では、グラフィックスをざっと読むことができますし、そうする必要があります。これにより、大量のお金を節約できます。他の機能に向けることができます。B。)コンピュータをはるかに静かにします(GPUを冷却するためにファンが必要なため、ゲーム用ラップトップは大音量です)。では、プログラミングコンピュータで実際に重要なことは何ですか?

私のマシン:すべてが言われ終わったとき、私は主要なプログラミングラップトップとしてLG Gram17を購入することにしました。いいえ、LGから支払いを受けていません。私は、実用的な調査といくつかのレビューを読んだり、コンピューターを実際に試してどのように感じたかを確認したりして、決断を下しました。上記で説明したすべての基準を満たしているので、万能のプログラミング用ノートパソコンとして最適だと思います。仕様は次のとおりです。

もう1つの考慮事項は、コンピューターをどこから購入するかです。買い物をして、そこに取引があります。また、オープンボックスのアイテムを敬遠しないでください。 「オープンボックス」とは、誰かがコンピュータを購入し、購入者の反省を受けて、すぐに返品したことを意味します。状況によっては、本質的に新しいマシンを素晴らしい割引価格で入手できる場合があります。さらに、すでにS-corpまたはLLCをお持ちの場合は、特定のベンダーからのハードウェアおよびソフトウェアの購入に対してボーナスキャッシュバックを提供するビジネスクレジットカードの対象となる場合があります(ヒント、ヒント)。購入する前に宿題をしてください。

2。机、椅子、周辺機器。

3。開発ソフトウェア。

ソフトウェアを作成するにはソフトウェアが必要です。ラップトップとハードウェアの基本セットを除いて、クラフトを実行するために使用するすべてのツールは、ソフトウェアパッケージ、特にIDE(統合開発環境)になります。 Microsoft Stack開発者として、IDEはVisual Studio(現時点ではVisual Studio 2019)です。私はキャリアのさまざまな時点で他のスタックに取り組み、他のIDE(* cough *、Eclipse)を使用しました。確信を持って説明しますが、VisualStudioはこれまでで最高のものです。他のものはどれも近づいていません。理論的には、単純なテキストエディターやその他のIDEを使用して.NET開発を行うことができますが、なぜですか? Visual Studio Community Editionは、個々の開発者は無料で、CodeLensを含むProfessionalEditionと同じ機能をすべて備えています。だから、Visual Studioをダウンロードして、クラックを取得してください。ちなみに、ノードスタックなどの別のスタックで作業している場合でも、おそらくVisualStudioを使用します。さて、先に進むことなく、Visual Studioを手動でダウンロードしてインストールする必要があることをお伝えします(Chocolateyのようなパッケージマネージャーを使用するのではありません。以下を参照してください)。どうして?開発者ごとに異なるさまざまなワークロードと構成があるためです。たとえば、私はF#が大好きです。食パン以来最高だと思います。 Microsoft Stackを使い始めたばかりの場合は、C#を学習し、F#には触れないため、インストールする必要はありません。同様に、おそらくWeb開発ワークロードが必要になりますが、Unity /ゲーム開発には触れません。その逆も同様です。重要なのは、万能の構成はないということです。

IDEに加えて、SDK(ソフトウェア開発キット)なしでソフトウェアを開発することはできません。これらは、動作するソフトウェアを作成できるようにする基本的なコンパイラ、ツール、およびランタイムです。 Microsoftの世界では、.NET CoreSDKを使用します。この記事の執筆時点では、.NET Coreのリリースバージョンは2.2であり、バージョン3はまだプレリリースです。 SDKに組み込まれる構成はそれほど多くないため、コマンドラインからインストールできます。これを以下に示します。

4。追加のソフトウェアツール。

IDE / SDKを使用してソフトウェアを開発するだけでなく、ソース管理へのチェックイン、コードのデバッグ、HTTPエンドポイントのテスト、グラフィック操作などを行うために、他の多くのツールが必要になります。当時、私たちはWebにアクセスして、インストールしたいものをすべて手動でダウンロードする必要がありました。これは、長くて骨の折れるプロセスでした。追加のツールをインストールするには、WindowsのパッケージマネージャーであるChocolateyをダウンロードすることをお勧めします。それはあなたの人生を楽にします。手順については、https://chocolatey.org/をご覧ください。警告:マシンにインストールする前に、必ず彼らのサイトにアクセスし、各パッケージをチェックして、信頼できるものとしてマークされているかどうかを確認してください。必要になる可能性のある追加のソフトウェアツールについては、コンピューターにインストールしたものについて以下を参照してください。

マシンのセットアップと構成方法

ラップトップを最初に起動するときに、Windows 10では、タイムゾーンの設定、パスワードの設定など、いくつかの構成手順を実行できます。これらはすべて、かなり自明です。新しく構成したLGGramのデスクトップは次のようになります。

他のことをする前に、LG UpdateCenterをクリックしてラップトップを更新する必要があります。

次に、Cortana / Searchに「windowsupdate」と入力し、「Checkforupdates」をクリックしてWindowsUpdateを実行します。保留中の更新がたくさんあります。 [今すぐインストール]をクリックします。

次に、よく使用するアプリをタスクバーに固定します。 Cortana / Searchに「powershell」と入力し、「Windows PowerShell」を右クリックして、コンテキストメニューから「PintoTaskbar」をクリックします。 「PowerShellISE」についても同じようにします。

タスクバーに表示されている2つのPowerShellアイコンを右クリックします。表示されるコンテキストメニューから、各プログラムの名前をもう一度右クリックします。 2番目のコンテキストメニューが表示されます。図のように「プロパティ」をクリックします。 「詳細…」というボタンをクリックします。 「管理者として実行」というチェックボックスをクリックします。これで、タスクバーからクリックすると、常に昇格された特権で実行されます。両方に対してこれを行います。

PowerShellに慣れていない場合は、😉

特に明記されていない限り、マシンを構成するために必要な残りの手順は、PowerShellコマンドプロンプトまたはPowerShellISEのいずれかからPowerShellコマンドとして実行できます。すべてのコマンドをPowerShellスクリプトファイルに詰め込んで一度に実行するよりも、各コマンドを1つずつ実行する方が好きです。なぜですか?

Box Starter(https://boxstarter.org/)やそれに付随するスクリプト(https:/)など、新しい開発マシンのインストールを完全に自動化しようとするさまざまなオープンソースツールがあることを理解しています。 /github.com/Microsoft/windows-dev-box-setup-scripts)。大企業のIT部門で働いていて、一度に数十台の仕事用ラップトップをセットアップしている場合を除いて、上記で概説したすべての理由から、自動スクリプトを使用することはお勧めしません。前に述べたように、同じ組織内であっても、開発者の間で万能の構成が存在することはめったにありません。これ以上詳しく説明するつもりはないので、実際の手順に移りましょう。繰り返しになりますが、LG Gram17でWindows10 Homeを実行していることを前提としています。別のラップトップまたはWindowsのエディションを使用している場合は、個々のニーズに合わせてこれらの手順を変更することをお勧めします。

PowerShellセッション内でこれらのコマンドを実行します。

フェーズ1—基本構成

フェーズ2—プリインストールされたブロートウェアをアンインストールする

フェーズ3—一般的に使用される(開発者)ツールのインストール

この時点で、TextCrawlerと呼ばれるフリーウェアツールをダウンロードしてインストールすることをお勧めします。これはChocolateyからは入手できません。レガシーコードベースやその他のファイル検索操作を操作するのに非常に役立つことがわかりました。ここで入手できます。

フェーズ4— VisualStudioのインストール

この時点で、Visual Studio 2019をインストールすることになります。企業組織で作業している場合を除き(ライセンスの詳細はこちらを参照)、CodeLensを含むProfessionalと同じ機能をすべて含むCommunityEditionを無料でダウンロードできます。

構成では、次のワークロードを選択しました。

Visual Studioインストーラーでは構成をエクスポートすることもできるため、使用したワークロードを自動的にインストールする場合は、ここからセットアップを.vsconfigファイルとしてダウンロードできます。

フェーズ5—Windowsの高度な機能を有効にする

フェーズ6— MicrosoftAzure関連のツールをインストールする

フェーズ7— VisualStudioの構成

これで、Visual Studio2019を初めて実行することになります。コアの配色の選択など、基本的な構成手順を実行できます。

注:現在のインストールでは、「C#」ではなく「一般」の開発設定を選択しました。これは、標準の、よりよく知られているホットキー構成を備えているためです。これは、[ツール]-> [設定のインポートとエクスポート]をクリックしていつでも変更できます。詳しくはこちらをご覧ください。

私は通常「青」の配色を使用し、「ツール->インポート/エクスポート設定」を使用して、Linuxエディター用の従来のZenBurnテーマの修正バージョンであるカスタムテーマにフォントと色を更新します。 VimまたはEmacs。ここでどのように表示されるかを確認できます。ここから.vssettingsファイルをダウンロードできます。

フェーズ8— SQL Server ManagementStudioのインストール

https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-2017にアクセスして、SSMSをダウンロードしてインストールします。これは、Visual Studioと並んで、必須のツールです。

フェーズ9—復元ポイントを作成する

最後になりましたが、他の作業を行う前に、新しく構成したコンピューターの復元ポイントを作成する必要があります。そうすれば、何か問題が発生した場合でも、いつでも以前のクリーンな構成にフォールバックできます。

ここには、その方法に関する非常に優れたガイダンスがいくつかあります。

結論

ソフトウェア開発に不慣れな場合は、野心から実際のコードの記述に至るまでに必要なすべてのステップから頭が回転している可能性があります。これは、従来から行われてきたMicrosoft(.NET)スタックに特に当てはまります。より「エンタープライズ」スタックと見なされます。快適なワークスペースと基本的なコンピューター(適切なプロセッサーと大量のRAMを搭載したラップトップ)、および通常は無料のソフトウェアツールを除けば、実際にはそれほど多くは必要ありません。 PowerShellやChocolateyなどのツールを使用すると、マシンの構成とソフトウェアパッケージのコアセットのインストールのプロセスが大幅に簡素化され、深夜、目の充血、マウンテンデューのボトルを数本節約できます。最後に、Visual Studio 2019 CommunityEditionを無料で入手する方法について説明しました。これにはProfessionalEditionと同じ機能がすべて含まれています(これで、実際にプレイを開始しない理由はありません!)。 Microsoftスタックでソリューションの構築を開始するために必要なものはすべて揃っています。そこに出て、学び始めて、何かを作りに行きましょう!

元々は、2019年8月26日に https://blog.jacobsdata.com で公開されました。