ผู้ใช้ของฉันทุกคนมี Windows บางคนใช้ Linux หรือ Mac แต่หากใช้โดยทั่วไปจะสามารถใช้บางอย่างเช่น Mono, Wine, Parallels หรือดูอัลบูต
ทีมพัฒนาของฉัน (รวมถึงตัวฉันเอง) มีประสบการณ์มากมายทั้งในการเขียนแอปพลิเคชัน Swing ใน Java และ Windows Forms ใน C # "กว้างขวาง" หมายถึงเราได้พัฒนาและส่งมอบแอปพลิเคชันสามรายการทั้งในช่วงเวลาทำงาน แอปพลิเคชันเป็นแอปพลิเคชันการวิเคราะห์ทางเทคนิคดังนั้นจึงไม่ค่อยมีการโต้ตอบกับฐานข้อมูล แต่เน้นหนักใน UI ที่กำหนดเองและขนาดชุดข้อมูล
เรากำลังมาถึงจุดที่เราต้องการตัดสินใจอย่างแท้จริงว่าจะให้แพลตฟอร์มใดให้ความสำคัญต่อจากนี้ไปเพราะมันจะกลายเป็นภาระที่ให้การสนับสนุนทั้งคู่ (ถ้าคุณทำงานใน Swing มาครึ่งปีแล้ว เพื่อทำความคุ้นเคยกับ Windows Forms อีกครั้งและวิธีอื่น ๆ ) และเราต้องการให้ทุกคนในทีมของเรามีความสามารถในการทำงานกับแอปพลิเคชันทั้งหมดของเรา
- โดยทั่วไปแล้ว Windows Forms จะใช้งานได้น้อยลงในการสร้างแอปพลิเคชัน Windows ที่เป็นที่รู้จัก ไม่มีการควบคุมสกินและการปรับแต่งที่กำหนดเองในจาวาในช่วงหลายปีที่ผ่านมา ในขณะเดียวกันเราไม่เคยมีลูกค้าที่ไม่สามารถใช้แอปพลิเคชัน Swing ได้
- Java เคยมีระบบนิเวศที่สมบูรณ์ยิ่งขึ้นในแง่ของห้องสมุดและเครื่องมือสร้างอัตโนมัติ แต่มันเปลี่ยนไปอย่างรวดเร็ว (Java ไม่ลดลงมันเป็นมากกว่าที่. NET กำลังติดตาม)
- สำหรับกรณีที่หายากที่ต้องการหลายแพลตฟอร์ม Java ชนะ. NET ลงมือ Mono นั้นยอดเยี่ยม แต่ก็ยังใช้ได้มากกว่า Java
ถ้าเราเลือก. NET เราสามารถเริ่มโฟกัสที่ WPF แต่เริ่มใช้ F # หากเราเลือก Java เราสามารถเริ่มต้นมุ่งเน้นไปที่ RCP แต่ก็เริ่มใช้ Scala ได้เช่นกัน
มีใครต้องตัดสินใจคล้ายกันไหม? ถ้าเป็นอย่างนั้นมันคืออะไรและอะไรที่มีอิทธิพลกับคุณมากที่สุด? สิ่งที่ฉันกังวลมากที่สุด?
(โปรดทราบว่า: มีคำถามที่คล้ายกันบางประการเกี่ยวกับโปรแกรมเมอร์อยู่แล้ว แต่พวกเขาก็ไม่มีความคิดสร้างสรรค์หรืออยู่ในมุมที่ต่างออกไป)