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
Trang 1MỤ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
Trang 2Chươ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
Trang 3•
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
Trang 4Bạ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
Trang 5
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 */
Trang 6
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 ‘ ‘
Trang 7• Danh sách từ khoá sử dụng trong khai báo
Trang 8Hình 1.1 9
Ví dụ :
Hằng số và khai báo hằng số
Ví dụ
Trang 91.5 Các kiểu dữ liệu thường dùng
-Câu lệnh rẽ nhánh
Trang 10Cấ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)
Trang 11• 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ụ :
Trang 12Cấ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
Trang 131.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)
Trang 14• 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)
Trang 15• 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
Trang 16• Hàm trong swift – Khai báo tham số In-Out (In-Out
Parameters)
Trang 171.10 Class &Struct Lập trình hướng đối tượng Swift
• Class trong swift – Cú pháp
Trang 18Class 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)
Trang 19• Cú pháp
Class trong swift – Cú pháp tạo đối tượng (instance)
Trang 20Class 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
Trang 21Swift 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 đổ
Trang 22• 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ự
Trang 23Tốc độ Swift nhanh hơn C++
Chương III Ứng dụng demo
Phần mềm thư viện ảnh đơn giản
Trang 24Hình 3.1 1
Tài liệu tham khảo :
Tìm hiểu về ios : https://vi.wikipedia.org/wiki/IOS
Học lập trình ios trong 24h : https://khoapham.vn/laptrinhios.html