"Java มัน over-engineered"
พี่ป๊อก
ผมเกลียด Java ครับ แต่ด้วยงานการก็ไม่มีทางเลือก ตอนนี้กำลังพยายามเข้าสู่โลกของ Java (โดยเฉพาะฝั่ง Apache) ให้สรุปความรู้สึกแบบสั้นๆ ก็ต้องพูดว่า "chip หาย" อะไรก็ไม่รู้เต็มไปหมด
ผมคิดว่ามีแฟนๆ Java อ่านบล็อกนี้อยู่บ้าง ถ้าอยากให้ผมรัก Java ก็ต้องช่วยกันตอบคำถามเหล่านี้ (มันจะงอกมาเพิ่มเรื่อยๆ)
อาจเป็นเพราะ Java มันมีอะไรให้เลือกใช้เยอะเกินไปมั้ง หลักการเลือกของผมบางทีก็ง่ายๆ แต่ดูเหมือนโง่ๆ เพราะไม่คิดอะไรมากไปกว่าดู community ว่าใครใช้อะไรบ้าง ตัวไหนคนบอกว่าดี อีกอย่างคือต้องศึกษาว่างานๆหนึ่งมันต้องใช้อะไรเป็นอย่างน้อย อะไรเป็นตัวเลือก อะไรเป็นสิ่งจำเป็น อะไรเข้ากันได้ดี อะไรเข้ากันไม่ได้ บางเรื่องมันใกล้เคียงศาสนาเข้าไปทุกทีเถียงกันมากๆเดี๋ยวพาลฆ่ากันตาย แค่นี้ก็ปวดกบาลแล้ว
1. ถ้าจะเอา Spring มาเทียบกับสองตัวนี้ต้องเอาแค่ component หนึ่งใน Spring ที่ชื่อว่า Spring-MVC มาเทียบ เพราะ scope ของ Spring มันใหญ่กว่า Struts และ Tapestry จริงๆยังมี JSF อีกนะ หุหุหุ ตอบคร่าวๆ Spring-MVC และ Struts มันเป็น Action Centric ส่วน Tapestry และ JSF เป็น Component-centric เหมือนพวก event driven ใน GUI มั้ง ทั้งสองตัวหลังนี้ไม่เคยใช้ ส่วน Spring-MVC กับ Struts นี่มันต่างกันในแง่ feature การ config และ component plug-in ที่ support มากกว่า จะว่าไปมันก็คล้ายๆที่เราเขียน PHP นี่ล่ะ มี Form มี Action แต่มันดูเป็น component มากกว่าเพราะอิงตาม MVC
ข้ออื่นรอคนอื่นมาตอบละกัน
แหม ผู้หญิงเปรี้ยว ผู้หญิงเท่ ผู้หญิงทอม ๆ ผู้หญิงหวาน ผู้หญิงตัวเล็ก ๆ ผู้หญิงเซ็กซี่ ผู้หญิงลุย ๆ ผู้หญิงกินเหล้า ผู้หญิงทำกับข้าว ฯลฯ
ก็ยังชอบผู้หญิงอยู่น่ะ
tomcat = ผู้หญิงทอมๆ
jetty = ผู้หญิงเปรี้ยว
tapestry = ผู้หญิงหวาน ๆ
activemq = ผู้หญิงขยัน
osmq = ผู้หญิงเปิดเผย
่ิjboss = ผู้หญิงที่ชอบอยู่ข้างบน
derby = ผู้หญิงชอบขี่ม้า
แบบนี้เปล่า bact :P
^
ตอบแบบสองคนข้างบน เราก็คงเกลียด java ต่อไป :P
มาลงชื่อเกลียด Java ด้วยคน >_<
ถามเยอะอะ อยากตอบนะ แต่หยิ่ง
ไม่ใช่ละ
คือคิดว่าไม่สะดวกตอบในนี้ แล้วถ้าตอบ ก็จะมีแค่ mk ที่ได้ประโยชน์ แล้วก็จะได้ความคิดเห็นอื่นๆ น้อย
ไปถามที่ narisa.com ดิ เดี๋ยวตอบให้ สัญญา
> deans4j
ถ้าตอบตรงนี้ คนไม่ได้ใช้ Java อย่างผมจะได้รู้ด้วยไงครับ เผื่อจะสนใจใช้บ้าง ^^
ตอบเลย ๆ อยากรู้เหมือนกันครับ ตัวเลือกเยอะขนาด สับสนไปหมด
แล้วสุดท้ายเราคบได้ทีละกี่คนอ่ะ
deans: เดี๋ยวขออ่านอีกซักพักจะเข้าไปถามครับ
ผมไม่ชอบ java เพราะ ไม่รู้จะเริ่มตรงไหนอะ มีอะไรให้เลือกเต็มไปหมด
ลองตอบดูเท่าที่ตอบได้ ไม่รับประกันว่าถูก 100%
1.ความแตกต่างระหว่าง Spring, Struts, Tapestry
เป็น framework ทั้งหมด แต่ใช้งานกันคนละเรื่อง
Spring นี่จะเน้น data injection มี Spring MVC อีกตัวด้วย
struts จะ MVC
Tapestry นี่จำไม่ค่อยได้ ใช้ทำพวกเวปเหมือนกันใช้มั้ย ไม่เคยไปจับมัน
2. ความแตกต่างระหว่าง Tomcat กับ Jetty
Tomcat เป็น jsp/servlet container
jetty เป็น web server + servlet container
3. จาก 1,2,3 นั่นแปลว่า Apache เป็นเรื่องของ choice ใช่หรือไม่ ถ้าใช่ มีวิธีเลือก choice อย่างไร
ช่าย...โลกของจาวาคือการเลือก
ทำของอย่างเดียวกัน มีหลายวิธีสุดๆ
เลือกเอาตามใจชอบ...เอ้ยไม่ใช่
ถ้าเริ่มใหม่ๆเอาพวกที่คนใช้เยอะๆน่าจะดีกว่า เพราะว่ามีคนให้ถาม แล้วก็มีข้อมูลให้อ่านเยอะ
แนะนำ tomcat
4. JavaServlet คืออะไร
มองง่ายๆมันจะคล้ายๆ cgi
ส่วน jsp มันจะคล้ายๆ php
5. EJB คืออะไร
- EJB เป็น business tier อยู่ด้านหลัง เป็นส่วนที่แบบว่า ถ้าไม่จำเป็นก็ไม่ควรไปใช้มัน เพราะต้องใช้ EJB container ซึ่ง overhead สูง
เอาง่ายๆว่าถ้า application แค่ web ธรรมดา ก็ลืม EJB ไปเลย
6. ทำไมเราถึงควรใช้ Geronimo (หรือ WASCE) ถ้าเทียบกับ Glassfish, JBoss หรือ BEA WebLogic
- ส่วนตัวคิดว่า JBoss หรือ WebLogic น่าใช้กว่าแฮะ
Glassfish มันออกแนวๆ reference implementation ให้คนไปลองใช้มากกว่า ไม่ได้ให้เอาไปขึ้นโปรดักชั่น
Geronimo นี่ไม่มีความรู้
JBoss เป็นของฟรีที่มีชื่อเสียงดี เสถียร เป็นทางเลือกที่ดี มัน integrate tomcat เข้ามาด้วย
BEA เนี่ยะดีมากเลย แต่แพง
แต่ทั้งนี้ทั้งนั้น...ถ้าไม่ได้ใช้ EJB ใช้แค่ tomcat ก็พอ
ปกติที่เขาใช้ทำเวปแบบเบสิกสุดก็
JSP--Servlet--Database
ถ้าใช้แบบมี framework หน่อยก็
Struts/Spring--Hibernate (Hibernate เป็นตัวจัดการการเก็บข้อมูลลง database ทำให้ง่ายกว่าใช้ sql pureๆ)
ถ้าจะเอาแบบใหม่กิ๊กก็ต้อง
JSF/Facelets --- Hibernate/Java Persistence --- Database
ส่วนตัวคิดว่าการใช้เทคโนโลยีที่ชาวบ้านเขาใช้กันเยอะๆหน่อย ดีตรงหาข้อมูลอ่านง่ายนี่แหละ ไม่งั้นต้องไปงมเอง จะท้อซะก่อน
ได้ความว่าไงบ้างครับคุณ mk รู้สึกผม จะตกที่นั่ง เดียวกันกับคุณ
มันช่างเยอะเหลือเกิน อะไรเต็มไปหมด
ได้ความว่าอย่างไรก็มาบอกกันบ้างนะครับ หรือมีแหล่งข้อมุลดีๆ เขียนๆ ไว้หน่อยเน้อ...
นี่ผมก็อ่านเองมาเยอะแล้วนะ ไม่เห็น get ซะที เหนื่อยล่ะครับ
ช่วงนี้เผอิญมันยุ่งๆ + ขี้เกียจๆ เลยไม่ได้ตามต่อครับ
คุณ icohko ต้องลงมือเขียนเองด้วยนะครับ ไม่งั้นคุณจะไม่มีวันเข้าใจถึงความแตกต่างในรายละเอียดเลย
ขอบคุณ คุณ PIM และ mk ครับ