Saturday, June 16th, 2007

ผมรู้จัก annotation ได้ก็จากการเริ่มทำงานเมื่อสามเดือนที่แล้ว เพราะพี่โยน Module อันนึงให้ทำ พร้อมกับแนะนำ annotation ในภาษาจาวาให้รู้จัก หลังจากลองเล่นไปได้สองเดือนตอนนี้ถึงกับติดใจเลยแหละ
ที่ผมติดใจแล้วอยากเอามาใช้คือส่วนที่เป็น ORM เพราะวิํธีการประกาศ Class ที่จะ Map เข้ากับ Table ใน Database แบบเก่ามาอีกไฟล์นึงมันดูยุ่งยากยังไงไม่รู็ เพราะเหมือนกับต้องเขียนโครงสร้าง Table ถึงสองรอบ คือ ที่คลาสรอบนึง กับไฟล์ Map อีกรอบนึง ถ้าประกาศ Annotation ไว้ที่หัวของ คลาสเลย แล้วให้พวก ORM มาดูที่คลาสน่าจะสะดวกกว่าเยอะนะ
ที่ผมสะดุดจริงๆ แล้วอยากเอามาใช้ก็จาก Symfony framework นี่แหละ เพราะมันต้องเขียน yaml มาอีกภาษา พอเห็นแล้ว โอ้มันอะไรกันเนี๊ยะ มันก็ Map เหมือน Hibernate นี่นา ถ้าจะทำไม่ทำให้เหมือนกันไปเลยฟะ เอ แล้วเมื่อไหร่ Hibernate มันจะใช้ annotation หว่า หรือมีแล้วผมไม่รู้เองหว่า เดี๊ยวลองไปหาดูดีกว่าเผื่อมีอยู่แล้ว ลองค้นๆ ดูเจอไอ้นี่เข้า http://annotations.hibernate.org/ เห็นแล้วปลื้ม แล้ว symfony หละ :?:
ของแถมเจอไอ้นี่อีกตัว http://www.stubbles.net/ แต่มันยังเป็นวุ้นอยู่เลย รอมันสมบูรณ์อีกซักหน่อยดีกว่าแฮะ

Thursday, May 3rd, 2007

ช่วงนี้งานของผมมักทำอะไรเกี่ยวกับ Annotation และ Reflection ของ Java วันนี้ก็เจอกรณีนึงที่ต้องใช้สองอย่างนี้ นั่นคือ Default value ของ Parameter สำหรับ method
ในจาวานั้น ไม่สามารถกำหนดค่า Default ให้ได้ เวลาจะทำอะไรแบบนี้ต้อง Overide เอา ซึ่งงานผมมันทำอะไรอย่างนั้นไม่ได้ (จริงถ้าจะทำให้ใช้แบบนั้น มันต้องมานั่งเขียน Flow ใหม่ ขี้เกียจอ่ะ) ก็เลยจะใช้วิธีนี้เอา ดังนั้น วิธีการที่แสนจะง่ายที่สุดที่ผมจะเอามาใช้ได้ก็คือ เอา Annotation มาช่วย โดยกำหนดไว้ว่า ถ้ามีการใส่ Annotation นี้ เวลาเอาคลาสนี้มาสร้าง แล้วใช้ผ่าน Proxy class ถ้าเรียกแล้วไม่กำหนดค่าให้ มันจะเอาค่า Default ที่ใส่ใน Annotation มาใส่ให้
หลังจากทำเสร็จ และใช้งานก็พบกับแสงสว่าง ที่มีเงาดำทะมึนด้านหลัง เพราะมันใช้ง่ายก็จริง แต่ว่า ไอ้ Proxy ที่จะทำนี่สิ โคตรยากเลย กว่าจะทำให้เงามันหมดไปได้ กระอักเหมือนกันนะเนี๊ยะ
ปอลอ. ตอนนี้ก็ยังทำไม่เสร็จเลย :sad: เพราะสิ่งที่ผมต้องทำจริงๆ แล้วมันมี Validator ด้วยนี่สิ พูดจริงๆ แล้วก็คือผมต้องทำ Framework อันนึงให้คนอื่นเอาไปใช้ต่อนั่นแหละ แต่มันยากอิ๊บอ๋ายเลย

Saturday, April 28th, 2007

ห่างหายไปนานกับจาวา มัวแต่ไปสนใจ Ubuntu ตัวใหม่กับ OpenID อยู่แหะๆ จริงๆตอนทำงานก็ได้ลองเล่นอะไรใหม่อยู่อย่างนึงที่เกี่ยวกับจาวา นั่นคือ Annotation

Annotation คืออะไร มันก็คือสิ่งที่ไว้สำหรับอธิบายส่วนต่างๆใน code ของโปรแกรม แต่ไม่เหมือนกับ comment ที่อธิบายส่วนต่างๆ ของ code สำหรับคน เพราะ Annotation ไว้สำหรับโปรแกรมมาอ่านแล้วเอาไปใช้ต่อว่าส่วนนั้นหมายถึงอะไรเอาไปทำอะไร สำหรับรายละเอียดที่เหลือลองไปอ่านต่อในวิกิดูละกัน (โฆษณาวิกิตัวเองทางอ้อม 555 :lol: )

ปอลอ. ตอนแรกที่ใช้นี่ก็งงแต๊กว่ามันทำไรได้บ้างหว่า แต่ตอนนี้ติดใจมันซะแล้วสิ เพราะดูๆไปแล้ว นึกถึง JSON ยังไงไม่รู้