ใช้เวลานานแค่ไหนในการเรียนรู้ Java? สิบปี สิบสัปดาห์ หรือหนึ่งวัน? อาจจะทั้งชีวิตของคุณ? คุณอาจพบคำตอบที่แปลกประหลาดสำหรับคำถามนี้ในฟอรัมออนไลน์บางแห่ง มาทำให้ชัดเจนตั้งแต่เริ่มต้น ในบทความนี้ “รู้จัก Java” ไม่ได้หมายความว่าคุณสามารถเขียน “Hello world program” ได้ มันเกี่ยวกับการรู้จัก Java ดีพอที่จะหางานแรกของคุณ คำขวัญของ Buzz Lightyear ในชื่อเรื่องไม่ใช่เรื่องตลก คุณสามารถเรียนรู้ Java หรือภาษาอื่น ๆ ต่อไปได้ตลอดชีวิต เหตุผลคือภาษามีการพัฒนาอย่างต่อเนื่อง ขอบเขตของภาษามีการเปลี่ยนแปลง และ... ข่าวดี เพื่อนๆ!ไม่มีเหตุผลที่จะตื่นตระหนก! การเรียนรู้พันธกิจ Java นั้นเป็นไปได้อย่างแน่นอนที่จะเสร็จสิ้นภายใน 3 ถึง 12 เดือน อย่างไรก็ตาม มีความแตกต่างมากมายที่เราจะกล่าวถึงในบทความนี้ ที่นี่เราจะพยายามตอบคำถาม “วิธีเรียนรู้ Java อย่างรวดเร็ว” ด้วย
Yuliya Deinegaนักพัฒนาซอฟต์แวร์ที่เรียนรู้ด้วยตนเอง Yulia ทำงานให้กับ LinkedIn ในตำแหน่ง REACH Apprentice Engineer นอกจากนี้ เธอได้สร้างช่อง YouTubeเพื่อแบ่งปันประสบการณ์การเรียนรู้การเขียนโปรแกรมคอมพิวเตอร์และการหางานใน Silicon Valley
เราสามารถแบ่งผู้ที่เริ่มเรียนภาษาจาวาออกเป็นสามประเภทหลักคือ
PS:แล้วคุณล่ะ? ตอนนี้คุณเรียนรู้ Java นานแค่ไหน? กระบวนการนี้ยากไหม หรือบางทีคุณอาจพบงานที่เกี่ยวข้องกับ Java งานแรกของคุณแล้ว? มันยากไหม? หรือบางทีคุณเพิ่งเริ่มมองหามัน? แบ่งปันประสบการณ์ของคุณที่นี่!
เราจะหาคำตอบได้อย่างไร
คำถาม “ต้องใช้เวลานานแค่ไหนในการเรียนรู้ Java” นั้นค่อนข้างยุ่งยาก เราแบ่งออกเป็นคำถามย่อยที่เฉพาะเจาะจงมากขึ้นและตอบคำถามเหล่านี้ที่นี่ เพื่อให้แม่นยำยิ่งขึ้น เราใช้การสัมภาษณ์กับนักเรียน CodeGym โอเพ่นซอร์ส และสถิติจากแบบสำรวจ แบบสำรวจนั้นเกี่ยวกับกระบวนการเรียนรู้ Java และการค้นหางานแรกนั้น ดำเนินการโดยหนึ่งในหน่วย CodeGym ในพื้นที่ ผู้เข้าร่วมการสำรวจคือนักเรียน CodeGym ระดับ 30 ขึ้นไป ซึ่งได้ค้นพบงานที่เกี่ยวข้องกับ Java เป็นงานแรกหรือเข้าร่วมในการฝึกงานด้าน Java“รู้ Java” หมายถึงอะไร?
คำตอบที่ถูกต้องที่สุดแม้ว่าจะเป็นคำตอบทั่วไปสำหรับคำถามนี้คือ "สามารถแก้ปัญหาโดยใช้ Java ได้" ปัญหาดังกล่าวอาจเป็นเป้าหมายของการ "สอบผ่าน" หรือ "ได้งานทำ" หรืออาจเป็นงานด้านเทคนิค ไม่ว่าจะเป็นงานใหญ่ "เพื่อสร้างโครงการของตัวเองให้ดีพอสำหรับ Play Market" หรืองานเล็กๆ เช่น "เข้าใจวิธีเขียนโค้ดที่ทำสิ่งที่คุณต้องการ" แน่นอนว่าปัญหาของคุณจะเปลี่ยนไปตามกาลเวลา หลังจากได้งานแรกแล้ว คุณจะต้องเติบโตในตำแหน่งต่างๆ (เช่น จาก Java Junior Developer เป็น Java Middle/Senior Developer) งานเข้ารหัสงานแรกจะตามด้วยงานที่สอง นอกจากนี้ เมื่อคุณทำสำเร็จ เป้าหมายใหม่จะปรากฏขึ้น ลองกลับมาที่คำถามของเรา หัวข้อใดที่คุณควรรู้ในการเขียน "ฉันรู้ Java" ลงใน CV ของคุณ นักเรียน Java มักจะเรียนรู้หัวข้อต่อไปนี้:- คอร์ Java หรือ
- Core Java + JUnitหรือ
- Core Java + ฐานข้อมูลหรือ
- Core Java + Toolsหรือ
- Core Java + Librariesหรือ
- Core Java + Spring + SpringBoot + ไฮเบอร์เนตหรือ
- Core Java + Android SDK หรือ
- …และชุดค่าผสมทั้งหมดข้างต้น
- ประเภทและวัตถุพื้นฐาน
- โครงสร้างพื้นฐาน (ตัวดำเนินการพิเศษ ลูป แบรนช์)
- แนวคิด OOP
- คลาสเครื่องห่อ
- คอลเลกชัน
- มัลติเธรด
- I/O สตรีม
- การจัดการข้อยกเว้น
ทางส่วนตัวของคุณ คุณเรียนรู้ Java เพื่ออะไร
ในบทความนี้ เราไม่พิจารณาตัวเลือกต่างๆ เช่น “ฉันเรียน Java เพื่อความสนุก” หรือ “ฉันต้องการสอน Java ในอนาคต” ที่นี่เรากำลังพูดถึงการใช้ Java ใน IT อย่างมืออาชีพ ในปัจจุบัน Java ส่วนใหญ่มักได้รับการสอนเพื่อไปด้วยวิธีใดวิธีหนึ่งจากสามวิธี:- Java Developer ตั้งแต่ผู้ฝึกหัด / นักพัฒนารุ่นเยาว์ไปจนถึงนักพัฒนาอาวุโส
- Android Developer, อินดี้หรือในบริษัท (จูเนียร์ถึงอาวุโส)
- ระบบอัตโนมัติ QA (พร้อม Java)
นักพัฒนา Java
พูลของ Java Developer นั้นกว้างมากและข้อกำหนดสำหรับความรู้ Java คือการได้งานแรกของคุณซึ่งอาจแตกต่างกันมาก จากการสำรวจของ CodeGym มีบางคนที่ได้งาน Java Junior เป็นครั้งแรกโดยรู้เฉพาะ Java Core เท่านั้นและไม่มีอะไรเพิ่มเติม บริษัทพร้อมที่จะฝึกอบรมพวกเขาในกระบวนการทำงาน อย่างไรก็ตาม นี่เป็นเหตุการณ์ที่ค่อนข้างหายาก บ่อยครั้งที่บุคคลดังกล่าวสามารถเข้าร่วมการฝึกงานหรือกลายเป็นผู้ฝึกหัด Java หลังจากผ่านการสอบบางส่วน โดยปกติแล้วผู้สมัคร Java Junior ควรรู้มากกว่าแค่ Java Core เพื่อให้ได้งานแรก นี่คือรายการของเทคโนโลยีที่เกี่ยวข้องที่ Java Developers ควรทราบ- คอร์จาวา
- เจดีเค เอพีไอ
- Java 8 (แลมบ์ดา), Java 11
- ไลบรารีการทดสอบ (JUnit)
- กรอบสปริง
- สปริงบูตและสปริง MVC
- ไฮเบอร์เนต
- เจดีบีซี
นักพัฒนาแอนดรอยด์
นักพัฒนา Android สามารถทำงานให้กับบริษัทหรือมีโครงการของตนเองได้ พวกเขาควรรู้ Java Core และเทคโนโลยีอื่นๆ อย่างแน่นอน เรามีอินโฟกราฟิกหนึ่งที่แสดงให้เห็นถึงแนวทางของนักพัฒนา Android มีหลายจุดในรายการ แต่มีไม่มากเกี่ยวกับ Java โดยตรง (เฉพาะเครื่องมือทดสอบและจริง ๆ แล้ว Core Java) โดยปกติแล้วนักพัฒนาจะยอมรับว่าการเรียนรู้การเขียนโปรแกรม Android ด้วยตัวคุณเองนั้นค่อนข้างง่ายและเร็วกว่าการพัฒนาในองค์กร อย่างไรก็ตาม แม้กระทั่งสำหรับผู้ที่ใฝ่ฝันถึงตำแหน่ง Java Junior การสร้างโครงการ Android เพื่อฝึกฝนทักษะการเขียนโปรแกรมของคุณก็จะเป็นประโยชน์ระบบควบคุมคุณภาพอัตโนมัติ
QA Automation ที่ดีควรรู้ภาษาโปรแกรมเป็นอย่างดี ซึ่งเป็นหนึ่งในทักษะที่สำคัญที่สุดสำหรับอาชีพนี้ เชื่อมต่อกับ Java- Core Java (โดยเฉพาะ OOP, Collection, FileOperations)
- ไลบรารีการทดสอบ (JUnit)
- IntelliJ IDEA
- กรอบ Selenium RC/WebDriver
- โมเดลวัตถุของหน้า
- HTML/CSS
- เอสคิวแอล
ใครเป็นคนถาม? ภาพเหมือนของนักเรียน Java ที่มีศักยภาพ
“ฉันคิดว่ามันขึ้นอยู่กับภูมิหลังของคุณและระยะเวลาที่คุณสามารถใช้ในการเรียน เมื่อฉันเริ่มต้นเส้นทางการเป็นนักพัฒนาซอฟต์แวร์ ฉันจะใช้เวลาเรียนอย่างน้อย 40 ชั่วโมงต่อสัปดาห์ หลังจากเรียนเต็มเวลา 6 เดือน ฉันรู้สึกมั่นใจมากพอที่จะเชี่ยวชาญเทคโนโลยีใหม่ๆ ด้วยตัวเอง เพื่อให้ได้งานแรกของคุณในฐานะวิศวกรซอฟต์แวร์ คุณไม่เพียงแค่ต้องเรียนรู้ Java เท่านั้น แต่ยังต้องเข้าใจพื้นฐานของวิทยาการคอมพิวเตอร์ การเขียนโปรแกรมเชิงวัตถุ และเขียนโครงการบางโครงการที่สามารถแสดงผลงานของคุณได้ ฉันคิดว่าสิ่งนี้อาจใช้เวลาระหว่างเก้าถึงสิบสองเดือน ฉันรู้ว่ามันฟังดูเป็นงานหนัก แต่อย่าเพิ่งหมดกำลังใจ! การเดินทางครั้งนี้จะสนุกอย่างแท้จริงหากคุณค้นพบแง่มุมของการเขียนโค้ดที่ทำให้คุณมีความสุขและเปิดโอกาสให้ตัวเองได้เล่น”- “มือใหม่”. ประสบการณ์เป็นศูนย์ นี่คือคนที่ไม่รู้อะไรเลยเกี่ยวกับการเขียนโปรแกรม
- “ตรงกลาง”. นักเรียนที่มีประสบการณ์การเขียนโปรแกรมน้อยที่สุดหรือยุ่งเหยิง คนเหล่านั้นเรียนการเขียนโปรแกรมที่โรงเรียน มหาวิทยาลัย หรือหลักสูตรต่างๆ แต่ไม่ใช่การเรียนรู้อย่างจริงจัง
- "ข้อดี". นักพัฒนาซอฟต์แวร์ที่รู้ภาษาโปรแกรมอื่นๆ (1 ภาษาขึ้นไป)
- 33.3% เป็นมือใหม่อย่างแน่นอน
- 17.6% รู้อย่างน้อยหนึ่งภาษาโปรแกรม
GO TO FULL VERSION