Hiển thị các bài đăng có nhãn lập trình trên ios. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn lập trình trên ios. Hiển thị tất cả bài đăng

Thứ Năm, 27 tháng 6, 2013

LẬP TRÌNH OBJECTIVE-C - part 3

4.  Class, objects, method cơ bản

a. Class:


-          File .h (Header File) là file quản lý các khai báo liên quan, cung cấp cho chúng ta cái nhìn về mặt tổng quan của code. Về lớp, loại, chức năng, khai báo hằng số, thuộc tính
-           File .m (Source File ) là file mở rộng được thừa kế từ header file, chứa nội dung chính bao gồm code ojective-C
* File .h (Header File)
@interface SimpleClass : NSObject
@end

-          Tại lớp này chúng ta khai báo lớp có tên là SimpleClass, được kế thừa NSObject.
@interface Person : NSObject
@property NSString *firstName;
@property NSString *lastName;
@end

-          Đối tượng Person có 2 thuộc tính : firstName, lastName đều là biến con trỏ (*) thuộc kiểu chuỗi NSString, kết thúc dòng code bằng dấu (;). Lớp Person thêm 1 thuộc tính mới yearOfBirth là chữ số
@end
@property NSNumber *yearOfBirth;
//Or
@property int yearOfBirth;

* File .m (Source File )
-          Chúng ta có file XYZPerson.h
@interface XYZPerson : NSObject
@property (readonly) NSString *firstName;
@property (readonly) NSString *lastName;
- (void)sayHello;
@end

-          Class kế thừa class “XYZPerson.h”
#import "XYZPerson.h"
@implementation XYZPerson
- (void)sayHello {
NSLog(@"Hello, World!");
}
@end

b. Method
Hàm cơ bản
-          Hàm trong C:
void SomeFunction();
-          Hàm trong Objective-C
- (void)someMethod;

- (void)someMethod {
NSString *myString = // get a string from somewhere...
}

Hàm có tham số truyền vào
-          Hàm trong C:
void SomeFunction(SomeType value);

-          Hàm trong Objective-C
- (void)someMethodWithValue:(SomeType)value;

- (void)someMethodWithValue:( NSString *)value {
NSLog(@"%@",value);
}

-          Tương tự với nhiều tham số
- (void)someMethodWithFirstValue:(SomeType)value1 secondValue:(AnotherType)value2;

Hàm số trả về
-          Trong C
int magicNumber {
return 42;
}

-          Trong Objective-C
- (int) magicNumber {
return 42;
}

-          Hàm gọi nhau trong cùng class
@implementation XYZPerson
- (void)sayHello {
[self saySomething:@"Hello, world!"];
}
- (void)saySomething:(NSString *)greeting {
NSLog(@"%@", greeting);
}
@end

c. Object
-          Khởi tạo object mới
NSString* myString = [NSString string];
NSString* myString = [[NSString alloc] init];
NSNumber* value = [[NSNumber alloc] initWithFloat:1.0];
// string1 will be released automatically
NSString* string1 = [NSString string];
// must release this when done
NSString *someString = @"Hello, World!";
NSString *someString = [NSString stringWithCString:"Hello, World!"
encoding:NSUTF8StringEncoding];
NSString* string2 = [[NSString alloc] init];
[string2 release];

-        Tạo đối tượng động:
-       hàm này trả về là id, đây là từ khóa đặc biết trong Objective-C (http://developer.apple.com định nghĩa là “some kind of object”). Theo tôi hiểu rằng đây là 1 dạng đối tượng đặc biệt giống với NSObject * nhưng nó không có dấu *
+ (id)alloc;
//or
- (id)init;

-          alloc (xem phần 7 – quản lý bộ nhớ) : nó gọi tới hàm init
NSObject *newObject = [[NSObject alloc] init];
tài liệu tham khảo

Thứ Ba, 25 tháng 6, 2013

Giới thiệu về Xcode - part 3

3.     Debug trong Xcode

-       Sau khi viết 1 ng dng demo đơn gin như sau :

-       Bước 1 bn chn 1 dòng code mà bn mun bt đu debug
-       Bước 2 nhp chut vào run button
-       Bước 3 nhp các nút đthc hin thao tác debug, ý nghĩa thtcác button ttrái sang :
+ n khu vc debug
+ dng thao tác debug khi đang chy
+ step over : đi ngang qua các method
+ step into : đi sâu vào tng method
+ step out : kết thúc quá trình debug
- chy theo tng dòng code đến bước 4
-       Bước 4 hin thkết qu log trên console và giá trca các biến mà debug đi ngang qua, nếu chưa kết thúc debug thì quay li bước 3.

4.     Emulator

-       ứng dụng IOS Simulator, đã có sẵn trong Xcode, nó trình bày các giao diện người dùng iPhone hoặc iPad trong một cửa sổ trên máy tính MacIOS của bạn. Bạn tương tác với iOS Simulator bằng cách sử dụng bàn phím và chuột để sử dụng các thao tác lập.
-       Chương trình này giúp cho bạn có thể dễ dàng thao tác hành động của người trên ứng dụng Iphone một cách giả lập không nhất thiết phải chạy trên Iphone thật.
-       Có hai cách khác nhau để truy cập iOS Simulator thông qua Xcode:
+ Cách thứ nhất là để chạy ứng dụng của bạn trong IOS Simulator.
+ Cách thứ hai là để khởi động IOS Simulator mà không cần chạy một ứng dụng.

-       Khi chạy một ứng dụng trong IOS Simulator, tự động khởi động và chạy ứng dụng của bạn trong IOS Simulator trực tiếp từ dự án Xcode của bạn.

Thứ Hai, 24 tháng 6, 2013

Giới thiệu về Xcode - part 2

2.     Các vùng trên Xcode


-       Có 4 khu vực chính: navigator, editor, debug, utility
-       Giữa các khu vực có thanh ranh giới có thể điều chỉnh kích thước của các vùng khi di chuyển con trỏ lên nó.
-       Ngoài ra bạn có thể ẩn và hiển thị cáckhu vực thông qua “View” ở góc phải
      + hiển thị / ẩn khu vực navigator
+ hiển thị / ẩn khu vực debug
+ hiển thị / ẩn khu vực utility
a.    Khu vực navigator (navigator area)
-       Tại khu vực này bạn sẽ thấy tất cả các file liên quan đến dự án của bạn.
-       Bạn có thể file mới trong dự án của bạn bằng cách nhấp chuột phải vào project hoặc bạn có thể kéo thả các file bạn muốn thêm từ máy tính vào.

-       Dễ dàng tìm kiếm các từ khóa hay đoạn văn bản trong dự án
 -       Project có lỗi hoặc cảnh báo sẽ xuất hiện tại khu vực này
+ màu vàng (warnings) lỗi tiềm năng
+ màu đỏ (error) lỗi
-       Nhấp chuột vào lỗi đấy nó sẽ đưa bạn tới tập tin và dòng code lỗi
 b.    Khu vực editor (editor area)
 -       khu vực editor là khu vực quan trọng nhất, bạn sẽ code tại khu vực này, và tất nhiên sẽ giành nhiều thời gian nhất cho nó.
 -       2 button (next) và prep quay lại màn hình trước đó hoặc sau đó bạn đã xem
-       có 3 chế độ hiển thị màn hình editor tại góc phải màn hình :
+ hình bên trái Standard: hiển thị toàn màn hình editor
+ hình chính giữa Assistant: hiển thị 2 màn hình editor, màn hình bên phải hiển thị màn code liên quan đến màn hình chính. Ví dụ như tại màn hình chính file.h -> màn hình phụ là file.m hoặc ngược lại
+ hình bên phải Version: compare file trong cùng 1 version

 -       Jump Bar :đây là 1 cách để mở file nhanh chóng với thanh menu với sơ đồ phân cấp


c.    Khu vực utility (Uility area)
-       Khu vực ultily chia làm 2 phần :
+ phần trên là phần thông tin chi tiết của đối tượng được chọn. ví dụ như đối tượng trong file .xib là thuộc tính của đối tượng được chọn.
+ phần dưới là cửa sổ thư viện. Các đối tượng sử dụng trong file .xib.

 d.    Khuvực debug (debug area)
-       Tại khu vực debug này sẽ cho bạn thấy được nội dung log trên console và giá trị của các biến khi bạn chạy chương trình.

e.    Thanh Toolbar

-       Run button : build và chạy chương trình của dự án bạn. gồm các chế độ : run, test, phân tích, profile.
-       Stop button :dừng chạy chương trình
-       Thông tin về dự án cần run và thông tin về thiết bị dự án sẽ chạy trên nền thiết bị đó.