ความคืบหน้าของ Hoffman Framework นับจาก 0.1.3a

ตอนนี้ผมเอา Framework ตัวนี้ไปใช้กับ production project หลาย ๆ ตัวและได้มีการปรับเปลี่ยนส่วนของ lib เยอะพอสมควร จนหลาย ๆ อย่างที่ทำได้ใน 0.1.3a นั้นทำงานไม่ได้เมื่อใช้กับ code ชุดใหม่นี้ครับ

หลายส่วนถูกโย้กย้ายด้วยเหตุผลด้านความยืดหยุ่น หลายส่วนถูกแก้ไขด้วยเหตุผลด้าน Coding Style Guideline โดยหลาย ๆ จุดถูกเพิ่มเติมเพื่อทำการ track ปัญหาออกมาได้ด้วยการตั้งค่าในไฟล์ Configuration เพื่อง่ายต่อการตรวจสอบ และบางส่วนถูกปรับแก้ด้วยเหตุผลด้านความเร็ว และประสิทธิภาพที่สูงขึ้นด้วย

ใน log ของ SVN บน SourceForge นั้นบางส่วนอาจจะขาดตกไปบ้าง เพราะว่ายังมือใหม่ในการบันทึกข้อมูลทั้งหมดที่ทำลง log ของ SVN ครับ พยายามเก็บรายละเอียดทั้งหมดที่ได้ทำ เพื่อเอาไว้อ้างอิงในภายหลังให้มากที่สุดครับ

และสุดท้าย คาดว่าจะเปลี่ยนจาก SourceForge มาใช้ Google Code Hosting ครับ กำลังดูเรื่องคุณสมบัติต่าง ๆ อยู่ครับผม

[code]
rv 8 – f – ส่วนของการสลับ Profile ของฐานข้อมูลใน Hmf_LogicModel_Db ให้ย้ายมาอยู่ที่ __construct แทน
rv 9 – a – เพิ่ม quoteInto เข้าไปใน Hmf_Logic_Model_Db เพื่อใช้ในการ filter ข้อมูลที่ใช้ใน Database
rv 10 – e – แก้ไขตัวแปรสำหรับ config ค่าแบบทั่วไป และการเข้าถึง
rv 11 – e – แก้ไขตัวแปรสำหรับ routing ค่าแบบทั่วไป และ config โดยใน config เพิ่มตัวควบคุมการใช้ acl ลงไป และ ตั้งแต่ rv 10 ตัวแปรตั้งค่าทุกตัวใช้การขึ้นต้นด้วยตัวเล็กทั้งหมด
rv 12 – e – ปรับเปลี่ยนการใช้งานตัวแปรใน runtime ต่าง ๆ ให้ไป register ใน registry แทนเพื่อใช้แทนการเข้าถึงแบบ global แทนโดยมีชื่อตัวแปรดังต่อไปนี้ที่ได้รับการใส่ลงใน registry
rv 12 – e – — applicationConfigurations เป็น app_config
rv 12 – e – — applicationLocale เป็น app_locale
rv 12 – e – — applicationAcl เป็น app_acl
rv 12 – e – — applicationAuthen เป็น app_authen
rv 12 – e – — viewsInformations เป็น app_viewinfo
rv 12 – e – — routingUrl เป็น routing_url
rv 12 – e – — controllerFile เป็น controller_file
rv 12 – e – — controllerName เป็น controller_name
rv 12 – e – — actionName เป็น action_name
rv 12 – i – — routing ชื่อคงเดิม
rv 12 – i – — acl ชื่อคงเดิม
rv 12 – i – — is_production ชื่อคงเดิม
rv 12 – e – ทำการ register $routes [‘:args’] ลงใน registry ในชื่อ action_args
rv 12 – e – ทำการเปลี่ยนการ instance จาก Class ชื่อ Hmf_RenderView แล้วอ้างอิงในชื่อ $renderView มาเป็น register ลงใน registry ในชื่อ renderview
rv 12 – e – แก้ไข Class ชื่อ Hmf_Config เพื่อให้ register ข้อมูลลงใน app_config และ app_locale ในคราวเดียวโดยซ่อนขั้นตอนภายใน method เลย
rv 12 – a – เพิ่ม method _registry ลงใน Hmf_RenderView_Render และ Hmf_FlowController เพื่อนำข้อมูลใน register เข้าและออกมาผ่าน method _registry ได้เลย
rv 12 – e – ย้ายขั้นตอนการตรวจสอบสิทธิ์ และกำหนดสิทธิ์ผู้ใช้จากใน runtime มาอยู่ใน constructor ของ Hmf_FlowController แทน
rv 12 – a – เพิ่ม key ‘acl’ ในตัวแปรก config เพื่อกำหนดว่าจะใช้การตรวจสอบสิทธิ์หรือไม่
rv 13 – r – เอา flag การตรวจสอบ registry ออกจากบรรทัดล่างสุด
rv 14 – a – เพิ่ม method _registry ลงใน Hmf_LogicModel Hmf,_LogicModel_Db และ Hmf_LogicModel_General ผ่าน __call method
rv 14 – a – ตรวจสอบ index ของ registry ก่อนทำการ access ออกมาใช้งาน
rv 15 – a – เพิ่มขั้นตอนการตรวจสอบ verion ของ Zend Framework โดยต้องใช้ Zend Framework ใน version 1.5 เป็นต้นไป
rv 16 – f – จัดรูปแบบของ code โดยทั่วไป
rv 17 – e – เพิ่ม PATH_DIR_HTML เพื่อใช้แทน /html โดยใช้สำหรับในกรณีที่ต้องการเปลี่ยนชื่อ /html เป็นอย่างอื่น
rv 17 – a – เปลี่ยนชื่อ $path_root เป็น $pathRoot เพื่อให้ตรงตาม naming ของ coding style guideline
rv 18 – a – เพิ่ม debug.routing ลงใน key ของ config เพิ่มนำไปตรวจสอบเวลา debug ตอนทำ routing ใน Runtime
rv 19 – a – เพิ่ม debug.routing ลงใน key ของ config เพิ่มนำไปตรวจสอบเวลา debug ตอนทำ routing ในไฟล์ Configuration
rv 20 – f – แก้ไขข้อผิดพลาดในการใส่ keywords เพิ่ม
rv 20 – f – ปรับประสิทธิภาพในการสร้าง url ให้ดีขึ้น และรองรับการใส่ keywords เพิ่ม
rv 20 – f – แก้ไขการ handle ที่ controller และ action ใหม่
rv 20 – r – เอา filterSlashAtLastChar ออก
rv 20 – r – เอา getUrlWithString ออก
rv 21 – f – แก้ปัญหา kerwords, pattern และ action หายในบางครั้งเวลา generate url
rv 22 – a – เพิ่มค่า routing.cache.lifetime และ routing.cache สำหรับตั้งค่าใช้งาน cache ของ routing
rv 23 – e – เอาการตรวจสอบการ debug ของ routing ไปใส่ใน contructor แทน
rv 23 – e – เปลี่ยนชือการ debug ของ routing จาก debug.routing เป็น routing.debug แทน
rv 23 – a – เพิ่มค่า routing.cache.lifetime และ routing.cache สำหรับตั้งค่าใช้งาน cache ของ routing
rv 23 – a – เพิ่ม cache ลงใน routing โดยใช้ sqlite
rv 24 – f – แก้ไขการขึ้นบรรทัดใหม่ใน error messege
[/code]