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
280
非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
90
質の良い”カイゼン”の為の質の良い「振り返り」
shirayanagiryuji
1
360
一番小さなリファクタリングの話
shirayanagiryuji
0
370
ITエンジニアと組織でのキャリアの考え方
shirayanagiryuji
0
450
SES事業組織とSESで働くエンジニア
shirayanagiryuji
0
550
クラウド初心者が学習プログラムしてみた話
shirayanagiryuji
0
330
プログラマがオブジェクト指向しても幸せになれない理由
shirayanagiryuji
0
380
OCIアカウント作成がんばった!という話
shirayanagiryuji
0
380
文系のシステム開発理系のコーディング
shirayanagiryuji
0
510
Other Decks in Technology
See All in Technology
Java EE/Jakarta EEの現状と将来―クラウドネイティブ時代にJava EEは対応できるのか?―
takakiyo
1
170
プロンプトエンジニアリングでがんばらない-Agentic Workflow へ-近藤憲児
kenjikondobai
4
1k
オーナーシップを持つ領域を明確にする
konifar
13
3.2k
Delivering Millions of Messages within seconds @ Duolingo
pelelgrino
0
350
エンジニア候補者向け資料2024.04.24.pdf
macloud
0
3.3k
BPStudyの200回を中心にIT業界を振り返る。そしてこれから
haru860
3
300
Building Dashboards as a Hobby
egmc
0
300
Janus
bkuhlmann
1
490
【NW X Security JAWS#3】L3-4:AWS環境のIPv6移行に向けて知っておきたいこと
shotashiratori
0
450
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
850
プロトタイピングによる不確実性の低減 / Reducing Uncertainty through Prototyping
ohbarye
5
390
ServiceNow Knowledge 24の歩き方 EYストラテジー・アンド・コンサルティング
manarobot
0
200
Featured
See All Featured
Become a Pro
speakerdeck
PRO
11
4.5k
Being A Developer After 40
akosma
61
580k
Git: the NoSQL Database
bkeepers
PRO
422
63k
[RailsConf 2023] Rails as a piece of cake
palkan
23
4k
Teambox: Starting and Learning
jrom
128
8.4k
Designing on Purpose - Digital PM Summit 2013
jponch
110
6.5k
Bash Introduction
62gerente
604
210k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
2
1.3k
The MySQL Ecosystem @ GitHub 2015
samlambert
243
12k
Building a Modern Day E-commerce SEO Strategy
aleyda
17
6.4k
Atom: Resistance is Futile
akmur
259
25k
Creatively Recalculating Your Daily Design Routine
revolveconf
210
11k
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