Objective-C and Cocoa กับการเขียนโปรแกรมบน iOS สำหรับ iPhone และ iPad |
Objective-C and Cocoa กับการเขียนโปรแกรมบน iOS สำหรับ iPhone และ iPad ในการที่จะเขียนโปรแกรม iOS เพื่อทำงานบน iPhone และ iPad ด้วยภาษา Objective-C เราจะได้ยินคำศัพท์นี้บ่อย ๆ เช่น Cocoa , Cocoa Touch , Foundation , Framework เรามารู้ความหมายคร่าว ๆ ของคำศัพท์เหล่านี้
Cocoa เป็น Framework ที่ใช้พัฒนาโปรแกรมในรูปแบบของภาษา Objective-C ซึ่งภายใน Cocoa จะมีรูปแบบคำสั่งให้เลือกใช้อยู่มากมาย และถูกแบ่งออกมาได้หลาย Framework เช่น Foundation Framework , Cocoa Touch และอื่น ๆ ซึ่ง Framework ต่าง ๆ เหล่านี้ที่จะนำมาเขียนโปรแกรมบน iOS (iPhone,iPad) เราสามารถเรียกใช้ได้หลังจากที่ Create Project บน Xcode ได้ในทันที
จากรูปจะเห็นว่ามีรายการ Framework ที่ถูก Include เข้ามาในโปรเจค ซึ่งจะอยู่ในโฟเดอร์ที่มีชื่อว่า Frameworks และตอนนี้ถูกแบ่งย่อยเป็น 3 Framework มี ULKit.framework, Foundation.framework และ CoreGraphics.framework โดย Framework เหล่านี้มีหน้าที่แตกต่างกันไป และทั้งหมดนี้ก็เป็นเพียงส่วนปลีกย่อยของ Cocoa Framework เท่านั้น
ในการเขียนโปรแกรมด้วยภาษา Objective-C ปัจจุบันมีความสะดวกมากกว่าเมื่อก่อน ด้วยการใช้ Tools ของ Xcode ที่สามารถติดตั้งได้ฟรี ๆ จาก App Store จากบทความก่อนหน้านี้
Install ติดตั้ง Xcode บนเครื่อง Mac สำหรับเขียน iOS (iPhone, iPad , iPod)
ความสามารถของ Xcode ที่เด่น ๆ เช่น การที่ Xcode สามารถสร้าง Interface Builder ได้ง่ายและสวยงาม และความสามารถอื่น ๆ เช่นการสร้าาง IBOutlet , IBAction และการ Build Compile ต่าง ๆ
ซึ่งปกติแล้วในการเขียน App บน iPhone จะสามารถเขียนได้ 3 ภาษาคือ Objective C, ภาษา C และ C# แต่ภาษาที่ได้รับความนิยมมากที่สุดคือ Objective-C ที่ใช้ Framework ของ Cocoa ตามที่ได้กล่าวมาในก่อนหน้านี้ เหตุผลเพราะภาษา Objective-C เป็นภาษาที่มีรูปแบบและโครงสร้างที่เข้าใจง่าย ในแรก ๆ อาจจะยังงกับรูปแบบคำสั่งไปบ้าง แต่ถ้าเราได้ศึกษาและเข้าใจความหมายของมันแล้ว เราจะเห็นว่ารูปแบบคำสั่งนั้นไม่ได้ยากอย่างที่เห็ฯในตอนแรก ซึ่งผมเองก็เห็นเป็นเช่นนั้นเดียวกัน และก็เริ่มสุกกันมันแล้วซิ ก่อนที่จะเขียนบทความถัดไปผมจะขอทบทวนเกี่ยวกับ โครงสร้างของไฟล์ที่เป็น .h และ .m และอธิบายเกี่ยวกับ โครงสร้างพื้นฐานของไฟล์ และในไฟล์ประกอบด้วยอะไรบ้าง
ในบทความก่อน ๆ ได้อธิบายไปแล้วว่า .h คือส่วนของที่เป็น header ไว้ประกาศชื่อ class , method , variable และในส่วนของ .m คือ implementation ไว้สำหรับกำหนดรูปแบบและคำสั่งการทำงานต่าง ๆ
ViewController.h (Header file)
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
{
IBOutlet UITextField *txtName; // for Text Field (Textbox)
IBOutlet UILabel *lblResponse; // for Label
}
- (IBAction)Hello:(id)sender; // for Button Event
@end
คำอธิบาย
#import <UIKit/UIKit.h>
// เป็นการ Import library หรือ Framework เข้ามาใช้งาน ซึ่ง UIKit เป็น Framework เกี่ยวกับ UI
@interface ViewController : UIViewController
// เป็นการประกาศชื่อ Class โดยในการประกาศ Class จะเริ่มต้นด้วย @interface จะเห็นว่า ViewController เป็นชื่อ Class ส่วน UIViewController เป็นการ inheritance Class ที่มีชื่อว่า UIViewController ซึ่งเป็น Class ที่เกี่ยวข้องกับ User Interface ของ View
IBOutlet UITextField *txtName; // for Text Field (Textbox)
IBOutlet UILabel *lblResponse; // for Label
// เป็นเหมือนรายการ Property หรือ Variable ตัวแปรที่จะใช้ในการจัดเก็บ หรือรับส่งค่าตัวแปรต่าง ๆ
- (IBAction)Hello:(id)sender; // for Button Event
// เป็น Method หรือ function ในการทำงาน
ViewController.m (Implement File)
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (IBAction)Hello:(id)sender
{
//lblResponse.text = txtName.text;
//[lblResponse setText:[txtName text]];
NSString *hello = @"สวัสดีครับคุณ ";
NSString *name = txtName.text;
NSString *message;
message = [hello stringByAppendingString:name];
lblResponse.text = message;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
คำอธิบาย
#import "ViewController.h"
// เรียกใช้ไฟล์ Header ที่เป็น .h ทีได้ประกาศไว้ก่อนหน้านี้
@interface ViewController ()
@end
// เป็นการประกาศชื่อ Class ซึ่งปกติจะชื่อเดียวกับ Header Files
@implementation ViewController
// เป็นการประกาศคำสั่งสำหรับเริ่มต้นการ Implement ไฟล์ หรือเริ่มต้นคำสั่งต่าง ๆ
- (IBAction)Hello:(id)sender
- (void)viewDidLoad
- (void)didReceiveMemoryWarning
// 3 ตัวนี้เป็นรายการ Method หรือ Function ต่าง ๆ
เพิ่มเติม
ในการสร้าง Class บน Objective-C ด้วย Xcode เราจะเห็นว่ามีคำสั่งต่าง ๆ ถูกสร้างให้อัตโนมัติ ซึ่งคำสั่งเหล่านี้เราไม่ต้องไปแก้ไขหรือลบออก และจะไม่มีผลต่อการทำงานของโปรแกรม สำหรับการใช้งาน Class เบื้องต้น ลองอ่านและศึกษาได้จากบทความที่เกี่ยวข้องข้างล่างนี้
และบทความต่อไปนี้ 4-5 บทความ ผมจะเขียนเกี่ยวกับ Basic Objective-C เพื่อให้มีความเข้าใจกี่ยวกับโครงสร้างพื้นฐานของภาษา Objective-C ก่อนที่จะเขียนโปรแกรมในด้านอื่น ๆ ต่อไป
หัวข้อ Basic Objective-C
Objective-C and Variable รู้จักกับตัวแปรในภาษา Objective-C (iOS,iPhone,iPad)
Objective-C and DataType ชนิดของตัวแปรในภาษา Objective-C (iOS,iPhone,iPad)
Objective-C and Loop การสร้างลูปและแสดง Loop แบบง่าย ๆ (iOS,iPhone,iPad)
Objective-C and If Else , Switch Condition Statement (iOS,iPhone,iPad)
Objective-C and Operator การใช้ Operator บนภาษา Objective-C (iOS,iPhone,iPad)
Objective-C Property(strong,nonatomic) , Weak , Strong type (iOS, iPhone, iPad)
Objective-C and Class Object (OOP) การเรียกใช้งาน Class (iOS,iPhone,iPad)
.
|
ช่วยกันสนับสนุนรักษาเว็บไซต์ความรู้แห่งนี้ไว้ด้วยการสนับสนุน Source Code 2.0 ของทีมงานไทยครีเอท
|
|
|
By : |
ThaiCreate.Com Team (บทความเป็นลิขสิทธิ์ของเว็บไทยครีเอทห้ามนำเผยแพร่ ณ เว็บไซต์อื่น ๆ) |
|
Score Rating : |
|
|
|
Create/Update Date : |
2012-10-21 05:49:58 /
2017-03-25 22:55:19 |
|
Download : |
No files |
|
Sponsored Links / Related |
|
|
|
|
|
|
|