วันพุธที่ 18 สิงหาคม พ.ศ. 2553

CakePHP คืออะไร

CakePHP คือ Framework ที่ถูกพัฒนาด้วยภาษา PHP ที่เป็น Free Open-Source โดยการออกแบบโปรแกรม (Design Patterns) แบบ MVC (Model-View-Controller) และ ORM (Object-Relation Mapping) เข้ามาเป็นมาตรฐานหรือข้อตกลงในการพัฒนาโปรแกรม

CakePHP จะช่วยให้เราสามารถพัฒนาเว็บไซต์ได้เร็วยิ่งขึ้น โดยเน้นที่การพัฒนาระบบเว็บที่มีขนาดใหญ่ ซึ่งโดยทั่วไปแล้วจะใช้เวลาในการพัฒนามาก แต่หากใช้ CakePHP ก็จะสามารถพัฒนาได้รวดเร็วยิ่งขึ้น เพราะ CakePHP มีตัวช่วย และยังเขียน Code เพียงเล็กน้อยก็สามารถทำงานได้ (Write less do more)

Framework (Frame+work) หมายถึง กรอบของการทำงาน แต่ถ้ามองในแง่โปรแกรม ก็จะเป็นข้อกำหนดหรือขอบเขตในการเขียนโปรแกรมให้เป็นไปในรูปแบบเดียวกัน และสามารถนำไปเขียนเพิ่มเพื่อตอบสนองความต้องการอย่างใดอย่างหนึ่งได้  

PHP Framework เป็นศูนย์รวมของ Class ที่ถูกพัฒนาขึ้นในรูปแบบของ OOP (Object Oriented Programming) โดยมี Run-time ที่ช่วยในการพัฒนาเว็บแอพพลิเคชั่นได้อย่างรวดเร็ว ในการพัฒนาเว็บแพคพลิเคชั่นโดยทั่วไป นักพัฒนาจะเก็บไฟล์และโครงสร้างโปรแกรมของตัวเองไว้ใช้เพื่อให้การพัฒนาเว็บไปด้วยความรวดเร็ว แต่ก็มีข้อเสียคือนักพัฒนาคนอื่นต้องมาเรียนรู้ในแต่ละ Class ว่าแต่ละ Class มี Member อะไร และมี Function อะไร ซึ่งทำให้เสียเวลามาก นั่นก็หมายความว่า นักพัฒนาแต่ละคนจะรู้เพียง Class ของตัวเองแต่คนอื่นต้องใช้เวลาในการเรียนรู้ ทางแก้คือ ใช้ PHP Framework (CakePHP) โดยนักพัฒนาแต่ละคนจะใช้มาตรฐานเดียวกันในการพัฒนา Web Application ซึ่งทำให้การพัฒนาเป็นไปในทิศทางเดียวกัน เรียกว่า ธรรมเนียมการเขียนโปรแกรมเดียวกัน

CakePHP จะถูกออกแบบมาให้ช่วยในการจัดการ Active Record, Association Data Mapping, Front Controller และ MVC (Model-View-Controller) ซึ่งเป็นหัวใจหลักของ CakePHP จากการออกแบบของ CakePHP นั้นทำให้นักพัฒนาไม่ต้องเสียเวลาในการแก้ปัญหาทั่วๆ ไปของโปรแกรม นักพัฒนาสามารถแยกส่วนของ Business logic ออกมาต่างหากทำให้การพัฒนามีความรวดเร็วมากยิ่งขึ้น

CakePHP สามารถทำงานได้ทั้ง PHP4 และ PHP5 ซึ่งไม่เหมือนกับ PHP Framework ส่วนมากที่ผู้พัฒนาต้องเลือกเวอร์ชั่นของ PHP ให้เข้ากันได้ ซึ่งบางครั้ง Web Server จะมีเพียง PHP4 หรือ PHP5 ตัวใดตัวหนึ่งเท่านั้น แต่ในที่นี้แนะนำให้ใช้ PHP5 ในการพัฒนา Web Application ด้วย CakePHP

ความสามารถของ CakePHP Framework

  • มีลิขสิทธิ์ที่ยืดหยุ่น
  • ทำงานร่วมกับ PHP Version 4 และ 5
  • รวมคำสั่ง CRUD (Create, Read, Update and Delete) สำหรับ Database ที่ทำให้ง่ายต่อการคิวรี่
  • ใช้สถาปัตยกรรม MVC (Model-View-Controller)
  • มี Helper ช่วยพัฒนาได้ง่ายและรวดเร็ว เช่น AJAX, JavaScript, HTML Forms และอื่นๆ
  • มีความปลอดภัยในเรื่อง E-Mail, Cookie, Security, Session และรองรับการทำงานในรูปแบบ Components
  • มีการเรียก URL ที่ส่งค่าแบบสวยงาม

Reference:

Technorati Tags: ,

วันอังคารที่ 17 สิงหาคม พ.ศ. 2553

(4121103) การเขียนโปรแกรมคอมพิวเตอร์และอัลกอริทึ่ม

องค์ประกอบและหน้าที่ของฮาร์ดแวร์และซอฟต์แวร์ ภาษาคอมพิวเตอร์ชนิดต่างๆ หลักการเขียนโปรแกรมและการทำงานของโปรแกรม ขั้นตอนการเขียนและพัฒนาโปรแกรมและการเขียนผังงาน การวิเคราะห์และออกแบบอัลกอริทึมแบบ Sequential, Condition, Repetition และ Modular

เอกสารประกอบการเรียนการสอน
  1. ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์ [ziddu | easy-share]
  2. ขั้นตอนลำดับความคิดและการแก้ปัญหา [ziddu | easy-share]
  3. พื้นฐานของโปรแกรมภาษา C [ziddu | easy-share]
  4. การควบคุมการทำงานโปรแกรมภาษา C [ziddu | easy-share]
  5. ฟังก์ชั่น [ziddu | easy-share]
  6. อาร์เรย์ [ziddu | easy-share]
  7. ตัวแปรชนิดพอยน์เตอร์ [ziddu | easy-share]

เอกสารเพิ่มเติม

วันจันทร์ที่ 19 กรกฎาคม พ.ศ. 2553

C: การเขียนโปรแกรมคิดเกรด โดยใช้ switch

โจทย์:

จงเขียนโปรแกรมการคิดเกรดของนักศึกษา โดยกำหนดช่วงของคะแนน ดังนี้

  • 80 - 100 ได้เกรด A
  • 70 - 79 ได้เกรด B
  • 60 -69 ได้เกรด C
  • 50 - 59 ได้เกรด D
  • 0 - 49 ได้เกรด F
การรับข้อมูลให้รับค่าจากแป้นพิมพ์ โดยรับค่าที่เป็นชื่อและคะแนน ส่วนการแสดงผลให้แสดงออกทางจอภาพทั้งชื่อ, คะแนน และเกรดที่นักศึกษาได้รับ

หมายเหตุ: ให้มีการตรวจสอบคะแนนให้อยู่ในช่วง 0-100 เท่านั้น ถ้าเกินกำหนดให้แสดงข้อมูล “Out of range”

Code:

hw-switch

วันอังคารที่ 18 พฤษภาคม พ.ศ. 2553

แก้ไข Template JS_Jamba แสดงใน IE

ถ้าใครใช้ Template JS_Jamba ของ Joomla 1.5 แล้วแสดงผลใน IE มีปัญหา เราสามารถแก้ไขได้ โดยไปที่ Folder Templates ของ js_jamba และ css ตามลำดับ จะมีไฟล์ชื่อ ie.css ให้ทำการแก้ไขไฟล์นี้แหละครับ

ขอเดิมที่เขาให้มาคือ
#main-wrapper {
position: relative;
top: -5px;
}
#navmenu li a {
line-height: 22px;
padding: 4px 10px 4px 0px;
display: inline;
}

ให้เพิ่มเติมคำสั่งบรรทัดสุดท้าย ดังนี้
.main-both {
width: 545px;
}
.main-left-only {
width: 750px;
}
.main-right-only {
width: 740px;
}

เพียงเท่านี้เราก็สามารถแสดงผลใน IE ได้แล้ว

วันอาทิตย์ที่ 28 กุมภาพันธ์ พ.ศ. 2553

แนะนำตัว

Blogger นี้ จัดทำขึ้นเพื่อใช้เป็นสื่อกลางในการเรียนการสอนของผู้จัดทำเอง รวมทั้งการแจ้งข่าวสารต่างๆ เช่น การนัดพบนักศึกษาที่ตนเองเป็นที่ปรึกษาหรือนักศึกษาประจำวิชาที่ผู้สอนได้จัดทำการเรียนการสอน คะแนนของแต่ละวิชา เพื่อเพิ่มความสะดวก รวดเร็ว ในการทำงานของผู้สอนและผู้เรียนเพิ่มขึ้น อีกทั้งใน Blogger นี้ จะมีการเพิ่มข้อมูลทางซอฟต์แวร์ (Software) ไม่ว่าจะเป็นการใช้หรือเทคนิคต่างๆ โดยเน้นหนักถึงเรื่องซอฟต์แวร์ฟรี (Freeware) หรือ Open Source และแนะนำซอฟต์แวร์ที่น่าสนใจและไม่มีค่าใช้จ่ายในการใช้งาน
อีกทางเลือกหนึ่งที่เราสามารถติดตามข่าวสารของผู้สอน คือ twitter