Phải nói là lâu lâu lắm rồi tớ không động đến code. Haizz
Sau khi giải được khối rubik ngon lành, tớ quyết định 1-2 tháng nên học một cái gì mới. Nhu cầu hiện tại muốn làm cái app trên iphone nên có lẽ là bắt đầu thử code ios sẽ thuận tiện đôi đường. Vừa làm được app, vừa ôn lại tí code, lại học được thứ mới.
Một số tiêu chí và luật trong mục bài về challenge này:
- Mỗi ngày tớ sẽ dành 1 tiếng để học và thực hành.
- Ghi lại log hàng ngày.
- Nếu tớ có ngắt quãng thì không sao, đếm đủ 30 ngày thì hoàn thành thử thách.
- Sẽ có tổng kết lại xem mình đã làm được gì/ học được gì từ thử thách này
Đây không phải là bài viết hướng dẫn lập trình Swift.
Đây chỉ là nhật ký 30 ngày tớ thử sức với Swift mà thôi.
Tất nhiên là tớ sẽ không tự mày mò, ít nhất là sẽ phải tìm một tài liệu chính thống, tổng hợp và được review tương đối tốt để theo.
Ngày 1: 06/10/2018
Công việc đã làm được:
- Down Xcode
- Tìm và mua một khóa học về Swift. Khóa đó đây: https://www.udemy.com/ios-11-app-development-bootcamp/learn/v4/
- Xem được hết section 1 và 3 video ở section 2.
- Tạo được 1 app hiển thị ảnh và label
Ngày 2 (18/10/2018): Mình đã làm được App Xúc Xắc
Các công việc đã làm được:
- Xem hết 5 section
- Tạo được một app xúc sắc đơn giản. Các con số xúc xắc thay đổi khi click như khóa học.
Ngày 3 (04/11/2018): Mình Đã Vọc PlayGround
Nói chung vụ Xcode có cái PlayGround khá là thích thú. Vì ở đây mình có thể test các hàm xem chạy đúng không. Không cần thiết là phải đưa vào 1 project nào đó, dựng UI lên.
Trong ngày 3 này mình đã:
- Xem được hết 7 section
- Vọc PlayGround, chạy được mấy hàm for, if, fibonacci đơn giản.
Mặc dù mình đã code đến 10 năm, phần này cũng chẳng có gì mới nhưng xem qua để mình biết được là trong Swift hàm for chạy thế nào, các function input, output biến ra sao.
Ngày 4,5,6 (10-12/11/2018): Mình Đã Tạo Được 2 App
Nhân ngày nghỉ ở nhà, mình dành nguyên 2.5 ngày ngồi làm ứng dụng thực tế mà mình đang cần chứ không làm theo ví dụ trong video.
2 ứng dụng mình đã làm thành công là:
- Hiện tên quẻ trong kinh dịch, an lục thân, lục thần. (Cái này bạn nào học kinh dịch sẽ thấy ứng dụng)
- Làm được ứng dụng tính lịch Ngũ Linh. Lựa chọn thời gian và sẽ ra quẻ tương ứng với giờ.
Ngày 7,8,9,10: Lung Tung Xoèng
Thật tình đến đây mình xem khá nhiều clip. Về hướng dẫn design responsive trên iphone, các class, OPP trên Swift chạy như thế nào. Đến lúc ngồi viết update này thì đã xem xong 13 section.
Mấy hôm trước mình mới chỉ làm được app chạy trên iphoneX, khi chạy trên điện thoại khác thì phải kéo chỉnh lại layout không sẽ bị mất. Giờ thì app có thể tự scale chạy ngon lành trên các thiết bị khác nhau.
Các hàm, cách tính cũng đã được đưa về class, tạo đối tượng để code dễ hiểu và dễ sửa hơn
View nhỏ hay dùng đã được tạo file xib để dễ chỉnh sửa hơn.
Càng lúc mình càng xem thêm video ở Udemy càng gỡ rối những phần mà khi làm mình vướng. Công nhận review đây là một khóa học đầy đủ và rất chi tiết.
Ngày 11,12,13: Phù, Apple Developer
Sau nhiều ngày fix bug vất vả + với design làm sao tương thích với tất cả các màn hình điện thoại làm mình khá đau đầu mất ngủ. Có hôm lên giường nằm ngủ rồi mà ko yên tâm nửa đêm bật dậy ngồi làm nốt.
Cuối cùng cũng có chút tự hào vì đã hiển thị khá đẹp ở tất cả các màn hình điện thoại khác nhau.
Một vấn đề nữa mình gặp phải là khi cài app cho bạn bè thì app chỉ chạy được đúng 1 tuần. Rồi sau đó không vào được nữa. Nguyên nhân chính là do cài đặt bản test trực tiếp từ tài khoản developer free.
Mình đã quyết định nâng cấp lên tài khoản developer xịn $99 / 1 năm và đã push app lên testflight xài thử. Mỗi việc upload app rồi submit review, mời bạn bè cũng làm mình bỡ ngỡ ở lần đầu 😀