จุดเริ่มต้นของการเรียนรู้ Java – สิ่งที่คุณควรรู้และสิ่งที่ฉันอยากให้รู้

เผยแพร่แล้ว: 2020-04-14

การเริ่มต้นเขียนโปรแกรมจะง่ายขึ้นหากเป็นส่วนหนึ่งของหลักสูตรของวิทยาลัย จากนั้น คุณไม่จำเป็นต้องเลือกภาษาที่จะเรียนรู้ ข้อโต้แย้งใดที่จะข้าม และแนวคิดใดให้ความสนใจมากกว่า

เมื่อฉันไปวิทยาลัย ภาษา C เป็นภาษาการเขียนโปรแกรมภาษาแรกที่เรียนรู้ จากนั้นอาจารย์จะให้หลักสูตรเกี่ยวกับ C++ แก่เรา และหลังจากนั้น คุณสามารถเลือก Java, Python และภาษาอื่นๆ ได้หากต้องการ

อย่างไรก็ตาม เมื่อฉันพูดคุยกับนักพัฒนาซอฟต์แวร์ระดับเริ่มต้น ฉันไม่แนะนำให้เริ่มการศึกษาด้านการเขียนโปรแกรมด้วยภาษาซี แต่โดยทั่วไปแล้ว ฉันแนะนำให้เรียนรู้ Java – ฉันจะอธิบายให้ฟังว่าทำไมในภายหลัง

แม้ว่าในความคิดของฉัน ชุมชน Java จะเต็มไปด้วยสื่อการเรียนรู้ แต่นักพัฒนามือใหม่มักถามฉันว่า "ฉันจะเริ่มจากตรงไหนดี" หรือ "ฉันต้องอ่านทฤษฎีหรือเริ่มเขียนโค้ดทันทีหรือไม่"

เห็นได้ชัดว่าการเรียนรู้โค้ดด้วยตัวเองไม่ใช่เรื่องง่าย ในฐานะนักพัฒนาที่ช่ำชอง ฉันตัดสินใจช่วยเพื่อนมือใหม่และแนะนำพวกเขาเกี่ยวกับข้อผิดพลาดของเส้นโค้งการเรียนรู้ Java ในโพสต์นี้ คุณจะพบว่าแนวทางปฏิบัติใดเป็นตัวเปลี่ยนเกมในการเรียนรู้ Java ที่ซึ่งนักพัฒนา Java จำนวนมากล้มเหลว และวิธีตรวจสอบให้แน่ใจว่าคุณได้นำแนวคิดที่คุณเชี่ยวชาญไปใช้ในที่ทำงาน

แต่ทำไมจาวา?

ถ้าสัญชาตญาณแรกของคุณคือการเริ่มโต้วาทีกับฉันและอธิบายว่า Python ง่ายกว่าหรือ C เป็นวิธีดั้งเดิมในการเรียนรู้การพัฒนาซอฟต์แวร์ ให้ฉันรับรองกับคุณว่าฉันเห็นว่าคุณจะมาจากไหน

ฉันเห็น Java ในสิ่งที่เป็นจริง ตระหนักถึงข้อเสียของมัน (ความเร็วและประสิทธิภาพหน่วยความจำสำหรับหนึ่ง) อย่างไรก็ตาม ฉันเชื่อว่าไม่มีภาษาใดที่ดีไปกว่าการเรียนรู้ในฐานะนักพัฒนาระดับเริ่มต้น

นี่คือเหตุผลที่ฉันชอบ Java เป็นจุดเริ่มต้นในการเขียนโปรแกรม:

  • แนวคิดของ Java ถูกใช้โดยภาษาโปรแกรมหลายภาษา การเขียนโปรแกรมเชิงวัตถุ ตัวแปรที่พิมพ์ หรือโฟลว์การควบคุม เป็นแนวคิดทั้งหมดที่คุณสามารถใช้ในภายหลังเมื่อทำงานใน C หรือ C++ หากนักพัฒนา Python รู้วิธีเขียนโค้ดใน Python เท่านั้น คุณจะมีสะพานเชื่อมระหว่าง Java กับเว็บและมือถืออื่นๆ (Kotlin มีฟังก์ชันมากมายสำหรับภาษา Java) ในแง่ของความเก่งกาจ การเลือก Java เป็นชัยชนะเหนือภาษาอื่นๆ อย่างแน่นอน
  • การเข้ารหัสใน Java นั้นหลากหลาย สำหรับภาษาการพัฒนาภาษาแรกของคุณ คุณไม่เพียงแค่ต้องการเทคโนโลยีที่ให้ผลกำไรที่จะช่วยให้คุณมีทักษะและได้งานทำ ในทางกลับกัน คุณควรแน่ใจว่าคุณพร้อมจะขี่รถอย่างสนุกสนาน และ Java คือสิ่งที่คุณต้องการอย่างแท้จริง หากคุณเพิ่งเริ่มต้น ความรู้สึกที่ C ง่ายกว่าเพราะคุณต้องพิมพ์น้อยลงอาจหลอกหลอนคุณ (มันทำให้เข้าใจผิดตามที่คุณจะเข้าใจในภายหลัง) อย่างไรก็ตาม เมื่อฉันจำวันที่เรียนภาษาโปรแกรมของฉันได้ ไม่มีประสบการณ์การเรียนรู้อื่นใดที่จะสำคัญไปกว่าการแทรกแซงใน Java มีพื้นที่เหลือเฟือสำหรับความคิดสร้างสรรค์และแอปพลิเคชันตัวอย่างในการสร้าง ไม่ว่าจะเป็น RPG แบบข้อความ เกมที่จัดการคอนโซล และอื่นๆ อีกมากมาย ยิ่งไปกว่านั้น คุณสามารถค้นหาโครงงานสำหรับระดับความยากทุกระดับ ไม่จำเป็นต้องเรียนรู้แนวคิดเชิงทฤษฎีเป็นเวลาหลายเดือนก่อนที่จะไปสู่การเรียนรู้ภาคปฏิบัติ
  • ภาษาที่ใช้กันอย่างแพร่หลาย บางครั้งมันก็ง่ายอย่างนั้น - คุณต้องการเรียนรู้ภาษาที่ให้คุณทำอะไรก็ได้ และแทบไม่มีอะไรดีไปกว่า Java ภาษานี้เหมาะสำหรับเว็บแอป ซอฟต์แวร์ โครงการ Android และเครื่องมือภายใน หลังจากได้รับ Java พื้นฐานแล้วคุณจะรู้สึกว่าคุณสามารถทำอะไรได้ไม่มากก็น้อย จริงอยู่ การแทรกแซงในภาษาสคริปต์เช่น JavaScript ยังคงมีความจำเป็น – อย่างไรก็ตาม มันจะไม่น่ากลัวเท่ากับการเรียนรู้ภาษาโปรแกรมตั้งแต่เริ่มต้น เมื่อคุณมีระดับความเชี่ยวชาญ Java ระดับกลางเป็นอย่างน้อย

ตลาดงานการเขียนโปรแกรม Java – มีดีอะไรไหม?

เรียนรู้การพัฒนาโค้ด
ภาพ: KnowTechie Store

การเรียนรู้ Java อาจสนุกและทั้งหมด แต่ฉันจะไม่ว่างงานและหิวโหยหรือไม่ถ้าเป็นภาษาเดียวที่ฉันรู้

เนื่องจาก Java เป็นที่นิยมในหมู่นักพัฒนาระดับเริ่มต้น คุณอาจรู้สึกว่าทุกคนรู้วิธีใช้งาน และจะไม่มีใครจ้างโปรแกรมเมอร์อีกต่อไป เป็นไปได้มากว่าคุณกำลังประสบกับเอฟเฟกต์แบบคลาสสิกของไพรเมอร์ โดยคิดว่าเพราะคุณเห็นบางสิ่งมากมาย มันอาจจะเป็นเรื่องธรรมดาที่เจ็บปวด

ฉันรวบรวมสถิติบางอย่างเกี่ยวกับตลาดงาน Java เพื่อพิสูจน์ว่ามีงานมากมายสำหรับนักพัฒนาที่มีทักษะพอสมควร:

  • Java เป็นภาษาการเขียนโปรแกรมที่มีอันดับสูงสุดตามการสำรวจล่าสุดของ Stack Overflow
  • เงินเดือนเฉลี่ยของนักพัฒนา Java ในสหรัฐอเมริกาอยู่ที่ 79,137 เหรียญสหรัฐ จากข้อมูลของ Glassdoor;
  • จำนวนการเปิดการพัฒนา Java ที่มีอยู่ในปัจจุบันบน Indeed – 27,049

หากคุณพิจารณาแนวโน้มโดยรวมในโลกเทคโนโลยี เช่น ความต้องการที่เพิ่มขึ้นสำหรับความสามารถด้านเทคโนโลยีและการเพิ่มจำนวนอุปกรณ์ Android ที่เพิ่มขึ้น (Java เป็นภาษาที่ใช้กันอย่างแพร่หลายในการพัฒนา Android) จะเห็นได้ชัดว่าคุณไม่มีงานทำ ทุกเวลาเร็ว ๆ นี้

ดังนั้น แทนที่จะลังเลว่าคุณควรลองใช้ Java หรือไม่ ให้มารวมกันแล้วเริ่มเรียนภาษาวันนี้

สิ่งที่ฉันหวังว่าฉันจะรู้ในการเดินทางการเรียนรู้ Java ของฉัน

ย้อนกลับไปในวันที่ฉันเรียน Java มีเครื่องมือและทรัพยากรไม่มากนัก นอกเหนือไปจากแบบฝึกหัด หนังสือ และเอกสารอย่างเป็นทางการอีกสองสามโหล เหตุใดฉันจึงคิดว่านักพัฒนาซอฟต์แวร์ทำได้ง่ายขึ้นในขณะนี้ เนื่องจากมีทรัพยากรจำนวนมาก ผู้เขียนโค้ดระดับเริ่มต้นจำนวนมากสับสนและถูกครอบงำด้วยเครื่องมือที่หลากหลาย

แม้ว่าจะไม่มีกลยุทธ์ที่แน่นอนในการได้มาซึ่งความเชี่ยวชาญด้านการพัฒนาซอฟต์แวร์ แต่นี่คือสิ่งที่อยากให้มีคนบอกฉันเร็วกว่านี้

1. เรียนรู้การแก้ปัญหา ไม่ใช่การเขียนโปรแกรม

นักพัฒนาเว็บ
ภาพ: Pexels

ฉันเห็นผู้เริ่มต้นจำนวนมากอ่านบทช่วยสอนหลังจากฝึกสอน หยิบรูปแบบและแนวคิดขึ้นมา อย่างไรก็ตาม แม้ว่าวิธีนี้จะช่วยให้คุณเรียนรู้ไวยากรณ์ Java ได้ แต่คุณก็ยังห่างไกลจากกรอบความคิดของโปรแกรมเมอร์

หลังจากที่ฉันเรียนบทช่วยสอน Java เสร็จและต้องนำทักษะของฉันไปใช้ให้เกิดประโยชน์ ฉันก็รู้สึกสับสนและท้าทาย แทนที่จะแยกส่วนแอปพลิเคชันออกเป็นส่วน ๆ ที่เคลื่อนไหวและเห็นว่าฉันจะสร้างมันขึ้นมาเองได้อย่างไร ฉันกลับมองว่าแต่ละโครงการเป็นเหมือนภูเขาสูงที่ฉันไม่มีทางปีนขึ้นไปได้

โชคดีที่ระหว่างทาง ฉันพบทรัพยากรมากมายที่ช่วยให้มีความมั่นใจมากขึ้นในการพัฒนา Java ในโลกแห่งความเป็นจริง:

  • Think Like a Programmer – หนังสือที่ช่วยให้คุณได้รับแนวความคิดของนักพัฒนาโดยไม่คำนึงถึงภาษาที่คุณกำลังเรียนรู้
  • Codegym – แพลตฟอร์มเฉพาะสำหรับการเรียนรู้ Java ที่เน้นการประยุกต์ใช้แนวคิดเชิงทฤษฎีในทางปฏิบัติ ต้องขอบคุณสิ่งนี้ ฉันค้นพบเกี่ยวกับการแฮ็กที่มีประโยชน์หลายอย่าง ซึ่งช่วยให้ฉันพัฒนาโครงการได้ง่ายขึ้น
  • Stack Overflow – ฉันรู้ว่าคุณเคยได้ยินเกี่ยวกับการซุ่มซ่อนอยู่ที่นี่มาบ้างแล้ว ในขณะที่ฉันไม่แนะนำให้วางโค้ดบางส่วนจาก SO การอ่านฟอรัมอย่างคร่าวๆ จะทำให้คุณเข้าใกล้แนวความคิดของนักพัฒนามากขึ้นอีกก้าวหนึ่งอย่างแน่นอน

2. ฉันประเมินเทคโนโลยีช่วยเหลือต่ำไป

อย่างไรก็ตาม ฉันก็ไม่รู้ว่าไลบรารีและเฟรมเวิร์ก Java มีประโยชน์เพียงใด โดยธรรมชาติแล้ว ในฐานะนักพัฒนามือใหม่ คุณต้องการทำทุกอย่างด้วยตัวเอง อย่างไรก็ตาม มีเพียงสิ่งเดียวที่คุณทำได้ในหนึ่งวัน และการมองหาทางลัดมักเป็นสิ่งสำคัญ

หากฉันต้องเริ่มต้นเส้นทางการเรียนรู้ Java ใหม่ ฉันจะเลือกชุดเครื่องมือเพื่อจับคู่ภาษาด้วย

นี่คือเครื่องมือที่ฉันแนะนำให้นักพัฒนาลองใช้:

  • JUnit – เครื่องมือทดสอบที่สะดวกสำหรับโปรแกรมเมอร์ Java
  • JRat – ตัวสร้างโปรไฟล์ประสิทธิภาพ Java ที่ช่วยให้นักพัฒนาตรวจสอบการทำงานของผลิตภัณฑ์ของตน
  • Mockito – กรอบงานโอเพ่นซอร์สที่อำนวยความสะดวกในการเยาะเย้ย Java;
  • Ehcache – เครื่องมือแคชที่ออกแบบมาโดยเฉพาะสำหรับการเขียนโปรแกรม Java

ฉันจะแสดงรายการไลบรารี เฟรมเวิร์ก และ API ที่จำเป็นที่สุดสำหรับการเรียนรู้ Java ด้านล่าง

3. ฉันไม่มีแผนการเรียนรู้

ด้วยความเชื่อมั่นอย่างมากในบทเรียนและแหล่งข้อมูลออนไลน์ ฉันเริ่มเรียนรู้ Java แบบไร้สมองโดยสิ้นเชิง ฉันไม่มีไทม์ไลน์สำหรับการเดินทาง ไม่รู้ว่าจะใช้ทักษะของตัวเองอย่างไร หรือกิจวัตรการเรียนประจำวันที่เข้มข้นขึ้น แรงจูงใจของฉันนั้นเรียบง่ายและงี่เง่า – Java ดูเหมือนทันสมัย ​​โดยไม่รู้ว่ามันรู้สึกเหมือนเป็นการพลาด ดังนั้นทำไมฉันไม่เรียนรู้มันล่ะ

หากคุณกำลังเริ่มต้นในการพัฒนาซอฟต์แวร์ ให้ละเอียดมากขึ้นว่าคุณต้องการไปที่ใดเมื่อสิ้นสุดวัน อย่าปล่อยให้เป้าหมายที่คุณคิดไว้ทำให้คุณตาบอด – การเรียนรู้ภาษาเขียนโปรแกรมควรเริ่มต้นด้วยพื้นฐานเสมอ แม้ว่าคุณจะต้องการเป็นนักพัฒนาแบบฟูลสแตก – นักเทรดที่เก่งมาก

ตอนนี้ ถ้าฉันต้องเรียนรู้ Java ตั้งแต่เริ่มต้น นี่คงเป็นแผนงานของฉัน:

JDK API:

  • Java IO
  • Java Collection
  • Java Concurrency
  • Java8

จาวาเฟรมเวิร์ก:

  • ฤดูใบไม้ผลิ
  • รองเท้าบูทสปริง
  • ไฮเบอร์เนต
  • ไมโครนอต
  • Eclipse ไมโครโปรไฟล์

ห้องสมุดทดสอบ:

  • แตงกวา – อำนวยความสะดวกในการทดสอบที่ขับเคลื่อนด้วยธุรกิจ
  • Robot Framework – ช่วยเพิ่มประสิทธิภาพการทดสอบการรวม
  • JUity สำหรับการทดสอบหน่วย
  • Mockito สำหรับการทดสอบจำลอง

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการจำลองการเรียนรู้การพัฒนา Java ให้ดูที่กราฟด้านล่าง

ฉันจะกำหนดเส้นตายให้กับแต่ละช่วงตึกเพื่อให้แน่ใจว่าฉันจะไม่หย่อนยานและคืบหน้า

บทสรุป

เมื่อฉันพูดว่าการเรียนรู้ Java เป็นเรื่องสนุก ฉันหมายถึงความคิดถึงและความทรงจำที่มีความสุขซึ่งคุณจะรู้สึกได้หลังจากที่คุณเชี่ยวชาญ สำหรับกระบวนการนี้ คุณจะสัมผัสได้ถึงจุดสูงสุดของการได้คำตอบที่ถูกต้องสำหรับปัญหา และความไม่เข้าใจในสิ่งที่ทรัพยากรการเรียนรู้ของคุณต้องการจากคุณในระดับต่ำ

เช่นเดียวกับการเรียนรู้ใดๆ การเรียนรู้ภาษาโปรแกรมอย่างเชี่ยวชาญคือหยาดเหงื่อและน้ำตา อย่างไรก็ตาม ตราบใดที่คุณอดทนและผ่านพ้นความยุ่งยากในขั้นต้นของ Java กระบวนการเรียนรู้จะค่อยๆ สนุกขึ้นและเหนื่อยน้อยลง

มีความคิดเกี่ยวกับเรื่องนี้หรือไม่? แจ้งให้เราทราบด้านล่างในความคิดเห็นหรือดำเนินการสนทนาไปที่ Twitter หรือ Facebook ของเรา

คำแนะนำของบรรณาธิการ:

  • เริ่มต้นทักษะ JavaScript ของคุณด้วยหลักสูตรเริ่มต้น $13 นี้
  • 9 ต้องเรียนรู้สำรับเพื่อให้ทันกับ Java
  • 3 ข้อควรรู้เกี่ยวกับ Java โฮสติ้ง
  • เหตุใดการเขียนโปรแกรม Java จึงเป็นที่นิยมสำหรับธุรกิจ