Java เป็นตัวเลือกที่ดีสำหรับการพัฒนาเว็บไซต์เมื่อใด
กรุณาอย่าพูดว่า "เมื่อคุณมีทีมพัฒนาที่รู้จักจาวาเท่านั้น"
Java เป็นตัวเลือกที่ดีสำหรับการพัฒนาเว็บไซต์เมื่อใด
กรุณาอย่าพูดว่า "เมื่อคุณมีทีมพัฒนาที่รู้จักจาวาเท่านั้น"
คำตอบ:
ด้วยกรอบที่มีอยู่มากมายครบกำหนดแพลตฟอร์ม ฯลฯ ฉันอยากจะพูดว่า "เกือบตลอดเวลา" ดังนั้นนี่คือเหตุผลบางอย่างเมื่อคุณไม่ควรใช้ Java:
จาวาคือใช้ในเว็บไซต์ขนาดเล็กและขนาดกลาง จุดสำคัญคือมีเว็บโฮสติ้งฟรีสำหรับเว็บไซต์ Java น้อยกว่าเช่น PHP ซึ่งหมายความว่าหากคุณไม่มีทรัพยากรเพียงพอที่จะโฮสต์เว็บเซิร์ฟเวอร์ของคุณเองคุณอาจจะไม่เลือกจาวา
โปรดทราบว่าด้วย Java EE 6 โดยเฉพาะโปรไฟล์เว็บมีเทคโนโลยีมาตรฐานมากมายที่สามารถสร้างแอปพลิเคชั่นเว็บที่ทรงพลังมากโดยไม่ต้องใช้รหัสมากนัก น่าเสียดายที่มันยังไม่เป็นกระแสหลัก
โปรดทราบว่าสิ่งนี้มีการเปลี่ยนแปลงบ้างเมื่อเร็ว ๆ นี้ด้วย Google Application Engine ซึ่งช่วยให้คุณสามารถปรับใช้เว็บแอปพลิเคชัน Java มาตรฐาน (โดยมีข้อ จำกัด เล็กน้อย) ในคลาวด์ได้ฟรีสำหรับไซต์ที่มีปริมาณการเข้าชมต่ำถึงปานกลาง
เมื่อแพลตฟอร์มของคุณคือ UNIX / Linux และคุณต้องมีชุดเครื่องมือมากมายเช่นการทำแผนที่วัตถุ / ความสัมพันธ์, ความปลอดภัย, การเชื่อมต่อที่ซับซ้อนของเว็บเซอร์วิสเป็นต้น
(เราไม่ได้พูดถึงเว็บไซต์ง่าย ๆ ใช่มั้ย)
ทุกครั้งที่มีทีม Java อีกคนฉี่ฉันก็ระเบิดไอน้ำโดยค้นหาคำถามเช่นนี้ ขอย้ำอีกครั้ง ฉันเป็นนักพัฒนาด้านไคลเอนต์และเกือบ 5 ปีแล้ว ฉันทำงานในไซต์ต่างๆตั้งแต่ไซต์ไมโครไซต์ส่วนใหญ่ไปจนถึงไซต์ที่มีขนาดใหญ่เท่ากับเซียร์ไปจนถึงไซต์ประเภทแอปที่มีความซับซ้อนยิ่งขึ้นซึ่งจำเป็นต้องมีความเชี่ยวชาญด้าน UI อย่างลึกซึ้ง ฉันได้จัดการกับ Rails, PHP,. net web forms (ew), .net MVC (ดีกว่ามาก) และการจัดเรียงโซลูชั่น Java สำหรับการพัฒนาเว็บพร้อมกับ devs และทีมงานที่ประสบภัยพิบัติทั้งหมดเพื่อจัดการกับ ฉันยังเขียน Python เล็กน้อยและฉันเริ่มขุด Django
ประสบการณ์ของฉันกับทีม Java นั้นแย่มากในระดับสากล เครื่องมือเป็น PITA เสมอ บรรดานักพัฒนาไม่ต้องการที่จะเชื่อว่าพวกเขาทำอะไรผิดและทำให้พวกเขากลับไปลงทุนสนามหญ้าของตัวเองอีกครั้งเมื่อคุณจัดการปัญหาที่ปลายของคุณได้แล้วก็เหมือนกับการถอนฟัน การสูญเสียครั้งแรกของการจัดการกับทีมงาน Java ในประสบการณ์ของฉันคือเวลาในการพัฒนาแปลงเป็นอีเมลเวลาที่เขียนคำอธิบายที่ยาวหลายคำว่าเหตุใดปัญหาจึงสิ้นสุดลงอย่างแน่นอน โดยทั่วไปแล้ว HTML ไม่ใช่ปัญหาของพวกเขาเว้นแต่คุณต้องการควบคุมมัน จากนั้นทุกอย่างก็มีแนวโน้มที่จะตกนรกเพราะพวกเขาต้องการย้ายนักร้องระดับบน
มีบางอย่างเกี่ยวกับภาษาที่ฉันไม่ชอบ แต่ฉันคิดว่าปัญหาที่แท้จริงคือวัฒนธรรมและความจริงที่ว่าการยอมรับนั้นแพร่หลายมากคุณมีคนธรรมดาจำนวนมากอยู่ตรงกลาง วัฒนธรรมที่ฉันสงสัยว่าเกิดขึ้นจากการวางตลาดของ Java เขียนครั้งเดียวปรับใช้ทุกที่ การแปล: "คุณแค่ต้องเรียนรู้สิ่งเดียวเท่านั้น!" ผู้ที่พบว่าน่าสนใจโดยทั่วไปต้องการควง Java เหมือนค้อนขนาดมหึมาสำหรับเล็บทุกคนที่มีงานฝีมือขั้นต่ำในการพัฒนาเว็บ
ดังนั้นถ้าคุณมี devs ที่รู้จัก Java และภาษาอื่น ๆ แต่ก็ยังชอบ Java จริงๆฉันจะบอกว่าใช่ไปเลยถ้ามันดูเหมือนทางออกที่ถูกต้อง แต่ถ้าคุณมี Java devs ที่รู้ Java และทุกอย่างอื่นเพิ่งจะตรงตามเกณฑ์ที่จะทำให้มันเป็นสัญลักษณ์แสดงหัวข้อย่อยในประวัติย่อของพวกเขาให้พวกเขาสร้างแอปง่าย ๆ ที่มีหน้ากึ่งซับซ้อนที่หลากหลายบนปลาย HTML และลองสิ่งนี้ การทดสอบอย่างง่าย ทำลาย HTML บางส่วน พยายามทำให้พวกเขาเข้าใจว่ามีอะไรผิดปกติ หากปัญหาเร่งด่วนที่พวกเขาเริ่มแก้ไขกำลังเบี่ยงเบนความผิดจากตัวเองให้พวกเขาอยู่ห่างจากการพัฒนาเว็บ! @ # $ Web dev เป็นสหสาขาวิชาชีพและต้องการความสนใจอย่างมากในสาขาที่จะประสบความสำเร็จ มันไม่ใช่สถานที่สำหรับผู้ที่ต้องการเพียงเพื่อรักษาความรู้ภาษาเดียวและมีปัญหามากกว่าความกลัวในการแก้ปัญหา
ฉันไม่ได้ยืนยันว่า Java เองนั้นเป็นรากฐานของความไร้ความสามารถและฉันได้ยินมาว่า Spring นั้นดี ฉันแน่ใจว่ามีทีมจาวาที่มีความสามารถ ฉันยังไม่เจอใครเลยและฉันก็ไม่คิดว่ามันเป็นเรื่องบังเอิญ ฉันคิดว่าซันมีส่วนเกี่ยวข้องกับเรื่องนี้มาก ฉันคิดว่าการใช้งานทีมงานเว็บเช่นหรือภายใต้แผนกไอทีนั้นมีส่วนเกี่ยวข้องกับมันมาก
Java นั้นสมบูรณ์แบบสำหรับเว็บไซต์ขนาดเล็กคุณสามารถทำให้หน้า JSP ทำงานได้อย่างรวดเร็วด้วยเว็บเซิร์ฟเวอร์ Java เช่นTomcatยกตัวอย่างเช่น
แม้ว่าในประสบการณ์ของฉัน Java เป็นเรื่องปกติมากขึ้นสำหรับเว็บไซต์ขนาดใหญ่ที่มีความต้องการการประมวลผลฝั่งเซิร์ฟเวอร์ที่ซับซ้อนมากขึ้นในกรณีนี้คุณจะพบเฟรมเวิร์ก Java ที่ซับซ้อนมากขึ้นที่ใช้เช่น JavaServer Faces (JSF)
สิ่งสำคัญคือต้องทราบว่าการติดตั้ง Java แบบเต็มในอดีตไม่มีให้บริการในการตั้งค่าเว็บโฮสติ้งราคาถูกจำนวนมากดังนั้นอาจอธิบายความชุกของภาษาอื่นเช่น PHP ในสภาพแวดล้อมเหล่านี้
เหตุผลหลักในการใช้ Java ในการพัฒนาเว็บมีดังต่อไปนี้:
เทคนิคการพูด:
ถ้าฉันเริ่มต้นเว็บแอปพลิเคชันฉันจะใช้ Ruby on Rails และออกแบบในแบบที่ฮอตสปอตสามารถเปลี่ยนได้เมื่อ RoR ถึงขีด จำกัด การปรับขนาดประสิทธิภาพ
Java มีกลิ่นที่ชัดเจนของ COBOL และ "ตัวแปลงสัญญาณต่ำสุดใช้ Java" ห้อยอยู่และ Java fiascos ไม่ได้ช่วยชื่อเสียง หากคุณมีทางเลือกให้เลือกภาษาที่ดึงดูดนักพัฒนาอันดับต้น ๆ
ง่ายมาก: ใช้ Java เมื่อประสิทธิภาพของแบ็คเอนด์เป็นปัญหาหลัก มีค่าใช้จ่ายมากกว่าเมื่อเขียนโค้ด แต่รหัสจะทำงานในเวลา 1/200 ถึง 1/500 ของเวลา - ตามตัวอักษร Php, Ruby และภาษาที่พิมพ์แบบไดนามิกอื่น ๆ มักจะช้ากว่าเซิร์ฟเวอร์จาวาหรือ. net
โซลูชันส่วนใหญ่สำหรับเว็บไม่จำเป็นต้องใช้สิ่งนี้ Twitter ไม่ได้ละทิ้ง Rails จนกว่าพวกเขาจะเริ่มได้รับความนิยมเช่นกัน
ไม่ใช่เพียงเหตุผลเดียว แต่ด้วยความนิยมที่เพิ่มขึ้นของการสร้างเว็บไซต์ที่มีส่วนหน้าของแอปพลิเคชันที่ซับซ้อนในขณะที่ยังมีเหตุผลในการทำ 'สิ่ง' บนเซิร์ฟเวอร์ - เหตุผลที่ไม่ควรอธิบายเหตุผลว่าทำไม Java อย่างน้อยเท่ากับอื่น ๆ ตัวเลือกที่ปลายเซิร์ฟเวอร์ แต่ในตอนท้ายไคลเอนต์หากมีจาวาสคริปต์ใด ๆ ที่จะกลายเป็นฝันร้ายในการบำรุงรักษารหัสอย่างรวดเร็วและโดยการใช้ GWT เพื่อเก็บสิ่งนั้นไว้ในความยาวแขนเพื่อให้คุณสามารถใช้รหัสใน Java คุณสามารถมีทั้งโลกที่ดีที่สุดกับเซิร์ฟเวอร์ของคุณ ทำการยกของหนักและหน่วยประมวลผลของลูกค้าให้พวกเขา 'ประสบการณ์' เรียนรู้ที่จะรวมเข้ากับ jQuery และคุณสามารถมีทุกสิ่งที่คุณต้องการได้เช่นกัน
ไม่ใช่ผู้เชี่ยวชาญทางเลือกใด ๆ แต่ถ้ามีคนอื่นสามารถหยิบยกสิ่งที่มีความยืดหยุ่นและความกว้างแบบเดียวกันยินดีที่จะรับฟัง
เหตุผลหลักที่ทำไมฉันถึงเลือกจาวาคือถ้าคุณต้องการใช้ธุรกรรมแบบกระจายซึ่งอาจเป็นปัญหาใหญ่สำหรับ บริษัท หลายแห่ง อย่างไรก็ตามคุณยังคงสามารถใช้ภาษาสคริปต์ที่คุณชื่นชอบเพื่อการพัฒนาเว็บไซต์และมอบสิทธิ์ให้กับจาวาเมื่อคุณต้องการธุรกรรมความเร็ว / การกระจาย
ฉันเชื่อว่ามันจะเป็นเมื่อแอปพลิเคชันของคุณกำลังจะซับซ้อนมากกับคนจำนวนมากที่พัฒนามันด้วยโมดูลที่ซับซ้อนจำนวนมากตรรกะทางธุรกิจที่ซับซ้อนและมีการสื่อสารกับแอปพลิเคชันระดับองค์กรอื่น ๆ
อย่างไรก็ตามคุณสามารถพัฒนาใน Grails ซึ่งมีฟีเจอร์ที่ดีมากมายทำให้การพัฒนาง่ายขึ้นและเร็วขึ้นอย่างมาก
Java ก็โอเค แต่ถ้าประสิทธิภาพไม่สำคัญอย่างยิ่งคุณสามารถได้ผลลัพธ์เดียวกันโดยไม่ต้องใช้ภาษาอื่น
Java เป็นภาษาที่พิมพ์แบบคงที่และมีราคาถูกกว่าภาษาที่พิมพ์แบบคงที่อื่น ๆ ที่ใช้สำหรับการพัฒนาเว็บคือ C # และ VB.net หาก บริษัท ของคุณไม่มีการสมัคร MSDN ภาษาที่พิมพ์แบบคงที่นั้นเหมาะสำหรับโครงการขนาดกลางถึงใหญ่กฎโดเมนที่ซับซ้อนและรหัสแบ็คเอนด์มากมายเนื่องจากคุณสามารถจัดระเบียบชั้นเรียนและ IDE ที่ดีขึ้นจะช่วยให้คุณค้นหาข้อผิดพลาดในรหัสของคุณ
ด้วยภาษาที่พิมพ์แบบไดนามิกเช่น PHP, Python, Ruby การพัฒนาของคุณจะเร็วขึ้นมาก แต่คุณจะต้องทดสอบโค้ดของคุณให้ดีขึ้นมาก หากคุณไม่มีเวลาและเงินมากและความต้องการของคุณเปลี่ยนไปอย่างรวดเร็วและคุณไม่ต้องทำการคำนวณที่ซับซ้อนมากภาษาแบบไดนามิกดีกว่ามาก
ความปลอดภัย
เหตุผลหลักสำหรับ บริษัท ขนาดใหญ่ที่เลือกใช้จาวามากกว่าโซลูชันอื่น ๆ ก็เพราะว่ามันมีความปลอดภัยมากกว่า
นี่เป็นเพราะส่วนใหญ่ได้รับการสนับสนุนโดย บริษัท ขนาดใหญ่ (ตอนนี้ oracle)
ควรคำนึงถึงว่า Java มีระดับความปลอดภัยสูงมากพร้อมการสนับสนุนและการวิเคราะห์ที่ดีเยี่ยม (แม้ว่าจะมีราคา)