ios Archive

Swift :: สิ่งที่ iOS developer ควรรู้และเข้าใจไว้บ้าง

จากบทความเรื่อง Top 10 Ground Rules for iOS Developers ทำการอธิบายพื้นฐานที่ iOS developer ควรจะต้องรู้ เข้าใจและปฏิบัติตาม ซึ่งมีหลาย ๆ เรื่องที่น่าสนใจ จึงทำการแปลและสรุปบางเรื่องไว้นิดหน่อย

Read More…

สรุปสิ่งที่ได้รับจากงาน iOSDevTH Meetup #7

วันนี้มีโอกาสไปร่วมงาน iOSDevTH Meetup #7 ของกลุ่ม iOS Developer Thailand จัดที่บริษัท Ascend ตึก AIA รัชาภิเษก มีหัวข้อที่น่าสนใจ 2 หัวข้อคือ Concurrency on iOS iOS development at scale

Read More…

[แปล] iOS Test Pyramid จากทีมพัฒนาของ LinkedIn

บทความเรื่อง iOS Test Pyramid จากทีมพัฒนาของ LinkedIn ทำการอธิบายวิธีการทดสอบของ iOS app เป็นขั้นตอนการทำงานที่สำคัญในกระบวนการ 3X3 iOS Release ซึ่งทำให้ทีมพัฒนาสามารถ release iOS app ภายใน 3 ชั่วโมงได้ ตั้งแต่การ commit code จนถึงการ publish ขึ้น App Store กันเลย หัวในหลักของการ Release นั่นก็คือ กระบวนการทดสอบแบบอัตโนมัตินั่นเอง โดยเน้นทั้งจำนวน code coverage และเวลาของการทำงานตั้งแต่การ commit จนถึงการ publish app ดังนั้นจึงนำบทความนี้มาแปลและสรุปตามความเข้าใจไว้นิดหน่อย

Read More…

แก้ไขปัญหาเรื่อง Callback hell ใน Swift กันนิดหน่อย

วันนี้ทำการ review code ทั้งฝั่ง Android และ iOS(Swift) พบว่า code มีสิ่งที่คล้ายกันมาก ๆ คือ มีการเรียกใช้ REST API ผ่าน network library ซึ่งทำงานแบบ Asynchronous สิ่งที่เกิดขึ้นคือ มี feature ที่ต้องเรียกใช้งาน REST API หลาย ๆ ตัวต่อเนื่องกัน ทำให้เกิด code ในรูปแบบของ Callback ซ้อน Callback หรือ Callback hell นั่นเอง หรือดีขึ้นมาหน่อยคือ flow การทำงานของ code กระโดดไปยัง method อื่น ๆ ต่อไปเป็นทอด ๆ หรือ Chain

Read More…

[Appium] การติดตั้งสำหรับทดสอบ iOS app

Appium คือ framework สำหรับการทดสอบ mobile app ทั้ง Android และ iOS ซึ่งก่อนเริ่มใช้งานก็ต้องติดตั้ง software ต่าง ๆ ดังนั้นมาทำการติดตั้งสำหรับทดสอบ iOS app กัน Software ที่ใช้งานประกอบไปด้วย OS X EI Capitan XCode 7.3.1 Appium

Read More…

สรุปการจัดการ Dependency แบบง่าย ๆ ด้วย CocoaPods

สำหรับ iOS developer ทั้งหลายคงต้องใช้ dependency หรือ library อื่น ๆ อย่างแน่นอน ซึ่งถ้า copy code มาใส่ project เองคงไม่ดีเท่าไรนัก !! ดังนั้นน่าจะต้องจัดการผ่านเครื่องมือต่าง ๆ เช่น CocoaPods Carthage Swift Package Manager โดยใน blog นี้จะพูดถึง CocoaPods ตั้งแต่การติดตั้งไปจนถึงการใช้งานแบบง่าย ๆ

Read More…

[iOS]แนะนำ trainer เครื่องมือสำหรับการสร้างผลการทดสอบในรูปแบบ JUnit

ในการทดสอบ iOS app ผ่านระบบ Continuous Integration นั้น จำเป็นต้องทำการทดสอบทั้ง Unit test และ UI test และสร้างผลการทดสอบในรูปแบบ JUnit เพื่อสรุปผลการทดสอบต่าง ๆ ให้ง่ายและชัดเจน ปกติจะใช้ xcpretty ร่วมกับ xcodebuild แต่ว่าจะลำบากขึ้นเมื่อใช้งานร่วมกับ XCode 8 ดังนั้นทางผู้พัฒนา fastlane ก็ได้สร้างเครื่องมือใหม่ชื่อว่า trainer ขึ้นมา ซึ่งใช้ง่ายกว่า และ ทำการได้รวดเร็วกว่า ดังนั้นลองมาใช้งานกันดูหน่อย

Read More…

เมื่อ MVC ย่อมาจาก Massive ViewController

เมื่อวานนั่งดู Code การพัฒนา iOS ด้วยภาษา Swift โจทย์เดียวกันจาก developer 4 คน แต่โครงสร้างของ code ที่ออกมานั้นเหมือนกัน นั่นคือเป็น MVC(Model View Controller) ในรูปแบบของ Apple ซึ่งส่วนใหญ่จะนำไปสู่ MVC ที่ย่อมาจาก Massive ViewController มากกว่านะ !! และนั่นคือความหายนะที่กำลังมาเยือนนักพัฒนาโดยทั้งรู้และไม่รู้ตัว

Read More…

แนะนำเครื่องมือที่น่าสนใจสำหรับการทดสอบ Mobile App

ช่วงวันหยุดมาดูกันหน่อยว่า เครื่องมือการทดสอบ Mobile App มีอะไรที่น่าสนใจบ้าง ซึ่งเน้นเครื่องมือที่เป็น Open source เพื่อแนะนำให้ Developer และ Tester/QA นำไปใช้งานได้ง่ายขึ้น มาดูกันว่ามีอะไรบ้าง

Read More…

ว่าด้วยเรื่อง Clean Swift Architecture

วันนี้ได้อ่านบทความต่าง ๆ จาก Clean Swift จึงทำการสรุป และ แปลไว้อ่านกันนิดหน่อย ซึ่งน่าจะมีประโยชน์สำหรับนักพัฒนาอย่างมาก มาเริ่มด้วยเรื่อง Clean Swift คืออะไร ? เป้าหมายหลักของ Clean Swift Architecture คือ แก้ไขปัญหา Massive View Controller ผลที่ตามมาคือ เมื่อลูกค้าถามว่า ต้องใช้เวลาเท่าไรในการแก้ไข Bug ? ต้องใช้เวลาเท่าไรในการเพิ่ม feature ใหม่เข้าไป

Read More…