ปัญหาที่มักเจอใน XCode สำหรับการเขียน iOS app ด้วยภาษา Swift คือ รูปแบบการเขียน code ที่แตกต่างกัน ซึ่งมักจะแก้ไขด้วย การพูดคุยและกำหนด rule ด้วยข้อตกลงหรือนำเครื่องมือมาใช้งาน ยกตัวแย่างเช่น Swift Lint
Read More…
นั่งดู VDO จาก session ต่าง ๆ ของงาน WWDC 2019 มันเยอะมาก หนึ่งในนั้นมี session ที่ชอบมาก ๆ ซึ่งคิดว่ามันคือพื้นฐานของการพัฒนามาก ๆ นั่นก็คือ Great Developer Habits สำหรับการพัฒนาระบบงาน โดยเฉพาะ iOS Developer นั่นเอง มาดูกันว่ามีอะไรบ้าง
Read More…
จากงาน WWDC19 มี session เรื่อง Testing in XCodeมี feature ใหม่ที่น่าสนใจคือ Test Plan ซึ่งทำการ extend มาจาก XCTest นั่นเอง มีเป้าหมายเพื่อ การจัดการและควบคุมการทดสอบให้สะดวกยิ่งขึ้น มาลองใช้งานกันดู
Read More…
ในงาน WWDC 2018 นั้นมี session ที่น่าสนใจเกี่ยวกับการทดสอบ app ด้วย ซึ่งที่เห็นมามีอยู่ 2 session คือ What’s new in Testing ? Testing tips and tricks จึงทำการสรุปแบบสั้น ๆ ไว้นิดหน่อย
Read More…
ปัญหามีอยู่ว่า ไม่สามารถทำการเขียน code เพื่อทำ UI Testing สำหรับ UISlider ที่มีการแก้ไขรูปแบบการแสดงผลได้ สิ่งที่เจอคือ ทำการหมุน UISlider จากแนวนอนไปเป็นแนวตั้ง ทำให้รูปแบบของการหา element และการจัดการที่ต่างออกไป !!
Read More…
วันนี้ลองใช้งาน XCode 8.2 พบว่า Simulator มันเปลี่ยนไป นั่นก็คือ สามารถบันทึกการใช้งาน Simulator เป็น Video ได้แล้ว
Read More…
สำหรับ iOS developer ทั้งหลายคงต้องใช้ dependency หรือ library อื่น ๆ อย่างแน่นอน ซึ่งถ้า copy code มาใส่ project เองคงไม่ดีเท่าไรนัก !! ดังนั้นน่าจะต้องจัดการผ่านเครื่องมือต่าง ๆ เช่น CocoaPods Carthage Swift Package Manager โดยใน blog นี้จะพูดถึง CocoaPods ตั้งแต่การติดตั้งไปจนถึงการใช้งานแบบง่าย ๆ
Read More…
เนื่องจากทำการเตรียมข้อมูลสำหรับการทำสอบ iOS app นิดหน่อย ซึ่งเตรียมข้อมูลในรูปแบบ dictionary แต่ดันเจอปัญหาการ build ช้ามาก ๆ ใน XCode 7.3 (Swift 2.3) !! โดยไร้สาเหตุ ตัวอย่าง code จาก Swift literal parsing bug แสดงผลการทำงานดังรูป (รอกันต่อไป build นานมาก ๆ) เมื่อไปดูใน web ก็พบว่ามันคือ Bug ของภาษา Swift นั่นเอง อยู่ใน SR-305 ซึ่งถูกแก้ไขไปแล้ว ซึ่งจะอยู่ใน Swift 3 !!
Read More…
ในการทดสอบ iOS app ผ่านระบบ Continuous Integration นั้น จำเป็นต้องทำการทดสอบทั้ง Unit test และ UI test และสร้างผลการทดสอบในรูปแบบ JUnit เพื่อสรุปผลการทดสอบต่าง ๆ ให้ง่ายและชัดเจน ปกติจะใช้ xcpretty ร่วมกับ xcodebuild แต่ว่าจะลำบากขึ้นเมื่อใช้งานร่วมกับ XCode 8 ดังนั้นทางผู้พัฒนา fastlane ก็ได้สร้างเครื่องมือใหม่ชื่อว่า trainer ขึ้นมา ซึ่งใช้ง่ายกว่า และ ทำการได้รวดเร็วกว่า ดังนั้นลองมาใช้งานกันดูหน่อย
Read More…
เนื่องจากมีโอกาสได้แบ่งปันเรื่อง MVP pattern ให้ทีมนิดหน่อย (แบบไม่ตั้งใจ) ซึ่งมีเรื่องหนึ่งที่ติดค้างไว้ก็คือ การ Inject Object จาก Storyboard ไปเลย จะได้ไม่ต้องมาสร้าง object ขึ้นมาใน ViewController เอง ทำให้การเขียน code ง่าย และ สะดวกขึ้น
Read More…