Apple đang làm cho người mới bắt đầu dễ dàng hơn bao giờ hết để bắt đầu phát triển ứng dụng. Nhờ môi trường phát triển Xcode 8, ngôn ngữ lập trình Swift và công cụ như Metal, bây giờ là thời điểm tuyệt vời để tạo ứng dụng và game cho iPhone, iPad, thậm chí game Apple Watch.
Viết code ứng dụng/game riêng có vẻ như thách thức khổng lồ, nhưng không khó như bạn nghĩ. Có lượng tài nguyên khổng lồ giúp bạn trên con đường trở thành nhà phát triển ứng dụng hoặc game indie.
Có nhiều điều tốt nói về phát triển ứng dụng iPhone/iPad. Khác với xây dựng website, bạn truy cập đầy đủ tính năng iPhone/iPad, tận dụng công nghệ của chúng. Quan trọng hơn, bạn có thể thu tiền cho game. Xây dựng app tốt, bạn có thể 'đánh trúng jackpot' (hoặc ít nhất sống tốt).
Cách bắt đầu phát triển ứng dụng
Các bước sau giúp bạn bắt đầu phát triển ứng dụng từ con số 0. Nếu đã có kiến thức, có thể bỏ qua đến phát triển game, hoặc đọc bài học Swift trực tuyến và hướng dẫn hoàn chỉnh về Swift.
Đăng ký Apple Developer Connection
Điều đầu tiên: truy cập Apple Developer Connection, chạm Member Center và Đăng ký (Register). Đăng ký làm nhà phát triển Apple cho phép truy cập tài liệu hỗ trợ, và đăng ký thiết bị iOS với Apple để chạy app thử nghiệm.
Bạn có thể đăng nhập bằng Apple ID cá nhân (khuyến nghị nếu bạn là nhà phát triển đơn lẻ), hoặc tạo Apple ID riêng cho tài khoản nhà phát triển (khuyến nghị nếu phát triển cho công ty).
Bạn không phải trả tiền Apple để đăng ký nhà phát triển. Bạn đăng ký và truy cập tất cả công cụ nhà phát triển cho phiên bản iOS bán lẻ hiện tại. Đăng ký cơ bản đủ để phát triển và test app, nhưng bạn cần đăng ký thành viên Apple Developer Program (£69/năm) nếu muốn bán app.
Thành viên Apple Developer Program cũng truy cập được bản beta phần mềm như iOS 10 và Xcode 8.
Có kế hoạch trước khi tạo app/game
Trước khi lao vào phát triển, quan trọng là lập kế hoạch cho app. Không có cách đặt ra cho kế hoạch app, nhưng đây là những gì bạn (và người liên quan) nên ghi chép:
- Mục tiêu. App cuối cùng thiết kế để làm gì? Giữ đơn giản, súc tích. App Camera chụp ảnh, chỉnh sửa đơn giản, chia sẻ. App Music phát nhạc từ iTunes Match (hoặc đồng bộ iTunes). Viết một câu mô tả app làm gì.
- Phạm vi (Scope). Đồng ý tất cả tính năng app sẽ bao gồm. Cẩn thận 'feature creep' (thêm quá nhiều ý tưởng mới) khi tiến hành. Quyết định tính năng nào trong, nào ngoài, trước khi bắt đầu.
- Chủ đề và chiến lược. Giao diện và chiến lược app như thế nào? Vui vẻ, thân thiện, hay công cụ kinh doanh nghiêm túc? Quyết định chiến lược marketing, đảm bảo phong cách app phù hợp từ đầu.
- Phác thảo giao diện. Cần vẽ từng màn hình và lập bản đồ tương tác cho từng nút.
- Thu thập tài nguyên (assets). Apple cung cấp nhiều nút/biểu tượng sẵn (nên dùng) nhưng bạn cần logo, đồ họa, có thể tài nguyên âm thanh.
Suy nghĩ về công nghệ cần thiết. Chỉ dùng Xcode và App Store đủ không? Hay app cần server và công nghệ khác? Cần suy nghĩ kỹ trước.
Một số tài liệu tốt về lập kế hoạch app:
- Mozilla: Lập kế hoạch app của bạn
- Cách lập kế hoạch dự án App di động
- Code Complete: Sách thủ công xây dựng phần mềm thực tế
Viết code ứng dụng riêng
Nếu muốn tự code app, bạn có thể. Mức độ dễ dàng phụ thuộc vào kinh nghiệm code, nhưng Apple hạ rào cản với iOS 8 và ngôn ngữ Swift năm 2014.
Bạn tạo app iPhone/iPad bằng chương trình Mac tên Xcode. Xcode là IDE (Môi trường phát triển tích hợp) của Apple.
Một số tài nguyên hữu ích:
- A Swift Tour
- Codecademy
- Swift for Absolute Beginners
- The Swift Programming Language
Thuê nhà phát triển ứng dụng
Nếu không thấy mình là developer, bạn có thể thuê (hoặc hợp tác) một developer.
Thuê developer chuyên nghiệp xây app có thể đắt (giá thường từ ~£20k trở lên). Nhưng nếu dự án đủ thú vị, có thể hợp tác với developer muốn mài giũa kỹ năng.
Đáng dùng trang như Meetup tìm nơi coder tụ tập gần bạn, rồi ghé chào hỏi. Cũng dùng LinkedIn tìm developer, tuy hiệu quả hơn nếu bạn có tài chính cho dự án.
Gửi app lên App Store với iTunes Connect
Khi app sẵn sàng, bạn gửi lên Apple qua iTunes Connect. Đăng ký iTunes Connect riêng biệt với Apple Developer Membership.
Apple có hướng dẫn toàn diện gửi app.
Năm 2015, duyệt app mất khoảng một tuần, nhưng giờ giảm mạnh: Apple khẳng định hoàn tất trong 24 giờ. Chưa rõ công ty đạt được như thế nào, hay Apple sẽ kiểm tra ít hơn.
Tuy nhiên, lưu ý Apple thường từ chối app vì lý do này nọ. Thường do dùng tính năng SDK chưa công bố, hoặc lo ngại nội dung khiêu dâm/khỏa thân. Có một số vấn đề kỹ thuật cần chú ý. Blog iMore có danh sách app bị từ chối và lý do.
Cách tạo game cho iPhone hoặc iPad

Phần còn lại tập trung vào phát triển game iOS, nhưng nhiều khóa học/nguồn tài nguyên dưới đây giả định bạn đã quen phát triển app nói chung.
Khóa học và đào tạo
Tin tốt: bạn không cô đơn khi muốn học phát triển game iOS. May mắn thay có nhiều khóa học, tất cả thiết kế giúp bạn nắm cơ bản.
Một số khóa học đáng xem:
Khóa game iOS hoàn chỉnh dùng SpriteKit và Swift 3
Một trong những khóa học phát triển game iOS bán chạy và đánh giá cao nhất trên Udemy, với 302+ đánh giá trung bình gần 5 sao. Có gần 2000 học viên tại thời điểm viết.
Khóa bao gồm 18 giờ video, 2 bài viết, 6 tài nguyên bổ sung, chứng chỉ hoàn thành, bảo đảm hoàn tiền 30 ngày.
Cách tạo một c@#$ video game - iOS, SpriteKit, SceneKit
Khóa phổ biến khác, cũng đánh giá cao, 1000+ học viên. Trên 8 giờ video, 4 bài viết, 5 tài nguyên bổ sung, chứng chỉ và bảo đảm hoàn tiền.
Giới thiệu phát triển game iOS với SpriteKit & Swift
Khóa cuối chúng tôi giới thiệu, học viên ít hơn vì mới, nhưng đánh giá tuyệt vời, 10+ giờ video, 84 tài nguyên bổ sung, 1 bài viết.
Xem toàn bộ khóa học phát triển Udemy tại đây.
Nguồn tài nguyên phát triển game iOS
Hãy kiểm tra các nguồn này khi bắt đầu học phát triển game iOS.
SpriteBuilder. Cách tốt nhất tạo sprite (nhân vật) cho game. Miễn phí và mã nguồn mở.
Apple Developer. Tận dụng tối đa trang developer của Apple. Dành thời gian khám phá toàn bộ hỗ trợ.
Đặc biệt, xem Game Center cho Nhà phát triển. Có lượng video lớn tập trung vào Game Centre, nhưng chạm đến mọi khía cạnh phát triển game.
GitHub. Nếu chưa có tài khoản GitHub, hãy tạo ngay. Hợp tác với developer khác, tìm dự án cộng tác.
Game Development Stack Exchange. Làm developer, bạn nên đăng ký Stack Exchange, nhưng chắc chắn dành thời gian cho khu vực Phát triển Game. Đăng câu hỏi/vấn đề, cộng đồng nhanh chóng hỗ trợ. Đừng giải quyết vấn đề một mình. Hãy làm việc cùng developer khác.
Để lấy cảm hứng, xem:
Best iPhone & iPad games
Best free iPhone games
Best free iPad games
Best Apple Watch games
Best Mac games