การเรียนรู้ภาษาการเขียนโปรแกรมจำนวนมากเป็นเรื่องเจ็บปวดหรือไม่?


37

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

ต่อไปฉันเรียนรู้ C ++ ในปีที่สอง มันเพิ่งสอนความรู้เกี่ยวกับ OOP ให้ฉัน ตอนนี้ฉันกำลังทำ PHP (พร้อมด้วย HTML) ฉันยังไม่เชี่ยวชาญ C ++, BASIC หรือ PHP ตอนนี้ฉันวางแผนที่จะย้ายไปที่การพัฒนาอุปกรณ์พกพา แต่ฉันรู้สึกว่าฉันไม่ได้ครอบคลุมทุกอย่างในภาษาที่ฉันเรียนรู้

มันสำคัญจริงๆหรือ

คำตอบ:


50

พวกเราทุกคนกำลังเรียนรู้ภาษาการเขียนโปรแกรม ฉันจะพิจารณาผู้ใช้ภาษาเป็นผู้ที่มีความรู้ภาษาเพียง 10 ใน 10 เท่านั้น

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

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


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

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

6
ฉันไม่คิดว่าแม้แต่คนที่เขียนคอมไพเลอร์ C ++ ก็เข้าใจ C ++ ทีละอย่างฉันหมายถึง เห็นได้ชัดว่าพวกเขาต้องเข้าใจภาษาทั้งหมด แต่ฉันไม่คิดว่ามีคนคนเดียวบนโลกใบนี้ที่เข้าใจทุกภาษา ในความเป็นจริงสมาชิกคณะกรรมการมักจะค่อนข้างชัดเจนเกี่ยวกับความจริงที่ว่าพวกเขาทุกคนเข้าใจเฉพาะความเชี่ยวชาญของตนเอง ในทำนองเดียวกันใน Java: Martin Odersky เมื่อเร็ว ๆ นี้กล่าวว่าเขาเชื่อว่ามีเพียง 3 คนในโลกที่เข้าใจสัญลักษณ์แทน และจากน้ำเสียงของอีเมลฉันได้รับความประทับใจว่าเขาไม่ได้รวมตัวเองไว้ด้วย
Jörg W Mittag

2
ในกลุ่มนั้นถึงแม้ว่าเขาจะออกแบบ Java Generics จริง ๆ(ร่วมกับ Phil Wadler แน่นอน) แม้ว่าจะเป็นธรรมสัญลักษณ์เสริมถูกเพิ่มในการออกแบบของเขาโดยไม่ได้รับความยินยอมในความเป็นจริงกับการคัดค้านอย่างชัดแจ้งของเขา
Jörg W Mittag

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

21

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


5
ในสองปีแรกของฉันฉันคิดว่าเราเลือกภาษาใหม่ทุก ๆ 3 - 4 สัปดาห์เพื่อไปกับปาสกาลซึ่งเป็นพื้นฐานของงานโครงงานส่วนใหญ่ของเรา (2525-28) - บางส่วนเป็นภาษาที่ใช้งานได้ ส่วนหนึ่งของจุดนี้คือการพยายามทำให้มั่นใจว่าเราแยก "การเขียนโปรแกรม" ออกจาก "การเข้ารหัส"
Murph

12

ผมเชื่อว่าสิ่งที่สำคัญที่สุดในการเขียนโปรแกรมคือการทำความเข้าใจที่แตกต่างกัน กระบวนทัศน์

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

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

สำหรับภาษาแบบฝังผมเชื่อว่าสิ่งสำคัญคือการเข้าใจปัญหาต่าง ๆ ที่เกี่ยวข้องกับเทคโนโลยีดังกล่าว

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

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


2
+1 สำหรับกระบวนทัศน์ มันไม่สำคัญที่จะมุ่งเน้นไปที่น้ำตาลในประโยคของภาษา X หรือ Y (แน่นอนว่าคุณต้องการถ้าคุณใช้ภาษา X ทุกวันในที่ทำงาน); สิ่งที่มีประโยชน์คือการศึกษากระบวนทัศน์ที่แตกต่างกันเพราะ IMHO ช่วยให้คุณมีใจที่เปิดกว้างและสร้างสรรค์ในการแก้ปัญหา
sakisk

5

ในความคิดของฉันมีจุดเล็ก ๆ ในการเปลี่ยนภาษาบ่อยมาก คุณจะไม่เข้าใจสิ่งใดเลย โดยเฉพาะอย่างยิ่งบางอย่างเช่น C ++ ที่บางคนใช้เวลาสิบปีในการเขียนภาษาและยังคงมีรหัสของพวกเขาเช่น C

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


5

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


3

ฉันใช้หลายภาษาในอาชีพของฉันเช่น AMOS Basic, Java, C ++, PHP, VB6, Delphi เป็นต้นวันนี้ฉันใช้ C #, JavaScript, Ruby และ Clojure ที่ทำงานและฉันก็เล่นกับ Pyhton, Erlang Lisp สามัญและโครงการ

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

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

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

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


2

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


2

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

ประโยชน์ของการเห็นว่าภาษาอื่น ๆ ทำสิ่งต่าง ๆ จะช่วยให้คุณเป็นโปรแกรมเมอร์อย่างไร แม้ว่าบางครั้งเมื่อคุณกำลังกระโดดไปรอบ ๆ คุณทำผิดพลาดกับการสร้างประโยค (เช่นมีการตรวจสอบความไม่เท่าเทียมกัน!=, ~=หรือ<>) คุณควรระวังแม้ว่าจะเรียนรู้มากกว่าไวยากรณ์ของภาษา แต่แนวปฏิบัติที่ดีที่สุดในภาษาเช่นเดียวกับทักษะทางวิศวกรรมซอฟต์แวร์ทั่วไปที่ดี เนื้อหาถ้าคุณเรียนรู้ C แล้วเรียนรู้ C ++ คุณควรตรวจสอบให้แน่ใจเมื่อคุณเขียนรหัส C ++ ที่อยู่ในรูปแบบของรหัส C ++ (แทนที่จะเป็นเพียงแค่ C ที่มีคำหลักใหม่ไม่กี่คำนั่นคือคุณมีหลายคลาส / วัตถุ / ตัวชี้สมาร์ทมากกว่าตัวชี้ดิบ ฯลฯ


1
อย่าให้ฉันเริ่มต้นถ้า x <b> = </b> 5 จากนั้น ฉันต้องตรวจสอบรหัส C ของฉันอีกครั้งเหมือนเป็นเวลาหนึ่งสัปดาห์หลังจากที่รักษาสิ่งที่เกี่ยวข้องกับพื้นฐานไว้
user606723

2

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


2

ไม่อย่างแน่นอน. แน่นอนคุณต้องการให้แน่ใจว่าคุณกำลังเรียนรู้สไตล์ที่แตกต่างของภาษา การเรียนรู้ทั้ง C # และ Java จะไม่ขยายความคิดของคุณในวิธีการที่สำคัญใด ๆ แต่การเรียนรู้ Java และ Haskell จะ

ลองอ่านหนังสือเจ็ดภาษาในเจ็ดสัปดาห์ซึ่งจะแนะนำคุณเกี่ยวกับการแนะนำ Ruby, IO, Scala, Erlang, Prolog, Clojure และ Haskell หากคุณสนุกกับภาษาคุณจะรักหนังสือเล่มนั้น


1
การเรียนรู้ C # หลังจาก Java อาจขยายความคิดของคุณด้วยการเขียนโปรแกรมการทำงาน (และคุณสมบัติอื่น ๆ ที่ Java ขาด) แต่ถ้าเป็นเพียงเพื่อการเรียนรู้ Haskell อาจจะดีกว่ามากเพราะการใช้งานอย่างหมดจด
svick

1

ดี C และ C ++ จะไม่ทำอันตรายใด ๆ ในการเขียนโปรแกรมมือถือ คุณสามารถใช้ทั้งกับ Cocoa Touch หรือ Android NDK และบางครั้งคุณต้องการประสิทธิภาพ นอกจากนี้บางครั้งคุณต้องการเพราะคุณต้องการเขียนโค้ดที่ทำงานบนหลายแพลตฟอร์ม ในกรณีนี้สมมติว่าคุณไม่ได้ใช้แค่เฟรมเวิร์กของบุคคลที่สามคุณสามารถเขียนแอพของคุณใน C / C ++ และคอมไพล์ใน wrapper เฉพาะแพล็ตฟอร์มสำหรับองค์ประกอบพื้นฐานที่ต้องการ (ตัวอย่างเช่นวิธีเดียวที่จะได้บริบท OpenGL บน iPhone คือการใช้คลาส CAEAGLLayer ดั้งเดิม)

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


1

จริงๆแล้วมันมีประโยชน์เกี่ยวกับการเรียนรู้ภาษาฝรั่งเศสสเปนอังกฤษอาหรับฮินดีและจีนเล็กน้อยโดยที่ไม่เคยรู้จักใครเลย


6
ฉันไม่รู้ว่าคุณกำลังพยายามพูดอะไร
svick

คุณตระหนักดีว่าพวกเราส่วนใหญ่ไม่รู้จัก "ดี" แม้แต่ภาษาแม่ของเราใช่ไหม
Spidey

1

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

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


0

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

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

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

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


0

คำตอบสั้น ๆ : ไม่

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

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

ภาษาเป็นเครื่องมือ คุณแค่ใส่เครื่องมือเพิ่มในสายพานของคุณ แต่เครื่องมือก็ดีพอ ๆ กับช่างฝีมือที่ใช้มัน

ตอนนี้คุณได้เรียนรู้ว่าเป็นตัวเลือกส่วนบุคคลมากแค่ไหน ฉันจะไม่มีวันเรียนภาษาเพื่อการเรียนรู้ภาษาใหม่ ตัวเลือกใด ๆ ในการเรียนรู้ภาษาใหม่จะได้รับแจ้งจากข้อกำหนดของหลักสูตร (ต้องเลือก js, php และ R สำหรับชั้นเรียนเดียวเมื่อปีที่แล้ว) ความต้องการโครงการที่มีอยู่ (ถ้า 90% ของงานจะทำใน perl 6 ก่อน คุณได้รับการว่าจ้างดังนั้นส่วนที่เหลืออีก 10% หลังจากนั้น) หรือผลประโยชน์เฉพาะแอปพลิเคชัน (R มากกว่าบอกว่า Java รวมกับห้องสมุดหวานสำหรับการวิเคราะห์ทางสถิติ)

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


0

วิธีที่ฉันเห็นคือคุณไม่จำเป็นต้องเรียนรู้ภาษาแต่ละภาษา แต่ลองเรียนรู้คุณสมบัติพื้นฐานที่จำเป็นในภาษาอื่นด้วย
ตัวอย่างเช่นแนวคิด OOPS จำเป็นต้องมีในทุกภาษาไม่ว่าจะเป็นJava , PHPหรือภาษาอื่น ๆ แนวคิดการ
จัดสรรหน่วยความจำค่อนข้างคล้ายกันในหลายภาษาโปรแกรม หัวข้อประเภทนี้คุณไม่ควรพลาด
แต่ละภาษามีไวยากรณ์และกฎเช่นเดียวกับภาษาโปรแกรม เดนนิสริชชี่ยอมรับความจริงนั้น ดังนั้นหนึ่งควรเรียนรู้ไวยากรณ์ของภาษานั้น
แต่วิธีที่ฉันเห็นก็คือคุณต้องเรียนรู้ปัจจัยที่ไม่เหมือนกันระหว่างสองภาษาโปรแกรม พวกเขาจะให้คุณระบุว่าภาษาใดที่ใช้แทนอะไร C ++เป็นพื้นฐาน OOP ทั้งหมด (การเขียนโปรแกรมเชิงวัตถุ) ดังนั้นเมื่อคุณเรียนรู้แนวคิดOOPคุณจะได้เรียนรู้ไวยากรณ์ที่คุณจะเห็นใน PHP และ Java ด้วย
โฟลว์การเรียนรู้ของฉันคือ:
Visual Basic 5 (บางส่วน) -> HTML 2.0 (บางส่วน) -> C (บางส่วน) -> CPP (บางส่วน) -> Java (บางส่วน)
แล้วฉันเรียนรู้ภาษา Cอีกครั้งแล้วตามด้วยC ++ตามด้วยJAVA ( เสร็จสมบูรณ์ในเวลานี้) จากนั้นฉันย้ายไปใช้Androidเนื่องจากฉันคุ้นเคยกับJavaและXML(บางส่วน) และเรียนรู้ในเวลาเฉลี่ย ความพยายามครั้งแรกสอนฉันน้อยลง แต่ในความพยายามครั้งที่สองให้แน่ใจว่าได้เรียนรู้ทุกอย่างที่จะช่วยคุณในครั้งต่อไป


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