Geeky Academy — ตอนที่ 2 Spring Framework Core

ส่วนตัว… session นี้ทุกคนจะดูเนื่อยๆลงไปอาจจะเพราะทำงานมาทั้งสัปดาห์ + โดน Git เข้าไปเต็มพุงย่อยกันไม่ทัน เลยเริ่มมีคนมาสายบ้าง ไม่มาบ้าง ป่วยบ้าง เซเล็ปตัวท็อปอย่างพี่ @roofimon ก็ไม่มาเลยดูเงียบๆไปนิด

เข้าเรื่อง Spring ดีกว่า…

Spring Goal (แอบบดู slide)

  • เขียน J2EE ง่ายขึ้น ผมไม่เคยเล่น EJBs เลยไม่อินเท่าไหร่ แต่เคยซื้อหนังสือ(ไทย)ซึ่งแน่นอนไม่รู้เรื่อง

  • เขียนชวาได้หล่อขึ้น อันนี้เดี๋ยวดูที่ DI กับ AOP

  • * POJOs model that is applicable in a wide range of environment (อันนี่ไม่เข้าใจว่าหมายถึงอะไร?)

Spring Core — ช่วยประติประต่อ Java framework อื่นๆให้ทำงานร่วมกันได้

Spring Heart — หัวใจของ Spring คือ DI กับ AOP

Spring Beans

  • เราจะกอง beans มารวมกันโดยให้ Spring IoC container ช่วยจัดการ

  • bean อาจจะสร้างจาก class เดียวๆ หรือสร้างจากการประกอบของหลายๆ class

  • ถ้าเป็น bean ที่สร้างจากหลายๆ class เราจะไม่ new แต่เราจะ "ฉีด" (เพราะเราสร้าง bean ที่จำเป็นหมดแล้ว)

  • beans ไม่ได้ฉีดที่ตูด ฉีดที่ field, constructor หรือ method

  • ถ้าเราอยากให้ class ไหนเป็น beans สามารถทำได้ 3 แบบ

  • XML config

  • XML context config (component-scan) + Annotaion @Component family ที่ implementation class

  • Java Config @Configuration

Dependency Injection

  • คุยกันด้วย interface ทำให้ไม่ต้องยึดติดกับ imple ถอดเปลี่ยน impl ง่ายปานเสียบปลั๊ก

  • เพราะเป็น interface เลยใช้ Mock มาช่วยทำ unit test ง่าย

AOP ยังย่อยไม่เสร็จ.. Orz

*หลักๆก็เป็นการบอกว่า Spring นั้นส่งเสริมการใช้ POJOs ในการพัฒนาโปรมแกรมครับ Environment ในที่นี้หมายถึงการนำ Spring มาใช้ในหลายๆสภาวะแวดล้อม เช่นตั้งแต่เขียน Desktop Application ทั่วๆไป, Web รวมไปถึงงานระดับ Enterprise ซึ่ง bean ที่เราสร้างขึ้นก็ยังเขียนขึ้นมาง่ายๆแบบ POJOs

Slide

Spring Framework Core@9Tae

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s