Sân chơi mã c ++

Fiddle còn một số còn như điểm. Không hỗ trợ nhắc lệnh, chỉ cho phép sử dụng 1 thư viện (Trong jsfillde, với plunker hoặc jsbin ta có thể sử dụng nhiều thư viện), …. Tuy nhiên, dễ thấy như vậy với sự tiện lợi, nhanh chóng của chúng ta thì thiếu những điểm sau không hề quan trọng. Vui lòng sử dụng fiddle và giới thiệu bạn bè sử dụng nhé. Nếu cần hướng dẫn thì cứ link tới bài viết của mình này. Thân chào

Bây giờ bạn đã xác định được mọi thứ bạn cần để bắt đầu phát triển ứng dụng iOS, tôi sẽ trả lời một số câu hỏi phổ biến khác từ những người mới bắt đầu trước khi chuyển sang chủ đề mới. Có nhiều người đã hỏi tôi về những kỹ năng cần thiết để phát triển ứng dụng iOS. Chúng ta có thể tóm tắt qua ba lĩnh vực sau

  • Học Swift. Hiện tại Swift đang là ngôn ngữ lập trình được khuyến nghị sử dụng cho việc viết các ứng dụng iOS.  
  • Học Xcode. Xcode là công cụ phát triển để thiết kế giao diện người dùng ứng dụng, viết mã Swift và xây dựng ứng dụng.  
  • Hiểu bộ công cụ phát triển phần mềm iOS. Apple cung cấp bộ công cụ phát triển phần mềm cho các thành viên lập trình để làm cho cuộc sống của họ đơn giản dễ dàng hơn. Bộ công cụ này đi kèm với một bộ công cụ phần mềm và API cho phép bạn phát triển các ứng dụng iOS. Ví dụ, nếu bạn muốn hiển thị một trang web trong ứng dụng của mình thì SDK cung cấp một trình duyệt tích hợp cho phephép bạn nhúng ngay trang web đó vào ứng dụng của mình.  

Bạn cần phải trang bị cho mình những kiến ​​thức của ba lĩnh vực trên. Có rất nhiều thứ phải học, tuy nhiên bạn cũng không nên lo lắng quá. Bạn sẽ học những kỹ năng đó bằng cách đọc cuốn sách này thôi.  

Tôi sẽ bắt đầu bằng cách kể cho bạn một chút về lịch sử của Swift

Trong Hội nghị dành cho các nhà phát triển toàn cầu (Worldwide Developer Conference) năm 2014, Apple đã mang đến điều bất ngờ cho tất cả các nhà phát triển iOS bằng cách cho ra mắt một ngôn ngữ lập trình ngôn ngữ mới có tên là Swift. Swift được quảng cáo là ngôn ngữ thiết lập chương trình "nhanh, hiện đại, an toàn và các tính năng tương tác". Ngôn ngữ này dễ học hơn và đi kèm với các tính năng giúp quá trình thiết lập hiệu quả hơn.  

Trước khi thành lập Swift, các ứng dụng iOS đều được viết chủ yếu bằng Objective-C. Ngôn ngữ này đã tồn tại hơn 20 năm và được Apple chọn làm ngôn ngữ lập trình chủ yếu để phát triển Mac và iOS. Tôi đã được kể chuyện với rất nhiều nhà phát triển iOS đầy tham vọng. Phần lớn họ đều cho rằng Objective-C rất khó học và cú pháp của nó thì hơi lạ. Nói một cách đơn giản thì mã này khiến một số người mới bắt đầu sợ hãi khi học lập trình iOS.  

Việc phát hành ngôn ngữ lập trình ngôn ngữ Swift có thể là câu trả lời của Apple đối với những bình luận này. Cú pháp của Swift rõ ràng và dễ đọc hơn rất nhiều. Tôi đã lập trình bằng Swift kể từ lúc nó ra mắt bản beta tính đến nay cũng hơn 4 năm rồi và tôi có thể nói rằng bạn gần như chắc chắn sẽ làm việc hiệu quả hơn khi sử dụng Swift. Nó chắc chắn sẽ tăng tốc quá trình phát triển của bạn. Một khi bạn đã quen với việc lập trình bằng Swift thì rất khó để bạn quay lại sử dụng Objective-C.  

Đối với tôi Swift như thu hút nhiều nhà phát triển web hơn hoặc thậm chí là những người mới để xây dựng ứng dụng. Nếu bạn là một nhà phát triển web có một số kinh nghiệm lập trình trên bất kỳ ngôn ngữ kịch bản nào, bạn có thể tận dụng chuyên môn hiện có của mình để có thêm kiến ​​thức về việc phát triển các ứng dụng iOS. Điều này khá dễ dàng nếu bạn chọn Swift. Như đã nói, ngay cả khi bạn hoàn toàn là người mới bắt đầu không có kinh nghiệm lập trình trước đó, thì bạn vẫn sẽ tìm thấy ngôn ngữ thân thiện hơn và cảm thấy thoải mái hơn để phát triển ứng dụng với Swift.  

Tháng 6 năm 2015, Apple đã công bố Swift 2 và đây là một ngôn ngữ lập trình nguồn mở. This is a large event. Kể từ đây, các nhà phát triển đã tạo ra nhiều dự án nguồn mở thú vị và tuyệt vời khi sử dụng ngôn ngữ này. Không chỉ bạn mới có thể sử dụng Swift để phát triển các ứng dụng iOS mà các công ty như IBM đang viết các ứng dụng iOS.  

Học Xcode. Xcode là công cụ phát triển để thiết kế giao diện người dùng ứng dụng, viết mã Swift và xây dựng ứng dụng.  

Hiểu bộ công cụ phát triển phần mềm iOS. Apple cung cấp bộ công cụ phát triển phần mềm cho các thành viên lập trình để làm cho cuộc sống của họ đơn giản dễ dàng hơn. Bộ công cụ này đi kèm với một bộ công cụ phần mềm và API cho phép bạn phát triển các ứng dụng iOS. Ví dụ, nếu bạn muốn hiển thị một trang web trong ứng dụng của mình thì SDK cung cấp một trình duyệt tích hợp cho phephép bạn nhúng ngay trang web đó vào ứng dụng của mình.  

Bạn cần phải trang bị cho mình những kiến ​​thức của ba lĩnh vực trên. Có rất nhiều thứ phải học, tuy nhiên bạn cũng không nên lo lắng quá. Bạn sẽ học những kỹ năng đó bằng cách đọc cuốn sách này thôi.  

Tôi sẽ bắt đầu bằng cách kể cho bạn một chút về lịch sử của Swift

Trong Hội nghị dành cho các nhà phát triển toàn cầu (Worldwide Developer Conference) năm 2014, Apple đã mang đến điều bất ngờ cho tất cả các nhà phát triển iOS bằng cách cho ra mắt một ngôn ngữ lập trình ngôn ngữ mới có tên là Swift. Swift được quảng cáo là ngôn ngữ thiết lập chương trình "nhanh, hiện đại, an toàn và các tính năng tương tác". Ngôn ngữ này dễ học hơn và đi kèm với các tính năng giúp quá trình thiết lập hiệu quả hơn.  

Trước khi thành lập Swift, các ứng dụng iOS đều được viết chủ yếu bằng Objective-C. Ngôn ngữ này đã tồn tại hơn 20 năm và được Apple chọn làm ngôn ngữ lập trình chủ yếu để phát triển Mac và iOS. Tôi đã được kể chuyện với rất nhiều nhà phát triển iOS đầy tham vọng. Phần lớn họ đều cho rằng Objective-C rất khó học và cú pháp của nó thì hơi lạ. Nói một cách đơn giản thì mã này khiến một số người mới bắt đầu sợ hãi khi học lập trình iOS.  

Việc phát hành ngôn ngữ lập trình ngôn ngữ Swift có thể là câu trả lời của Apple đối với những bình luận này. Cú pháp của Swift rõ ràng và dễ đọc hơn rất nhiều. Tôi đã lập trình bằng Swift kể từ lúc nó ra mắt bản beta tính đến nay cũng hơn 4 năm rồi và tôi có thể nói rằng bạn gần như chắc chắn sẽ làm việc hiệu quả hơn khi sử dụng Swift. Nó chắc chắn sẽ tăng tốc quá trình phát triển của bạn. Một khi bạn đã quen với việc lập trình bằng Swift thì rất khó để bạn quay lại sử dụng Objective-C.  

Đối với tôi Swift như thu hút nhiều nhà phát triển web hơn hoặc thậm chí là những người mới để xây dựng ứng dụng. Nếu bạn là một nhà phát triển web có một số kinh nghiệm lập trình trên bất kỳ ngôn ngữ kịch bản nào, bạn có thể tận dụng chuyên môn hiện có của mình để có thêm kiến ​​thức về việc phát triển các ứng dụng iOS. Điều này khá dễ dàng nếu bạn chọn Swift. Như đã nói, ngay cả khi bạn hoàn toàn là người mới bắt đầu không có kinh nghiệm lập trình trước đó, thì bạn vẫn sẽ tìm thấy ngôn ngữ thân thiện hơn và cảm thấy thoải mái hơn để phát triển ứng dụng với Swift.  

Tháng 6 năm 2015, Apple đã công bố Swift 2 và đây là một ngôn ngữ lập trình nguồn mở. This is a large event. Kể từ đây, các nhà phát triển đã tạo ra nhiều dự án nguồn mở thú vị và tuyệt vời khi sử dụng ngôn ngữ này. Không chỉ bạn mới có thể sử dụng Swift để phát triển các ứng dụng iOS mà các công ty như IBM đã phát triển các khung web để tạo các ứng dụng web trong Swift. Bây giờ bạn cũng có thể chạy Swift trong Linux.  

Sau khi phát hành Swift 2, Apple đã giới thiệu Swift 3 vào tháng 6 năm 2016. Phiên bản tích hợp vào Xcode 8 của ngôn ngữ lập trình ngôn ngữ này đã được phát hành vào tháng 7 năm 2016. Đây được coi là một trong những lần công bố lớn nhất kể từ khi ra đời của ngôn ngữ này. Có rất nhiều thay đổi trong Swift 3. Các API đều được đổi tên và nhiều tính năng mới được giới thiệu. Tất cả những thay đổi này đều giúp cho ngôn ngữ này trở nên tốt hơn và giúp cho các nhà phát triển bài viết được nhiều đoạn code đẹp hơn. Có nghĩa là tất cả các nhà phát triển đều cần nhiều nỗ lực hơn để điều chỉnh những dự án của họ đối với sự thay đổi xung đột này.  

Tháng 6 năm 2017, Apple tiếp tục mang đến cho chúng ta Swift 4 cùng với việc phát hành Xcode 9 với nhiều cải tiến và nâng cấp hơn nữa. Phiên bản Swift này chú trọng vào khả năng tương thích ngược. Có nghĩa là các dự án lý tưởng được phát triển trên Swift 3 đều có thể chạy trên Xcode 9 mà không phải thay đổi bất cứ điều gì. Ngay cả khi bạn phải thực hiện các thay đổi, việc chuyển đổi từ Swift 3 sang 4 sẽ ít cồng kềnh hơn so với từ 2. 2 sang 3.  

Năm nay, Apple chỉ phát hành một bản cập nhật nhỏ của Swift, phiên bản số của Swift lên 4. 2. Tuy không phải là bản phát hành chính nhưng phiên bản này cũng đi kèm với rất nhiều tính năng ngôn ngữ để cải thiện năng suất và hiệu quả. Bạn có thể tự hỏi liệu Apple có đang làm chậm sự phát triển của Swift bằng cách phát triển một bản nâng cấp nhỏ này hay không. Thực ra, đây là một tin tốt dành cho các nhà phát triển đầy tham vọng. Nói cách khác, điều này có nghĩa là ngôn ngữ Swift đang dần trở nên ổn định và trưởng thành hơn.  

Nếu bạn là một người hoàn toàn mới, có thể bạn sẽ có hai câu hỏi trong đầu "Tại sao Swift vẫn tiếp tục thay đổi?"

Gần như tất cả các ngôn ngữ lập trình đều thay đổi theo thời gian. Swift cũng tương tự. Các tính năng ngôn ngữ mới được thêm vào Swift hằng năm giúp nó mạnh mẽ hơn và thân thiện với các nhà phát triển hơn. Cũng gần giống với những ngôn ngữ nói của chúng ta vậy. Xem nào, ví dụ đối với tiếng Anh, nó vẫn thay đổi theo thời gian. Các từ và cụm từ vựng như freemium đều được thêm vào từ điển mỗi năm.  

"Theo time all language are change, could because very much whole kernels. Tiếng Anh cũng không phải ngoại lệ"

Nguồn. https. //www. Anh. com/blog/ngôn-ngữ-anh-đã-thay-đổi/

Swift is going to going to development has no mean is it is not available for use. Thay vào đó, nếu bạn định xây dựng một ứng dụng iOS, bạn nên xây dựng nó trong Swift. Nó đã trở thành một tiêu chuẩn thực tế cho việc phát triển ứng dụng iOS. Những công ty như LinkedIn, Diolingo và Mozilla đã viết ứng dụng hoàn toàn bằng Swift từ những phiên bản đầu tiên. Kể từ khi ra mắt Swift 4, ngôn ngữ lập trình phát triển ổn định hơn, hoàn toàn sẵn sàng cho các doanh nghiệp và sử dụng sản xuất

Start up nhé

Dừng đó là đủ cho phần kiến ​​thức nền và lịch sử, bây giờ hãy bắt đầu với Swift nào.  

Để có cảm giác đầu tiên về ngôn ngữ lập trình Swift, hãy quan sát đoạn mã sau.  

Mục tiêu-C

const int count = 10;
double price = 23.55;

NSString *firstMessage = @"Swift is awesome. ";
NSString *secondMessage = @"What do you think?";
NSString *message = [NSString stringWithFormat:@"%@%@", firstMessage, secondMessage];

NSLog(@"%@", message);

Nhanh

let count = 10
var price = 23.55

let firstMessage = "Swift is awesome. "
let secondMessage = "What do you think?"
var message = firstMessage + secondMessage

print(message)

Đoạn mã đầu tiên được viết trong Ọective-C còn đoạn thứ hai được viết trong Swift. Bạn thích ngôn ngữ nào hơn? . Nó rõ ràng và dễ đọc hơn, không có ký hiệu @ và dấu chấm phẩy ở cuối mỗi câu. Hai câu dưới đây kết nối thông điệp thứ nhất và thứ hai với nhau, tôi tin là bạn có thể đoán được ý nghĩa của mã đoạn Swift dưới đây

var message = firstMessage + secondMessage

nhưng lại hơi khó hiểu khi đọc đoạn code Objective-C dưới đây

but find it a bit confusing for the Objective-C code below:

Test Swift trong Playgrounds

Tôi không muốn làm bạn cảm thấy nhạt nhòa khi chỉ viết các đoạn mã. Không có cách khám phá việc viết mã nào tốt hơn bằng việc bạn thực sự viết mã. Xcode có một tính năng hợp nhất tên là Playgrounds. Đây là một môi trường phát triển tương tác để các nhà phát triển thử nghiệm lập trình Swift và cho phép bạn xem mã kết quả của mình trong thời gian thực. Bạn sẽ hiểu ý kiến ​​của tôi và cách Swift Playgrounds hoạt động trong thời gian nữa.  

Giả sử bạn đã cài đặt Xcode 10 (hoặc trên), khởi động ứng dụng (bằng cách nhấp vào biểu tượng Xcode trong Launchpad), bạn sẽ thấy một hộp thoại khởi động.  

Sân chơi mã c ++
Hộp thoại khởi động

Sân chơi là một loại tệp Xcode đặc biệt. Để bắt đầu, hãy nhấp vào "Bắt đầu với sân chơi". Bạn sẽ được nhắc chọn một mẫu cho sân chơi của mình. Vì chúng ta đang khám phá tập trung Swift trong môi trường iOS nên hãy chọn Blank bên dưới phần iOS để bắt đầu tập tin trống. Click vào Next để bắt đầu.  

Sân chơi mã c ++
Tạo một sân chơi tệp

Khi bạn xác nhận đã nhận tệp đã lưu, Xcode sẽ mở giao diện người dùng Playground. Màn hình của bạn sẽ hiển thị như thế này

Sân chơi mã c ++

Trên khung bên trái màn hình là khu vực thảo luận nơi bạn có thể nhập mã. Khi bạn muốn thử mã của mình và xem nó hoạt động ra sao, hãy nhấn nút Play. Playground sẽ ngay lập tức khởi động đoạn mã giải đoạn đó (lên đến dòng của nút Play) và hiển thị kết quả ở bên phải. Theo mặc định, Swift Playground có hai dòng mã. Như các bạn đã thấy, kết quả của biên str xuất hiện ngay lập tức bên phải sau khi bạn nhấn nút Play ở dòng 4.  

Bây giờ chúng ta cùng nhau viết một vài đoạn mã trong Playground nhé. Hãy nhớ rằng mục đích của hoạt động này là để bạn có thêm kinh nghiệm lập trình Swift và tìm hiểu những cơ bản thứ của nó. Tôi không thể nói hết tất cả các tính năng của Swift. Chúng ta chỉ tập trung vào các chủ đề sau.  

  1. Hằng số, biến số và kiểu suy luận
  2. Điều khiển lưu lượng (điều khiển lưu lượng)
  3. Các loại tập hợp bộ sưu tập như mảng (mảng) và từ điển
  4. Các tùy chọn

Đây là những chủ đề cơ bản mà bạn cần biết về Swift. Bạn sẽ học từ ví dụ cụ thể. Tuy nhiên, tôi khá chắc chắn là bạn sẽ hoang mang với một vài ý tưởng thiết lập chương trình, đặc biệt khi bạn là người hoàn toàn mới học lập trình. Đừng lo, bạn sẽ thấy lời khuyên học tập của tôi trong một số phần. Chỉ cần làm theo lời khuyên của tôi và không ngừng tìm hiểu, và đừng quên giải lao khi bế tắc là được.  

No started nhé

Hằng số và biến số

Hằng số và biến số là hai yếu tố cơ bản trong lập trình. Khái niệm về các biến số (và cả hằng số) đều giống như những gì các bạn học trong Toán học. Please quan sát phương pháp dưới đây

x = y + 10 

Cả x và y đều là các biến số. 10 is a hằng số, tức là giá trị của nó không thay đổi.  

Trong Swift, bạn gán các biến số với từ khóa var và hằng số với let. Nếu bạn viết mã định dạng phương trình bên dưới, thì nó sẽ như thế này

let constant = 10
var y = 10
var x = y + constant

Viết mã trên Playground rồi nhấn nút Play ở dòng 5, bạn sẽ nhận được kết quả bên dưới

Sân chơi mã c ++
Kết quả của phương pháp

Bạn có thể chọn bất kỳ tên nào cho các biến số và hằng số. Chỉ cần đảm bảo rằng chúng có ý nghĩa, ví dụ như bạn có thể viết lại đoạn mã tương tự như sau"

let constant = 10
var number = 10
var result = number + constant

Để chắc chắn rằng bạn hoàn toàn hiểu sự khác nhau giữa biến số và hằng số trong Swift, hãy nhập mã đoạn sau để thay đổi giá trị của hằng số và hằng số.  

constant = 20
number = 50

Sau đó nhấn shift + command + enter để chạy đoạn mã. Bên cạnh việc sử dụng nút Play, bạn có thể cùng tổ hợp phím để chạy mã.  

Bạn có thể dễ dàng cài đặt giá trị mới cho hằng số và biến số, tuy nhiên ngay khi bạn thay đổi giá trị của hằng số, Xcode sẽ thông báo lỗi trong bảng điều khiển, đảo ngược, không có vấn đề gì đối với số.  

Sân chơi mã c ++
Error in Playgrounds

Điều này chính là cơ bản khác nhau giữa hằng số và biến số trong Swift. Khi một hằng số được khởi chạy với một giá trị, bạn không thể thay đổi. Nếu bạn phải thay đổi giá trị sau khi khởi động, hãy sử dụng biến số.  

Hiểu về kiểu suy luận

Swift cung cấp cho những nhà phát triển rất nhiều tính năng để viết những đoạn mã trông gọn gàng hơn. Có một tính năng được biết đến là Type Inference. Đoạn mã tương tự mà chúng ta vừa thảo luận ở trên có thể được viết như sau

________số 8

Mỗi biến số trong Swift đều có một loại. Int after dấu hai chấm (. ) cho biết loại biến số/hàng số là một số nguyên (số nguyên). Nếu giá trị được lưu trữ là một số thập phân, chúng ta sử dụng loại kép

var number: Double = 10.5

Ngoài ra còn có các loại khác như String (dạng văn bản dữ liệu) và Bool (các giá trị Boolean) (đúng/sai)

Quay trở lại kiểu suy luận, tính năng mạnh mẽ trong Swift này cho phép bạn bỏ qua loại khi khai báo một biến số/ hằng số để làm cho đoạn mã của bạn trông gọn gàng hơn. Trình thông dịch Swift có thể đoán loại bằng cách kiểm tra giá trị mặc định mà bạn cung cấp. Đó cũng chính là lý do chúng ta có thể viết mã như thế này

let constant = 10
var number = 10
var result = number + constant

The value for before (i. e. 10) is a integer should type will auto be setting on Int. Trong Playgrounds, bạn có thể giữ tùy chọn phím và nhấp vào bất kỳ tên biến nào để hiển thị loại biến.  

Sân chơi mã c ++
Giữ phím Tùy chọn và chọn biến số để hiển thị các loại biến

Chắc chắn bạn đang thấy choáng ngợp với tất cả những khái niệm lập trình mới đúng không?

Giải lao một chút nào, bạn không cần phải đọc hết chương trình này mà không cần nghỉ ngơi đâu. Thậm chí bạn còn có thể bỏ qua chương trình này và đọc chương trình tiếp theo nếu không cần thiết phải xây dựng ứng dụng đầu tiên của mình. Hoặc bạn luôn có thể quay lại chương trình này để tìm hiểu lại những kiến ​​thức cơ bản của Swift.  

Làm việc với văn bản

Cho đến bây giờ chúng ta mới chỉ làm việc với các biến số của hai loại Int và Double. Để lưu trữ văn bản dữ liệu dưới dạng các biến số, Swift đã cung cấp thêm một loại tên khác là String. Để khai báo một số biến số của loại Chuỗi này, bạn sử dụng phím var, đặt tên cho biến số và gán biến số cho văn bản ban đầu. Van bản được chỉ định trong dấu ngoặc kép ("). Ví dụ

let count = 10
var price = 23.55

let firstMessage = "Swift is awesome. "
let secondMessage = "What do you think?"
var message = firstMessage + secondMessage

print(message)
1

Sau khi nhập dòng mã vào Playgrounds và nhấn nút Play, bạn sẽ thấy kết quả ở bên phải màn hình.  

Sân chơi mã c ++

Swift cung cấp các toán tử và hàm (hoặc các phương thức) khác nhau để bạn thực hiện các chuỗi. Ví dụ bạn có thể sử dụng dấu cộng (+) để nối hai chuỗi lại với nhau

let count = 10
var price = 23.55

let firstMessage = "Swift is awesome. "
let secondMessage = "What do you think?"
var message = firstMessage + secondMessage

print(message)
2

Sân chơi mã c ++

Thế nếu bạn muốn chuyển toàn bộ câu thành chữ in hoa thì sao ?

let count = 10
var price = 23.55

let firstMessage = "Swift is awesome. "
let secondMessage = "What do you think?"
var message = firstMessage + secondMessage

print(message)
3

Trình chỉnh sửa của Xcode đi kèm với một tính năng hoàn thành tự động (tự động hoàn thành). Tự động hoàn thành là một tính năng rất tiện lợi để tăng tốc mã của bạn. NgaNgay khi vào mess, bạn sẽ thấy một cửa sổ auto-complete hiển thị một số gợi ý dựa trên những gì bạn đã nhập trước đó. Tất cả những gì bạn cần làm là chọn thông báo và nhấn enter.  

Sân chơi mã c ++

Swift sử dụng cú pháp chấm để truy cập các phương thức tích hợp và các thuộc tính của một biến số. Khi bạn nhập dấu chấm sau thông báo, cửa sổ cuto-complete nhảy lên lần nữa. Nó gợi ý một loạt các phương thức và thuộc tính có thể truy cập bằng các biến số. You can continue enter chữ hoa() or select from auto-complete window.  

Sân chơi mã c ++

Khi bạn nhập xong, kết quả sẽ hiển thị ngay lập tức. Khi chúng ta sử dụng chữ hoa() trên messenger, nội dung của tin nhắn được tự động chuyển sang dạng hoa.  

uppercased() chỉ là một trong rất nhiều hàm tích hợp của chuỗi. Bạn có thể thử dùng chữ thường() để chuyển đoạn tin nhắn sang chữ thường.  

let count = 10
var price = 23.55

let firstMessage = "Swift is awesome. "
let secondMessage = "What do you think?"
var message = firstMessage + secondMessage

print(message)
4

Hoặc nếu muốn đếm số lượng ký tự của chuỗi thì bạn có thể viết mã như sau

let count = 10
var price = 23.55

let firstMessage = "Swift is awesome. "
let secondMessage = "What do you think?"
var message = firstMessage + secondMessage

print(message)
5

Sân chơi mã c ++

Việc làm này phải dễ dàng không? . Tuy nhiên, không phải lúc nào cũng dễ dàng như thế, hãy thử viết đoạn mã sau trong Playgrounds

let count = 10
var price = 23.55

let firstMessage = "Swift is awesome. "
let secondMessage = "What do you think?"
var message = firstMessage + secondMessage

print(message)
6

Chúng ta tạo ra một chuỗi bao gồm cả một chuỗi và một số trong đó khá dễ dàng. Trong ví dụ trên, chúng ta tính tổng giá trị của sách và tạo ra một thông báo hiển thị tổng giá trị cho người dùng. Nếu bạn nhập mã này trong Playgrounds, bạn sẽ thấy thông báo lỗi.  

Sân chơi mã c ++

Khi Xcode tìm thấy lỗi trong đoạn mã của bạn, lỗi đó sẽ được hiển thị bằng dấu chấm hơn màu đỏ cùng một thông báo rút ngắn lỗi. Có đôi khi Xcode sẽ hiển thị một số cách sửa lỗi khả dụng nhưng có những lúc lại không

Bạn có thể xem khu vực/bảng gỡ lỗi để biết chi tiết về lỗi. Nếu bảng sửa lỗi không hiển thị trong Playground, hãy nhấp vào nút khu vực gỡ lỗi ở góc phải màn hình.  

Trước khi tôi chỉ cho bạn phương pháp giải quyết thì bạn có biết sao mã không hoạt động không? .  

Đầu tiên, hãy luôn ghi nhớ rằng Swift là một ngôn ngữ an toàn. Có nghĩa là mỗi biến số đều có một loại mà chỉ được xác định là nó có thể lưu trữ các loại giá trị nào. Vậy type of totalPrice là gì? .  

Vì 39 là một số nguyên nên Swift khẳng định rằng bookPrice có một loại Int, numOfCopies và totalPrice cũng vậy.  

Thông báo lỗi được hiển thị trên bảng giải quyết lỗi nhắc đến công việc toán tử + không thể kết hợp một chuỗi biến với một biến Int. We must have the same type. Nói cách khác, bạn phải chuyển TotalPrice từ Int sang String mới đúng.  

Bạn có thể viết đoạn mã như thế này bằng cách chuyển số nguyên sang một chuỗi

let count = 10
var price = 23.55

let firstMessage = "Swift is awesome. "
let secondMessage = "What do you think?"
var message = firstMessage + secondMessage

print(message)
7

Có một cách thay thế tên là String Interpolations. Bạn có thể viết mã như thế này để tạo biến totalPriceMessage

let count = 10
var price = 23.55

let firstMessage = "Swift is awesome. "
let secondMessage = "What do you think?"
var message = firstMessage + secondMessage

print(message)
8

Nội suy chuỗi là một cách được đặt ra để xây dựng một chuỗi từ các loại khác nhau. Biến chuỗi string được đặt trong dấu ngoặc đơn thêm vào một dấu gạch chéo ngược.  

Sau khi thay đổi, hãy nhấn nút Play để chạy lại đoạn mã. Lỗi lúc này sẽ được giải quyết.  

Những điều cơ bản về kiểm soát luồng

Mỗi ngày chúng ta đều có rất nhiều quyết định. Những quyết định khác nhau lại dẫn đến những kết quả hoặc hành động khác nhau. Ví dụ, bạn quyết định nếu bạn có thể thức dậy vào 6h sáng ngày mai, bạn có thể tự nấu bữa sáng, nếu không thì bạn sẽ ăn sáng ở bên ngoài.  

Khi viết các chương trình, bạn sử dụng các câu lệnh if-then và if-then-else để kiểm tra điều kiện và xác định điều cần làm tiếp theo. Nếu bạn thử chạy ví dụ trên mã, nó sẽ như sau

let count = 10
var price = 23.55

let firstMessage = "Swift is awesome. "
let secondMessage = "What do you think?"
var message = firstMessage + secondMessage

print(message)
9

Bạn khai báo một biến thời gian YouWakeUp để lưu lại thời gian (trong 24 giờ) mà bạn đang thức. Sử dụng câu lệnh nếu để đánh giá điều kiện và xác định bước tiếp theo. Điều kiện được đặt sau phím nếu. Chúng ta so sánh giá trị của timeYouWakeUp để xem nó có bằng 6 hay không. Toán tử == used when so sánh.  

Nếu timeYouWakeUp khớp với 6, hoạt động (hoặc câu lệnh) được đặt trong phần trích dẫn sẽ thực hiện. Trong mã, chúng ta thường sử dụng chức năng in để truy cập bảng điều khiển.  

If not, the command in other will run to in a other message.  

Sân chơi mã c ++
Ví dụ về câu lệnh If

Trong Playgrounds bạn sẽ thấy thông báo "Nấu cho mình một bữa sáng thịnh soạn. " trên bảng điều khiển vì giá trị của timeYouWakeUp nhận là 6. Bạn có thể thử thay đổi sang một giá trị khác và xem kết quả.  

Logic điều kkiện rất quan trọng trong lập trình. Tưởng tượng bạn đang phát triển một màn hình đăng nhập yêu cầu người dùng phải nhập tên người dùng và mật khẩu. Người dùng chỉ có thể đăng nhập ứng dụng bằng một tài khoản hợp lệ. Trường hợp này bạn có thể sử dụng câu lệnh if-else để xác minh tên người dùng/mật khẩu.  

Câu lệnh if-else là một trong những cách có trong Swift để kiểm soát dòng chảy của chương trình. Swift cũng cung cấp công tắc câu lệnh để kiểm tra đoạn mã đang chạy. Bạn có thể viết lại ví dụ về cách sử dụng công tắc như sau

var message = firstMessage + secondMessage
0

Nó sẽ đạt được kết quả tương tự nếu timeYouWakeUp được đặt bằng 6. Chuyển câu lệnh xem xét một giá trị (ở đây là giá trị của timYouWakeUp) và so sánh với giá trị được xác định duy nhất trong trường hợp. Default case is only by key default. Nó rất giống với khối khác trong lệnh if-else. Nếu giá trị ước tính không khớp với bất kỳ trường hợp nào thì trường hợp mặc định sẽ được thực hiện. Nên nếu bạn thay đổi giá trị của timYouWakeUp sang 8, nó sẽ hiển thị thông báo "Ra ngoài ăn sáng"

Không có quy tắc chung về việc khi nào sử dụng if-else và khi nào sử dụng switch. Đôi khi chúng ta thích cách này hơn cái kia chỉ vì nó dễ đọc. Giả sử bạn thường nhận được tiền thưởng vào cuối năm và bây giờ bạn đang lên kế hoạch cho chuyến du lịch sắp tới như sau

  • Nếu bạn nhận được 10000 đô la tiền thưởng (hoặc hơn), bán sẽ đi du lịch Paris hoặc London
  • Nếu bạn nhận được khoảng 5000$ đến 9999$, bạn sẽ đến Tokyo
  • Nếu bạn nhận được khoảng 1000$ đến 4999$, bạn sẽ đi Băng Cốc
  • Nếu bạn nhận được ít hơn 1000$, bạn chỉ ở nhà không đi đâu hết.  

Nếu viết kế hoạch trên bằng mã thì nó sẽ như sau

var message = firstMessage + secondMessage
1

>= is an so sánh toán tử chỉ ra "tốt hơn hoặc bằng với" Điều kiện nếu lần đầu tiên kiểm tra giá trị của tiền thưởng có lớn hơn hoặc bằng 10000 hay không. Nếu chỉ định hai điều kiện đồng thời thì bạn sử dụng toán tử &&. Điều kiện nếu thứ hai kiểm tra giá trị từ 5000 đến 9999. Phần mã còn lại sẽ được giải thích.  

Bạn có thể viết lại đoạn mã trên công tắc sử dụng câu lệnh như sau

var message = firstMessage + secondMessage
2

Swift có một thuật toán về phạm vi rất tiện dụng (. ) dùng để xác định một phạm vi vì từ giới hạn thấp đến giới hạn cao. Ví dụ, 5000. 9999 xác định giới hạn chạy từ 5000 đến 9999. Argument with first field 10000. chỉ một giá trị lớn hơn 10000.  

Tuy cả hai đoạn mã đều hoạt động giống nhau nhưng bạn thích cách nào hơn? . Khi bạn tiếp tục khám phá trình duyệt Swift, bạn sẽ hiểu khi nào thì sử dụng if hoặc switch.  

Hiểu về mảng và từ điển

Bây giờ bạn đã có một kiến ​​thức cơ bản về các biến và luồng điều khiển, tôi sẽ giới thiệu một khái niệm lập trình khác mà bạn sẽ thường xuyên phải làm việc với nó.  

Cho đến nay các biến mà chúng ta sử dụng chỉ có thể lưu một đơn giá trị. Chọn các biến sử dụng trong đoạn mã trước đó,  các biến bonus, timYouWakeUp và totalPriceMassage có thể giữ một đơn giá trị bất kể loại biến nào.  

Cùng xem xét ví dụ sau. Tưởng tượng bạn đang tạo một ứng dụng đánh giá quản lý bộ sưu tập sách của mình. Trong chương trình bạn phải có một số biến quy định tên sách

var message = firstMessage + secondMessage
3

Vì vậy, có cách nào để lưu nhiều hơn một giá trị thay vì lưu một giá trị đơn trong mỗi biến hay không?

Swift cung cấp một loại bộ sưu tập tên là Array cho phép bạn lưu nhiều giá trị trong một biến. Với một mảng, bạn có thể lưu các tên đầu sách như

var message = firstMessage + secondMessage
4

Bạn có thể khởi tạo một Mảng bằng cách viết danh sách các giá trị, được phân tách bằng dấu hài, cũng nằm trong một cặp dấu ngoặc vuông. Một lần nữa, vì Swift là ngôn ngữ an toàn về loại nên tất cả các giá trị phải cùng loại  (ví dụ. Arr)

Truy cập các giá trị của một có thể trông lạ nếu bạn mới bắt đầu học lập trình. Trong Swift, bạn sử dụng cú pháp đăng ký để truy cập các mảng tử. The first number of first entry by not. Do đó, để tham khảo mục đầu tiên của một mảng, bạn hãy nhập mã như thế này

var message = firstMessage + secondMessage
5

Nếu bạn nhập đoạn mã vào Playgrounds và nhấn vào nút Play, bạn sẽ thấy thông báo "Tool of Titans" hiển thị trên phần kết quả.  

Khi bạn khai báo một mảng là var thì bạn có thể sửa các phần của nó. Ví dụ bạn có thể thêm một mục mới vào mảng bằng cách gọi phương thức hợp thức append as after

var message = firstMessage + secondMessage
6

Bây giờ mảng có 4 mục. Vì vậy, bạn tiết lộ tổng số mục của một mảng bằng cách nào? .  

var message = firstMessage + secondMessage
7

Vì vậy, bạn làm thế nào để đánh giá từng mục của mỗi mảng lên bảng kết quả?

Đừng nhìn kết quả, hãy thử suy nghĩ trước

Ok, you will write code as after

var message = firstMessage + secondMessage
8

It active. Nhưng có một cách khác tốt hơn. Như bạn đã thấy, đoạn mã trên vòng lặp đi lặp lại. Nếu mảng có 100 mục thì sẽ khá là trống vắng nếu bạn cứ nhập một phần trăm dòng mã như vậy có đúng không? . Ví dụ, bạn có thể đơn giản hóa đoạn mã trên như sau

var message = firstMessage + secondMessage
9

You đã xác định khoảng cách số (0. 3) to play. Trong trường hợp này, mã đoạn trong vòng được thực hiện 4 lần. Theo đó giá trị của chỉ mục sẽ được thay đổi. Khi vòng lặp bắt đầu thực hiện đầu tiên, giá trị của chỉ mục được đặt từ 0 và sẽ có trong bookCollecion[0]. Sau khi câu lệnh được thực hiện, giá trị của chỉ mục sẽ được cập nhật lên 1 và sẽ có trong bookCollection[1]. Quy trình này tiếp tục cho đến hết khoảng (i. e. 3).  

Vì vậy nếu có 10 mục trong mảng thì sao ? . 3 sang 0. 9. Vì vậy khi tổng số mục lên đến 100 thì sao? . 100

Có cách chung nào để thực hiện thay thế vì mã cập nhật mỗi lần tổng số mục thay đổi hay không?

Bạn có chú ý đến một mẫu cho tất cả các phạm vi này. 0. 3, 0. 9, 0. 100 không?

Giới hạn trên bằng tổng số mục trừ 1. You can write back code as after.  

but find it a bit confusing for the Objective-C code below:

0

Bây giờ bất kể số lượng item của mảng là bao nhiêu thì đoạn mã này vẫn hoạt động.  

Vòng lại for-in của Swift back cung cấp một cách thay thế khác để lặp lại qua một mảng. Đoạn mã ví dụ có thể được viết lại như sau

but find it a bit confusing for the Objective-C code below:

1

Khi mảng (bookCollection) được lặp lại, mục của mỗi lần lặp sẽ được đặt thành hằng số sách. Khi vòng lặp được bắt đầu lần đầu tiên, mục đầu tiên của bộ sưu tập sách được đặt thành sách. Ở vòng lặp thứ hai, mục thứ hai của mảng sẽ được gán là cuốn sách. Quy trình tiếp tục cho đến khi mục cuối cùng của mảng hoàn tất.  

Tôi tin bây giờ bạn đã hiểu cách xoay vòng lặp cho-in hoặt động và cách bạn có thể nhắc lại một tác vụ sử dụng vòng lặp, vì vậy hãy thảo luận về một loại bộ sưu tập biến phổ biến khác có tên là từ điển.  

Một từ điển gần giống với một mảng, cho phép bạn lưu nhiều giá trị trong một biến/ hằng số. Sự khác nhau chính là mỗi giá trị trong từ điển được liên kết với một khóa. Thay vì xác định một mục bằng cách sử dụng một chỉ mục, bạn có thể truy cập mục đó bằng một phím duy nhất.  

Hãy cùng tiếp tục với ví dụ về bộ sưu tập sách cấm. Mỗi cuốn sách có một ISBN (viết tắt của Số sách tiêu chuẩn quốc tế - số sách tiêu chuẩn quốc tế). Nếu bạn muốn lập chỉ mục mỗi cuốn sách trong bộ sưu tập bằng ISBN của nó, bạn có thể khai thác và tạo một từ điển như sau

but find it a bit confusing for the Objective-C code below:

2

Cú pháp rất giống với việc tạo mảng. Tất cả các giá trị được đặt trong dấu ngoặc kép, khóa và cặp giá trị được phân cách bằng dấu hai chấm (. ). Trong đoạn mã ví dụ, khóa chính là ISBN. Mỗi tên của một cuốn sách đều được liên kết với một ISBN duy nhất.  

Do đó làm thế nào để bạn có thể truy cập một mục cụ thể? . Tuy nhiên, thay vì sử dụng chỉ số, bạn hãy sử dụng khóa duy nhất. Ví dụ

but find it a bit confusing for the Objective-C code below:

3

It return to you value Tool of Titans. Để lặp lại tất cả các mục của từ điển, hãy sử dụng vòng lặp for-in

Sân chơi mã c ++

Như tiết lộ từ thông báo trong bảng điều khiển, thứ tự của các mục không theo thứ tự khi khởi động. Không giống như một mảng, đây là một đặc điểm của từ điển có thể lưu nhiều mục trong một kiểu không thứ tự.  

Bạn có thể tự hỏi khi nào bạn cần từ điển khi xây dựng ứng dụng. Vui lòng xem một ví dụ khác. This main is reason at sao it known to as a dictionary (từ điển). Nghĩ xem bạn sử dụng một cuốn từ điển như thế nào, bạn tìm một từ trong cuốn từ điển và nó cung cấp cho bạn nghĩa của từ đó. Trong trường hợp này từ chính là kekey còn nghĩa của nó là giá trị liên kết.  

Trước khi chuyển sang phần tiếp theo, cùng thực hiện một chút về việc tạo từ điển Emoji nhé. To menu, this dictionary có nghĩa của các biểu tượng cảm xúc sau

  • Con ma
  • Tức giận
  • La hét
  • quái vật ngoài hành tinh

Bạn có biết cách thực hiện từ điển cảm xúc này bằng cách sử dụng loại từ điển không?

Dưới đây là các khung mã cơ bản của từ điển biểu tượng cảm xúc, hãy điền vào các đoạn mã còn thiếu để nó có thể hoạt động

but find it a bit confusing for the Objective-C code below:

4

Để nhập các ký tự biểu tượng cảm xúc trên máy Mac, hãy nhấn control-lenh + dấu cách

You could not complete the file file?

Chúng ta hãy xem giải pháp và bắt đầu trong hình 2-16

Sân chơi mã c ++

Tôi tin rằng bạn có thể tự mình tìm ra câu trả lời

Bây giờ, hãy thêm một vài dòng để nhập ý nghĩa của biến vào bảng điều khiển.  

Sân chơi mã c ++

Bạn hãy chú ý hai điều

  1. Xcode chỉ ra cả hai câu lệnh trong tất cả các vấn đề
  2. Kết quả ở bảng điều khiến trông khác một chút với kết quả khác mà chúng ta đã làm trước đó. Kết quả là đúng, nhưng tùy chọn nghĩa là gì?

Ghi chú. Trong Xcode, cảnh báo có màu vàng. Một điểm khác nhau chính giữa cảnh báo và lỗi là chương trình của bạn vẫn có thể chạy khi có cảnh báo. Như tên cho thấy, một cảnh báo cho thấy một thông báo nâng cao của một số vấn đề. Bạn tốt hơn hết nên giải quyết cảnh báo để tránh bất kỳ vấn đề tiềm tàng nào khác.  

Cả hai vấn đề liên quan đến một khái niệm mới trong Swift đều được gọi là Tùy chọn. Ngay cả khi bạn có một số kiến ​​thức nền về lập trình, thì khái niệm này có thể vẫn còn mới đối với bạn.  

Hiểu tùy chọn

Bạn có kinh nghiệm gì chưa? . Tôi chắc chắn rằng bạn đã từng gặp loại chuyện này rồi.  

Vì sao một sự cố ứng dụng lại xảy ra? . And sự cố xảy ra.  

Do đó có cách nào để ngăn chặn sự cố hay không?

Các ngôn ngữ lập trình khác nhau có những chiến lược khác nhau để khuyến khích các lập trình viên viết mã tốt hoặc mã ít lỗi nhất. Phần giới thiệu của Tùy chọn là cách của Swift để giúp các lập trình viên viết mã tốt hơn, sau đó là tránh sự cố ứng dụng.  

Cho tới nay, tất cả các biến số hoặc hằng số chúng ta đều làm việc với giá trị ban đầu. Đây là điều kiện bắt buộc trong Swift. Một biến không có tùy chọn chắc chắn về việc có một giá trị. Nếu bạn thử khai báo một biến không có giá trị, bạn sẽ gặp lỗi. Bạn cũng có thể thử trên Playgrounds và xem điều gì xảy ra

Sân chơi mã c ++

Trong một số vấn đề bạn phải khai báo một biến không có giá trị ban đầu. Hãy tưởng tượng bạn đang phát triển một ứng dụng với một đăng ký đơn. Không phải tất cả các trường của đơn này đều bắt buộc, một số mục (như nghề nghiệp) là tùy chọn. Trong trường hợp này, các biến số của các trường tự chọn này sẽ không có giá trị.  

Về mặt ký hiệu, tùy chọn chỉ là một loại trong Swift. type this only ra rằng các biến số có thể có hoặc không có giá trị. Để khai báo một biến như một tùy chọn, bạn chỉ cần thêm một dấu chấm hỏi (?). Ví dụ