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
非Javaエンジニアが「プロになるJava」で再勉強した話
Search
ShirayanagiRyuji
November 27, 2022
Technology
0
440
非Javaエンジニアが「プロになるJava」で再勉強した話
2022年11月27日 (日) JJUG CCC 2022 Fall で登壇したときの資料です。
https://jjug.doorkeeper.jp/events/143914
ShirayanagiRyuji
November 27, 2022
Tweet
Share
More Decks by ShirayanagiRyuji
See All by ShirayanagiRyuji
工業高校で学習したとあるエンジニアのキャリアの話
shirayanagiryuji
0
140
採択さ(ルビ:きのこ)れなかったセッションの話
shirayanagiryuji
0
150
アーキテクチャわからん、の話
shirayanagiryuji
0
440
ドラクエとマリオに学ぶチュートリアル
shirayanagiryuji
0
70
PDOの仕様 コレ知ってる?~DAOクラスを作る~
shirayanagiryuji
0
32
リアル登壇だから気をつけたい「マイクの使い方」のコツ
shirayanagiryuji
0
250
質の良い”カイゼン”の為の質の良い「振り返り」
shirayanagiryuji
1
500
一番小さなリファクタリングの話
shirayanagiryuji
0
550
ITエンジニアと組織でのキャリアの考え方
shirayanagiryuji
0
550
Other Decks in Technology
See All in Technology
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
330
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
270
AIのグローバルトレンド2025 #scrummikawa / global ai trend
kyonmm
PRO
1
300
これでもう迷わない!Jetpack Composeの書き方実践ガイド
zozotech
PRO
0
1k
20250913_JAWS_sysad_kobe
takuyay0ne
2
230
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
470
Evolución del razonamiento matemático de GPT-4.1 a GPT-5 - Data Aventura Summit 2025 & VSCode DevDays
lauchacarro
0
210
Rustから学ぶ 非同期処理の仕組み
skanehira
1
140
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
190
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
710
KotlinConf 2025_イベントレポート
sony
1
140
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
480
Featured
See All Featured
For a Future-Friendly Web
brad_frost
180
9.9k
Docker and Python
trallard
46
3.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Why Our Code Smells
bkeepers
PRO
339
57k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
GraphQLとの向き合い方2022年版
quramy
49
14k
RailsConf 2023
tenderlove
30
1.2k
Side Projects
sachag
455
43k
Gamification - CAS2011
davidbonilla
81
5.4k
Transcript
非Javaエンジニアが 「プロになるJava」で 再勉強した話 白栁隆司 2022年11月27日 JJUG CCC 2022 Fall TrackA
自己紹介 エンジニアカウンセラー 白栁 隆司 Youtubeに動画投稿中! #ほぼ日ITエンジニアニュース ←更新止まってるw @IT 自分戦略研究所 エンジニアライフにて「コレがワタシの生きる様」連載中(木曜日) ITエンジニアが永く活動する為のサポート活動
主に4つのことを、ITエンジニアに勧めています 1. 傾聴ベースのコミュニケーション 2. メンタルヘルス(セルフケア) 3. セルフマネジメント 4. 日々の生活の中からエンジニアリングを学ぶ
・第二種情報処理技術者 ・産業カウンセラー ・メンタルヘルスマネジメント検定 主な開発言語 略歴 1981年 5月 生まれる 1993年10月 プログラムに初めて触れる
1995年 5月 自宅にPC導入 1997年 4月 高校でプログラミングを学習 2000年 4月 地元の中小ソフトハウス勤務 2005年 4月 東京SESエンジニア活動開始 2019年 9月 フリーランス活動開始 2022年 8月 約15年振りの引っ越し ♥ TRPG, ボードゲーム, ポケモン, 特撮, スキー etc... ・C / C++ ・C#(.net系) ・Java ・JavaScript(JQuery) ・PHP ・Python ・PL/SQL ・VB、VBA、VBScript 主な資格 エンジニアカウンセラー 白栁 隆司 自己紹介
このセッションのターゲット ⭕ 非Javaのエンジニアだけど、Javaに興味がある ▪ 白栁は非Javaとは言うけど全くJavaしない訳ではない ⭕ 最新のモダンなJavaの学習をしたい ⭕ 非JavaエンジニアにJavaを説明したい ❌
書籍「プロになるJava」の説明を聴きたい 「再勉強」の話です!
アジェンダ 1. 学習の流れについて 2. 良かったポイント 3. 他の言語経験者へ(C#, PHP) 4. 今後やってみたいこと
1. 学習の流れ ※オススメしない • 全編を真面目に写経はしない • 最後まで本を読む • 気になったポイントに絞って読み返し&写経 ◦
特にJava 8までにはなかった部分、第6部 • IDEはEclipceを使用 ※仕事の都合
1. 学習の流れ • オススメしない理由は…… ◦ やっぱり写経は大事! ▪ 学んで手を動かして経験にできる ◦ その後の「改造」までして欲しい
• 自身の経験や理解力に合わせて調整を!
2. 良かった点 1. 適度な課題がある 2. 最新(Java 17)の書き方に対応している 3. JShellの使い方がありがたい 4.
GUIからWebまで対応している 5. 最新の開発手法・環境への言及と解説
2-1. 適度な課題がある • 実際に考えて手を動かして学べる課題がある ◦ 直前まで触っていたものを変えてみる系が多い ◦ 単純な写経では終わらない • 「読む→触る→考える→変える」で強い体験になる
◦ 「わかったつもり」を生み出しにくい構成
2-2. 最新の書き方に対応している • Java 17までの書き方に対応している ◦ 古いバージョンでは使えないものには注釈有 「Java XXから使えるようになった~」等 •
Java 8までの機能しか主に使ってない ◦ Streamとかラムダ式の解説が丁寧だった
2-3. JShellの使い方がありがたい • あるある:ちょっとした処理の確認をする方法は? ◦ コマンドライン実行は強力なツール! ◦ JShell上でいろいろなことができる、気づき ▪ 変数の命名の重要性にも気づける?
• 例外(スタックトレース)の読み方までフォロー
2-4. GUIからWebまで対応している • 多くの人が興味があるGUIとWebアプリ ◦ 基礎レベルの内容 ▪ SwingによるGUI解説 ▪ Spling
BootによるWebアプリ開発 • 本格的な開発の為の技術書を読むスモールステップに
2-5. 最新の開発手法・環境 • 今や必須になっている概念・ツールの説明 ◦ Gitや自動テストに付いての解説がある ◦ SQLやHTTP通信についてもわかりやすい解説 • 「型」よりも「モジュール」への流れに衝撃
◦ まだうまく言葉にできない
3. 他の言語経験者へ 他の開発言語を経験している人への橋渡し 1. C# 2. PHP
3-1. 他の言語経験者へ(C#) • 元々、書き方がとても近い言語である ◦ クラス関連やアルゴリズムの部分はそのまま • Streamやラムダ式など似てたり違ってたりの部分 ◦ 混乱しないように注意が必要になる
• Visual Studio以外のIDEを使うことで得られる刺激
3-2. 他の言語経験者へ(PHP) • デバッグがとても楽!!(IDEとTomcat等の連携) • MVCの考え方は共通 ◦ Laravel等FWを導入した環境が近い?(未経験) • 強い「型」の意識には戸惑うだろう
• アノテーションとかエンドポイントでも混乱しそう 他のAPサーバーとも容易に連携できるらしい
4. 今後やってみたいこと • 違う開発環境での写経や改造をしてみる ◦ IntelliJ IDEA、VSCode ◦ JUnitやJavadocの積極利用、JavaBeans利用 •
飛ばしている部分も多いので丁寧な写経 ◦ 「わかったつもり」の発見へ繋げる
まとめ • Q.再学習の効果はあったのか? A.わからん → 仕事では使っていない部分、今後の備え • Javaの入門書としてとても良い本 ◦ プログラマが再勉強に使うのにも良い本
• 改めて勉強する最初の一冊としてオススメです!
ご清聴ありがとうございました エンジニアカウンセラー 白栁隆司 @ShirayanagiRyuj Java以外も触ってみて欲しい 非Javaエンジニアが「プロになるJava」で再勉強した話 #jjug_ccc_a