プログラミング中級者になりたい人のためのクリーンコード入門

クリーンコードを学ぶことでプログラミングの学習効率が大幅に変わります!!初心者のコードと中上級者のコードでは何が違うのか。良いコード、悪いコードの例を見ながら一つ一つ確認していきます。JavaScript、Python、Ruby、PHP。

4.58 (537 reviews)
Udemy
platform
日本語
language
Web Development
category
プログラミング中級者になりたい人のためのクリーンコード入門
5,707
students
11 hours
content
Apr 2024
last update
$59.99
regular price

What you will learn

他の開発者の人が理解しやすいコードの書き方について学びます。

読んでいて疲れないコードの書き方について学びます。

無駄な部分まで読む必要がないコードの書き方について学びます。

バグが混入しにくいコードの書き方について学びます。

改修箇所が限定されるコードの書き方について学びます。

改修による既存のコードへの影響が限定されるコードの書き方について学びます。

新規機能の追加が行いやすいコードの書き方について学びます。

冗長な記述がないコードの書き方について学びます。

クラスの凝集度、結合度について学びます。

SOLID原則について学びます。

Why take this course?


皆さんはどのようにすればプログラミングが上達するのか疑問に思ったことはありませんか?


なんとなくプログラムを記述しているだけでもプログラミング力は確かに向上します。ただ、これから紹介する3つのポイントを抑えながらプログラミングを行うとより効率的にプログラミングの上達を行うことが出来ます。


■ プログラミングの上達に欠かせない3つのポイント

- 1. 習うより慣れろ

これは巷(ちまた)でよく言われていることですが、プログラミング学習の初期段階では手を動かしてプログラミングに慣れることが重要になってきます。プログラミングのスキルを向上するためにはインプットと同じくらい、アウトプットが重要になってきます。例えるならば、自転車の乗り方をいくら口頭で説明されたところで、自転車に乗れるようにはなりません。それと同じで、プログラミングが書けるようになるためには、自分で手を動かして書くことが重要です。


- 2. 基礎を理解する

ここで言う基礎というのは、物事の根底にあるもののことです。例えば、React(JavaScriptの高機能なUIライブラリ)を使いこなしたいのであれば、Reactの元になるJavaScriptの挙動について理解することが重要になってきます。Reactを覚えれば、なんとなく動く機能を最短で作ることができるようになりますが、それ以上のレベルに行くためには合わせて基礎を理解している必要があります。


- 3. 他人のコードからノウハウを盗め

プログラミングを上達する過程では自分で試行錯誤しながらエラーを解消したり、より良いプログラムの記述方法を自分で考えることはとても重要です。ただ、過去の人たちが犯した失敗と同じ失敗をわざわざ犯す必要はありません。今日のIT技術の発展に至るまでには世界中の "頭の良い人" 達が何年も技術を磨き、失敗しながら導き出した最適なプログラミングのパターン(デザインパターンやクリーンコード)などが存在します。そうした知識を得ることで、彼らが何年もかけて到達した地点まで最短で行くことが出来ます。


プログラムの記述は一見創造的な行為に見えますが、実際には「過去にインプットした情報」の断片をたぐり寄せて、アウトプットする行為に過ぎません。そのため、他の人が書いた質の良いコードを見ることは、自身のアウトプットを高めるためには重要になってきます。


本コースでは上で挙げた3つ目のポイントであるクリーンコードについて学んでいくことになります。


■ クリーンコードとは?

皆さんは「クリーンコード」という言葉を聞いたことがありますか?

クリーンコードとは端的に言うと「きれいなコード」、または「コードをきれいに書く技術」のことを言います。

では、そもそもきれいなコード、汚いコードとはどのようなコードでしょうか?


■ 汚いコードに見られる特徴

汚いコードには次のような特徴があります。


・変数名があいまい。

・コードが読みづらい。

・規則性がない。

・記述が冗長。

・拡張性がない。

・保守性が低い。

・テストコードが書きづらい。


汚いコードに良くあるケースはコードの記述に一貫性がなく何回も読み直さないと処理の内容が頭に入って来ないような記述になっているケースです。また、適切に処理が分離されていない状態では、新規機能の追加の際にも既存の機能に修正が必要になってくるケースも多々あります。このような状態のコードはあまり良いコードとは言えません。


■ きれいなコードに見られる特徴

一方で、きれいなコード(クリーンコード)には次のような特徴があります。


・変数が適切な名前になっている。

・楽に読むことができる。

・一貫した規則性がある。

・冗長な記述がない。

・拡張性に優れる。

・既存機能の改修がしやすい。

・テストコードが書きやすい。


処理の内容が追いやすく、コードからその処理の意図が伝わってくるようなコードはきれいなコードと言うことが出来ます。また、適切に処理の分離が行われ、新規機能の追加の際にも既存のコードに改修が発生しないと言った点も考慮して書かれたコードはより良いコードと言うことが出来るでしょう。


■ きれいなコードを書くために

では、きれいなコードを書くためにはどのようにすればよいのでしょうか?

一般的にコードをきれいに書くノウハウは実際の開発の中で失敗しながら少しずつ学んでいくものです。問題にぶち当たったときに次回への改善点としてきれいに書くことの重要性とそのノウハウを学びます。ただ、このような機会がない人は決して少なくないはずです。


幸い、先人たちはこれまでの開発で積み上げてきたノウハウをクリーンコードとして体系化してくれています。そのため、皆さんが長い期間をかけて実際の開発の中で学ぶはずのノウハウをショートカットすることができます。


■ 本コースで学ぶこと

本コースでは「良いコード」「悪いコード」の例を用いながら、クリーンコードの観点から、美しいコード他の人から読みやすいコード保守性や拡張性に優れるコードの記述方法について学習をしていきます。


本コースでは「他の人に読みやすいコードを記述しろ!」「保守性を高めろ!」「拡張性に考慮して記述しろ!」といった抽象的な説明は行いません。具体的な例を見ながら、何が良いのか?なぜ悪いのか?について一つずつ細かく確認していきます。


■ コースの対象者

・今後コードを書く上で気を付けるべき点を知っておきたい。

・後で見直して何がどうなっているのか分からない。

・コード量が増えていくとコードの整理できなくなっていく。

・ポートフォリオ用のコードを作成したいが自信がない。

・コードレビューで何度もダメ出しされてへこむ。

・チームメンバーのコードレビューを任されたため指標が欲しい。


このように感じる人は一度本コースを受けてみてください。


これはどんなプログラミング言語やフレームワークを使っていても汎用的に用いることのできる概念です。

本コースではJavaScriptを用いて説明を行うため、一部JavaScriptの言語仕様に依存するところはありますが、Python、Ruby、PHPなどの他のプログラミング言語を使う人にとっても有益な情報を盛り込んでいます。そのため、JavaScript以外のプログラミング言語を学んで居る方にとってもきっと役立つ知識を得ることができます。


また、React、Vue、Firebase、TypeScriptなどをこれから使いたい人にとっては是非一度触れておいていただきたい知識になります。


あなたがもし1年目のプログラマであれば、これから何万、何十万行というコードを書くことになります。

その中で、クリーンコードの概念を知っていると、より適切な記述の指針を得ることができ、より効率的にプログラミングの上達を行うことができます。


プログラミングを上達したいと考えている人は一度クリーンコードに触れてみてください。

あなたがこれまでに意識しなかったコードを読みやすくするテクニックがきっと見つかります。

Screenshots

プログラミング中級者になりたい人のためのクリーンコード入門 - Screenshot_01プログラミング中級者になりたい人のためのクリーンコード入門 - Screenshot_02プログラミング中級者になりたい人のためのクリーンコード入門 - Screenshot_03プログラミング中級者になりたい人のためのクリーンコード入門 - Screenshot_04

Reviews

工藤
May 12, 2023
クリーンコードを書くための原理・原則を多くの事例を通して学べる、非常に価値のある講座だったと思います。特に、原理・原則を言葉でなぞるだけでなく本質に迫る説明がなされている点が良いと思いました。私は職業プログラマーではなく、受講前は特にクラスやSOLIDについてはあまり理解していませんでしたが、この講座を通して理解を深めることができ、練習問題は体感で半分程度ですが自力で解けるようになりました。ありがとうございました!
Shogo
April 19, 2023
CodeMafiaさんのことは独習JavaScriptで知っていたのですが、Udemyでも活動されているのを知って本コースを受講しました。内容としてはJavaScriptをある程度書けるレベルの人であれば、特に問題なく進められると思います。仮にJavaScriptを知らなくても他の言語を知っているのであれば、こちらも問題ないと思います。実務で可読性が良くて保守性の高いコードを書くのにずっと悩んでいましたが、このコースを受けてからコードがかなり綺麗にかけるようになりました。実務でコードをついつい汚してしまう方は、本コースでレベルアップされてはどうでしょうか。おすすめです。
H
January 11, 2023
他で観ることがないような講座内容で、気になっていたけど学ぶ機会がなかったコーディングのノウハウがちょうどよい「まとまり感」で整理されている。 プログラミング言語としてJavaScriptを用いているので他の言語でプログラミングする場合は物足りないかもしれない。逆にJavaScriptの文法や記法を活用してクリーンなコードを書きたい場合には的を絞って学習できる。 発展セクションとなるクラスやSOLIDの解説は、本質的にリファクタリングの考え方の基本を実例を使ってとてもわかりやすく説いている。 全体として、私にとってはとても有益で勉強になりました。
今村
December 31, 2022
普段あまりCodingしないですが、分かりやすい内容となっており、理解することができました。 Codingするのであれば、早い段階で習得することで今後のキャリアにいい影響をもたらします。 練習問題も用意されているので、理解を深めることができました。 非常にわかりやすい内容で、コースを作成していただき誠に有難うございます。
mta
December 25, 2022
特定の機能などを学ぶ他の講座と異なり、どう考えて書くかというリテラシーの部分の学習と感じました。今回pythonでグラフを出力する簡単なプログラムを書きましたが、分割代入や参考演算子を使うことでコメントも少なく、わかりやすいプログラムとなり、自分が書いたとは思えない不思議な感覚になりました。人のプログラムを部分的に書き換えることしかできないとか、組み合わせたけどつぎはぎ状態になってしまうという初心者の私にはぴったりでした。これから本を読むときにも役に立つと思います。
Ryomann
November 30, 2022
ターゲットは中級者の方というかは初級者から中級者に上がるための、デザインパターンなどを勉強する前にやっておいた方がいいかなというレベル感だと思う。 正直内容自体は結構初歩のことも多い。(セクション8,9以外) しかし、このコースで一番得られる最大の利点は、毎日書くコードの中で他の人または未来の自分に分かりやすいよう、読みやすいかつシンプルなコードを書く意識が高まったこと。 意識し始めてから1か月くらいではあるが、自分でもコードの質が上がったことがわかる。 実際に上の人に割といいコード書くねと褒められました。 大満足です。ありがとうございます。
ネギ
November 26, 2022
自分の中に良いコードや読みやすいコードの判断軸がなく、実務の中で読みにくいコードや追いかけ辛いコードに出くわしても、どのように改善すればよいか見当もつかない状況に度々直面していましたが、本講座を学ぶことでそうした状況から抜け出すことが出来ました。実際に自分の手を動かしながら受講できる工夫がなされているため、理解も進みやすかったです。

Charts

Price

プログラミング中級者になりたい人のためのクリーンコード入門 - Price chart

Rating

プログラミング中級者になりたい人のためのクリーンコード入門 - Ratings chart

Enrollment distribution

プログラミング中級者になりたい人のためのクリーンコード入門 - Distribution chart

Related Topics

4906248
udemy ID
9/30/2022
course created date
10/22/2022
course indexed date
Bot
course submited by