Blockdit Logo
Blockdit Logo (Mobile)
สำรวจ
ลงทุน
คำถาม
เข้าสู่ระบบ
มีบัญชีอยู่แล้ว?
เข้าสู่ระบบ
หรือ
ลงทะเบียน
อยากเล่าให้ฟังแบบนี้
•
ติดตาม
8 ธ.ค. 2022 เวลา 10:51 • วิทยาศาสตร์ & เทคโนโลยี
แนวโน้มของเทคโนโลยีในอนาคต : ความเป็นมาและทิศทางการพัฒนาภาษาคอมพิวเตอร์
คอมพิวเตอร์กลายเป็นอุปกรณ์หลักในยุคของเรา และจำเป็นต้องใช้ตลอด 24 ชั่วโมงทุกวัน คอมพิวเตอร์ไม่ใช่เดสก์ท็อปและเซิร์ฟเวอร์ที่ทุกคนเคยคิดอีกต่อไป แต่ได้พัฒนาเป็นวัตถุที่สามารถมองเห็นได้ทุกที่รอบตัวเรา ตัวอย่าง: โทรศัพท์มือถือ แท็บเล็ต แล็ปท็อป และอุปกรณ์ที่หลายคนไม่ทราบว่ามี "คอมพิวเตอร์" อยู่ภายใน ตัวอย่างเช่น โทรทัศน์ เตาไมโครเวฟ รถยนต์ และแม้แต่หุ่นยนต์อัจฉริยะสำหรับเด็ก
กล่าวได้ว่าคอมพิวเตอร์ได้กลายเป็นส่วนเสริมของร่างกายมนุษย์ เป็นส่วนเสริมของสมอง และกลายเป็นส่วนที่ขาดไม่ได้ ในอนาคต คอมพิวเตอร์จะเข้าสู่ร่างกายมนุษย์ เข้าสู่สมอง และกลายเป็นส่วนหนึ่งของร่างกายมนุษย์อย่างแท้จริง ตัวอย่างเช่นในภาพยนตร์นิยายวิทยาศาสตร์เรื่อง เดอะ เมทริกซ์ เพาะพันธุ์มนุษย์เหนือโลก 2199 ตัวเอกถูกสอดเข้าที่หลังคอด้วยเข็มพิเศษ ซึ่งทำให้เขาสามารถเรียนรู้ได้อย่างรวดเร็วและเปลี่ยนเครือข่ายประสาทของสมองในไม่กี่วินาทีเป็นปรมาจารย์กังฟู
อัลกอริทึมเป็นจิตวิญญาณของคอมพิวเตอร์ และภาษาโปรแกรมเป็นเครื่องมือสำหรับกำหนดจิตวิญญาณของคอมพิวเตอร์
คอมพิวเตอร์ทำงานอย่างไร? สำหรับคนทั่วไปมันเป็นเรื่องลึกลับ ให้คอมพิวเตอร์มี "จิตวิญญาณ" ที่สามารถทำงานตามความประสงค์ของมนุษย์ และแม้กระทั่งทำงานตามความประสงค์ของคอมพิวเตอร์เองในสักวันหนึ่ง (หากวันนั้นเป็นจริง ฉากในภาพยนตร์นิยายวิทยาศาสตร์เรื่อง "ฅนเหล็ก 2029" ก็จะกลายเป็นสิ่งที่เป็นไปได้สำหรับสังคมมนุษย์เช่นกัน) หัวใจหลักของมันคือ "อัลกอริทึม" "อัลกอริทึมคือจิตวิญญาณของคอมพิวเตอร์" การทำให้อัลกอริทึมเป็นจริงนั้นขึ้นอยู่กับ "ภาษาโปรแกรมคอมพิวเตอร์"
การพัฒนาภาษาโปรแกรมคอมพิวเตอร์มีการพัฒนาควบคู่ไปกับการพัฒนาฮาร์ดแวร์คอมพิวเตอร์เอง ยิ่งฮาร์ดแวร์ทำงานเร็วขึ้น ขนาดยิ่งเล็กลง และต้นทุนต่ำลง สถานการณ์ต่างๆ ก็จะถูกนำไปใช้กับสังคมมนุษย์มากขึ้น และอัลกอริทึมก็จะยิ่งซับซ้อนมากขึ้นเท่าไหร่ และยิ่งต้องใช้ภาษาโปรแกรมคอมพิวเตอร์ขั้นสูงมากขึ้นด้วย
ENIAC (คอมพิวเตอร์เครื่องแรกของโลก) ซึ่งตอนแรกมีน้ำหนักหลายสิบตัน แต่สามารถคำนวณได้เพียง 5,000 ครั้งต่อวินาที สามารถใช้ได้เฉพาะกับแอปพลิเคชันขนาดเล็กมากเท่านั้น ตัวอย่างเช่น: การคำนวณขีปนาวุธในบางกรณี ตอนนี้พลังการประมวลผลของโทรศัพท์มือถือสามารถทำลายผลรวมของพลังการประมวลผลของคอมพิวเตอร์ทั้งหมดบนโลกในยุคนั้น
การพัฒนาภาษาโปรแกรมคอมพิวเตอร์ได้ผ่านจากระดับต่ำไปสู่การพัฒนาระดับสูง แนวคิดหลักของการพัฒนาคือการ "ทำให้ง่ายต่อการเขียนโปรแกรม" ยิ่งใช้ภาษาง่ายเท่าไหร่ คนก็ยิ่งใช้มากขึ้นเท่านั้น ยิ่งมีคนใช้มาก ความร่วมมือก็ยิ่งมีมากขึ้น ยิ่งทำงานร่วมกันมากเท่าไหร่ ก็ยิ่งสามารถสร้างสิ่งที่ซับซ้อนได้มากขึ้นเท่านั้น ในสังคมสมัยใหม่ เป็นไปได้ที่ซอฟต์แวร์หนึ่งชิ้นจะเกี่ยวข้องกับการทำงานร่วมกันของผู้คนนับสิบ หลายร้อย หรือแม้แต่หลายพันคน ซึ่งโดยปกติจะเป็น "รากฐานกำลังคน" สำหรับการพัฒนาซอฟต์แวร์ที่ซับซ้อน
นี่เป็นปรากฏการณ์ทางสังคมทั่วไป เครื่องมือที่ใช้งานง่ายและความร่วมมือของคนจำนวนมากสามารถเปลี่ยนแปลงอุตสาหกรรมหรือแม้แต่สังคมมนุษย์ได้อย่างสมบูรณ์
ภาษาคอมพิวเตอร์ผ่านไปแล้วสามยุค : ยุคแรกคือภาษาเครื่อง ยุคที่สองคือภาษาแอสเซมบลี และยุคที่สามคือภาษาระดับสูง
ภาษารุ่นแรก: ภาษาเครื่อง (เทียบเท่ากับมนุษย์ยุคดึกดำบรรพ์)
ภาษาเครื่องประกอบด้วยตัวเลขสำหรับคำสั่งทั้งหมด เมื่อคุณใช้โปรแกรมดิจิทัล เขียนตัวเลขเป็นร้อยหรือเป็นพัน และเผชิญกับตัวเลขทุกวัน ทำนายได้เลยว่า : "100% ของโปรแกรมเมอร์จะมีปัญหาทางจิต"
ภาษาเครื่องซึ่งมักประกอบด้วยชุดตัวเลข (ในที่สุดก็ลดเหลือ 01) นั้นยุ่งยากเกินไปสำหรับมนุษย์ การใช้ภาษาเครื่องทำให้มนุษย์ไม่สามารถเขียนโปรแกรมที่ซับซ้อนได้ ต่อไปนี้เป็นรหัสเครื่องทั่วไป:
1. 0000,0000,000000010000 หมายถึง LOAD A, 16
2. 0000,0001,000000000001 หมายถึง LOAD B, 1
3. 0001,0001,000000010000 หมายถึง STORE B, 16
ภาษายุคที่สอง: ภาษาแอสเซมบลี (เทียบเท่ากับขั้นตอนงานฝีมือของมนุษย์)
เพื่อความสะดวกในการเขียนโปรแกรมและแก้ปัญหาที่ซับซ้อนขึ้น โปรแกรมเมอร์เริ่มปรับปรุงภาษาเครื่องโดยใช้ตัวช่วยจำแบบย่อเพื่อแสดงถึงการทำงานพื้นฐานของคอมพิวเตอร์ ตัวช่วยจำเหล่านี้เป็นพื้นฐานของภาษาแอสเซมบลี ต่อไปนี้เป็นตัวช่วยจำ (คำ) ของภาษาแอสเซมบลีทั่วไป เช่น: LOAD、MOVE และอื่น ๆ มันง่ายกว่าสำหรับผู้ใช้ การจดจำคำศัพท์เป็นร้อยเป็นพันนั้นให้ความรู้สึกดีกว่าตัวเลขเป็นร้อยเป็นพัน ภาษาแอสเซมบลีนั้นเทียบเท่ากับสังคมหัตถกรรมของมนุษย์ ซึ่งต้องการช่างฝีมือที่มีทักษะสูง แต่ประสิทธิภาพการพัฒนาก็ต่ำมากเช่นกัน
แม้ว่าภาษาแอสเซมบลีสามารถเขียนโปรแกรมที่มีประสิทธิภาพได้ แต่ก็ไม่ง่ายที่จะเรียนรู้และใช้งาน และเป็นการยากที่จะดีบัก ปัญหาอีกประการหนึ่งคือภาษาแอสเซมบลีและภาษาคอมพิวเตอร์ยุคแรก ๆ (Basic、Fortran ฯลฯ ) ไม่ได้คำนึงถึงหลักการออกแบบโครงสร้าง แต่ใช้คำสั่ง goto เป็นวิธีการหลักในการควบคุมการไหลของโปรแกรม ผลของการทำเช่นนั้นคือ: คำสั่งสวิตช์ที่สับสนทำให้โปรแกรมแทบจะอ่านไม่ได้ สำหรับโปรแกรมเมอร์ในยุคนั้น ความสามารถในการอ่านโค้ดที่พวกเขาเขียนเมื่อเดือนที่แล้วกลายเป็นเรื่องท้าทาย
ภาษาแอสเซมบลียังคงใช้ในด้านการเขียนโปรแกรมอิเล็กทรอนิกส์เชิงอุตสาหกรรม การเข้ารหัสและถอดรหัสซอฟต์แวร์ การวิเคราะห์ไวรัสคอมพิวเตอร์ ฯลฯ
ยุคที่สาม: ภาษาระดับสูง (เทียบเท่ากับขั้นตอนอุตสาหกรรมของมนุษย์)
สำหรับงานง่าย ๆ ภาษาแอสเซมบลีสามารถทำงานได้ อย่างไรก็ตาม ด้วยการพัฒนาของคอมพิวเตอร์ มันได้แทรกซึมเข้าไปในแง่มุมต่างๆ ของงานและชีวิตมากขึ้น และงานที่ซับซ้อนบางอย่างก็ปรากฏขึ้น และภาษาแอสเซมบลีก็ไม่สามารถทำได้ (ควรกล่าวว่าโปรแกรมเมอร์ใช้ภาษาแอสเซมบลีเพื่อแก้ปัญหาที่ซับซ้อนและมี คอขวด) ดังนั้นภาษาระดับสูงจึงปรากฏขึ้น ภาษาระดับสูงอย่าง C, C++, Java ฯลฯ ที่เราคุ้นเคย
ภาษาระดับสูงช่วยให้โปรแกรมเมอร์สามารถเขียนโปรแกรมโดยใช้คำสั่งที่ใกล้เคียงกับภาษาอังกฤษในชีวิตประจำวัน ตัวอย่างเช่น หากต้องการใช้งานง่ายๆ: A+B=C ให้ใช้ภาษาเครื่อง ภาษาแอสเซมบลี และภาษาระดับสูง
จากการคำนวณการบวกแบบง่ายๆ ข้างต้น จะเห็นได้ว่ายิ่งภาษามีความก้าวหน้ามากขึ้นเท่าใด ก็ยิ่งใกล้เคียงกับความคิดของมนุษย์มากขึ้นเท่านั้น และยิ่งสะดวกสำหรับผู้ใช้มากขึ้นเท่านั้น
การเกิดขึ้นของภาษาระดับสูงโดยเฉพาะอย่างยิ่งการเกิดขึ้นของภาษาเชิงวัตถุนั้นเทียบเท่ากับสังคมอุตสาหกรรมของมนุษย์ ภาษาระดับสูงนั้นใช้งานง่ายมาก เกณฑ์และความยากของการเขียนโปรแกรมก็ลดลงอย่างมาก ผู้คนจำนวนมากเข้าสู่อุตสาหกรรมการพัฒนาซอฟต์แวร์โดยให้การสนับสนุนอย่างเพียงพอสำหรับการเติบโตอย่างรวดเร็วของซอฟต์แวร์ ทรัพยากรบุคคล ในปัจจุบันและในอนาคตอันใกล้ ภาษาคอมพิวเตอร์ยังคงอยู่ในขั้น "ภาษาระดับสูงยุคที่สาม"
เหตุใดถึงไม่ต้องกังวลเกี่ยวกับความอิ่มตัวของความสามารถในการพัฒนาซอฟต์แวร์?
หลายคนที่ไม่ได้เข้ามาหรือเพิ่งเข้าสู่วงการซอฟต์แวร์มักจะกังวลกับคำถามที่ว่า "คนจะเรียนเยอะไหม จะอิ่มตัวไหม" นี่เป็นความกังวลที่ไม่มีมูลจริง ๆ ยิ่งมีโปรแกรมมากเท่าไหร่ก็ยิ่งสามารถจัดหาทรัพยากรบุคคลให้กับอุตสาหกรรมซอฟต์แวร์ได้มากขึ้นและการพัฒนาแอปพลิเคชันที่เราไม่กล้าคิดมาก่อนก็สามารถเป็นจริงได้ เราต้องมองปัญหาจากมุมมองของการพัฒนา ไม่ใช่มุมมองคงที่
ยิ่งมีคนเขียนโปรแกรมมาก ก็ยิ่งต้องทำแอปพลิเคชันมาก และยิ่งต้องทำแอปพลิเคชันมาก ก็ยิ่งต้องใช้คนเขียนโปรแกรมมากขึ้น ก็เหมือนชาวนาที่เพิ่งเข้าสู่สังคมอุตสาหกรรมแล้วกังวลว่าโรงงานตัดเย็บเสื้อผ้าจะเต็มไปด้วยคนงาน จะทำอย่างไร? เขาไม่คาดคิดว่าหลังจากการพัฒนาอุตสาหกรรม โรงงานเหล็กจะต้องการคนงานเช่นกัน และโรงงานผลิตรถยนต์ก็ต้องการคนงานเช่นกัน จำไว้ว่า "การพัฒนาอุตสาหกรรมซอฟต์แวร์นั้นไม่มีที่สิ้นสุด มันจะรวมเอาอุตสาหกรรมที่มีอยู่ทั้งหมดของมนุษย์เข้าด้วยกัน และมันจะสร้างอุตสาหกรรมใหม่ๆ มากมายด้วย"
อีก 30 ปีข้างหน้าจะเป็นโลกแห่งซอฟต์แวร์ที่มีความสามารถ
โลกในอีก 30 ปีข้างหน้าจะเป็นโลกแห่งซอฟต์แวร์ที่มีความสามารถ นอกจากแอปพลิเคชันของซอฟต์แวร์ทั่วไปแล้ว แอปพลิเคชันปัญญาประดิษฐ์จำนวนมากก็จะปรากฏขึ้นเช่นกัน ในอนาคต การขับรถอัตโนมัติ การแปลภาษาอัตโนมัติ หุ่นยนต์พี่เลี้ยงเด็ก และแม้กระทั่งหุ่นยนต์แฟนจะเข้ามาในชีวิตของเรา และแม้แต่การผสมผสานระหว่างการเขียนโปรแกรมคอมพิวเตอร์และพันธุวิศวกรรมก็สามารถบรรลุความเป็นอมตะได้
สำหรับผู้ที่สนใจ ขอแนะนำให้ทุกท่านอ่านหนังสือ "โฮโมดีอุส ประวัติย่อของวันพรุ่งนี้ : Homo Deus : A Brief History of Tomorrow" เพื่อจับชีพจรแห่งอนาคต
ข่าวรอบโลก
การเงิน
ธุรกิจ
1 บันทึก
1
1
1
1
1
โฆษณา
ดาวน์โหลดแอปพลิเคชัน
© 2024 Blockdit
เกี่ยวกับ
ช่วยเหลือ
คำถามที่พบบ่อย
นโยบายการโฆษณาและบูสต์โพสต์
นโยบายความเป็นส่วนตัว
แนวทางการใช้แบรนด์ Blockdit
Blockdit เพื่อธุรกิจ
ไทย