[iOS] - Các tool sử dụng phổ biến trong lập trình iOS
Bài viết này giới thiệu các loại develoment tool, service, các loại framework mà lập trình viên iOS thường sử dụng trên con macbook của họ. Các loại tool khác sẽ được cập nhật ở dưới phần comment. 1. Tools Nếu dự án của bạn dùng Git để quản lý source code thì tôi nghĩ bạn nên dùng GitKraken ...
Bài viết này giới thiệu các loại develoment tool, service, các loại framework mà lập trình viên iOS thường sử dụng trên con macbook của họ. Các loại tool khác sẽ được cập nhật ở dưới phần comment.
1. Tools
- Nếu dự án của bạn dùng Git để quản lý source code thì tôi nghĩ bạn nên dùng GitKraken . GitKraken có thể được thêm tự động vào GitFlow
- Để giải quyết các issue, nên dùng Gitscout
- Còn nếu như bạn hay quên không commit code hàng ngày, tool Gitbar này sẽ giúp bạn
- Để phân tích xem mất bao lâu thì compile biên dịch xong đoạn code của bạn, bạn nên thử nghiệm với tool Build Time Analyzer. Đôi khi chúng ta tự hỏi nếu code theo kiểu này thì complie mất bao lâu thì build xong, nếu thử thay đổi chút code thôi, có khi rút ngắn đáng kể thời gian complie.
- Bạn biết nguyên tắc làm việc hiệu quả Pomodoro không? Hãy thử Tomato One
- WatchDog là tool giúp bạn tự động xoá DerivedData mà không cần phải quit XCode hoặc restart lại máy. Chắc hẳn thỉnh thoảng chúng ta phải vào DerivedData để xoá bớt dữ liệu khi run app. Đôi khi chạy XCode, tool nó báo lỗi mà ko rõ lỗi ở đoạn code nào, cứ vào xoá sạch DerivedData lại chạy ngon lành.
- Nếu bạn hay dùng Homebrew thì tool Cakebrew sẽ giúp bạn với giao diện UI trực quan hơn
- Công việc thường xuyên phải thao tác với MySQL, PostgreSQL and SQLite3? Liya là một trong những lựa chọn không tồi, tất nhiên là có UI để tiện truy vấn rồi.
- Với những coder có thói quen dùng lưu các note, hoặc đoạn code dưới dạng snippet, tôi nghĩ là thử dùng cái Quiver. Hẳn nó phải là một notebook cho dân dev đó.
- Với Oh-my-zsh sẽ giúp terminal của chúng ta đỡ tẻ nhạt hơn.
- Cần gen các ảnh với kích thước nhỏ hơn, nên dùng Squash, hoặc tốt và free thì dùng guetzli.
- Còn với design? Dễ dùng nhất là Zeplin ,hoặc ngon hơn thì dùng Sketch.
- Để kiểm thử tương tác /bóc tách layout của màn hình, bạn thử dùng cái RevealApp.
- SizeUp giúp rezie, điều chỉnh vị trí window bằng phím shortcuts, giúp bạn tăng năng suất nếu như bạn phải làm việc với nhiều window cùng lúc.
- Easy APNs Provider tool rất đơn giản đê thử nghiệm tính năng push notification trong iOS
2. Framework
- Để tạo fake data, tôi hay dùng Fakery
- Với các ứng dụng sử dụng đến localization, nên dùng tool LocalizationKit để quản lý toàn bộ nguồn text đã được translate.
- Siren , lib này giúp thông báo đến user khi mà phiên bản mới của ứng dụng được cập nhật trên appstore.
- SwiftGen tự động gen các đoạn code Swift, chẳng hạn như là các file asset, storyboard, localizable.strings
- Bohr cho phép bạn setup màn hình settings.
- SwiftyBeaver sử dụng để quản lý logging.
- Gloss, thay thế thư viện parse JSON của Swift. * Hero thư viện cung cấp các thể loại hiệu ứng của transition các viewcontroller như match, scale, translate, rotate, arc, cascade, interactive, dynamic...Hầu hết các hiệu ứng này đều tuân theo kiểu Material Design
Ngoài ra, bạn có thể tham khảo rất nhiều framework khác nhau ở trong trang tổng hợp ở github này awesome-swift Thêm nữa, trang này thống kê rất nhiều framework phân chia theo các ngôn ngữ khác nhau : https://libraries.io
3. Websites
- Tìm kiếm các công ty sử dụng SDKs và các service trong các ứng dụng iOS app với AppSight.
Ví dụ tôi thử xem Uber app họ đang dùng những thư viện gì:
=> Khá là tiện, từ việc quan sát ứng dụng, chúng ta có thể học được một số SDK hoặc service gì đó đang được sử dụng trong app bằng tiện ích của AppSight này.
- iOSCookies, trang này cũng tổng hợp các các tool và service thường xuyên sử dụng trong iOS App
- Tìm kiếm các tip và technique cho iOS ở trang Little bite of Cocoa
- Các bài viết kỹ thuật hàng tuần tuyệt hay ở trang Toptal
- Ngoài ra còn một số blog của các lập trình viện iOS gạo cội khác mà bạn có thể follow, bạn có thể tìm họ trong ở Top 100 Best Blogs for iOS Developers
4. Service
- Nếu như bạn không muốn cái đặt local database như là MongoDB, MySQL, Jenkins or Minecraft, Docker có thể giúp bạn, với Docker có thể giúp bạn dựng backend, database và phân phối ứng dụng cho dự án prototype của bạn. Hãy thử checkout Docker for Swift xem thế nào Nếu bạn đang sử dụng Docker rồi, hay thử dùng tool Kitematic để improve trải nghiệm xem sao, hoặc thử cả Captain nữa.
- Dành cho nền tảng cloud computing, thử sử dụng DigitalOcean
- Để quản lý dự án, tôi hay sử dụng Asana, theo dõi công việc của team
- Phân tích thống kê về các vấn đề liên quan đến product, như lượng truy cập, số lần vào màn hình các thứ, tôi nghĩ GoogleAnalytic đứng số một rồi. Ngoài ra bạn thể trải nghiệm thử Repro, cũng free cho một số tính năng cơ bản.
- Tìm kiểm các bức ảnh free, tìm trên Zoommy
- Tìm các icon, cũng free
Tạm thời tôi liệt kê các tool hữu ích dùng cho lập trình iOS, nếu bạn biét thêm tool nào, vui lòng note lại dưới comment để khi cần chúng ta có thể tham chiếu, dùng dần.