Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
うごいてるコードレビュー
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Kazunori Jo
August 01, 2014
Programming
860
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
うごいてるコードレビュー
うごイラ Tech Talks
Kazunori Jo
August 01, 2014
More Decks by Kazunori Jo
See All by Kazunori Jo
爆速で組織になじみ “Work is Fun” を体現するIVRyのオンボーディング
itochan
1
450
ビデオ会議の音をよくする / Making Sound Better with Video Conference
itochan
0
460
我々はいかにして安全な 名前解決を手に入れるか / How do we get secure name resolution
itochan
0
180
MugenFS: クラウドストレージ利用時におけるキャッシュ戦略
itochan
0
220
PacketFS: ファイルシステムによるバックアップの自動化
itochan
0
170
おはようのとりかた
itochan
0
250
高校生におけるソーシャルメディア適正利用を奨励する活動について
itochan
0
420
Bitcoinでお金を稼ぐ #dentoolt
itochan
0
740
ラブアンドルビー
itochan
0
1.5k
Other Decks in Programming
See All in Programming
TanStack Vue Query と Pinia Colada から学ぶ非同期状態の型設計
aoshi
0
240
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
240
R8 の設定見直しでアプリサイズ削減
andpad
0
230
sbt 2.0: takeoff
eed3si9n
0
170
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
160
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.7k
エージェントを使い続けるためのメタワーク / Meta-work for keeping using the agent
rkaga
6
1.9k
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Kaigi on Rails 2026, Tokyo, Japan
marcoroth
2
340
Vue Fes Japan の “作る側”に関わってみて
naokihaba
1
190
npm との違いを手がかりにGo の依存管理を理解したい
optim
0
1.1k
[2026-10-09]一枚の布で作らなくてもいい。 信頼性は「パッチワーク」で紡がれる~既存の運用と新しい可能性をつなぎ合わせてきたCREの話~
tosite
0
110
Modernizing iOS Apps
seyfoyun
0
120
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
187
23k
Music & Morning Musume
bryan
48
7.5k
Bash Introduction
62gerente
615
220k
Documentation Writing (for coders)
carmenintech
77
5.6k
Deep Space Network (abreviated)
tonyrice
0
380
Six Lessons from altMBA
skipperchong
29
4.5k
How to Think Like a Performance Engineer
csswizardry
28
2.9k
What's in a price? How to price your products and services
michaelherold
247
13k
Statistics for Hackers
jakevdp
799
230k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
1k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
330
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Transcript
͏͍ͯ͝Δ ίʔυϨϏϡʔ JUPDIBO IUUQJOTJEFQJYJWOFUFOUSZ ͏͝Πϥ5FDI5BMLT
None
͏͝Πϥഒ
ൃදऀʹ͍ͭͯ w ͍ͱ͓ w !J w IUUQJUPDIBOKQ w ϐΫγϒΞϧόΠτʹಥೖ w
ॳΊͯձࣾͰ-5͠·͢
ൃදऀʹ͍ͭͯ w "OESPJEΞϓϦ։ൃऀ w ൃදऀͷதͰ࠷͏͝Πϥʹؔͯ͠ ݟ͕ͳ͍Ͱ͢
͏͝Πϥʹ͍ͭͯͪΐͬͱߟ͑ͯΈͨ | ΒΜͩΉ͚Μ͖Ύ͏͡ΐ! http://rndomhack.com/2014/07/04/%E3%81%86%E3%81%94%E3%82%A4%E3%83%A9%E3%81%AB %E3%81%A4%E3%81%84%E3%81%A6%E3%81%A1%E3%82%87%E3%81%A3%E3%81%A8%E8%80%83 %E3%81%88%E3%81%A6%E3%81%BF%E3%81%9F/ l࣮ࡍͷ͏͝Πϥ 5FDI5BMLTͳΜ͔ʹ ߦ͚͍͍͔͠Ε· ͤΜɻz
࣮ࡍͷΛ͠·͢
͏͝Πϥͱ w ͏͘͝Πϥετͷུ w දهͷΏΕ
None
None
͏͝Πϥͱ w ͏͝ΠϥPS͏͘͝Πϥετ PS6HPJSBPS"OJNBUFE*MMVTUSBUJPO w ͏͝Πϥ͕ਖ਼໊ࣜশ͔Ͳ͏͔Θ͔Βͳ͘ ͳ͖ͬͯͨ w ͜ͷʹ͓͍ͯ͏͝ΠϥͰਐߦ͠·͢
ίʔυϨϏϡʔ ʹ͍ͭͯ
"OESPJEΞϓϦ w ଞϓϩδΣΫτͰ(JU-BC͕ΘΕͯ ͍Δ͕ɺΞϓϦͱ͍͔ͭ͘ͷϓϩδΣ ΫτͰ(JU)VC͕ΘΕ͍ͯΔ w ݱࡏ"OESPJEΞϓϦͷίʔυΛॻ͍ͯ ͍Δͷࣾһ໊ ΞϧόΠτ໊
ϨϏϡʔͷྲྀΕ
1VMM3FRVFTU ཱ͕ͭ
ϨϏϡʔͯ͠ʂ ཉٻߴ·Δ
ϨϏϡʔΛ͢Δ
Αͦ͞͏
Α͞
IUUQTUXJUUFSDPNUPUPUPTIJTUBUVTFT
-(5. -00,4(00%50.& IUUQXXXMHUNJOJ;6;
ಈ͖ॏཁ
ίʔυϨϏϡʔʹ ಈ͖Λ
͏͍ͯ͝Δ ίʔυϨϏϡʔ
None
None
DPNNFOUT
None
BEEJUJPOT EFMFUJPOT
େྔͷมߋ ഭΓ͘Δίʔυ
్தͰϨϏϡΞ͕ มΘͬͨΓͨ͠
มߋଟ͗ͯ͢ ݟΕͳ͍
ͦ͜ΛͳΜͱ͔
ػೳ໘ͷϨϏϡʔ લͷϨϏϡΞ͕طʹ ͍͍͍ͩͨͬͯͨ
ओʹ࡞๏ͳͲͷ Α͘ͳ͍ίʔυ ΛϨϏϡʔͨ͠
None
ίʔυͷ
ਓͷϨϏϡΞ !@@DIPDPNFMPO !J
ྫ֎Λ QSJOU4UBDL5SBDF͠ͳ͍ ✘ Bad ! 1 try { 2 //
something code 3 } catch (SomethingException e) { 4 e.printStackTrace(); 5 }
ྫ֎Λ QSJOU4UBDL5SBDF͠ͳ͍ ✔ Good ! 1 try { 2 //
something code... 3 } catch (SomethingException e) { 4 // custom log utils 5 LogUtils.e("PixivAndroidApp", "SomethingException", e); 6 }
*%&͕ੜ͢Δ ίϝϯτΛফ͢ ✘ Bad ! 1 package jp.pxv.android; 2 3
/** 4 * Created by Chobi on 2014/05/26. 5 */ 6 7 public class CreatedByComment { IUUQTUBDLPWFSqPXDPNRVFTUJPOT
*%&͕ੜ͢Δ ίϝϯτΛফ͢ ✔ Good ! 1 package jp.pxv.android; 2 3
public class CreatedByComment { IUUQTUBDLPWFSqPXDPNRVFTUJPOT
ఆTUBUJDpOBMͰ 1 public class Constants { 2 // ✘ Bad
3 private final String BAD_FOO = "foo"; 4 private final String BAD_BAR = "bar"; 5 6 // ✔ Good 7 private static final String GOOD_FOO = "foo"; 8 private static final String GOOD_BAR = "bar"; 9 }
ม໊ ✘ Bad 1 @Override 2 public void onProgressChanged(float progressRate)
{ 3 final float _progressRate = progressRate; 4 uiThreadHandler.post(new Runnable() { 5 @Override 6 public void run() { 7 if (_progressRate == 1) { 8 progressBar.setVisibility(View.GONE); 9 } 10 } 11 }); 12 }
ม໊ ✔ Good 1 @Override 2 public void onProgressChanged(final float
progressRate) { 3 uiThreadHandler.post(new Runnable() { 4 @Override 5 public void run() { 6 if (progressRate == 1) { 7 progressBar.setVisibility(View.GONE); 8 } 9 } 10 }); 11 }
ଞʹ w ্ྲྀϒϥϯνͰ͢Ͱʹมߋ͞Ε͍ͯΔ ͷ͕1VMM3FRVFTUͷϒϥϯνͰಉ ͡มߋͷผͷDPNNJUΛ͍ͯ͠Δ w ˠఆظతʹ্ྲྀϒϥϯνΛ git merge --no-ffͰऔΓࠐΊ
Α͍
·ͱΊ w มߋ͕ଟ͗͢ΔͱϨϏϡʔ͠ʹ͍͘ w ϨϏϡʔΛසൟʹߦ͏ͳͲ͢Δඞཁ͕͋Δ ˠ1VMM3FRVFTUͷ୯ҐΛࡉ͔͘͢Δ w ͏͔͝ͳ͍ίʔυΑΓ͏͘͝ίʔυͷ΄ ͏͕͍͍ w
ίʔυஅવ͖Ε͍ͳ΄͏͕͍͍
͝ਗ਼ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠