Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
オブジェクト指向で挫折する初学者へ
Search
deepoli
June 29, 2022
Programming
1
570
オブジェクト指向で挫折する初学者へ
deepoli
June 29, 2022
Tweet
Share
Other Decks in Programming
See All in Programming
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
270
複雑なドメインに挑む.pdf
yukisakai1225
4
820
CloudflareのChat Agent Starter Kitで簡単!AIチャットボット構築
syumai
1
240
オープンセミナー2025@広島LT技術ブログを続けるには
satoshi256kbyte
0
150
サイトを作ったらNFCタグキーホルダーを爆速で作れ!
yuukis
0
740
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
210
未来を拓くAI技術〜エージェント開発とAI駆動開発〜
leveragestech
2
200
MLH State of the League: 2026 Season
theycallmeswift
0
200
デザインシステムが必須の時代に
yosuke_furukawa
PRO
2
130
Microsoft Orleans, Daprのアクターモデルを使い効率的に開発、デプロイを行うためのSekibanの試行錯誤 / Sekiban: Exploring Efficient Development and Deployment with Microsoft Orleans and Dapr Actor Models
tomohisa
0
220
レガシープロジェクトで最大限AIの恩恵を受けられるようClaude Codeを利用する
tk1351
4
1.5k
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
350
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
830
The World Runs on Bad Software
bkeepers
PRO
70
11k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
Designing Experiences People Love
moore
142
24k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Why Our Code Smells
bkeepers
PRO
339
57k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Side Projects
sachag
455
43k
Producing Creativity
orderedlist
PRO
347
40k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Transcript
オブジェクト指向で挫折する初学者へ 株式会社ラクス 山口 良輔
自己紹介 山口 良輔(ryosuke yamaguchi) Twitter: @13_guchi 経歴 - 生粋の文系出身 -
5年前にプログラミング楽しいな〜ってなってこの業界に転職 - 4年間SIerに勤め、客先で揉まれてました - 2021年7月ラクスに入社 - 現在は楽楽電子保存のバックエンド開発担当 好きなもの - バックエンド - Java / Go - OSS - Rebuild - 趣味プログラミング - 写真の加工
なぜオブジェクト指向で 挫折するほど最初から理解しようとするのか
オブジェクト指向を考えない - Javaに関しては入門段階で出てくることもあり、初心者には理解がもやっとする →自分のコードに落とせない、あるいは目的のはっきりしないオブジェクトが沢山できる - まずはオブジェクト指向を頭の片隅に追いやり純粋にコードを書いてみる →スパゲティにでも重複処理になってもOK - 自分の知識だけでコーディングしない まずは言語に慣れる・コードを書く感覚を育てることが大事。
テストコードを書く - 学びはじめはテストコードを書くということが後回し・あるいは書かない - テストが書きにくいと感じることが大事 - テストコードが汚くても正常系・異常系パターンのテストケースが通るようにする - テストのしやすさを意識することがオブジェクト指向を意識することにつながる
リファクタリングしてみる - 学んだことを少しずつ自分のコードに適用してみる ※あまり全てに目を向けると嫌になるのでスコープを絞る →責務を1つに絞るとか重複処理をまとめるなどなど - 可読性を意識する - 必要最低限を意識する ※Java8以降はラムダが使えることを忘れてはいけない
訳もわからず「オブジェクト指向だから」と どんどんクラスやインターフェースを作って迷宮化しがちなので気を付けましょう
OSSから学ぶ - 学習もしくは業務からだけの知識では 一般的ではないあるいは古いパターンもあり知識に偏りが出ることが多い - OSSにある比較的メジャーでメンテナンスされているコードを見てみると感覚を養える - 使っているライブラリやフレームワークがあればそれを見るのが一石二鳥 - 隙があれば色々確認(色々な意味含む)してPR出してみるのもあり
兎にも角にもまずはたくさんコード を書きましょう
End