โค้ดยิม/จาวาบล็อก/สุ่ม/คุณมีงาน Java ประเภทใดบ้าง
John Squirrels
ระดับ
San Francisco

คุณมีงาน Java ประเภทใดบ้าง

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

ฝึกฝนด้วยไวยากรณ์ของภาษา

นี่เป็นงานการเขียนโปรแกรม Java แรกสำหรับผู้เริ่มต้น ซึ่งเป็นรากฐานตั้งแต่ "Hello, World" ไปจนถึงลูปและอาร์เรย์ CodeGym มีจำนวนมาก: โดยเฉพาะอย่างยิ่งในหกระดับแรกของภารกิจJava Syntax คุณไม่จำเป็นต้องมองหาที่อื่นอีก แน่นอนเรามีเพียงพอที่จะควบคุมพวกเขา ยิ่งไปกว่านั้น เมื่อคุณทำงานที่ยากขึ้น คุณจะตรวจสอบไวยากรณ์โดยอัตโนมัติ แต่ถ้าคุณพบว่าตัวเองต้องการความช่วยเหลือ ตำราเรียน Java สำหรับผู้เริ่มต้นมีปัญหาคล้ายกัน แต่แตกต่างจาก CodeGym หนังสือแบบฝึกหัดเหล่านี้จะไม่มีการยืนยันงานทันที

ฝึกฝนกับคอลเลกชัน

คอลเลกชันเป็นหัวข้อ "จริงจัง" แรกที่โปรแกรมเมอร์มือใหม่พบในการศึกษา งานระดับเริ่มต้นที่อุทิศให้กับคอลเลกชั่น Java นั้นยังแสดงได้ดีใน CodeGym — ใน ระดับ ที่เจ็ดและแปดของภารกิจ Java Syntax นี่คือที่ที่นักเรียนจะได้ยินเกี่ยวกับ Java Collections Framework ก่อน และจะทำงานเล็กน้อยกับอินเทอร์เฟซ Set, List และ Map พร้อมกับการใช้งานบางส่วน อย่างไรก็ตาม ในขั้นตอนนี้ คุณจะได้รับข้อมูลเบื้องต้นเกี่ยวกับเครื่องมือที่มีประโยชน์นี้และงาน Java ง่ายๆ เท่านั้น คุณจะศึกษาคอลเล็กชันอย่างละเอียดยิ่งขึ้นระหว่างภารกิจJava Collections คุณสามารถดูได้ว่าหัวข้อนี้มีความสำคัญเพียงใด — ภารกิจทั้งหมดได้รับการตั้งชื่อตามชื่อนั้น!

ปฏิบัติโดยมีข้อยกเว้น

Java มีกลไกพิเศษสำหรับจัดการกับสถานการณ์พิเศษ ทำให้กระบวนการ "ตรวจจับ" ข้อผิดพลาดของแอปพลิเคชันง่ายขึ้นอย่างมาก แต่เพื่อให้ได้ประโยชน์สูงสุด คุณต้องเข้าใจว่าการจัดการข้อยกเว้นทำงานอย่างไรใน Java CodeGym มีงานดังกล่าวมากมาย คุณจะพบได้ในภารกิจแรก — Java Syntax คุณมีงาน Java ประเภทใดบ้าง  - 2

ฝึกฝนด้วยการหล่อแบบ

แน่นอนว่างานกลุ่มนี้สามารถจัดเป็นงานพื้นฐานเกี่ยวกับไวยากรณ์ได้ อย่างไรก็ตาม ในความเห็นอันต่ำต้อยของเรา ผู้คนมักจะเห็นคุณค่างานดังกล่าวต่ำเกินไป และมือใหม่ก็ดิ้นรนกับงานเหล่านั้น นั่นเป็นเหตุผลที่เราทำลายรูปแบบ: เราไม่ได้ศึกษางานการแปลงประเภทดั้งเดิมตั้งแต่เริ่มต้นอย่างที่คนอื่นมักจะทำ แต่เราจะแก้ไขปัญหาเหล่านี้ในภายหลัง — ในตอนท้ายของภารกิจ Java Syntax จากนั้นเราจะเรียนรู้วิธีสร้างประเภทที่ไม่ใช่แบบดั้งเดิม (วัตถุ) เมื่อเราศึกษา OOP ในภารกิจJava Core CodeGym มีงานเหล่านี้เพียงพอแล้ว คุณไม่จำเป็นต้องมองหาอีกต่อไป

ฝึกปฏิบัติกับ OOP

OOP ไม่ใช่หัวข้อที่ยากที่สุด แต่สำคัญมาก และมันซ่อนรายละเอียดปลีกย่อยมากมายที่ผู้สัมภาษณ์ต้องการใช้เพื่อจับผิดนักพัฒนารุ่นเยาว์ หลักสูตร CodeGym ประกอบด้วยงานการเขียนโปรแกรมเชิงปฏิบัติสำหรับผู้เริ่มต้นเพื่อช่วยให้คุณเข้าใจปรัชญาเชิงวัตถุ แต่เพื่อให้เข้าใจ OOP อย่างแท้จริง เราขอแนะนำให้คุณอ่านวรรณกรรมที่เกี่ยวข้อง (เช่น "Core Java" ของ Cay Horstmann และ Gary Cornell "การวิเคราะห์และการออกแบบเชิงวัตถุ" ของ McLaughlin หรือหนังสืออื่น )

ฝึกฝนกับสตรีมอินพุต/เอาท์พุต

เราเริ่มใช้สตรีม I/O มานานก่อนที่เราจะเข้าใจ นี่คือ Java ตั๊กแตนสาวของฉัน! การอธิบาย System.out นับประสากับ System.in เป็นเรื่องยากและไม่จำเป็นเมื่อคุณเริ่มใช้งานครั้งแรก แต่เมื่อคุณทำงานผ่าน ภารกิจ Java Coreคุณรู้ดีพอที่จะเข้าใจหัวข้อที่ค่อนข้างสับสนนี้ และเราไม่ได้พูดถึงเฉพาะคอนโซล I/O เท่านั้น แต่ยังรวมถึงการทำงานกับระบบไฟล์ด้วย สิ่งสำคัญคืออย่าข้ามงานเหล่านี้ (CodeGym มีค่อนข้างมาก) และเจาะลึกทฤษฎีอย่างต่อเนื่อง

ฝึกสมอง

"ผู้ฝึกสมอง" เราหมายถึงงานที่มีความซับซ้อนเพิ่มขึ้นซึ่งไม่เกี่ยวกับความรู้มากนัก แต่เกี่ยวกับความสามารถในการนำสิ่งที่คุณรู้ไปใช้ในรูปแบบที่แปลกใหม่ งานเหล่านี้เป็นงานทั่วไปสำหรับนักพัฒนา Java รุ่นเยาว์ บริษัทต่างๆ มักจะชอบถามพวกเขาระหว่างการสัมภาษณ์ แต่ในการทำงานจริง จะไม่ค่อยพบนักฝึกสมองแบบนี้บ่อยนัก ดังนั้น CodeGym จึงมีอยู่บ้าง แต่ไม่มากนัก (โดยปกติคุณจะเห็นสิ่งเหล่านี้ในบทเรียนของ Captain Squirrels) คุณมีงาน Java ประเภทใดบ้าง  - 3ฉันจะหาผู้ฝึกสมองได้ที่ไหน

อัลกอริทึมและโครงสร้างข้อมูล

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

มัลติเธรด

ทุกคนสามารถเขียน "Hello, World!" โปรแกรม. แต่การใช้ Java Thread API เพื่อแสดงวลีที่มีชื่อเสียงจากเธรดแยกต่างหากล่ะ หรือการแสดงข้อความ "Hello, World!" ห้าครั้งจากห้าเธรดที่แตกต่างกันโดยไม่ต้องผสมสตริง? มัลติเธรดจะเป็น "การทดสอบความแข็งแกร่งของคุณ" ที่ดีที่สุดเมื่อคุณศึกษา Java Core ภารกิจ CodeGym ทั้งหมดที่เรียกว่าJava Multithreadingมีไว้สำหรับหัวข้อนี้โดยเฉพาะ ซึ่งไม่ใช่เรื่องง่าย ประกอบด้วยงานจำนวนมากเพื่อให้นักเรียนรู้สึกถึง "ความเจ็บปวดและความสวยงาม" ของการประมวลผลแบบคู่ขนาน โปรเจ็กต์ "จริง" แรกของนักศึกษามักจะประกอบด้วยมัลติเธรดในระดับหนึ่ง ตัวอย่างเช่นเกมง่ายๆ คุณมีงาน Java ประเภทใดบ้าง  - 4

ฝึกฝนด้วยมัลติเธรด

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

ฝึกฝนกับยาสามัญ

Generalization เป็นแก่นแท้ของระบบอัตโนมัติ ดังนั้นในแง่หนึ่ง มันคือแก่นแท้ของการเขียนโปรแกรม ดังนั้นเราจึงไม่สามารถเพิกเฉยต่อหัวข้อของชื่อสามัญใน Java CodeGym มีงานการเขียนโปรแกรมที่เกี่ยวข้องกับยาสามัญ (ส่วนใหญ่อยู่ในภารกิจ Java Collections เริ่มต้นที่ระดับ 5) ฉันจะหาแบบฝึกหัดและเนื้อหาที่เป็นประโยชน์เกี่ยวกับยาชื่อสามัญได้ที่ไหน

ฝึกฝนกับรูปแบบการออกแบบ

เมื่อถึงจุดหนึ่ง (สองในสามของหลักสูตร CodeGym) โปรแกรมเมอร์มือใหม่ต้องเริ่มมองหากฎเพื่อให้ได้รูปแบบที่ดีในการเขียนโปรแกรม เรากำลังพูดถึงการจัดรูปแบบโค้ดที่เหมาะสม (ง่ายกว่า) และรูปแบบการออกแบบ (ยากกว่า) CodeGym มีหน้าที่สำหรับสิ่งนี้ คุณจะต้องการมากกว่านี้และคุณจะพบได้ใน " Head First Design Patterns " โดย Elisabeth Freeman และ Kathy Sierra หรือคุณสามารถคิดเกี่ยวกับวิธีการใช้รูปแบบการออกแบบกับงานที่แก้ไขก่อนหน้านี้

การทดสอบหน่วย

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

ฝึกฝนด้วยนิพจน์ทั่วไป

นี่เป็นหัวข้อง่ายๆ ที่ผู้เริ่มต้นแทบจะไม่เข้าใจ เพราะมันไม่คุ้นเคยและพวกเขาขี้เกียจ การใช้เวลา 2-3 วันในการศึกษาหัวข้อนี้คุ้มค่าจริงๆ ไปที่จุดต่ำสุดของ "regex" และรับข้อได้เปรียบเหนือผู้ที่ไม่ได้ทำ สิ่งนี้มีประโยชน์เช่นกันเพราะ Regular Expression เกือบจะไม่ขึ้นอยู่กับภาษา: หากคุณเรียนรู้เพียงครั้งเดียว คุณจะสามารถใช้งานได้ทุกที่ CodeGym ไม่มีงานใด ๆ ที่ทุ่มเทให้กับนิพจน์ทั่วไป แม้ว่างานบางอย่างสามารถแก้ไขได้ด้วยความช่วยเหลือของพวกเขา นี่คือแหล่งข้อมูลเพิ่มเติมเพื่อทำความเข้าใจหัวข้อนี้:
  • regex101.com — เว็บไซต์ที่คุณสามารถตรวจสอบ Regular Expression ทางออนไลน์ได้
  • "การแนะนำนิพจน์ทั่วไป" ของไมค์ ฟิตซ์เจอรัลด์ — ไพรเมอร์ที่กระชับและเรียบง่าย
คุณมีงาน Java ประเภทใดบ้าง  - 5

ฝึกฝนด้วยคำถามหลอกๆ เกี่ยวกับ Java

หมวดหมู่นี้รวมถึงงานที่ยุ่งยากซึ่งมักไม่เกี่ยวข้องโดยตรงกับงานเขียนโปรแกรมจริง โดยส่วนใหญ่จะพบเจอระหว่างการสัมภาษณ์ ซึ่งจะใช้เพื่อทำความเข้าใจเชิงลึกของผู้สมัคร/ความรู้เกี่ยวกับเทคโนโลยีเฉพาะ หรือเพื่อทดสอบความสนใจในรายละเอียดของเขาหรือเธอ หากคุณต้องการงานในลักษณะนี้ ให้ค้นหา "คำถามสัมภาษณ์ Java" หรือสิ่งที่คล้ายกันใน Google คุณอาจพบชุดปัญหามากมาย ตลอดจนคำถามและคำตอบในฟอรัมทุกประเภท เป็นเรื่องดีที่จะเข้าใจพวกเขา แต่คุ้มค่าหรือไม่ที่จะใช้เวลากับพวกเขามากเกินไป? ในบทความของ InformIT Cay Horstmann เคยกล่าวถึงประเด็นที่ดีเกี่ยวกับงานดังกล่าว ในการถอดความความคิดของเขาสั้น ๆ มีงานในโลกแห่งความเป็นจริงและมี "คำถามสัมภาษณ์" ในจักรวาลคู่ขนาน

ฝึกฝนด้วยการแสดงออกของแลมบ์ดา

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

ฝึกการทำงานกับเครือข่าย

การทำให้เป็นอนุกรมเป็น JSON, RMI, HttpUrlConnection, sockets... สิ่งเหล่านี้ไม่ใช่หัวข้อการเขียนโปรแกรมสำหรับผู้เริ่มต้น พวกเขาต้องการทักษะที่แข็งแกร่งและเป็นสะพานเชื่อมไปยังโครงการ การฝึกงาน และการจ้างงานของคุณเอง ระดับขั้นสูงของ CodeGym (ภารกิจ Java Collections) มีแบบฝึกหัดมากมายที่จะช่วยให้คุณเชี่ยวชาญกลยุทธ์และเทคโนโลยีเหล่านี้ แต่ทุกอย่างจะชัดเจนยิ่งขึ้นเมื่อคุณฝึกงานออนไลน์สำเร็จ
ความคิดเห็น
  • เป็นที่นิยม
  • ใหม่
  • เก่า
คุณต้องลงชื่อเข้าใช้เพื่อแสดงความคิดเห็น
หน้านี้ยังไม่มีความคิดเห็นใด ๆ