MỤC LỤC
LỜI CẢM ƠN ..................................................................................................................1
NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN .........................................................1
Chương I .Tìm hiểu SWIFT .........................................................................................1
1.1 Giới thiệu swift ......................................................................................................... 1
1.2 Cấu trúc của một chương trình Swift .................................................................... 2
1.3 Cú pháp Swift .......................................................................................................... 3
1.4 Biến và khai báo ....................................................................................................... 6
1.5 Các kiểu dữ liệu thường dùng ................................................................................ 8
1.6 Câu lệnh rẽ nhánh ................................................................................................... 9
1.7 Các loại vòng lặp .................................................................................................... 12
1.8 Hàm trong swift ..................................................................................................... 13
1.9 Mảng trong swift.................................................................................................... 16
1.10 Class &Struct . Lập trình hướng đối tượng Swift ............................................ 16
Chương II: So sánh C/C++ vs SWIFT.......................................................................19
Chương III. Ứng dụng demo ......................................................................................22
Chương I .Tìm hiểu SWIFT
1.1 Giới thiệu swift
Swift là ngôn ngữ lập trình mới được phát triển bởi Apple Inc. với mục đích hỗ trợ lập
trình viên trong việc phát triển các ứng dụng chạy trên các hệ điều hành như iOS, OSX
và watchOS. Swift được xây dựng dựa trên việc kế thừa các tính năng của 2 ngôn ngữ
C và Objective-C.
Hình 1.1 1
•
Swift có đầy đủ sức mạnh và những cải tiến của một ngôn ngữ lập trình hiện đại
để có thể thay thế Objective-C (vốn đã già cỗi, khó sử dụng và khó học) phát
triển các ứng dụng cho iOS, macOS, watchOS và tvOS.
•
Swift còn được trang bị một tính năng khá hay, đó là Swift Playground. Đây là
tính năng giúp chúng ta có thể xem nhanh kết quả thực theo thời gian thực mà
không cần phải build hoặc run project.
1
•
Hình 1.1 2
1.2 Cấu trúc của một chương trình Swift
Hình 1.1 3
Một dòng lệnh hoặc biểu thức không nằm trong hàm , khối lệnh hoặc một class nghĩa
là nó nằm ở Top Lever
2
Bạn không thể viết biểu thức Top Lever là không hợp lệ , trừ khi bạn làm việc cho file
nguồn có tên là main.swift
Trừ khi bạn làm việc đó có file nguồn có tên là main.swift(Đây là trường hợp ngoại
lệ)
Điểm bắt đầu của một chương trình Swift
•
Trong một chương trình Swift file main.swift là một file đặc biệt, vì nó chính là
điểm bắt đầu để chạy chương trình . Bạn có thể gọi hàm hoặc viết biểu thức
ở Top-Level trên file nguồn main.swift, đó là
một ngoại lệ dành riêng cho
file này.
•
Tạo ra một file nguồn mới có tên newfile.swift, bạn sẽ thấy một thông báo lỗi
khi tôi cố tình viết một biểu thức ở Top-Level.
•
Hình 1.1 4
1.3 Cú pháp Swift
•
Chúng ta bắt đầu tìm hiểu cú pháp swift cơ bản bằng chương trình hiển thị
chuỗi “Hello World!”. Chương trình được tạo cho OS X playground, trong đó
bao gồm câu lệnh import Foundation như dưới đây
3
Hình 1.1 5
•
Cú pháp swift cơ bản – Import in Swift
Comments là những chuỗi chú thích trong chương trình của bạn và chúng được
bỏ qua bởi trình biên dịch.
Nếu chú thích trên một dòng sẽ bắt đầu với //
Hình 1.1 6
Nếu có nhiều dòng chú thích sẽ bắt đầu với /* và kết thúc với */
Hình 1.1 7
4
Cú pháp swift cơ bản – Dấu chấm phẩy (Semicolons)
•
Swift không yêu cầu bạn phải viết một dấu chấm phẩy (;) sau mỗi câu lệnh
trong code. Vì vậy việc sử dụng (;) là không bắt buộc.
•
Nhưng nếu bạn sử dụng nhiều câu lệnh trên cùng một dòng thì bạn phải sử
dụng (;) ở cuối mỗi câu lệnh nếu không trình biên dịch sẽ thông báo lỗi cú
pháp. Bạn có thể viết lại chương trình hiển thị chuỗi “Hello World!” như sau
•
Hình 1.1 8
Cú pháp swift cơ bản – Định danh (Identifiers)
•
Một định danh trong Swift là một cái tên dùng để xác định một biến (variable),
một hàm (function), … Một định danh bắt đầu bằng chữ cái từ A đến Z hoặc từ
a đến z hoặc một gạch dưới (_) và tiếp theo là không hoặc nhiều chữ cái hoặc
chữ số (0-9).
•
Swift không cho phép các ký tự như @, $, và % trong định danh. Swift là ngôn
ngữ phân biệt hoa thường. Vì vậy việc khai báo name và Name là hoàn toàn
khác nhau. Dưới đây là một số ví dụ về định danh hợp lệ
•
•
Cú pháp swift cơ bản – Từ khoá (Keywords)
Các từ khóa sau đây được dành riêng trong Swift. Những từ khoá không thể
sử dụng để khai báo biến, khai báo hằng, … trừ khi chúng được đặt trong cặp
dấu nháy đơn ‘ ‘.
5
•
Danh sách từ khoá sử dụng trong khai báo
Danh sách từ khoá sử dụng trong câu lệnh
Cú pháp swift cơ bản – Tổng kết
•
Câu lệnh import
•
Chú thích
•
Kết thúc một lệnh
•
Định danh
•
Danh sách từ khoá
•
Literals
1.4 Biến và khai báo
6
Hình 1.1 9
Ví dụ :
Hằng số và khai báo hằng số
Ví dụ
7
1.5 Các kiểu dữ liệu thường dùng
Type
Typical Bit Width
Typical Range
Int8
1byte
-127 to 127
UInt8
1byte
0 to 255
Int32
4bytes
-2147483648 t
UInt32
4bytes
0 to 429496729
Int64
8bytes
UInt64
8bytes
0 to 184467440
Float
4bytes
1.2E-38 to 3.4E
Double
8bytes
2.3E-308 to 1.7
-922337203685
922337203685
-Câu lệnh rẽ nhánh
8
Cấu trúc rẽ nhánh trong swift – Câu lệnh if
1.6 Câu lệnh rẽ nhánh
•
Cấu trúc rẻ nhánh trong swift – Câu lệnh if…else (If…Else Statement)
9
•
Một câu lệnh if có thể theo sau nó là câu lệnh else (điều này không bắt buộc) và
khối lệnh trong câu lệnh else sẽ được thực thi khi biểu thức điều kiện là sai
(false)
Cấu trúc rẻ nhánh trong swift – Câu lệnh if lồng nhau (Nested If
Statements)
Có nghĩa là bạn có thể sử dụng một câu lệnh if hoặc câu lệnh else if và bên trong chứa
một hoặc nhiều câu lệnh if hoặc else if khác.
Ví dụ :
10
Cấu trúc rẻ nhánh trong swift – Toán tử ? (The ? : Operator)
•
Chúng ta có thể sử dụng toán tử ? để thay cho câu lệnh if…else, sau đây là cú
pháp
Các loại vòng lặp
•
Vòng lặp trong swift – Vòng lặp for (For Loop)
•
Một vòng lặp for là một cấu trúc điều khiển lặp lại cho phép bạn chỉ định
số lần lặp cụ thể
Init là biểu thức khởi tạo
Condition là biểu thức điều kiện
Sau khi thực hiện khối lệnh bên trong thì nó sẽ xác định lại và nếu nó đúng thì nó thực
hiện
11
1.7 Các loại vòng lặp
•
Vòng lặp for bình thường
Vòng lặp trong swift – Vòng lặp repeat…while (Do…while Loop)
12
• Vòng lặp trong swift – Những câu lệnh điều khiển vòng lặp
(Loop Control Statements)
•
Câu lệnh continue (Continue Statement): Câu lệnh này sẽ thông báo với vòng
lặp không thực hiện những xử lý hiện tại và tiếp tục vòng lặp với xử lý tiếp theo
•
1.8 Hàm trong swift
Hàm trong swift là một tập hợp các câu lệnh được tổ chức với nhau để thực hiện một
công việc cụ thể. Giống như các ngôn ngữ lập trình khác, hàm trong swift có 2 thành
phần là khai báo hàm (Function Declaration) và định nghĩa hàm (Function Definition).
13
• Gọi hàm trong swift
• Hàm với các tham số (Functions with Parameters)
Hàm có thể có nhiều tham số đầu vào, chúng được viết bên trong cặp dấu ngoặc đơn
và được phân cách bởi dấu phẩy.
Ví dụ khai báo và định nghĩa hàm add() có 2 tham số n1, n2 kiểu số nguyên (integer)
và trả về kiểu integer. Khi bạn gọi hàm có nhiều hơn một tham số, những tham số thứ
2 trở đi phải được gán nhãn theo tên tham số tương ứng.
•
Hàm có nhiều giá trị trả về (Functions with return values)
14
• Hàm trong swift – Khai báo tham số In-Out (In-Out
Parameters)
15
1.9 Mảng trong swift
Mảng trong swift được sử dụng để lưu trữ danh sách các giá trị có
cùng kiểu dữ liệu. Nếu bạn khai báo một mảng theo dạng biến, điều
đó có nghĩa là bạn có thể thay đổi nó như thêm, xoá, hoặc thay đổi giá
trị của các phần tử trong mảng. Nhưng nếu bạn khai báo mảng theo
dạng hằng số, thì mảng này không thể thay đổi.
1.10 Class &Struct . Lập trình hướng đối tượng Swift
•
Class trong swift – Cú pháp
16
Class trong swift – Ví dụ
Class trong swift – Cú pháp tạo đối tượng (instance)
Class trong swift – Truy cập thuộc tính (Accessing Class
Properties)
17
• Cú pháp
Class trong swift – Cú pháp tạo đối tượng (instance)
18
Class trong swift – Truy cập thuộc tính (Accessing Class
Properties)
•
Cú pháp
Chương II: So sánh C/C++ vs SWIFT
•
CÂU ĐIỀU KIỆN
19
Swift cho phép loại bỏ dấu ngoặc đơn, C ++ yêu cầu chúng
•
CHUYỂN BÁO CÁO
Hành vi mặc định khác nhau giữa các ngôn ngữ. Vào cuối của một tuyên bố
trường hợp, Swift có một ngắt tự động trong khi C ++ rơi vào trường hợp tiếp
theo.
Fallthrough từ khóa được sử dụng để rơi vào một trường hợp trong Swift. Trong C
++, loại bỏ sự phá vỡ gây ra sự sụp đổ
20
•
Swift cho phép chuyển đổi trên Chuỗi, C ++ không
•
Swift cho phép các trường hợp phạm vi. C ++ sử dụng thông qua mặc định để
thực hiện chức năng tương tự
21
•
Xử lí lỗi
•
•
Việc xử lí lỗi của Swift nhanh hơn C++ nhiều
•
Tốc độ
•
Tốc độ Swift nhanh hơn C++
Chương III. Ứng dụng demo
Phần mềm thư viện ảnh đơn giản
22
Hình 3.1 1
Tài liệu tham khảo :
Tìm hiểu về ios : />
Học lập trình ios trong 24h : />
23