ฉันควรคาดหวังว่าบัณฑิตที่ผ่านมาจะคุ้นเคยกับแนวคิดการเขียนโปรแกรมพื้นฐานหรือไม่ [ปิด]


9

ดูเหมือนว่ามีความแตกต่างอย่างมากระหว่างสิ่งที่ฉันคาดหวังกับคนที่เรียนการเขียนโปรแกรมเป็นเวลาสองสามปีที่มหาวิทยาลัยและสิ่งที่คนรู้จริง

ฉันไม่รู้สึกว่าฉันถามคำถามที่ซับซ้อนเกินไปในการสัมภาษณ์ คำถามปกติของฉันคือ:

  • ประเภทอ้างอิงและประเภทค่าแตกต่างกันอย่างไร

    หากดูเหมือนว่าผู้ให้สัมภาษณ์ไม่เข้าใจคำตอบของเขาเองจริงๆหรือถ้าเขาไม่ทราบคำศัพท์ที่ฉันใช้อยู่ฉันจะได้รับรายละเอียดเพิ่มเติมโดยขอให้เขาอธิบายฉันว่าจะเกิดอะไรขึ้นเมื่อฉันเขียน int i = 0; ในวิธีการสิ่งที่เกี่ยวกับวัตถุ o = 0 วัตถุ o = ใหม่ MyClass () ฯลฯ ...

    โดยพื้นฐานแล้วฉันทำทุกอย่างเท่าที่ทำได้เพื่อหลอกล่อผู้ให้สัมภาษณ์ให้บอกฉันเกี่ยวกับ callstack heap และอื่น ๆ และฉันพยายามอยู่ในแนวคิดเกี่ยวกับภาษา agnostics หากผู้ให้สัมภาษณ์บอกฉันว่าเขาทำ C มากหรือ C ++ หรือ c # ฉันจะดำดิ่งลงไปในภาษาที่เฉพาะเจาะจงมากขึ้น

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

    ผู้ให้สัมภาษณ์ส่วนใหญ่ไม่รู้ว่าโทรสต็อกคืออะไรพิจารณาเรื่องมวย ฯลฯ

  • อะไรคือความแตกต่างระหว่างคลาสนามธรรมและอินเทอร์เฟซ คุณควรใช้อันไหนดีกว่ากัน?

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

    ผู้ให้สัมภาษณ์ส่วนใหญ่ไม่รู้เลยว่าจุดประสงค์ที่แท้จริงของมรดกคืออะไร พวกเขามักจะรู้คำหลักบางคำ (เสมือน, แทนที่, ฯลฯ ) แต่ไม่รู้จริง ๆ ว่าจะใช้เมื่อใดให้อธิบายคำอธิบายว่าโต๊ะเสมือนคืออะไร

แม้ว่าฉันจะคัดกรองประวัติก่อนหน้านี้แม้สำหรับผู้ที่มีประสบการณ์ 5 ปีในโครงการชีวิตจริงที่เกี่ยวข้องกับสถาปัตยกรรมที่ซับซ้อนฉันจะบอกว่าน้อยกว่า 25% ของผู้สัมภาษณ์ทั้งหมดของฉันสามารถตอบคำถามสองข้อนี้ได้อย่างถูกต้อง และเมื่อฉันพูดถูกฉันไม่ได้หมายถึง 'เชิงลึก' ... เพียงแค่มีความคิดโดยประมาณว่าแนวคิดคืออะไร

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

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


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


4
เพียงคำพูดเล็กน้อย แต่ฉันจะไม่ทราบว่าคุณหมายถึงอะไรกับประเภททันทีประเภทค่าในมืออื่น ๆ ที่ฉันสามารถอธิบายให้คุณ อย่างไรก็ตามฉันรู้สึกว่าทุกคนที่จบการศึกษาระดับ CS ใด ๆ ควรจะสามารถตอบคำถามสองข้อนี้ได้ เพื่อปรับปรุงคำถามของคุณบางทีคุณอาจยกตัวอย่างว่าคำตอบที่คุณคาดหวังนั้นครบถ้วนสมบูรณ์เพียงใด
sebastiangeiger

การเรียนภาษาที่มหาวิทยาลัย 2 ปีขึ้นไปการแข่งขันกับวิชาอื่นทำให้นักเรียนมีระดับขั้นต่ำเพียงเล็กน้อยหลังจากการสอบจบ สิ่งเดียวที่คุณมั่นใจได้คือพวกเขาสามารถเรียนรู้ข้อมูลนั้นหรือเมื่อพวกเขารู้ ประสบการณ์เชิงปฏิบัติเท่านั้นที่สามารถให้ความรู้แก่พวกเขาได้ Joel Spolsky ให้ตัวอย่างที่ยอดเยี่ยมเกี่ยวกับวิธีการและเหตุผลที่นักเรียนขาดความสามารถมากมายที่เราควรคาดหวังให้โปรแกรมเมอร์เขียนไว้ในบทความบล็อกของเขาที่นี่ - http://www.joelonsoftware.com/items/2009/10/26.html
Justin Shield

@sebastiangeiger; คุณอัปเดตถูกต้องแล้ว!
Brann

2
เขาต้องรู้ว่าเขาไม่รู้อะไรเลย นี่คือจุดสำคัญที่จะทำให้ดีขึ้นเมื่อเวลาผ่านไป
deadalnix

Brann น่าสนใจทุกคนที่ตอบคำถามนี้กล่าวถึง "ประเภททันที" (ข้อผิดพลาดการแปล) และบอกคุณว่าพวกเขาไม่รู้ว่ามันคืออะไร ผู้สัมภาษณ์ของคุณพูดว่า: "ฉันไม่ได้ศึกษาเรื่องเหล่านี้ในเชิงลึก" หรือพวกเขาอ้างว่าเป็นผู้เชี่ยวชาญในตัวอย่างเฉพาะรันไทม์และความเข้าใจลึกของคอมไพเลอร์?
Pindatjuh

คำตอบ:


15

คำศัพท์เป็นความหายนะที่พบบ่อยในสถานการณ์การสัมภาษณ์

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

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

บางทีคุณอาจได้รับสถานการณ์มากมายเมื่อผู้ให้สัมภาษณ์คลิกและไปที่ 'โอ้ - นั่นคือสิ่งที่คุณกำลังพูดถึง' - จากนั้นอธิบายอย่างเพียงพอ

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

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

ไม่พูดถึงความจริงที่ว่าบางคนได้รับความทรงจำที่ล้มเหลวอย่างสมบูรณ์ในการสัมภาษณ์ รวมตัวเองด้วย ฉันจำได้ว่าถูกขอให้เขียนโปรแกรมใน C และฉันไม่สามารถใช้ชีวิตของฉันได้จำสัญลักษณ์ที่ใช้ในการเข้าถึงสมาชิกจากตัวชี้ (->) และต้องถามใครสักคน มันไม่ได้แม้แต่สำหรับงานแรกของฉัน เด็กชายได้ช่วงเวลานั้นรบกวนฉันในช่วง 15 ปีที่ผ่านมา :-)

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

อย่ายอมแพ้กับผู้ให้สัมภาษณ์เพราะพวกเขาไม่รู้ว่าอะไรคือประเภททันที ก้าวต่อไป.


@Brann - ประเภททันที -> ประเภทค่า ตั้งข้อสังเกต
Roger Attrill

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

เกี่ยวกับสิ่งที่ "ไป" นั่นคือสิ่งที่ฉันมักจะทำ แต่จากประสบการณ์ของฉันเมื่อผู้ให้สัมภาษณ์ไม่ทราบว่าประเภทค่าคืออะไรเขาไม่รู้เกี่ยวกับการซิงโครไนซ์เธรดอย่างใดอย่างหนึ่งหรือเกี่ยวกับสิ่งที่ใช้กันทั่วไปเป็นต้นดังนั้นหลังจากคำถามสองสามข้อ ไม่เหมาะกับงานฉันมักจะให้คำแนะนำกับเขาเกี่ยวกับสิ่งที่เรียนรู้ที่จะทำงานได้ดีขึ้นในการสัมภาษณ์ทางเทคนิคและ ... ไปกับผู้สมัครคนต่อไป :)
Brann

12

คุณกำลังขอความรู้เฉพาะภาษาและคำที่คุณใช้นั้นไม่ได้ใช้ 100% เหมือนกันในทุกภาษา ฉัน - หนึ่ง - ไม่มีความคิดว่า "ประเภททันที" คืออะไร

นอกจากนี้ให้พิจารณาว่าสิ่งที่สอนในมหาวิทยาลัยไม่ใช่วิธีที่จะทำให้รหัสมาตรฐานผิดเพี้ยนใน X แต่ต้องเรียนรู้แนวคิดพื้นฐานมากมายและเห็นกระบวนทัศน์การเขียนโปรแกรมที่หลากหลาย กล่าวอีกนัยหนึ่งมันเหมือนกับใบขับขี่ - แม้ว่าคุณจะรู้ทฤษฎีพื้นฐาน แต่คุณก็ยังต้องฝึกฝนจริงอีกมาก


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

ฉันคิดว่าแนวคิด "callstack" เป็นหนึ่งในแนวคิดทั่วไปที่คุณกำลังพูดถึง แม้หลังจากที่ถ้อยคำคำถามในสิบวิธีที่แตกต่างกันเพื่อให้แน่ใจว่าผู้สัมภาษณ์รู้ว่าฉันคาดหวังว่าเขาจะบอกฉันเกี่ยวกับการจัดสรรหน่วยความจำ, callstack, ประเภทค่า ฯลฯ ฉันยังคงบ่อยกว่าไม่ได้รับ stares ว่างเปล่า ...
Brann

หากฉันเข้าใจคุณอย่างถูกต้องคุณต้องการทราบว่านักพัฒนารู้จักตัวชี้และรู้ว่าพวกเขาทำอะไรและใช้อย่างไร

ไม่ฉันทำไม่ได้ ฉันต้องการให้แน่ใจว่าผู้พัฒนาอย่างน้อยมีความคิดคร่าวๆเกี่ยวกับสิ่งที่เกิดขึ้นเบื้องหลังเมื่อเขาใช้ฟีเจอร์ x หรือ y ของภาษาที่เขาเลือก การถามเขาเกี่ยวกับพอยน์เตอร์เป็นเพียงวิธีที่ทำให้เขาพูดถึงสิ่งที่เขารู้เกี่ยวกับการจัดสรรหน่วยความจำ
Brann

3
@Brann, ทุกสิ่งที่รายละเอียดเกี่ยวกับการเรียกกองกอง ฯลฯ เป็นหลักเพียงตัวชี้ใช้

3

"ฉันได้ยินและลืมฉันเห็นแล้วก็จำได้ฉันทำและเข้าใจ" (และในความคิดของฉันความเข้าใจนำไปสู่การเก็บรักษาความจำดีขึ้น)

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

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

คุณพูดถึงการสัมภาษณ์เป็นภาษาฝรั่งเศสซึ่งทำให้เห็นได้ชัดว่าเราอยู่ในประเทศต่าง ๆ ดังนั้นระยะทางของคุณอาจแตกต่างกันไป แต่ที่นี่ในสหรัฐอเมริกาวิทยาลัยมีชื่อเสียงโด่งดังในยุคสมัยที่เทคโนโลยีเข้ามา ดังนั้นหากคุณไม่ได้จัดการกับภาษาที่เป็นผู้ใหญ่ (C / C ++, COBOL, ฯลฯ ) ก็อาจเป็นไปได้ว่าสิ่งที่คุณใช้มาเป็นเวลาหลายปีอาจไม่สามารถใช้ได้ในเวอร์ชั่นที่นักเรียนได้เรียนรู้ ตัวอย่างเช่น. Net 3.0 ได้แนะนำ Entity Framework, WPF, WCF และโฮสต์ของสิ่งดีๆอื่น ๆ แต่แม้โรงเรียนของฉันยังคงติดอยู่ใน. Net 1.1 และ 2.0 (ซึ่งหมายถึงการติดอยู่กับ ADO.NET และไม่ได้เรียนรู้เกี่ยวกับวัตถุ - การทำแผนที่ความสัมพันธ์) โรงเรียนที่ใช้ PHP อาจติดอยู่กับ (ไม่ใช่ OOP) PHP 4

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

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

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


ในประเทศฝรั่งเศส (และฉันคิดว่ามันเหมือนกันในสถานที่ส่วนใหญ่) หลักสูตร CS ทุกหลักสูตรมีการเข้ารหัสที่จำเป็นใน C (หรือภาษาที่คล้ายกัน) เมื่อมีคนเรียนรู้เกี่ยวกับการจัดสรรหน่วยความจำท่ามกลางสิ่งอื่น ๆ ) และการเข้ารหัสที่บังคับใน C ++ / java / .net (ที่หนึ่งเรียนรู้เกี่ยวกับ OOP) นอกเหนือจากนี้คุณยังทำสิ่งต่าง ๆ มากมายที่สามารถครอบคลุมสาขาได้มากมาย แต่หากผู้ที่สำเร็จการศึกษาโดยไม่ทราบว่าวิธีการแบบเสมือนคืออะไรหมายความว่าเขาไม่ได้ศึกษาอย่างจริงจังมาก ... ฉันรู้อย่างแน่นอนว่าอะไร มันเป็นตอนที่ฉันเรียนจบ ... คุณจะคิดยังไงกับนักเรียนคณิตศาสตร์ที่ไม่รู้ว่าซีรี่ส์คืออะไร
Brann

@Brann - จากการวิจัย (ด่วน) ของฉันเกี่ยวกับวิทยาศาสตร์คอมพิวเตอร์ (รวมถึงความเข้าใจก่อนหน้าของฉัน) CS ไม่ได้เป็นโปรแกรมหลัก ใช่มันมีการเขียนโปรแกรมอยู่ แต่ไม่จำเป็นต้องเป็นจุดสนใจหลักของมัน สำหรับเรื่องนั้น "วิทยาศาสตร์คอมพิวเตอร์" กว้างและค่อนข้างคลุมเครือซึ่งอาจแตกต่างกันไปในแต่ละโรงเรียน สแตนฟอร์ดเป็นหนึ่งในโรงเรียน CS ชั้นนำในสหรัฐอเมริกาและสำหรับรายชื่อหลักสูตรการเลือกฤดูใบไม้ร่วงและฤดูหนาว ( www-cs.stanford.edu/courses ) มีหลักสูตรไม่ถึงครึ่งโหลที่เน้นการเขียนโปรแกรมจริง (ไม่ใช่แค่ ทฤษฎีโปรแกรม) จากประมาณ 50 คลาส
Shauna

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

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

3

คุณมีมุมมองที่ค่อนข้าง จำกัด และคุณถือว่าพวกเขาโดยปริยาย

  • ดูเหมือนว่ามีความแตกต่างอย่างมากระหว่างสิ่งที่ฉันคาดหวังกับคนที่เรียนการเขียนโปรแกรมเป็นเวลาสองสามปีที่มหาวิทยาลัยและสิ่งที่คนรู้จริง

    สำหรับความรู้ของฉันไม่มีมหาวิทยาลัยที่ซึ่งผู้คนศึกษาการเขียนโปรแกรมเป็นเวลาสองสามปี มหาวิทยาลัยเปิดสอนหลักสูตรสาขาวิทยาการคอมพิวเตอร์โดยที่การเขียนโปรแกรมเป็นเรื่องหนึ่ง

  • ประเภทอ้างอิงและประเภทค่าแตกต่างกันอย่างไร

    กฎของหัวแม่มือ: ถ้าเสียงกระเพื่อมสามารถทำได้โดยไม่มีความแตกต่างก็เป็นเพียงความยุ่งเหยิง;)

  • โดยพื้นฐานแล้วฉันทำทุกอย่างเท่าที่ทำได้เพื่อหลอกล่อผู้ให้สัมภาษณ์ให้บอกฉันเกี่ยวกับ callstack heap และอื่น ๆ และฉันพยายามอยู่ในแนวคิดเกี่ยวกับภาษา agnostics

    การพูดเกี่ยวกับแนวคิดที่ไม่เชื่อเรื่องภาษาเป็นความคิดที่ดี ไม่ว่าฮีปหรือสแต็กจะเป็นภาษาที่ไม่เชื่อเรื่องพระเจ้า

  • ถ้าผู้ให้สัมภาษณ์บอกฉันว่าเขาทำ C มากหรือ C ++ หรือ C # ฉันจะดำดิ่งลงไปในภาษาเฉพาะ

    ภาษาทั้งหมดเหล่านี้มีข้อกำหนด การใช้งานไม่ได้กำหนดโดยภาษา C และ C ++ สามารถข้ามคอมไพล์โดยใช้ LLVM เพื่อรันบน Flash Player หรือรันไทม์ JavaScript ใด ๆ สิ่งนี้ทำให้สมมติฐานของคุณเกี่ยวกับฮีปและการจัดสรรสแต็กเป็นโมฆะ
    ด้วย C # มันเหมือนกันมาก C # เป็น JITed ก่อนการเรียกใช้งานด้วยการปรับแต่งมากมายที่สามารถทำได้ ตัวแปรโลคัลที่ถูกจับโดยการปิดในท้ายที่สุดจะจบลงบนฮีปแทนที่จะเป็นสแต็กในขณะที่การวิเคราะห์การหลบหนีช่วยให้สามารถเก็บวัตถุขอบเขต - โลคัล (ซึ่งโดยปกติควรจะไปที่ฮีป) การจัดสรรการลงทะเบียนที่เหมาะสมจะช่วยลดความจำเป็นในการจัดสรรสแต็กอย่างมาก

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

    สิ่งที่คุณจะถามคนที่มีประสบการณ์การเขียนโปรแกรมเพียงอย่างเดียวคือกับ Haskell? : P

  • ผู้ให้สัมภาษณ์ส่วนใหญ่ไม่รู้ว่าโทรสต็อกคืออะไรพิจารณาเรื่องชกมวย ฯลฯ

    แนวคิดพื้นฐานที่อยู่เบื้องหลังการออโต้บ็อกซ์คือพื้นฐานนั้นสามารถได้รับการปฏิบัติเหมือนเป็นวัตถุ ในแง่ของนามธรรมนั้นมีสามประเภทภาษา:

    1. ที่ที่มันไม่มีอยู่ ฉันคิดว่า Objective-C เป็นตัวอย่างของการยิงปืนใหญ่
    2. ผู้ที่อยู่ในนั้นอย่างแท้จริง
    3. ที่ที่มันมีอยู่ แต่ไม่ถือ ฉันเดาว่าJava เป็นตัวอย่างที่ดีที่สุด (ฉันคิดว่ามันได้รับการแก้ไขแล้ว)

    ฉันไม่เห็นว่าทำไมคนไม่ควรใช้ภาษาของหมวดหมู่ 1 (อันที่จริงมันเป็นความคิดที่ดี) ฉันไม่เห็นว่าทำไมคนที่ใช้ภาษาของหมวดหมู่ 2 จึงควรใส่ใจอย่างยิ่ง และฉันคิดว่าทุกคนที่ใช้ภาษาของหมวดที่ 3 คือหนึ่งในที่ความหมายหลักที่ขาดหายไปคือการใช้ภาษาที่ผิด

  • อะไรคือความแตกต่างระหว่างคลาสนามธรรมและอินเทอร์เฟซ คุณควรใช้อันไหนดีกว่ากัน?

    ตอนนี้มันเป็นอัตวิสัยสูงและขึ้นอยู่กับภาษาจริงๆ C ++ ไม่มีอินเตอร์เฟส Objective-C ไม่มีคลาสนามธรรม ฉันขอยืนยันว่าภาษาใด ๆ ที่มีทั้งสองอย่างนั้นจำเป็นต้องได้รับการออกแบบใหม่อย่างจริงจัง ภาษาสมัยใหม่หลายแห่งใช้คุณสมบัติ, มิกซ์อิน, หมวดหมู่, บทบาทและโครงสร้างที่คล้ายกันเพื่อให้วิธีแก้ปัญหาที่สะอาดกว่าสำหรับการใช้รหัสซ้ำกว่าการสืบทอดของการนำไปใช้บางส่วน ภาษาที่ใช้ต้นแบบไม่มีชั้นเรียนทั้งหมด

    ในท้ายที่สุดนี้เป็นเรื่องที่ยากและต่อกร การสัมภาษณ์เป็นสถานที่ที่เหมาะสมในการแก้ปัญหานี้และฉันจะไม่ตอกย้ำใครก็ตามที่สมัครเข้ารับตำแหน่งรุ่นจูเนียร์เพราะไม่ได้รับคำตอบที่ดี

  • ผู้ให้สัมภาษณ์ส่วนใหญ่ไม่รู้เลยว่าจุดประสงค์ที่แท้จริงของมรดกคืออะไร พวกเขามักจะรู้คำหลักบางคำ (เสมือน, แทนที่, ฯลฯ ) แต่ไม่รู้จริง ๆ ว่าจะใช้เมื่อใดให้อธิบายคำอธิบายว่าโต๊ะเสมือนคืออะไร

    มีภาษาเชิงวัตถุจำนวนมากที่ไม่ใช้การสืบทอดหรือ vtables แบบคลาสสิก

คำแนะนำของฉัน:

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

เพื่อไปที่คำถามจริง:

และคุณคิดว่า บริษัท ของฉันอาจมีปัญหาในการดึงดูดคนที่มีความสามารถหรือคุณประสบปัญหาแบบเดียวกันกับในกระบวนการจ้างงานของคุณเองหรือ

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

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

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

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


1

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

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

เป็นเพียงข้อสังเกตส่วนตัวเกี่ยวกับระดับ / อนุปริญญา: ขณะนี้ฉันกำลังทำงานกับผู้ที่มีประวัติด้านชีวเคมีและอุตสาหกรรมที่มีประสบการณ์ด้านไอทีไม่กี่ปีและยังมีผู้ชายที่มีประสบการณ์ด้าน CS ด้วยและคาดเดาว่าใครมีความรู้มากที่สุด เครื่องยนต์ทำงานอย่างไร? ใช่ไม่ใช่คนที่เรียน CS! ดังนั้นฉันเพิ่งประสบกับความจริงที่ว่าประกาศนียบัตรไม่สำคัญเสมอไป!


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

ยุติธรรมมากพอ :-)
Jalayn

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

@brann พวกเขาอาจไม่ทราบคำศัพท์แต่ก็ควรระวังว่าการวางตำแหน่งทางกายภาพของข้อมูลที่จัดเก็บโดยตัวแปรนั้นถูกวางไว้ในส่วนของข้อมูลและไม่อยู่ในฮีปหรือสแต็ก คุณใช้ภาษาใดในลักษณะนี้มีความสำคัญ?

ฉันใช้ c # และฉันยอมรับว่าการรู้รายละเอียดของการใช้งานประเภทนี้อาจไม่สำคัญในบริบทนั้น (แม้ว่าในบางสถานการณ์มันอาจจะเป็น) สิ่งนี้คือฉันไม่ได้พยายามค้นหาผู้เชี่ยวชาญ # ฉันพยายามหาคนที่ฉลาดและมีแรงจูงใจมากพอที่จะเขียนโค้ดใน c # ได้ดี หากไม่มีใครสนใจที่จะเรียนรู้ / เข้าใจว่าเป็นประเภทค่าฉันมักจะ (อาจผิดพลาด) ที่จะคิดว่าเขาพลาดคุณสมบัติอย่างใดอย่างหนึ่งอย่างน้อยสองอย่าง
Brann

1

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

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

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

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


1
 or chose his university very unwisely.

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

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

ผู้คนไม่ได้เลือกการศึกษาอย่างแนบเนียน


0

เมื่อสัมภาษณ์ผู้สำเร็จการศึกษาใหม่ฉันจะยึดหัวข้อที่ปรากฏในประวัติย่อของพวกเขา หากพวกเขาใช้ Java ฉันจะถามพวกเขาเกี่ยวกับ Java หากพวกเขาใช้ Blub ฉันจะใช้เวลาอ่านครึ่งชั่วโมงเกี่ยวกับ Blub และถามพวกเขาเกี่ยวกับเรื่องนั้น แต่ฉันมักจะถามการใช้คำหลักภาษา ถ้าเป็น Java ฉันจะถามเกี่ยวกับ "การขยาย" และ "การดำเนินการ" แต่ไม่ใช่ "subclass" และ "การสืบทอด" ฉันคาดว่าผู้สำเร็จการศึกษาใหม่จะสามารถพูดคุยเกี่ยวกับรหัสบางส่วนที่พวกเขาเขียนเพื่อให้สามารถแก้ปัญหาการเขียนโปรแกรมอย่างง่ายและเข้าใจโครงสร้างข้อมูลพื้นฐาน (ตารางแฮชและต้นไม้)


0

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

หากพวกเขาไม่สามารถเขียนรหัสได้ภายใต้เงื่อนไขเหล่านี้พวกเขาจะไม่ได้รับการพิจารณาจ้างงาน เรียบง่ายเหมือนที่ ข้ออ้าง "ที่ฉันไม่รู้ภาษา" ทั้งหมดไม่เคยพูดจริงกับฉันเพราะผู้สมัครทุกคนที่มาสัมภาษณ์ที่นี่รู้ว่าจะต้องมีการทดสอบพวกเขารู้ภาษาและเครื่องมือที่เราใช้จริง คุณสามารถดาวน์โหลด visual studio ด่วนที่บ้านและทำพื้นฐานก่อนเข้ามาและผ่านการทดสอบระดับผู้ที่ไม่รำคาญ ... นั่นคือสิ่งที่ฉันเรียกว่าธงสีแดง


นี่เป็นวิธีที่ดีที่สุดในการหาคนที่อ้างว่าเขารู้ว่ามีบางสิ่งที่รู้ว่าใช้งานได้ดีพอ การถามว่าศัพท์หมายถึงอะไรที่อยู่นอกห้องเรียนแทบจะไม่เคยใช้เลยมันไม่มีจุดหมาย ฉันหมายถึงในช่วง 18 เดือนที่ผ่านมาฉันไม่เคยมีการสนทนาเกี่ยวกับประเภทอ้างอิงอาจเคยบ่นเกี่ยวกับสิ่งที่เกี่ยวข้องกับพอยน์เตอร์
Ramhound
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.