คำถามติดแท็ก programming-languages

ภาษาประดิษฐ์สำหรับสั่งคอมพิวเตอร์ให้ทำขั้นตอนการคำนวณเพื่อให้งานสำเร็จ อนุญาตให้โปรแกรมเมอร์สื่อสารกับคอมพิวเตอร์

19
ลำดับการเรียนรู้การเขียนโปรแกรมภาษาในอุดมคติ? [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบ เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงอภิปรายโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา ล็อคแล้ว คำถามและคำตอบของคำถามนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ คุณคิดอย่างไร? ลำดับการเรียนรู้ภาษาการเขียนโปรแกรมในอุดมคติคืออะไรซึ่งจะครอบคลุมภาษาและกระบวนทัศน์ส่วนใหญ่ที่ใช้กันอย่างแพร่หลายในปัจจุบันรวมถึงช่วยให้เข้าใจพื้นฐานการเขียนโปรแกรมพื้นฐานความคิดและการปฏิบัติทั่วไป คุณยังสามารถแนะนำลำดับการเรียนรู้สำหรับกระบวนทัศน์แทนที่จะเป็นภาษา NB: นี่คือพอร์ตของคำถามที่ฉันถามในstackoverflowและถูกปิดเพราะเป็นอัตนัยและโต้แย้ง

5
ความต้องการข้อมูลจำเพาะเกี่ยวกับการออกแบบซอฟต์แวร์ลดลงอย่างมีนัยสำคัญเมื่อเทียบกับวิวัฒนาการของภาษาการเขียนโปรแกรมที่แสดงออกได้มากกว่านี้หรือไม่?
สำหรับคนไอทีจำนวนมากรวมถึงตัวผมเองเมื่อไม่กี่ปีที่ผ่านมากระบวนการพัฒนาซอฟต์แวร์ที่เหมาะสมจะเกี่ยวข้องกับการสร้างเอกสารการออกแบบอย่างละเอียดพร้อมไดอะแกรม UML จำนวนมากก่อนที่จะมีการเขียนบรรทัดโค้ด (ดูเหมือนว่าคำอธิบายของโมเดลน้ำตก แต่จะเหมือนกันกับว่องไวยกเว้นว่าการทำซ้ำจะเล็กกว่า) ในช่วงสองหรือสามปีที่ผ่านมาฉันเปลี่ยนใจโดยสิ้นเชิง ฉันยังคิดว่าข้อกำหนดรายละเอียดความต้องการพร้อมกรณีทดสอบที่เกี่ยวข้องนั้นเป็นสิ่งจำเป็นอย่างยิ่ง สำหรับโครงการขนาดใหญ่ฉันก็ต้องการโครงร่างของสถาปัตยกรรมโดยรวมก่อนที่จะเริ่มโค้ด แต่ส่วนที่เหลือทั้งหมดควรทำในรหัสมากที่สุด ในกรณีที่เหมาะสมไม่ควรมีคำอธิบายของการออกแบบซอฟต์แวร์ยกเว้นรหัสเอง ฉันมาถึงข้อสรุปนี้ได้อย่างไร นี่คือข้อโต้แย้งบางอย่าง: ผลตอบรับ เครื่องมือสำหรับการเขียนเอกสารหรือสร้างไดอะแกรมนั้นให้ผลป้อนกลับเล็กน้อย ใช่มีเครื่องมือสร้างแบบจำลองที่ทำการตรวจสอบความสอดคล้องบนไดอะแกรม UML แต่มีข้อ จำกัด และมาพร้อมกับค่าใช้จ่ายจำนวนมาก หากไม่มีข้อเสนอแนะมันเป็นการยากที่จะรับรู้และแก้ไขข้อผิดพลาด ทันทีที่คุณเขียนรหัสคุณจะได้รับข้อเสนอแนะมากมายเช่น: ข้อผิดพลาดและคำเตือนจากคอมไพเลอร์ ผลการวิเคราะห์รหัสคงที่ การทดสอบหน่วย สามารถจดจำและแก้ไขข้อผิดพลาดได้อย่างรวดเร็ว ความมั่นคง เพื่อให้แน่ใจว่ารหัสสอดคล้องกับเอกสารของคุณคุณต้องตรวจสอบอีกครั้งและอีกครั้ง หากมีการเปลี่ยนแปลงบ่อยครั้งจะเป็นการยากที่จะทำให้รหัสและเอกสารตรงกัน refactoring มีเครื่องมือและเทคนิคที่มีประสิทธิภาพสำหรับการ refactoring code ในขณะที่การ refactoring textual description หรือไดอะแกรมมักจะยากและเกิดข้อผิดพลาดได้ง่าย มีเงื่อนไขหนึ่งที่จะทำให้งานนี้: รหัสจะต้องง่ายพอที่จะอ่านและทำความเข้าใจ สิ่งนี้อาจไม่สามารถทำได้ด้วย Assembler, Basic หรือ Fortran แต่ภาษาสมัยใหม่ (และห้องสมุด) มีความหมายมากกว่า ดังนั้นหากข้อโต้แย้งของฉันถูกต้องควรมีแนวโน้มไปสู่ข้อกำหนดและเอกสารการออกแบบซอฟต์แวร์ที่มีน้ำหนักเบาหรือน้อย มีหลักฐานเชิงประจักษ์สำหรับแนวโน้มนี้หรือไม่?

6
ภาษาตามจำนวน จำกัด ของอาร์กิวเมนต์ที่ส่งผ่านไปยังฟังก์ชัน
แนวคิดนี้ได้รับแรงบันดาลใจจากตัวดำเนินการข้อเท็จจริงเช่น +, -,%, เป็นต้นซึ่งสามารถมองเห็นได้ว่าเป็นฟังก์ชั่นที่ผ่านการโต้แย้งหนึ่งหรือสองครั้งและไม่มีผลข้างเคียง สมมติว่าฉันหรือคนอื่นเขียนภาษาที่หยุดไม่ให้มีการโต้แย้งมากกว่าสองข้อและยังใช้งานได้ผ่านการส่งคืนเท่านั้น: ก) ภาษานั้นจะทำให้เข้าใจรหัสได้ง่ายขึ้นหรือไม่ b) การไหลของรหัสจะชัดเจนขึ้นหรือไม่ (บังคับให้ทำตามขั้นตอนมากขึ้นโดยที่การโต้ตอบ 'ซ่อน' อาจมีน้อยลง c) ข้อ จำกัด จะทำให้ภาษามีขนาดใหญ่เกินไปสำหรับโปรแกรมที่ซับซ้อนมากขึ้น d) (โบนัส) ความคิดเห็นอื่น ๆ เกี่ยวกับข้อดี / ข้อเสีย บันทึก: การตัดสินใจสองครั้งจะยังคงต้องทำก่อนคืออนุญาตให้ผู้ใช้ป้อนข้อมูลนอกหลัก () หรือเทียบเท่าและสิ่งที่กฎจะเกี่ยวกับสิ่งที่เกิดขึ้นเมื่อผ่านอาร์เรย์ / โครงสร้าง ตัวอย่างเช่นหากมีคนต้องการฟังก์ชั่นเดียวที่จะเพิ่มค่าหลายค่าเขาสามารถหลีกเลี่ยงข้อ จำกัด โดยรวมมันเข้าไปในอาร์เรย์ สิ่งนี้สามารถหยุดได้โดยไม่อนุญาตให้อาร์เรย์หรือโครงสร้างจากการโต้ตอบกับตัวเองซึ่งจะช่วยให้คุณตัวอย่างเช่นหารจำนวนแต่ละจำนวนด้วยจำนวนที่แตกต่างกันขึ้นอยู่กับตำแหน่งของมัน

1
ภาษาโปรแกรมใดที่ใช้เครื่องหมายเปอร์เซ็นต์ (%) เพื่อหมายถึงโมดูโล / ส่วนที่เหลือมา
ภาษาโปรแกรมใดที่ใช้เครื่องหมายเปอร์เซ็นต์ (%) เพื่อหมายถึงโมดูโล / ส่วนที่เหลือมา โพสต์ก่อนหน้า1 นี้อธิบายว่ามีการเลือกสัญลักษณ์% เนื่องจากมีเครื่องหมายสแลชที่ชาญฉลาดสำหรับการดำเนินการที่เกี่ยวข้องกับการหาร นอกจากนี้ยังกล่าวถึงอิทธิพลของการใช้สัญลักษณ์ C อย่างไรก็ตามฉันไม่แน่ใจว่ามันมีต้นกำเนิดใน C. ภาษาการเขียนโปรแกรม B เป็นตัวตั้งต้นของ C และฉันพบคู่มือผู้ใช้สำหรับ B (PDF, หน้า 12) ที่ระบุว่า: ตัวดำเนินการ% แสดงโมดูโล หากตัวถูกดำเนินการทั้งคู่เป็นบวกผลลัพธ์จะถูกต้อง มันไม่ได้กำหนดไว้เป็นอย่างอื่น คู่มือผู้ใช้นั้นลงวันที่ 1972 แม้ว่าประมาณเมื่อ C ปรากฏ มันทำให้ในทางทฤษฎีมีความเป็นไปได้ที่จะมีต้นกำเนิดใน C แต่กลับไปที่ B. แล้วฉันยังไม่สามารถหาข้อมูลจำเพาะสำหรับภาษาอื่น ๆ ก่อนหน้านี้เพื่อแสดงการใช้สัญลักษณ์% ซึ่งฉันเชื่อว่าคำถามนี้ไม่ซ้ำกัน: คำถามนั้นถามว่าทำไมการดำเนินการแบบโมดูโลจึงเป็นพื้นฐานฉันถามเมื่อสัญลักษณ์โดยเฉพาะปรากฏว่าหมายถึงโมดูโล่

2
ความแตกต่างของตัวแปรระดับสูงมีประโยชน์หรือไม่
ฉันค่อนข้างมั่นใจว่าทุกคนคุ้นเคยกับวิธีการทั่วไปของแบบฟอร์ม: T DoSomething<T>(T item) ฟังก์ชั่นนี้เรียกว่า parametrically polymorphic (PP) โดยเฉพาะอันดับ 1 PP สมมติว่าวิธีนี้สามารถแสดงโดยใช้ฟังก์ชั่นวัตถุของรูปแบบ: <T> : T -> T นั่นคือ<T>หมายความว่าใช้พารามิเตอร์ประเภทเดียวและT -> Tหมายความว่าใช้พารามิเตอร์ประเภทเดียวTและส่งกลับค่าประเภทเดียวกัน ต่อไปนี้จะเป็นฟังก์ชัน PP อันดับ 2: (<T> : T -> T) -> int ฟังก์ชั่นไม่มีพารามิเตอร์ประเภทตัวเอง แต่ใช้ฟังก์ชั่นซึ่งใช้พารามิเตอร์ประเภท คุณสามารถทำสิ่งนี้ซ้ำ ๆ ได้โดยทำรังให้ลึกและลึกขึ้นรับ PP ในระดับที่สูงกว่าและสูงกว่า คุณลักษณะนี้หายากมากในบรรดาภาษาการเขียนโปรแกรม แม้แต่ Haskell ก็ไม่อนุญาตตามค่าเริ่มต้น มันมีประโยชน์หรือไม่ มันสามารถอธิบายพฤติกรรมที่ยากที่จะอธิบายเป็นอย่างอื่นได้หรือไม่? นอกจากนี้มันหมายความว่าอะไรที่จะต้องมีความคิดมาก ? (ในบริบทนี้)

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

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

10
ทำไมเราต้องการ“ ฟังก์ชั่นโทรกลับ”?
programming in Luaฉันกำลังอ่านหนังสือ มันบอกว่า การปิดให้บริการเป็นเครื่องมือที่มีคุณค่าในหลายบริบท ดังที่เราได้เห็นพวกมันมีประโยชน์ในการโต้แย้งกับฟังก์ชันลำดับสูงเช่นเรียงลำดับ การปิดเป็นสิ่งที่มีค่าสำหรับฟังก์ชั่นที่สร้างฟังก์ชั่นอื่น ๆ เช่นตัวอย่างตัวนับใหม่ กลไกนี้อนุญาตให้โปรแกรม Lua รวมเทคนิคการเขียนโปรแกรมที่ซับซ้อนจากโลกที่ใช้งานได้ การปิดเป็นประโยชน์สำหรับฟังก์ชั่นการโทรกลับเช่นกัน ตัวอย่างทั่วไปที่นี่เกิดขึ้นเมื่อคุณสร้างปุ่มในชุดเครื่องมือ GUI ทั่วไป แต่ละปุ่มมีฟังก์ชั่นการโทรกลับที่จะถูกเรียกเมื่อผู้ใช้กดปุ่ม; คุณต้องการให้ปุ่มต่าง ๆ ทำสิ่งต่าง ๆ เล็กน้อยเมื่อกด ตัวอย่างเช่นเครื่องคิดเลขดิจิตอลต้องการปุ่มที่คล้ายกันสิบปุ่มสำหรับแต่ละหลัก คุณสามารถสร้างแต่ละคนด้วยฟังก์ชั่นเช่นนี้: function digitButton (digit) return Button{label = tostring(digit), action = function () add_to_display(digit) end} end มันดูเหมือนว่าถ้าผมเรียกdigitButtonมันจะกลับaction(นี้จะสร้างปิด) ดังนั้นฉันสามารถเข้าถึงผ่านไปdigitdigitButton คำถามของฉันคือ: Why we need call back functions? what situations can …

5
ทำไมค่าคงที่จึงมีความสำคัญในวิทยาศาสตร์คอมพิวเตอร์
ฉันเข้าใจ 'คงที่' ในความหมายที่แท้จริง ฉันจำได้เมื่อพิมพ์รหัส แต่ฉันไม่คิดว่าฉันเข้าใจความสำคัญของคำนี้ในบริบทของวิทยาศาสตร์คอมพิวเตอร์ เมื่อใดก็ตามที่ฉันอ่านบทสนทนา \ white paper เกี่ยวกับการออกแบบภาษาจากโปรแกรมเมอร์ที่มีชื่อเสียง \ นักวิทยาศาสตร์คอมพิวเตอร์คำว่า 'invariant' ยังคงปรากฏขึ้นอย่างต่อเนื่องเป็นศัพท์แสง และนั่นคือส่วนที่ฉันไม่เข้าใจ มีอะไรพิเศษเกี่ยวกับมัน?

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

10
หากการแข่งขันใช้ 'lingua obscura' เพื่อการพัฒนา (ทำไม) ฉันควรกังวล? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันอ่านเรียงความของ Paul Graham - Beating The A ค่าเฉลี่ย (2003)และนี่คือสิ่งที่เขาต้องพูด: ยิ่งมีรสชาติด้านไอทีที่รายละเอียดของงานมากขึ้น บริษัท ก็ยิ่งอันตรายน้อยลงเท่านั้น ประเภทที่ปลอดภัยที่สุดคือประเภทที่ต้องการประสบการณ์ Oracle คุณไม่ต้องกังวลเกี่ยวกับสิ่งเหล่านั้น คุณยังปลอดภัยถ้าพวกเขาบอกว่าพวกเขาต้องการนักพัฒนา C ++ หรือ Java ถ้าพวกเขาต้องการโปรแกรมเมอร์ Perl หรือ Python มันจะน่ากลัวนิดหน่อย - นั่นเริ่มเป็นเสียงเหมือน บริษัท ที่ด้านเทคนิคอย่างน้อยก็ทำงานโดยแฮกเกอร์ตัวจริง ตอนนี้เป็นบทความวันที่ แต่ผมไม่เห็นว่าการใช้ภาษาที่ไม่ใช่ธรรมดา (C / C ++ / Java, C #) จะเป็น'อันตรายน้อย' หากโปรแกรมเมอร์ขององค์กรคล่องแคล่วในการใช้ภาษาเพื่อการพัฒนาพวกเขาควรมีความเชี่ยวชาญในการเขียนโค้ดที่เหมาะสม ในความเป็นจริงถ้าคุณใช้ภาษาที่ไม่ใช่เรื่องธรรมดาจะไม่เกิดปัญหาในการบำรุงรักษา / …

5
ทำไมภาษาการเขียนโปรแกรมทุกตัวจึง“ มีประสิทธิภาพ”?
ทุกครั้งที่ฉันตรวจสอบหน้าเว็บที่อุทิศให้กับภาษาการเขียนโปรแกรมบางอย่างฉันมักจะเห็นคำว่า"มีประสิทธิภาพ"ในรายการนิสัย / แอตทริบิวต์ หากภาษาการเขียนโปรแกรมทุกภาษามีประสิทธิภาพทำไมพวกเขาใส่คำนั้นลงในบทเรียน / เอกสารประกอบ?

5
ภาษาที่ใช้งานได้ซึ่งรวบรวมเป็น Dalvik VM ของ Android หรือไม่ [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ฉันมีปัญหาซอฟต์แวร์ที่เหมาะกับวิธีการทำงานของการเขียนโปรแกรม แต่ตลาดเป้าหมายจะอยู่ในระบบปฏิบัติการ Android ฉันถามเพราะมีภาษาที่ใช้งานได้ซึ่งคอมไพล์กับ VM ของ Java แต่ Dalvik bytecode! = Java bytecode อีกทางหนึ่งคุณรู้หรือไม่ว่าdxยูทิลิตี้นี้สามารถแปลง.classไฟล์ที่สร้างจากภาษาที่ใช้งานได้เช่น Scala อย่างชาญฉลาดหรือไม่? แก้ไข : เพื่อเพิ่มความเป็นประโยชน์ให้กับชุมชนอีกเล็กน้อยและเพื่อช่วยให้ฉันเลือกได้ดีขึ้นฉันจะแก้ไขคำถามได้หรือไม่ คุณเคยใช้ภาษาอื่นกับ Dalvik บ้างไหม? อันไหน? "gotchas" (ปัญหา) ที่ฉันอาจพบมีอะไรบ้าง ประสิทธิภาพเป็นที่ยอมรับหรือไม่? จากนั้นฉันหมายความว่าแอปพลิเคชันยังคงตอบสนองต่อผู้ใช้ ฉันไม่เคยพัฒนาโทรศัพท์มือถือมาก่อน แต่ฉันโตมากับอุปกรณ์ที่มีข้อ จำกัด และฉันก็ไม่คิดว่าจะมีค่าใช้จ่ายในการใช้ภาษาที่ไม่ได้มาตรฐานกับแพลตฟอร์ม ฉันแค่ต้องรู้ว่าค่าใช้จ่ายนั้นเป็นสิ่งที่ฉันควรจะลองใช้วิธีการของฉันเป็นภาษาเริ่มต้น (เช่นใช้หลักการทำงานในภาษา OOP)

9
คำแนะนำอาชีพ: ปริญญาเอกในทฤษฎีภาษาโปรแกรม [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Software Engineering Stack Exchange ปิดให้บริการใน6 ปีที่ผ่านมา ฉันสนใจทฤษฎีของภาษาโปรแกรมและจะสมัครปริญญาเอกในหัวข้อนี้ แต่ฉันต้องการทราบเพิ่มเติมเกี่ยวกับอาชีพหลังจบการศึกษาระดับบัณฑิตศึกษา นอกเหนือจากการเป็นอาจารย์ แต่ฉันสามารถรับอาชีพใดได้บ้าง

12
ตกลงหรือไม่ที่จะอยู่โดยที่ไม่รู้ว่าโปรแกรมที่คุณสร้างนั้นทำงานอย่างไร
ฉันหมายถึงมี libs ที่มีประโยชน์จริงๆที่สามารถแก้ปัญหาเมื่อคุณติดขัดและไม่ทราบวิธีแก้ปัญหานี้หรือว่าด้วยความรู้ภาษาการเขียนโปรแกรมที่คุณใช้ ... เช่น Boost for C ++ หรือ JQuery สำหรับ JavaScript หรือ Spring for Java ... พวกเขาแก้ปัญหาได้ในไม่กี่วินาทีและคุณไม่สนใจว่าพวกเขาจะทำอย่างไร (แม้ว่าพวกเขาจะเขียนในภาษาเดียวกันกับที่คุณกำลังเขียนโปรแกรม) ... ดังนั้นฉันจึงสงสัยว่าฉันใช้ libs เพียงอย่างเดียวในขณะที่ไม่ถูก สามารถเขียนคำตอบสำหรับปัญหาของฉันได้ตั้งแต่เริ่มต้นหรือเป็นวิธีปฏิบัติมาตรฐานหรือไม่

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