著者:ピーコックアンダーソン
ページ数:65
¥99 → ¥0
「C#できます!」って何の信用もできない言葉
「C#できます!」って何の信用もできない言葉です。
C#が進化し続けているからとかそういう意味ではなく,C#の文法しか知らない人が,プログラミングをすると複雑でぐちゃぐちゃでトンデモないコードが出来上がります。
そんなコードをコードレビューせず製品として販売している企業はたくさんあることでしょう。だから管理職の方は特に面接で「C#できますか?」とたずねて,「はい,できます」といわれても,簡単に信用してはいけません。※C#の経歴が10年あろうと信用してはいけません。だらだらと10年間,文法だけの知識でコーディングしている可能性があります。
「C#ができる」というのは「文法が書ける」という意味で言っている技術者が多いです。しかしそれは大工さんが「クギの打ち方」が分かるといっているのと同じで,家を作るには絶対的に必要な技術ではありますが,それがすべてではありません。建築家の知識なしに家を建てたら大変なことになりますよね。
だから文法だけを知っているだけのC#プログラマーは「建築家なし」に家を建てているのと同じ事で,大変恐ろしいものを造っているのです。
建築家の存在するプログラミングにするための知識は次のような順番で習得するのが良いでしょう。
C#の文法(if文,List,非同期プログラミングなど)
コーディングルール(作法)
オブジェクト指向
デザインパターン
テスト駆動開発
リファクタリング
ドメイン駆動開発
ざっくりいうとこんな感じです。
デザインパターン,テスト駆動,リファクタリングは多少前後してもいいでしょう。
第1部ではダメダメ文法プログラマーとして生きていた私のオブジェクト指向を手に入れるまでの悪戦苦闘を描き,第2部では,オブジェクト指向に出会った後,どのように成長していったかを描いています。
この本は技術書というよりは,勉強方法の本です。技術書をお探しの方にはお役に立てないかもしれませんし,天才たちの書いた本がアマゾンで売られている中で,あなたはなぜこの本を読まないといけないのか?
それは,最近まであなたと同じように,オブジェクト指向とは?テスト駆動開発とは?ドメイン駆動開発とは?と研究に研究を重ねていた,少し先に勉強した人間の書いた本だから,非常にわかりやすい本になっています。
小学校の勉強も,先生に教わるより,先に理解した同級生に教えてもらったほうがわかりやすいことが多々ありますよね。あれは,最近までわからなかった人間だから,判らない人の気持ちをまだ覚えていて,わからない人にどのようにすればわかってもらえるかがわかるためです。学校の先生はわからなかった頃の気持ちをもう忘れてしまっているのです。
その一点に限り,天才たちの書く技術書よりもこの本が優れている点です。
全体を通してエッセイテイストで書いているので,勉強に疲れた時の気分転換に読んでみてください。
目次
はじめに
C#を勉強する順番!オブジェクト指向からドメイン駆動開発まで#1-1
とりあえず最低限の文法や開発環境の使い方の知識は必要#1-2
WindowsFormsプログラミングで電卓なんかを作ってイベントなどを使えるようにする#1-3
企業でのシステム開発とかだとDBを使うのでC#とDBをつなげる技術#1-4
ボタンクリックイベントにだらだら書くのはなんか違う気がしてくる#1-5
良いプログラミングのお手本がないとどうして良いのかわからない#1-6
プログラミング初級講座とかいう大手の研修を受けてみたが#1-7
良いプログラムとはリーダブルコード?コーディングルールを学ぶ#1-8
オブジェクト指向との出会いってずっと前から出会っていたけど気がつかなかった!
C#とか関係なく,オブジェクト指向言語として捉える
オブジェクト指向を学ぶって事はデザインパターンを学ぶって事なんだな…きっと
デザインパターン
ドメイン駆動開発
ファーストクラスコレクション
2人の巨匠の話
テスト駆動開発との出会い
ドメイン駆動開発をするにはテスト駆動開発の知識が必須?
インタフェースってすごく重要だったんだ
テストコードのないプログラムは全部レガシーコードって呼ぶらしい
レガシーコード改善ガイド
基本的にはリファクタリング
ダメコードのリファクタリングの仕方
テストコードのないプログラムのリファクタリングは怖い
出来ればすべてゼロから作りたい
勉強が乗らないときは?
C#を勉強する順番
追伸
参考情報
シリーズ一覧
- 同シリーズの電子書籍はありませんでした。
この期間中は料金が980円→0円となるため、この記事で紹介している電子書籍は、すべてこのKindle Unlimited無料体験で読むことが可能です。