คุณจะเรียนรู้กรอบมาตรฐาน / API / ฟังก์ชันของภาษาได้อย่างไร [ปิด]


14

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

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

มีเครื่องหมายที่ดีสำหรับ "ฉันรู้เพียงพอ" ที่ฉันสามารถใช้เพื่อรับรองตัวเองว่าฉันสามารถเขียนโค้ดได้หรือไม่? ฉันควรใช้ข้อเท็จจริงที่ว่าอย่างน้อยฉันสามารถเขียนรหัส FizzBuzz เป็นตัวบ่งชี้ว่าไม่เป็นไรที่จะนำไปใช้กับสิ่งต่าง ๆ ? ฉันจะเรียนรู้เพิ่มเติมเกี่ยวกับไลบรารีเฟรมเวิร์กและ / หรือ API มาตรฐานเหล่านี้ได้ง่ายกว่าได้อย่างไร ฉันเขียนโค้ดเป็นประจำฉันอ่านหนังสือ แต่ความรู้ของฉันก็ยังคงตื้นเขิน

ช่วยด้วย!


3
ยิ่งคุณเรียนรู้มากขึ้นเท่าไหร่คุณก็ยิ่งตระหนักว่าคุณรู้น้อยแค่ไหน +1 สำหรับคำถามที่ดีมาก
devnull

ฉันไม่แน่ใจว่าสิ่งนี้น่าจดจำ ท้ายที่สุดคุณมีเอกสารที่สามารถค้นหาได้ IDE อัจฉริยะและอื่น ๆ มันจะดีกว่ามากถ้าคุณใช้สมองของคุณสำหรับสิ่งสำคัญสำหรับความรู้พื้นฐานทำให้ API ที่ระเหยได้ทั้งหมดอยู่ข้างนอก
SK-logic

I feel like I only know a small portion of the standard library of my languageประโยคนี้ควรจะเป็นอย่างเป็นทางการ c ++ คำขวัญ
ZJR

คำตอบ:


8

เพื่อนแนะนำของฉัน:

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

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

ฉันคิดว่าสิ่งที่คุณต้องมีตอนนี้ไม่ใช่ความรู้เพิ่มเติม ค่อนข้างเป็นเพียงความมั่นใจในตนเอง

โชคดี


ฉันรู้ว่ามันเป็นความรู้ที่คลุมเครือและรายละเอียด JIT-Learning บางส่วน ฉันไม่รู้วิธีที่จะรับรองตัวเองว่าฉันยังมีความเข้าใจขั้นพื้นฐาน ฉันกังวลว่าฉันทำสิ่งที่สำคัญบางอย่างหายไปอย่างสมบูรณ์
Throwaway

2

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

หยุดเปรียบเทียบตัวเองกับคนอื่นในวงกว้าง

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

เรียนรู้ที่จะเรียนรู้

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

และตอนนี้สำหรับคำแนะนำที่ไม่ดีจากบางคนที่แก่กว่าคุณเพียงเล็กน้อย

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

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

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


2

"ฉันรู้เพียงพอ" และ "ฉันดีสำหรับงานนี้" แตกต่างไปจากเดิมอย่างสิ้นเชิง

IMO "ฉันดีต่องานนี้" ใกล้กับ "ฉันรู้พื้นฐานและรู้แล้ว - สิ่งที่ต้องเรียนรู้ / สิ่งที่ต้องค้นหา / ผู้ที่จะถาม / สิ่งที่ต้องอ่าน / สิ่งที่ต้องอ่าน - เพื่อให้งานของฉันสำเร็จ"

(นี่ไม่ได้หมายความว่าพวกเขาจะจ้างคุณถ้าคุณต้องการ 1-2 เดือนในการเรียนรู้เช่นเขียน / อ่านในไฟล์ XML ฉันหวังว่าคุณจะเข้าใจสิ่งที่ฉันหมายถึง)

นอกจากนี้ฉันไม่คิดว่าโปรแกรมเมอร์คนใดจะพูดว่า "ฉันรู้เพียงพอ" (อาจจะ "เพียงพอที่จะรับงาน", "เพียงพอที่จะรวย", "เพียงพอที่จะ ... " แต่ไม่ "เพียงพอ" :))

แก้ไข: เมื่อฉันพูดว่า "พื้นฐาน" ฉันหมายถึง

  1. พื้นฐานของการเขียนโปรแกรม (บิต, ไบต์, ตัวแปร, ฟังก์ชั่น, พารามิเตอร์, ลูป, เงื่อนไข, การเรียกซ้ำ)
  2. พื้นฐานของภาษาการเขียนโปรแกรมที่คุณจะใช้งาน (วิธีการคอมไพล์โปรแกรม, วิธีการดีบั๊กโปรแกรม, วิธีการใช้ IDE, 90% ของคำหลักและรู้ว่าพวกเขาทำอะไร, เมื่อใช้, วิธีการใช้งาน, ตัวแปร ประเภทวิธีใช้สิ่งต่าง ๆ จาก 1 ในภาษาไลบรารีที่มีประโยชน์มากที่สุดการจัดการข้อผิดพลาด)
  3. "เชื่อมต่อ 1 และ 2 ด้วยเลือดของคุณ" :)

(อาจเป็นไปได้ว่าคุณต้องใช้ 2-3 ภาษาในที่ทำงาน)

ฉันเห็นด้วยกับ Saeed ดำน้ำในการทำงานการทำงานเป็นวิธีที่ดีที่สุดในการเรียนรู้สิ่งต่าง ๆ คุณทำงานกับคนที่รู้มากกว่าคุณคุณเรียนรู้จากพวกเขาดูว่าพวกเขาทำงานอย่างไรแต่พวกเขาก็เริ่มเหมือนคุณ มีความรู้น้อยกว่าที่คุณมีตอนนี้)


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

1

คุณมีทัศนคติที่ดี! หนึ่งในปัจจัยพื้นฐานในการประสบความสำเร็จคือไม่เคยพึงพอใจ ไม่เคยตัดสิน อย่าประนีประนอมตัวเอง ที่กล่าวว่ามันยากที่จะแยกแยะวิธีการว่าจะทำอย่างนั้น (เช่นรู้ 'ปฏิบัติที่ดีที่สุดสำหรับการทำงาน X ไม่ได้เป็นง่ายๆเป็น Googling มันเพราะทุกคนมีความคิดเห็นของตนเอง)

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


ขอบคุณ ฉันไม่คิดว่าฉันรู้ว่าฉันต้องการได้ยินคำสรรเสริญเช่นนี้
Throwaway

0

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

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

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


[คัดลอก / วางจากความคิดเห็นของฉันในความคิดเห็นของ @ e-MEE ด้านบน] ฉันใช้เวลาหนึ่งเดือนในการอ่านและเขียนไฟล์ XML แม้ว่าฉันจะยังคงคิดว่ามันอาจจะใช้เวลาทั้งวัน คุณสามารถอธิบายรายละเอียดเกี่ยวกับ "พื้นฐาน" ได้หรือไม่? นี่คือแรงผลักดันหลักของคำถามของฉันจริง ๆ แล้วเนื่องจากฉันไม่รู้ว่าฉันรู้พื้นฐาน ฉันรู้พื้นฐานบางอย่างแน่นอน แต่ฉันกังวลจริงๆว่าฉันไม่มีช่องว่างพื้นฐาน
Throwaway

0

จากสิ่งที่คุณเขียนในคำถามคุณสามารถเขียนโค้ดได้และคุณยินดีที่จะพัฒนาทักษะและความรู้ของคุณ

ทุกคนในแต่ละงานจะต้องเริ่มต้นเล็ก ๆ น้อย ๆ ในฐานะมือใหม่แล้วเติบโตด้วยประสบการณ์

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

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

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

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

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

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.