Bài 1. Nhập môn Xcode và Objective-C

NHẬP MÔN Objective-C
Xin chào tất cả các bạn.​
Lập trình cho MacOS và iOS chưa lâu, nhưng nhận thấy cần góp phần vào việc chia sẻ kiến thức đã có được cho những bạn đang đam mê Hệ điều hành, ngôn ngữ và cả về những thiết bị của Apple.​
Với kiến thức cơ bản, mình mạnh dạn chia sẻ với các bạn. Mong rằng các anh, chị, em đã có kinh nghiệm, chia sẻ thêm để iOS Applications và MacOS Applications Việt Nam trên Apple ngày càng có danh tiếng.​

1. Trong hướng dẫn này có một số thuật ngữ (hoặc thông tin) mà bạn chưa hiểu, hãy cứ ghi nhớ và sau này sẽ dùng đến. Ví dụ như ID, Tên công ty, .. Vì những thông tin này liên quan đến việc bạn cần phải có tài khoản iOS Developer hoặc MacOS Developer.​
Mở đầu là việc làm quen với Objective-C.
2. Objective-C là ngôn ngữ được Apple phát triển từ C và có tính hướng đối tượng. Tính hướng đối tượng là gì thì chúng ta sẽ tìm hiểu sau.​
Mình không thiên về việc giải thích nhiều ý nghĩa cũng như định nghĩa làm gì. Quan trọng là mình làm được việc, hiểu được ngôn ngữ và lập trình một cách độc lập hoặc theo nhóm hoàn hảo.
3. Để bắt đầu học về một ngôn ngữ lập trình, chúng ta cần học về cách khai báo biến, các loại kiểu dữ liệu cơ bản, cách code và build & run ứng dụng đầu tiên.​
4. Để bắt đầu, bạn cần phải sử dụng hệ điều hành Mac OS (trên máy Mac hoặc Hackintosh) và dĩ nhiên là phải cài ứng dụng Xcode (do Apple phát triển và cung cấp miễn phí). Để nhận dạng ứng dụng Xcode thì bạn nhìn vào hình nhé!​
[​IMG]
5. Mở Xcode lên -> New Project -> Chọn Single View Application -> Trong cửa sổ mới hiện ra, bạn để ý vào những thông tin sau:​
- Product Name (Tên ứng dụng, có thể viết chữ hoa, chữ thường, chữ Trung Quốc, Nhật Bản, ... thoải mái)​
- Organization Name (Tên công ty, nếu bạn là cá nhân, có thể để tên bạn)​
- Company Identifier (Mã chứng thực công ty, hoặc có thể là cá nhân. Vì đây là bài Test đầu tiên, cho nên chỗ này, bạn có thể điền là "com.education")​
- Class Prefix (Tiền tố đứng trước tên của Class, bạn có thể điền hoặc không, nếu tò mò, bạn hãy thử và xem có gì thay đổi hay không sau khi đọc và thực hành xong bài này)​
- Devices (Thiết bị mà bạn lập trình ứng dụng, Universal nghĩa là cả 2 thiết bị iPhone và iPad, ở đây bạn chọn iPhone nhé, vì sao, để bạn build cho dễ dàng, và gọn màn hình, không cần cuộn chuột để xem nội dung, và bài viết này yêu cầu cũng rất đơn giản)​
- Cuối cùng ở 3 dấu tích, bạn chọn Use Storyboards và Use Automatic Reference Counting nhé.​
- Cuối cùng là Next, chọn nơi lưu Project này.​
[​IMG]
[​IMG]
[​IMG]
6. Đã xuất hiện cửa sổ dành cho bạn lập trình chưa? Nếu chưa hoặc có lỗi gì thì bạn đọc kỹ lại hướng dẫn 5 nhé.​
Lúc này, cửa sổ Xcode sẽ trình bày Project cho bạn thiết kế giao diện và lập trình.​
Bắt đầu thôi
7. Click chuột vào MainStoryboard.storyboard, bạn sẽ thấy một hình tương tự như màn hình iPhone. Tên của nó là ViewController và sau này mình sẽ gọi đó là View (nghĩa là đó là 1 màn hình trong ứng dụng của bạn, ứng dụng có thể có 1 hoặc nhiều View nhé).​
Lại bấm tiếp vào "ViewController.m" bạn sẽ thấy toàn chữ, đó là nơi bạn viết code.​
8. Mình giải thích một chút:
- Storyboard: đó là nơi bạn thiết kế giao diện (Button, TextField, Switch, Map, WebView, ...)​
ViewController.h và ViewController.m (h viết tắt của Header, m viết tắt của Main, bạn tự hiểu nhé): 2 file này là nơi mà bạn sẽ viết code.​
- 3 file này liên kết với nhau như thế nào? Khi bạn thiết kế xong giao diện trong Storyboard, bạn ánh xạ các đối tượng từ Storyboard sang file h, file m sẽ triệu gọi và làm việc với các đối tượng mà bạn đã ánh xạ (hoặc khai báo) khi cần.​
9. Bắt đầu đoạn code đơn giản nhất nhé.​
Bạn click vào file m. Mình phân tích sơ về file này cho bạn hiểu.​
(void)viewDidLoad: đây là 1 hàm, bây giờ, hàm này sẽ chạy đầu tiên khi ứng dụng vừa được mở lên (mở lên chứ không phải là gọi nó từ TaskBar trên thiết bị nhé. Sau này bạn sẽ phân biệt 2 điều này). Nội dung trong hàm này sẽ được chạy lần lượt từ trên xuống dưới, tính từ dấu { đầu tiên đến dấu }cuối cùng.​
- Thế thôi, bài này quan tâm mỗi 1 cái đó. hi hi​
10. Đề bài hôm nay là: "Viết ứng dụng đơn giản, cộng hai số nguyên cho trước. Sau đó in ra cửa sổ Log kết quả tính được."​
11. Phân tích (tại sao có bước này, mình viết chủ yếu cho những bạn chưa học lập trình, hoặc mới bắt đầu học lập trình, cho nên các anh, chị đừng trách dài dòng nhé, mình kỹ càng cho các bạn ấy mà). Bài toán sẽ cần phải có 2 số nguyên, sau đó sẽ có 1 "biến" lưu kết quả và cuối cùng sẽ có 1 hàm dùng để xuất kết quả tra cửa sổ Log.​
12. Trong ViewDidLoad, bạn bắt đầu gõ vào như sau: (dưới dòng [super viewDidLoad];)​
int soA = 1;​
int soB = 2;​
int Tong = soA + soB;​
NSLog(@"%i", Tong);​
[​IMG]
Giải thích:​
int soA: khai báo một biến có tên là soA và có kiểu là int (integer - số nguyên).​
Toán tử = sau khi khai báo làm nhiệm vụ gán giá trị 1 cho soA mới khai báo.​
Lúc này biến soA có giá trị 1.​
int soB: khai báo một biến có tên là soB và có kiểu là int (integer - số nguyên).​
Toán tử = sau khi khai báo làm nhiệm vụ gán giá trị 2 cho soB mới khai báo.​
Lúc này biến soB có giá trị 2.​
int Tong = soA + soB
Toán tử = gán tổng của soA và soB cho biến Tong vừa được khai báo với kiểu int.​
NSLog: là hàm cho phép xuất một chuỗi (hiện tại, với đề bài này, bạn hiểu như vậy) ra cửa sổ Log.​
Trong này có những điều cần lưu ý. @"" là các ký tự bắt buộc phải có với hàm này. Nội dung cần xuất ra nằm trong dấu "". Trong dấu này mình để %i, nghĩa là mình lấy giá trị từ biến Tong sau dấu phẩy và thay thế vào chỗ có dấu %i. Tại sao lại là %i, dấu % là bắt buộc và chữ i nghĩa là viết tắt cho integer, xuất một số nguyên đấy bạn ạ.​
Bây giờ bạn đã hiểu cách để khai báo biến có kiểu integer, cách gán giá trị cho biến, cách sử dụng toán tử = và toán tử +, ngoài ra còn biết hàm nào xuất giá trị ra của sổ Log.​
13. Bây giờ Build & Run (chạy ứng dụng).​
Để chạy ứng dụng, bạn bấm tổ hợp phím Command + R, (R là viết tắt của từ Run đó bạn) hoặc bạn bấm vào dấu mũi tên ở trên thanh công cụ, ngoài cùng bên trái và chắc chắn rằng ở Scheme bạn chọn iOS Simulator nhé. Thoáng một cái bạn sẽ thấy kết quả như hình.​
[​IMG]
14. Chạy xong rồi, đến lúc này là lúc bạn sáng tạo. Bạn chỉ thấy mỗi dòng tương tự như thế này:​
2012-10-13 22:52:15.132 Test - 1[1025:c07] 3​
Nghĩa là kết quả của bạn chỉ hiện ra là 3 đấy.​
Bạn hãy sáng tạo bằng cách thay đổi trong hàm Log như thế này:​
NSLog(@"Tong bang: %i", Tong);​
Xem thử ra cái gì nhé.​
15. Bây giờ đã hiểu cơ bản rồi, mình sẽ cung cấp cho bạn những kiến thức bổ ích sau:​
- Các toán tử: - + * / % =​
- Các kiểu dữ liệu: int (số nguyên), float (số thực)​
16. Bài tập cho các bạn thư giãn:​
a. Viết ứng dụng tính tổng của 2 số thực cho trước.​
b. Cho trước 2 số thực khác 0, tính và xuất ra cửa sổ Log Tổng, Hiệu, Tích, Thương của 2 số đó một cách lần lượt. (Nghĩa là: a-b, b-a, a+b, b+a, ... bạn tự loại trừ phép tính trùng nhé)​
c. Cho trước 10 số nguyên, sắp xếp cơ bản và xuất ra cửa sổ Log các số nguyên đó theo thứ tự lớn dần và bé dần, mỗi số cách nhau bằng dấu sao (*).​
17. Ký tự thay thế cho kiểu float là %f nhé bạn.​
​Nguồn: Bài viết được biên soạn từ tinhte.vn

Tags:

Share:

0 Nhận xét

Categories

. . . 1 [English | DVD] Trọn Bộ DVD Effortless English 3 Ajax 1 Andengine 3 Android 41 Android Studio Cài đặt và phím tắt thông dụng 1 API 1 App Android 1 Applicaiton Chat Multi Client 1 ASP.NET 9 Bài tập lập trình C/C++ có lời giải 1 Bài tập thuật toán C/C++ Và Tuyển tập đề thi olympic 2 Bắt đầu Học Lập Trình 4 Blogger 2 C/C++ 16 C# 21 Câu hỏi phỏng vấn Android 1 Cocos2d-JS 3 Cocos2d-x 3 Code game android 3 Công Cụ Lập Trình 13 Công nghệ 3 Cosos2d 1 CSS 1 Cuộc sống 15 Custom Button trong Android 2 Design Patterns 3 DevExpress 1 Đồ Án 1 DOREMON - NOBITA 2 Dự án 1 Ebook Android 1 English 8 Example Custom Android 1 facebook 1 Fedora 2 Freelancer 1 Game Android 4 Game Android AndEngine 1 Giới thiệu về Ajax 1 Hiệu ứng lắc trong android 1 Hướng dẫn cài đặt Mac OS trên VMware 1 Hướng dẫn download tài liệu miễn phí của website tailieu.vn 1 Hướng dẫn lập trình android 11 Hướng dẫn lập trình Windows Phone 3 Hướng đối tượng 2 Internet được khôi phục 1 Internet of Things 1 iOS 33 Java 9 Kiểm thử phần mềm 1 Kinh nghiệm lập trình 17 Kỹ Năng 1 Lập trình Android FPT Software Training 1 Lập Trình Game Đa Nền Tảng 2 Lập trình game mobile 2 Lập trình iOS FPT Software Training 1 Lập trình mạng 2 LẬP TRÌNH VIÊN CHUYÊN NGHIỆP TRÊN THIẾT BỊ DI ĐỘNG 2 Laptop 1 Libgdx 1 LinQ 3 Linux 6 Load CSDL SQL server ASP.NET 1 Lỗi Eclipse Ctr + Space 1 Mạng Xã Hôi 1 máy thật PC 1 Mbook TIN HỌC A 1 Mbook TIN HỌC B 1 mỗi bài 20 câu 1 NGAN-HANG-DE-THI-TRAC-NGHIEM-ASP.NET 1 Nguyên tắc ngón tay cái trong thiết kế ứng dụng cho điện thoại 1 Nhập môn lập trình C 14 Những câu hỏi phỏng vấn "xương" nhất 1 Những điểm mới kỳ thi THPT quốc gia 2015 1 Object C 1 Phần mềm 3 PHP 2 Phương pháp luyện thi TOEIC 1 Python 2 Review Game 1 SEO 4 Share Acc Fshare 1 Share VIP Miễn phí 1 Sinh viên mới tốt nghiệp – viết gì trong CV 1 Socket Android Client to PC Server C# 2 Socket Chat nhiều Client với server C# 2 Source code 4 Source code game C# 1 Source code game iOS 2 T3H-KHTN 7 Tài Liệu Android 7 Tài Liệu C# 4 Tài liệu hướng dẫn lập trình game với cocos2d-x 1 Tài Liệu iOS 7 Tài Liệu IT 3 Tài Liệu Java 2 Tài liệu Lập trình iOS Tiếng Việt đầy đủ TTTH đại học khoa học tự nhiên 1 Tài Liệu PHP 1 TÀI LIỆU THIẾT KẾ SỐ 1 Tài Liệu Windows Phone 1 Tạo Group Mail Google 1 Tạo hiệu ứng trong lập trình iOS 1 Tạo tên CoCaCoLa 1 Thắc mắc C/C++ 3 THẬP PHÂN sang NHỊ PHÂN không sử dụng MẢNG 1 Thiết kế giao diện Android - App Calculation Android Studio 1 Thiết kế giao diện phần mềm 1 Thuật ngữ cơ bản trong lập trình game AndEngine 1 Thuật toán 5 Thuật toán điều phối FCFS 1 Tiếng Anh 2 Tin Tức 1 Toàn bộ tài liệu ĐTVT 5 năm học 1 Tổng hợp những nơi người lái xe hay bị mắc lỗi tại TPHCM 1 Tutorials Android 2 Tuyến cáp quang AAG đã sửa xong 1 Unity 1 Vim 1 Visual Studyo 2013 1 WEB 1 Website nén JS và CSS tốt nhất 1 Websites Developer 2 Windows 10 Technical Preview 1 Windows Phone 5 WPF 1 XAMARIN 1 Xóa project appcompat_v 1