จริงๆแล้วการเขียนโปรแกรมก็คือคณิตศาสตรใช่ไหม เพราะใช้ตรรกสูงมาก คนถึงบ่นกันว่ายาก ใช่ไหม?

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

2.แล้วเขียนโปรแกรมกับคณิตศาสตร์ขั้นสูง อันไหนยากกว่ากัน?
แก้ไขข้อความเมื่อ

คำตอบที่ได้รับเลือกจากเจ้าของกระทู้
ความคิดเห็นที่ 3
คห.2 neoeasy   
9 นาทีที่แล้ว

-----------------------------------------

ไม่ใช่ได้ยังไงครับ เขียนโปรแกรม ใช้ if else , if else then,do loop พวกนี้เป็นตรรกศาสตร์นะครับ แล้วตรรกศาสตร์ก็เป็นสาขาหนึ่งของคณิตศาสตร์ การเขียนโปรแกรมจะไม่ใช่ได้อย่างไรครับ

แล้วคณิตศาสตร์มีกฎของมัน การเขียนโปรแกรมก็มีกฎของมัน คล้ายๆกันเลย แต่กฎของการเขียนโปรแกรมมนุษย์สร้างขึ้น

แล้วคณิตศาสตร์บวกลบเลขผิดตัวเดียว ก็ผิดหมดเลย ในการเขียนโปรแกรมพิมพ์ผิดไปตัวเดียวก็คอมไพล์ไม่ผ่านเลย

แล้วพวกเรียนวิทย์คอม วิศวคอม จะเรียนแคล 1 2 เรียนแมท เรียนdiscrete maths  ไปทำไมครับ

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

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

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

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

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

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

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

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

**** เพราะใช้ตรรกสูงมาก คนถึงบ่นกันว่ายาก ใช่ไหม?

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

จึงมักสร้างจาก  Framework/Class Library/ algorithm พื้นฐาน เป็นชุดตรรกกะที่มีคนอื่นจัดเตรียมใว้ (ขายหรือแจกฟรี) ก่อนแล้วครับ
ทั้งจากตัว API / SDK ต่างๆ เราก็แค่เรียกมาใช้ หรืออาจต้องเขียนเพิ่มบ้าง  
ซึ่งส่วนที่เขียนเพิ่ม หรือ API/SDK นี้หละ อาจจะทำแบบง่ายๆวนลูบแบบถึกๆเอาจนได้ผลลัพธ์
จนถึงใช้คณิตศาสตร์ขั้นสูงมากๆมาช่วยคำนวนเอาก็ได้

2.แล้วเขียนโปรแกรมกับคณิตศาสตร์ขั้นสูง อันไหนยากกว่ากัน?
ถ้าต้องเขียนโปรแกรมทั่วไป ที่มี  Framework/Class Library/ algorithm พื้นฐานให้ใช้อยู่แล้วทุกด้าน
ก็ง่ายกว่าคณิตศาสตร์ขั้นสูงเยอะเลยครับ

แต่  Framework/Class Library/ algorithm หรือลำดับขั้นตอนต่างๆที่ยังไม่มีใช้
ก็เป็นส่วนหนึ่งของงานโปรแกรมเหมือนกัน

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

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

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


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