รับทําเว็บไซต์ รับทําseo
บทความที่น่าสนใจ

บทความ ที่น่าสนใจ

Spring Framework คืออะไร ??

    Spring framework คืออะไร
    Spring framework เป็นโอเพนซอร์ส framework ที่ใช้ช่วยในการสร้าง Java Application โดย Spring framework จะรวมทุกอย่างที่ต้องการเพื่อใช้ในภาษา Java โดยสนับสนุน Groovy และ Kotlin เป็นภาษาทางเลือกใน JVM และมีความยืดหยุ่นในการสร้างสถาปัตยกรรมหลายแบบขึ้นอยู่กับความต้องการของโปรแกรม โดยผู้ที่คิดค้นและพัฒนาขึ้นมาเป็นเวอร์ชันแรก คือ Rod Johnson โดยอยู่ภายใต้ลิขสิทธิ์ของ Apache license

    Spring framework เหมาะสำหรับนำไปใช้งานกับ Java Enterprise Application เพราะจะช่วยจัดการ object ต่างๆให้โดยอัตโนมัติตามที่เรา Config

    Spring frmework ประกอบไปด้วย Module ต่างๆมากมาย ซึ่งมีชื่อเรียกแยกออกไป เช่น Spring MVC, Spring AOT และในปัจจุบันยังมี Spring Boots ออกมาช่วยให้ dev เขียนโปรแกรมได้ง่ายขึ้นกว่า Spring ที่ออกมาให้ช่วงแรกๆ อีกด้วย


    Spring framework ใช้ทำ Java Application อะไรได้บ้าง
    - Web application
    - Enterprise application
    - Standalone application
    - Batch application
    - Integration application
    - Mobile application


    ข้อดีของการใช้ Spring Framework
    1. Wiring components (Beans) through Dependency Injection (DI)
      - สนับสนุนการรวมส่วนต่างๆมาประกอบกันเป็นโปรแกรม
    2. Design to Java interfaces
      - มีฟังก์ชันป้องกัน user จากข้อมูลรายละเอียดการทำงานต่างๆ
    3. Test-Driven Development (TDD)
      - ชั้นของ POJO สามารถทำการทดสอบได้โดยไม่ได้ยึดติดกับ framework
    4. Declarative programming through AOP
      - ธุรกรรมและความปลอดภัยสามารถกำหนดค่าได้อย่างง่าย
    5. Simplify use of popular technologies
      - ช่วยลดความซ้ำซ้อนของ application จากการลดความซ้ำซ้อนของโค้ดลง
      - สามารถเข้าถึงเทคโนโลยีเฉพาะด้านได้
      - สามารถจัดการกับข้อผิดพลาดทั่วไปได้
    6. Well designed
      - ง่ายต่อการขยาย
      - สามารถเรียก classes มาใช้ซ้ำได้
    7. Integration with other technologies (สามารถใช้งานร่วมกับเทคโนโลยีอื่นๆได้)
      - JPA, Hibernate, JDBC (for data access)
      - Thymeleaf, Velocity, etc. (for presentation)
      - JSF, Wicket, Struts, etc (For web)
      - AngularJS, jQuery, JavaScript (for front-end UI)
      - ActiveMQ, AMQP (for messaging)

    โมดูลของ Spring Framework ที่ถูกใช้งานบ่อยๆ
    - Spring Core Container เป็นโมดูลพื้นฐานของ Spring และเป็นส่วนในการจัดเตรียม Spring containers ซึ่งได้แก่ BeanFactory และ ApplicationContext
    - Aspect Oriented Programming อนุญาตให้มีการพัฒนาในรูปแบบของ cross-cutting concerns คือ มีลักษณะของโปรแกรมที่มีผลต่อความกังวลอื่นๆ
    - Data Access การเข้าถึงข้อมูลโดยใช้ ORM (Object Relational Mapping) เช่น Hibernate
    - MVC ( Model-View-Controller) เป็นโครงสร้างในการจัดการระบบที่ซับซ้อนโดยแบ่งส่วนของโปรแกรมเป็นส่วนของข้อมูล (Model) การแสดง (View) และส่วนของการควบคุมการทํางาน (Controller)
    - Inversion of Control เป็นส่วนของการทํา Dependency Injection เป็นการช่วยในการเชื่อมต่อความสัมพันธ์ระหว่างคลาสเข้าด้วยกัน และในเวลาเดียวกันสามารถทําให้คลาสต่างๆ เป็นอิสระต่อกัน