12/08/2018, 17:30

Những thứ tôi ước tôi đã biết trước khi trở thành lập trình viên iOS

Designer đã đưa cho tôi luồng tiện lợi hơn để tôi thực hiện nó trước khi ứng dụng ra mắt. Flow đó giống như hình dưới Tôi nhảy thẳng vào code trên Xcode sử dụng page view controllers và scroll view. Tôi hoàn thành nó trong 2 ngày với sự trờ giúp từ Stack OverFlow và Google. Khi tôi show cái ...

Designer đã đưa cho tôi luồng tiện lợi hơn để tôi thực hiện nó trước khi ứng dụng ra mắt. Flow đó giống như hình dưới

Tôi nhảy thẳng vào code trên Xcode sử dụng page view controllers và scroll view. Tôi hoàn thành nó trong 2 ngày với sự trờ giúp từ Stack OverFlow và Google. Khi tôi show cái flow đó cho một người bạn của tôi cũng là 1 dev iOS, anh ấy nói với tôi rằng tôi đã có thể hoàn thành công việc kia với chỉ một giờ nếu tôi sử dụng mã nguồn mở này. Chính điều này và nhiều kinh nghiệm xương máu khác khiến tôi tốt lên trong 1 năm qua. Tôi muốn chia sẻ kinh nghiệm của tôi để các bạn và những lập trình viên khác không mắc lại lỗi của tôi trên con đường trở thành 1 master iOS

Tập trung vào các nguyên tắc cơ bản

Khi tôi bắt đầu với iOS, tôi đã học khoá học miễn phí nhưng tuyệt vời này được cung cấp bởi Đại học Stanford. Mặc dù tôi đã học được khá nhiều từ khoá học này. Nó không tập trung nhiều vào việc dạy cho tôi những nguyên tắc cơ bản của ngôn ngữ sử dụng cho phát triển iOS mà chủ yếu là về Objective-C ở thời điểm đó. Khi tôi bắt đầu code ứng dụng của riêng mình, tôi nhận ra rằng tôi đã bỏ lỡ rất nhiều điều cơ bản của ngôn ngữ dẫn đến việc code lỗi Nếu bạn không có kinh nghiệm với ngôn ngữ hướng đối tượng. Tôi khuyên bạn nên đọc một cuốn sách về ngôn ngữ lập trình trước khi bơi vào lập trình ứng dụng iOS. Những hướng dẫn mà tôi thích đó là Big Nerd Ranch Guide cho Objective-C và The Apple’s Guide cho Swift

Chắc chắn bạn sẽ học được nhiều từ việc đọc hướng dẫn từ Ray Wenderlich hoặc xem những video bài giản trên Team Treehouse nhưng nếu cơ bản của bạn thiếu sót, nó sẽ là sự thiếu sót ở một dòng code nào đó trong tương lai

Github

Tôi thích các cộng đồng mã nguồn mở iOS. Họ cho thấy sự tuyệt vời minh chứng bằng rất nhiều các dự án lớn như là AFNetworking, Restkit, JSQMessages... Bạn phải học những thứ mang lại từ cộng đồng này đã từng làm Trước khi tìm ra thư viện hoặc giải pháp của riêng bạn là tìm kiếm trên Github hoặc Google cho những giải pháp tương tự. Rất có khả năng cộng đồng developer đã open source một project phù hợp với nhu cầu của bạn. Hãy liên lạc với cộng đồng thông qua Facebook hoặc Slack. Họ sẽ sẵn sàng trả lời các câu hỏi của bạn. Đọc qua các code của một số dự án open source để học các kinh nghiệm từ các dev trong team của họ và bắt đầu thực hiện code theo họ, biến code của họ thành code của bạn. Một số source code trên Github bạn có thể tham khảo tại đây.

https://github.com/vsouza/awesome-ios https://github.com/matteocrippa/awesome-swift https://github.com/cjwirth/awesome-ios-ui

Nếu bạn đang tìm kiếm các cách hay nhất để theo dõi trong project của bạn thì source sau cũng là một gợi ý

https://github.com/futurice/ios-good-practices

Tool

Hầu hết các dev iOS đều sử dụng Xcode là tool chính để code. Xcode có rất nhiều tính năng hữu ích như Storyboards, Auto Layout các công cụ mà giúp bạn rút ngắn thời gian dev. Rất nhiều dev tránh sử dụng Storyboard nhưng cá nhân tôi coi chúng là một cách tuyệt vời để bố trí một cách nhanh nhất các màn hình của bạn Học điều hướng thông qua Xcode sử dụng phím tắt. Mặc dù nó có vẻ sử dụng rất ít thời gian ở hiện tại nhưng lại rất nhiều thời gian sau này. Dưới đây là một số giải pháp àm tôi sử dụng liên tục đã giúp tôi đẩy nhanh quá trình dev của mình

  1. Sử dụng Cocoapods cho quản lý các package phụ thuộc. Nó sẽ làm công việc của team bạn dễ dàng hơn
  2. Tìm hiểu các thiết lập continous integration sớm trong dự án của bạn để không phải lặp lại các bước thừa.
  3. Sử dụng Testflight để phân phối bản beta của ứng dụng. Với việc Apple mua Testflight, những ai có tài khoản iTunes Connect dễ dàng phân phối bản beta bằng Testflight
  4. Tích hợp Crashlytics trong app của bạn để nhận báo cáo sự cố khi chúng xảy ra

Đọc nhiều blog và các bản tin chất lượng (nhiều * và clap             </div>
            
            <div class=

0