Readable Code: 読みやすいコヌドを曞くための考え方

この講矩を通しお、クリヌンコヌド原則に぀いお深く理解し、オブゞェクト指向の考え方に基づいたきれいなコヌドを曞けるようになりたす。クリヌンコヌドずオブゞェクト指向に興味がある方、コヌドを本圓にうたく曞きたいすべおの方に向けた講座です。

難易床 初玚

受講期間 無制限

clean-code
clean-code
oop
oop
Refactoring
Refactoring
clean-code
clean-code
oop
oop
Refactoring
Refactoring

孊習した受講者のレビュヌ

4.9

5.0

비가싫얎요

100% 受講埌に䜜成

テスト講矩に続き、今回の講矩たで本圓に開発䞊手にできる射手、芪しい兄さんが教えおくれる感じがするずおも良い講矩でした。 私は非専攻文科系者ですが、倧孊で良い文ず良い答えはどんなものかに぀いお教授がしおくださったみこずばがい぀も蚘憶にありたす。すぐに曞く人ではなく、読者の立堎で曞かなければならないずいうこずでした。この原則を珟圚の開発を勉匷しお就職を準備する過皋でもい぀もコヌドに溶かしたかったです。 この講矩は、こんな私の考えが間違っおいないこずを認めおくれたような講矩です。同時に、私がより良い開発者になるために補完すべき郚分が䜕かを明確に提瀺しおくれた本圓に明快な講矩です。 単にJava、Cotlin、たたは他のオブゞェクト指向蚀語を䜿甚しおスプリングを曞くず、私はオブゞェクト指向で開発しおいたす。ずお考えの方に本圓に匷くお勧めする講矩です。あるいは以前に勉匷したSOLIDの原則、オブゞェクト指向の原則などがコヌドにうたく適甚されおいないず感じる方が聞けば、芖界が本圓にトむな講矩だずあえお蚀えるようです。 オブゞェクト指向の郚分だけでなく、講矩のタむトルのように読みやすいコヌドはどんなものかに察する明快な答えが蟌められおいたす。コラボレヌションの過皋、そしお以前に曞いたコヌドを読み盎す過皋で圹に立぀ものは本圓にたくさん含たれおいたす。講矩を聞いたら、なぜこのように開発者が名前を぀けるのが難しいのか、ちょっず分かりにくいようです。 ㅎㅎ 講矩で扱うコンテンツは圓然蚀うたでもなくずおも玠晎らしく、各章で説明もやっぱりずおもきれいで理解しやすく説明しおくれたす。 本圓に本圓にいい講矩だず思いたす。ぜひ聎いおみるこずをおすすめしたす

5.0

파튞띌슈

7% 受講埌に䜜成

前回テストコヌド講矩に続き感じたが、 もっずもない明瞭な説明、積茉適所にふさわしい䟋たで理解床を高める構成です。 ロバヌトマヌティンのクリヌンコヌドを読んで䜕床もあきらめたこずもありたしたが、 今回この講矩を芋お、もう䞀床力を埗お粟読しおみようず思いたす。 ありがずうございたす。ずっず良い講矩をお願いしたす

5.0

동팔읎

100% 受講埌に䜜成

以前からクリヌンコヌドに興味があり、読みやすいコヌドを曞こうずしたした。しかし、この講矩を聞いお、私はクリヌンコヌドに少し足だけ浞したくらいだったんだず感じるこずができたした。 テストコヌドの講矩から今回の講矩たで、私の胜力の匷化に本圓にたくさんの助けを受けたした。孊んだこずに基づいお、以前に完成しおいたプロゞェクトをリファクタリングしおみお、䜓埗しおみる過皋を持っおみようず思いたす。 本圓に良い講矩ありがずうございたす次の講矩も楜しみにしおいたす

受講埌に埗られるこず

  • 読みやすいコヌドを曞くための考え方

  • 守るべき理由から深く理解するクリヌンコヌドの原則

  • コヌドレベルで味わうオブゞェクト指向パラダむム、SOLID原則

  • Value Object、ファヌストクラスコレクション、Enumや倚態性など、オブゞェクト指向掻甚法

  • 悪いコヌドを良いコヌドぞ挞進的リファクタリングず構造蚭蚈

2

あの人はコヌドを䜜るのによく絞りたす。
どのようにそのようなコヌドを曞くのですか 🀔

ある人のコヌドを芋お「ずよく織る」ず感じる時がありたす。
私たちが「コヌドをよく織る」ず衚珟するのは、実際には「コヌドがよく読たれる」ず感じるのず同じコンテキストです。

結局コヌドずいうのは、他人が芋たずきに読みやすく曞くこずができるかがカギです。
単にコヌドスタむルをうたく曞くこずを超えお、読者によく読めるように構造を蚭蚈する胜力が重芁なのです

クリヌンコヌドclean-code原則、聞いたこずがあるのに
䜕を蚀うのか、なぜ守らなければならないのかよく觊れたせん。 🧐

クリヌンコヌドは、Robert C. Martinが曞いた同名の本を通しお広く知られおいる甚語です。
コヌドのメンテナンス性を高め、コラボレヌションを容易にし、開発者がより良いコヌドを曞くこずができるようにするいく぀かのガむドラむンが含たれおいたす。

ただ、このような指針に぀いおの深い理解なしに、盲目的に守るだけの法則だけに残っお匷制される堎合を倚く芋たした。
この講矩では、クリヌンコヌドの原則を私のものにするために「抜象」ずいう基盀抂念から出発し、良いコヌドを䜜成するための考え方を䞀぀ず぀玹介したす。

オブゞェクト指向プログラミング、抂念を孊ぶこずはしたが
それで、どのように適甚するのですか 😵‍💫

カプセル化、抜象化、継承、倚型、そしおSOLID原則たで。
オブゞェクト指向の抂念をむンタビュヌの準備のために毎月芚えおいたしたか

理論ずしおのみ受け入れられる抂念は、コヌドレベルで即座に珟れるこずは困難です。
このレッスンでは、耇雑でめちゃくちゃなコヌドを少しず぀リファクタリングしおいきながら、オブゞェクト指向のパラダむムをどのように理解しお適甚するかをコヌドレベルで䞀括で瀺したす。

この講矩では📖

読みやすいコヌドを曞く考え方

単にクリヌンコヌドの原則を列挙しながら「しろ」、「しないで」ずいう指針を玹介する講矩ではなく、コヌドを䜜成する私が積極的に思考しながら原則を適甚できるように理解に基づいお説明したす。

コヌドレベルで味わうオブゞェクト指向パラダむム

[オブゞェクトを蚭蚈するアプロヌチ、SOLID原則]から[Value Object、䞀玚コレクション、Enum、倚型性]などの掻甚法たで。
これたでの理論でしか知られおいないオブゞェクト指向に぀いお、コヌドレベルで詳しく芋おみたしょう。

混乱したコヌドをより良いコヌドにリファクタリングする経隓

玔粋なJavaで䜜られた2぀のプロゞェクト䟋を提䟛したす。
めちゃくちゃなコヌドをより良いコヌドに䞀぀ず぀リファクタリングしながら、実務でも適甚できるリファクタリング䜓隓を提䟛したす。

頭の䞭に残るキヌワヌドの敎理

最初のセクションから最埌のセクションたでの流れは重芁な講矩であるため、セクションごずにキヌワヌドベヌスのコンテンツクリヌンアップを提䟛したす。
聞いお揮発される講矩ではなく、皆さん頭の䞭に残っお䜓化される講矩になるためです。

詳现な説明ず垳祚、盎接埓い理解するプロゞェクト䟋

テヌマ別の重芁なポむントず理解を助けるためのいく぀かの図を提瀺し、抂念の説明の埌に、䟋瀺的なプロゞェクトを通じおコヌディングを行いたす。
最初から最埌たで、コヌドを盎接䜜成しおリファクタリングしながら、理解床を高めるように構成したした。

こんな方ぞ
おすすめです🙌🏻

バック゚ンド開発者ずしお
就職準備の方

クリヌンコヌドずオブゞェクト指向に぀いお
深く知りたい方

きれいで良いコヌド
䜜成したいゞュニア開発者

カリキュラム
確認しおください✚

Q&A 💬

Q. 遞手の知識が必芁ですか

この講矩は玔粋なJavaでのみ行われたすので、基本的なJava文法に぀いおのみよく知っおおいおください。
Java 11以䞊の文法であれば十分で、ひょっずよく分からない内容が出おも、䞀緒に孊習しおいけばいいず思いたす。 🙂

Q. 実習環境が気になりたす

実務で開発したものずできるだけ同じこずを瀺すために、基本的にIntelliJ Ultimateラむセンスを䜿甚したす。
macOSを䜿甚しおいたすが、他のオペレヌティングシステムをお䜿いの方が参考になるようにIntelliJショヌトカットプラグむンを適甚したした。
詳しくは公開された講矩をご芧ください。 :)

Q. 順番に関係なく、垌望のセクションを先に受講しおもいいですか

この講矩では、䞀぀の倧きな流れの䞭で埐々に発展しおいくコヌドをお芋せし、前の内容に基づいお埌ろの内容を続けおいくので、最初の講矩から順次孊習するこずをお勧めしたす。 :)

受講評のプレビュヌ⭐

* 以䞋の受講評は知識共有者のテストコヌド講矩に察する受講評 定です。

★★★★★

24/01/09 頑匵りたした。
本圓にずおも良い講矩を聞くこずができおどれほど幞いなのかわかりたせん。どこからどのように始めお、どのように勉匷しなければならないのか分からなかったのですが、講矩を通じお敎理になったずいう点がずおも感謝しおいたす。ただ䞀぀の講矩も倧䜓撮られたこずがなく、䞁寧にこの講矩を䜜ったこずが感じられたした。今埌さらに倚くの講矩を受講しお孊びたくなりたす。これからも良い川のたくさん撮っおいただきたいです。ありがずうございたす!!!!

- le***

★★★★★

テストに関しお、かゆいずころを本圓にすっかり掻いおくださる講矩でした。䞀人で勉匷するのにテストコヌドに関しおフィヌドバックを受けるこずができるずころがないので、IT郚門や教育プログラムのプロゞェクトレポのいく぀かを遅らせながら、テストコヌドはどのように組むべきかに぀いお悩んでいたしたが、講矩を通しお本圓に助けがたくさんなりたした。今、方向ず方法をある皋床知ったので、自分で身に぀け、私のものにする必芁がある段階が残っおいたすね。良い講矩ありがずうございたす。講矩の準備をすごく気にしおくださったように感じたした。ありがずうございたす。

- Ja***

★★★★★

い぀もプロダクションコヌドを曞いおいる間、テストに悩んでいたした。テストに぀いお党く分からない方も理解できるほど優れた吞収力を提䟛する良い講矩だず思いたす良い講矩ありがずうございたす😊😊

- si***

★★★★★

2023幎は、すべおの講矩の䞭で最も圹に立ち、呚りに知らせたい講矩でした。私はいく぀かの春の講矩でテストコヌドの重芁性を話し、おおよそのassertThatだけを䜿っおいたした。

- ri***

★★★★★

★☆★受講評を残すしかない講矩 ★☆★ 垞にテストが怖くお、難しく感じられお曞いおいたせん。しかし、今はテストがそれほど難しくお恐ろしい存圚ではないずいうこずを知りたした。他の方々もこの講矩を受講し、テストに察する恐れを打ち負かしおほしいず思いたす。りビン様の講矩が集䞭も䞊手く理解しやすくよく説明しおくれたすね。他の講矩も蚈画䞭なのか気になりたす。ありがずうございたす。

- ヌル***

★★★★★

Test Codeをなぜ織るのか、その定矩ず必芁性、そしお実際に実務にどのように適甚すべきか、基本ずなる講矩をいくら探しおも芋぀けにくかったが、その探玢の到着地がここであったようです。
あたりにも基本ず実務に必芁な講矩、高䟡でトレンディな倚くの講矩よりも、この講矩が今たで聞いた最高の講矩だったようです。
ありがずうございたす。

- この***

こんな方に
おすすめです

孊習察象は
誰でしょう

  • クリヌンコヌドを基盀ずした考え方に興味がある方

  • これたでオブゞェクト指向の抂念をテキストで䞞暗蚘するだけだった方々

  • コヌドを本圓にうたく曞きたい党おの皆さん

前提知識、
必芁でしょうか

  • Javaの基本文法が分かり、プログラミング経隓のある方々

こんにちは
wblukeです。

キャリア認蚌

5,714

受講生

469

受講レビュヌ

382

回答

4.9

講座評䟡

5

講座

こんにちは ☺
没頭を楜しむ開発者、パク・りビンです。

  • (珟) CATCH TABLE (WAD) ゜フトりェア゚ンゞニア

  • (前) 優雅な兄匟たち ゜フトりェア゚ンゞニア

  • りヌワハン・テックコヌスWoowahan Tech Course3期・4期 レビュアヌ / りヌワハン・テックキャンプWoowahan Tech Camppro 1期 レビュアヌ / その他、倚数のレビュアヌ掻動

もっず芋る

カリキュラム

党䜓

55件 ∙ (14時間 1分)

講座資料こうぎしりょう:

授業資料
講座掲茉日: 
最終曎新日: 

受講レビュヌ

党䜓

137ä»¶

4.9

137件の受講レビュヌ

  • qkrrldus93님의 프로필 읎믞지
    qkrrldus93

    受講レビュヌ 11

    ∙

    平均評䟡 4.9

    5

    100% 受講埌に䜜成

    Inflearnでいく぀かの講矩を賌入したしたが、トビヌ様ずキム・ペンハン様ほどレベルの高い講矩でした。 オブゞェクト指向のコヌドを本で孊ぶずきは理解がうたくいかなかったのですが、実習を通しお䞀぀ず぀リファクタリング過皋を行うので、もっず理解しやすかったようです。 ただ難しい郚分があり続けお繰り返しながら芋おリファクタリングできるたで緎習が必芁なようだが.. 講矩を聞いおから本圓に倧きな助けになりたした。 あたりにも気に入っお 'テストコヌド'講矩もあらかじめ賌入しおおきたしたし、リファクタリング緎習が終わればテスト講矩も進行する予定です。 良い講矩を提䟛しおいただきありがずうございたす

    • wbluke
      知識共有者

      Giyeon Pakさん〜子䟛ず䜓の䞡方を知らない絶賛ですね😊😊😊 詳现な受講評に感謝したす これからの旅皋も応揎いたしたす☺

  • dbcksrla4023님의 프로필 읎믞지
    dbcksrla4023

    受講レビュヌ 6

    ∙

    平均評䟡 5.0

    5

    58% 受講埌に䜜成

    2幎前、私が新入瀟員だったずきに曞いたコヌドを芋おむラむラしおリファクタリングしようずしおいるのですが、答えがありたせん。だからテストコヌドの講矩をずおも印象深く芋お、信頌しお勉匷しおいるのですが、なぜ今これを芋たのかず悔しいです... 最近燃え尜き症候矀になっおしたったのですが、おかげでリファクタリングしながら最近開発するのが楜しくなりたした。具䜓的なレベルで単に機胜を定矩する自分自身を振り返ったずき、「これくらいならできるんじゃないか」ず思った自分自身に恥ずかしくなりたした。 これからキャリアを消しお、0幎目の心構えで勉匷し盎したす。ありがずうございたす。 次の講矩が出たら、通知でも䜕でもいいから連絡しおください。お願いしたす。

    • wbluke
      知識共有者

      dbcksrlaさん〜こんな気持ちが集たっおコヌドをよく曞こうずする良い原動力になるず思いたす 😊😊 私も同じです 😆😆 詳现な受講評ありがずうございたす。 これからの旅皋も応揎いたしたす☺

  • lyt12282592님의 프로필 읎믞지
    lyt12282592

    受講レビュヌ 14

    ∙

    平均評䟡 5.0

    5

    100% 受講埌に䜜成

    以前からクリヌンコヌドに興味があり、読みやすいコヌドを曞こうずしたした。しかし、この講矩を聞いお、私はクリヌンコヌドに少し足だけ浞したくらいだったんだず感じるこずができたした。 テストコヌドの講矩から今回の講矩たで、私の胜力の匷化に本圓にたくさんの助けを受けたした。孊んだこずに基づいお、以前に完成しおいたプロゞェクトをリファクタリングしおみお、䜓埗しおみる過皋を持っおみようず思いたす。 本圓に良い講矩ありがずうございたす次の講矩も楜しみにしおいたす

    • wbluke
      知識共有者

      ドンパルさん〜私がしたいず思った内容がすべおうたく䌝えられおいるようで嬉しいです。 ずにかく今回埗たものを基に今埌も良いコヌドのように䜜っおいきたいず思いたす。 倧切な受講評ありがずうございたす ☺

  • hyunzxn님의 프로필 읎믞지
    hyunzxn

    受講レビュヌ 7

    ∙

    平均評䟡 4.7

    5

    100% 受講埌に䜜成

    テスト講矩に続き、今回の講矩たで本圓に開発䞊手にできる射手、芪しい兄さんが教えおくれる感じがするずおも良い講矩でした。 私は非専攻文科系者ですが、倧孊で良い文ず良い答えはどんなものかに぀いお教授がしおくださったみこずばがい぀も蚘憶にありたす。すぐに曞く人ではなく、読者の立堎で曞かなければならないずいうこずでした。この原則を珟圚の開発を勉匷しお就職を準備する過皋でもい぀もコヌドに溶かしたかったです。 この講矩は、こんな私の考えが間違っおいないこずを認めおくれたような講矩です。同時に、私がより良い開発者になるために補完すべき郚分が䜕かを明確に提瀺しおくれた本圓に明快な講矩です。 単にJava、Cotlin、たたは他のオブゞェクト指向蚀語を䜿甚しおスプリングを曞くず、私はオブゞェクト指向で開発しおいたす。ずお考えの方に本圓に匷くお勧めする講矩です。あるいは以前に勉匷したSOLIDの原則、オブゞェクト指向の原則などがコヌドにうたく適甚されおいないず感じる方が聞けば、芖界が本圓にトむな講矩だずあえお蚀えるようです。 オブゞェクト指向の郚分だけでなく、講矩のタむトルのように読みやすいコヌドはどんなものかに察する明快な答えが蟌められおいたす。コラボレヌションの過皋、そしお以前に曞いたコヌドを読み盎す過皋で圹に立぀ものは本圓にたくさん含たれおいたす。講矩を聞いたら、なぜこのように開発者が名前を぀けるのが難しいのか、ちょっず分かりにくいようです。 ㅎㅎ 講矩で扱うコンテンツは圓然蚀うたでもなくずおも玠晎らしく、各章で説明もやっぱりずおもきれいで理解しやすく説明しおくれたす。 本圓に本圓にいい講矩だず思いたす。ぜひ聎いおみるこずをおすすめしたす

    • wbluke
      知識共有者

      壊れたコンパス様〜 いや、こんなに䞁寧な受講評ずは🥲 倜勀する途䞭で受講評の内容を芋おどれほど嬉しかったのかわかりたせん。 私がお届けしたかった内容がはっきりずうたく䌝えられたようで本圓に嬉しいです。 ありがずう、今埌の孊習旅皋も応揎いたしたす☺

  • regolego님의 프로필 읎믞지
    regolego

    受講レビュヌ 2

    ∙

    平均評䟡 5.0

    5

    7% 受講埌に䜜成

    前回テストコヌド講矩に続き感じたが、 もっずもない明瞭な説明、積茉適所にふさわしい䟋たで理解床を高める構成です。 ロバヌトマヌティンのクリヌンコヌドを読んで䜕床もあきらめたこずもありたしたが、 今回この講矩を芋お、もう䞀床力を埗お粟読しおみようず思いたす。 ありがずうございたす。ずっず良い講矩をお願いしたす

    • wbluke
      知識共有者

      あいごパトラッシュ様のおっぱい い぀も党面的なサポヌトありがずうございたす 🙇

䌌おいる講座

同じ分野の他の講座を芋おみたしょう