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
550
オブジェクト指向で挫折する初学者へ
deepoli
June 29, 2022
Tweet
Share
Other Decks in Programming
See All in Programming
Elixir で IoT 開発、 Nerves なら簡単にできる!?
pojiro
1
150
エラーって何種類あるの?
kajitack
5
160
SODA - FACT BOOK
sodainc
1
1k
Haskell でアルゴリズムを抽象化する / 関数型言語で競技プログラミング
naoya
17
4.7k
Development of an App for Intuitive AI Learning - Blockly Summit 2025
teba_eleven
0
120
Gleamという選択肢
comamoca
6
730
Javaに鉄道指向プログラミング (Railway Oriented Pro gramming) のエッセンスを取り入れる/Bringing the Essence of Railway-Oriented Programming to Java
cocet33000
2
580
Kotlin エンジニアへ送る:Swift 案件に参加させられる日に備えて~似てるけど色々違う Swift の仕様 / from Kotlin to Swift
lovee
1
220
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
960
生成AIで日々のエラー調査を進めたい
yuyaabo
0
600
Practical Tips and Tricks for Working with Compose Multiplatform Previews (mDevCamp 2025)
stewemetal
0
120
事業戦略を理解してソフトウェアを設計する
masuda220
PRO
22
6.1k
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
39
1.8k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
We Have a Design System, Now What?
morganepeng
52
7.6k
Designing for humans not robots
tammielis
253
25k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Rails Girls Zürich Keynote
gr2m
94
14k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
GitHub's CSS Performance
jonrohan
1031
460k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Transcript
オブジェクト指向で挫折する初学者へ 株式会社ラクス 山口 良輔
自己紹介 山口 良輔(ryosuke yamaguchi) Twitter: @13_guchi 経歴 - 生粋の文系出身 -
5年前にプログラミング楽しいな〜ってなってこの業界に転職 - 4年間SIerに勤め、客先で揉まれてました - 2021年7月ラクスに入社 - 現在は楽楽電子保存のバックエンド開発担当 好きなもの - バックエンド - Java / Go - OSS - Rebuild - 趣味プログラミング - 写真の加工
なぜオブジェクト指向で 挫折するほど最初から理解しようとするのか
オブジェクト指向を考えない - Javaに関しては入門段階で出てくることもあり、初心者には理解がもやっとする →自分のコードに落とせない、あるいは目的のはっきりしないオブジェクトが沢山できる - まずはオブジェクト指向を頭の片隅に追いやり純粋にコードを書いてみる →スパゲティにでも重複処理になってもOK - 自分の知識だけでコーディングしない まずは言語に慣れる・コードを書く感覚を育てることが大事。
テストコードを書く - 学びはじめはテストコードを書くということが後回し・あるいは書かない - テストが書きにくいと感じることが大事 - テストコードが汚くても正常系・異常系パターンのテストケースが通るようにする - テストのしやすさを意識することがオブジェクト指向を意識することにつながる
リファクタリングしてみる - 学んだことを少しずつ自分のコードに適用してみる ※あまり全てに目を向けると嫌になるのでスコープを絞る →責務を1つに絞るとか重複処理をまとめるなどなど - 可読性を意識する - 必要最低限を意識する ※Java8以降はラムダが使えることを忘れてはいけない
訳もわからず「オブジェクト指向だから」と どんどんクラスやインターフェースを作って迷宮化しがちなので気を付けましょう
OSSから学ぶ - 学習もしくは業務からだけの知識では 一般的ではないあるいは古いパターンもあり知識に偏りが出ることが多い - OSSにある比較的メジャーでメンテナンスされているコードを見てみると感覚を養える - 使っているライブラリやフレームワークがあればそれを見るのが一石二鳥 - 隙があれば色々確認(色々な意味含む)してPR出してみるのもあり
兎にも角にもまずはたくさんコード を書きましょう
End