「C#できます!」って何の信用もできない言葉
「C#できます!」って何の信用もできない言葉です。
C#が進化し続けているからとかそういう意味ではなく,C#の文法しか知らない人が,プログラミングをすると複雑でぐちゃぐちゃでトンデモないコードが出来上がります。
そんなコードをコードレビューせず製品として販売している企業はたくさんあることでしょう。だから管理職の方は特に面接で「C#できますか?」とたずねて,「はい,できます」といわれても,簡単に信用してはいけません。※C#の経歴が10年あろうと信用してはいけません。だらだらと10年間,文法だけの知識でコーディングしている可能性があります。
「C#ができる」というのは「文法が書ける」という意味で言っている技術者が多いです。しかしそれは大工さんが「クギの打ち方」が分かるといっているのと同じで,家を作るには絶対的に必要な技術ではありますが,それがすべてではありません。建築家の知識なしに家を建てたら大変なことになりますよね。
だから文法だけを知っているだけのC#プログラマーは「建築家なし」に家を建てているのと同じ事で,大変恐ろしいものを造っているのです。
建築家の存在するプログラミングにするための知識は次のような順番で習得するのが良いでしょう。
- C#の文法(if文,List,非同期プログラミングなど)
- コーディングルール(作法)
- オブジェクト指向
- デザインパターン
- テスト駆動開発
- リファクタリング
- ドメイン駆動開発
ざっくりいうとこんな感じです。
デザインパターン,テスト駆動,リファクタリングは多少前後してもいいでしょう。
- C#erが5年目までに学ぶべき7ステップ!!
- C#を勉強する順番!オブジェクト指向からドメイン駆動開発まで#1-1
- C#を勉強する順番!とりあえず最低限の文法や開発環境の使い方の知識は必要#1-2
- C#を勉強する順番!WindowsFormsプログラミングで電卓なんかを作ってイベントなどを使えるようにする#1-3
- C#を勉強する順番!企業でのシステム開発とかだとDBを使うのでC#とDBをつなげる技術#1-4
- C#を勉強する順番!ボタンクリックイベントにだらだら書くのはなんか違う気がしてくる#1-5
- C#を勉強する順番!良いプログラミングのお手本がないとどうして良いのかわからない#1-6
- C#を勉強する順番!プログラミング初級講座とかいう大手の研修を受けてみたが#1-7
- C#を勉強する順番!良いプログラムとはリーダブルコード?コーディングルールを学ぶ#1-8
- C#を勉強する順番!第2章 オブジェクト指向との出会い#2-0
- オブジェクト指向を学ぶって事はデザインパターンを学ぶって事なんだな#2-1
- ドメイン駆動開発がオブジェクト指向をうまくコーディネートしていて最強みたい#2-2
- C#を勉強する順番!ドメイン駆動開発をするにはテスト駆動開発の知識が必須?#2-3
- C#を勉強する順番!テストコードのないプログラムは全部レガシーコードって呼ぶらしい#2-4