นี่อาจเป็นคำถามแปลก ๆ สำหรับพวกคุณบางคน
ฉันเป็นโปรแกรมเมอร์ Java มือสมัครเล่น ฉันได้พัฒนาเกมหลายเกมโปรแกรม AI ที่สร้างเพลงอีกโปรแกรมหนึ่งสำหรับการวาดภาพและอื่น ๆ ที่คล้ายคลึงกัน นี่เป็นการบอกคุณว่าฉันมีประสบการณ์ในการเขียนโปรแกรม แต่ไม่ใช่ในการพัฒนาแอปพลิเคชันทางธุรกิจอย่างมืออาชีพ
ฉันเห็นจำนวนมากพูดคุยเกี่ยวกับเว็บไซต์นี้เกี่ยวกับประสิทธิภาพ ผู้คนมักถกเถียงกันว่าอัลกอริธึมที่มีประสิทธิภาพมากที่สุดใน C # คืออะไรเพื่อทำงานหรือทำไม Python จึงช้าและ Java เร็วขึ้นเป็นต้น
สิ่งที่ฉันพยายามที่จะเข้าใจคือ: ทำไมเรื่องนี้?
มีพื้นที่เฉพาะในการคำนวณที่ฉันเห็นว่าทำไมเรื่องประสิทธิภาพ: เกมที่มีการคำนวณนับหมื่นเกิดขึ้นทุกวินาทีในลูปการปรับปรุงอย่างต่อเนื่องหรือระบบระดับต่ำที่โปรแกรมอื่น ๆ ใช้เช่น OS และ VM เป็นต้น
แต่สำหรับแอปทางธุรกิจระดับสูงตามปกติทั่วไปทำไมประสิทธิภาพถึงสำคัญ?
ฉันเข้าใจได้ว่าทำไมมันถึงมีความสำคัญเมื่อหลายสิบปีก่อน คอมพิวเตอร์ช้าลงมากและมีหน่วยความจำน้อยกว่าดังนั้นคุณต้องคิดอย่างรอบคอบเกี่ยวกับสิ่งเหล่านี้
แต่วันนี้เรามีหน่วยความจำมากเพื่อให้อะไหล่และคอมพิวเตอร์เป็นอย่างรวดเร็ว: ไม่ได้จริง ๆว่าถ้าอัลกอริทึม Java โดยเฉพาะอย่างยิ่งคือ O (n ^ 2)? มันจะสร้างความแตกต่างให้กับผู้ใช้ปลายทางของแอพธุรกิจทั่วไปนี้หรือไม่?
เมื่อคุณกดปุ่ม GUI ในแอพธุรกิจทั่วไปและเบื้องหลังมันเรียกใช้อัลกอริทึม O (n ^ 2) ในยุคสมัยของการคำนวณสมัยใหม่คุณรู้สึกถึงความไร้ประสิทธิภาพหรือไม่?
คำถามของฉันแบ่งเป็นสองส่วน:
- ในทางปฏิบัติในวันนี้การปฏิบัติงานมีความสำคัญในโปรแกรมธุรกิจปกติทั่วไปใช่หรือไม่
- ถ้าเป็นเช่นนั้นโปรดยกตัวอย่างสถานที่ในโลกแห่งความเป็นจริงให้ฉันในแอปพลิเคชันซึ่งประสิทธิภาพและการเพิ่มประสิทธิภาพมีความสำคัญ