Cocoa Style for Objective-C: Part II

จาก Cocoa Style for Objective-C ตอนแรก ได้พูดการตั้งชื่อคลาส เมธอด และตัวแปรไปแล้วนั้น ตอนนี้ก็จะพูดถึงรายละเอียดที่มากขึ้นไปอีกในการตั้งชื่อที่มากไปกว่าครั้งก่อน เพราะด้วยไวยกรณ์และลักษณะของภาษา Objective-C ที่แปลกออกไปจากหลายๆ ภาษาอื่น เช่น C/C++, Java หรือ PHP และด้วยวิถีของ Apple ที่วางเอาไว้ว่าการกำหนดชื่อส่วนประกอบต้องอ่านแล้วเข้าใจได้ง่าย อธิบายได้ด้วยตัวของมันเอง

บล็อกนี้เรียบเรียงเนื้อหามาจาก Cocoa Dev Central : Cocoa Style for Objective-C Part I, Part II

Continue reading

Core Data in Action: Why I Did It

จากที่เคยเขียนบล็อกเรื่อง Core Data ทั้ง 2 ตอน (Application Layout, Development Phase) เท่าที่ลองอ่านแล้วตั้งคำถามกับตัวเองแบบคนไม่รู้ก็ได้คำถามที่ว่าทำไมต้องใช้อันนั้น ไม่ใช้ได้ไหม หรือแล้วไอ้นี่มันมีประโยชน์อะไร มีหลายข้อเหมือนกัน สุดท้ายก็เลยคิดว่าคนที่อ่านก็น่าจะคิดและเจอปัญหาแบบเดียวกัน จากเดิมที่เปลี่ยนให้บล็อกมีแค่ 2 ตอนจบ เลยกลับมาเป็นแบบเดิมที่ตั้งใจไว้ว่าน่าจะมีตอนสรุปจบตอนที่ 3 ด้วย ซึ่งตอนนี้ก็อย่างที่ได้เกริ่นไปแล้วว่าคงจะเป็นเหมือน faq ของวิธีการพัฒนาที่ผมเขียนไปแล้วครับ

Continue reading

Cocoa Style for Objective-C: Part I

สำหรับการเริ่มเขียนภาษา Objective-C หรือภาษาคอมพิวเตอร์อื่นๆ ไม่ว่าจะเป็น Java, C หรือ PHP สิ่งสำคัญอย่างหนึ่งนอกจากจะต้องเข้างใจกลไกการทำงานของภาษานั้นๆ แล้ว ก็จำเป็นต้องเข้าใจธรรมชาติของลักษณะการกำหนดชื่อคลาส เมธอด และตัวแปร นั่นนอกจากจะทำให้โค้ดที่เราเขียนขึ้นเองนั้นเป็นที่เข้าใจง่ายแล้ว ก็ยังทำให้เราเข้าใจโค้ดอื่นๆ ที่เราต้องการได้ เช่น เฟรมเวิร์คภายนอก สำหรับภาษา Objective-C เอง ทาง Apple ก็ได้วางแนวทางการสำหรับวิธีการเขียนโค้ดให้กับนักพัฒนาเพื่อให้โค้ดเข้าใจได้ง่ายมากที่สุด ซึ่งนอกจากที่เขียนไว้เป็นลายลักษณะอักษรแล้วก็ยังมีบางส่วนที่ไม่ได้กำหนดไว้ (แต่กลายเป็น de facto) บล็อกต่อไปในี้ก็เลยตั้งใจว่าจะนำเอาเรื่องพวกนี้มาอธิบายไว้ก่อน ก่อนที่เริ่มกับ Objective-C มากกว่านี้ โดยบล็อกจะแบ่งออกเป็น 2 ตอนด้วยกันซึ่งเนื้อหานี้จะเรียบเรียงมาจากบทความของ CocoaDevCentral 2 บทความ ได้แก่ Cocoa Style for Objective-C: Part I และ Cocoa Style for Objective-C: Part II โดยที่จะแบ่งเป็น 2 ส่วนคือ

      Part I: การตั้งชื่อพื้นฐานของ Class, Variable, Accessor หรือ Method
      Part II: รายละเอียดอื่นๆ สำหรับชื่อ Method, Global Symbols, Parameter และอื่นๆ

Continue reading

Introduction to Persistent Data in iOS

การพัฒนาแอพพลิเคชั่นบน iOS Device, เครื่องคอมพิวเตอร์, หรือแพลตฟอร์มอื่นๆ เรื่องหนึ่งที่สำคัญมาก นั่นก็คือการเก็บข้อมูลต่างๆ ที่ผู้ใช้เคยกำหนดไว้แล้ว เช่น ข้อมูลการลงชื่อเข้าใช้งาน (สำหรับแอพพลิเคชั่น facebook บนมือถือ), การกำหนดกั้นหน้ากั้นหลัง (ในโปรแกรมประเภทประมวลผลคำ) หรือ ค่าต่างๆ ที่กำหนดให้ผู้ใช้อัตโนมัติเมื่อเริ่มทำงานเป็นครั้งแรก ซึ่งแต่ละแพลตฟอร์มการพัฒนานั้น ก็จะมีวิธีการเก็บค่าเหล่านี้ไว้ด้วยวิธีการที่ต่างกันออกไป แต่สามารถแบ่งได้เป็น 2 วิธีใหญ่ๆ คือ การบันทึกลงไฟล์แล้วใช้การเรียกคืนในลักษณะของคำสำคัญที่ชี้ไปยังค่าที่ต้องการนั้น (key-value) เช่น properties file ของ java ซึ่งข้อดีของวิธีการแบบนี้คือเข้าถึงได้สะดวกรวดเร็วในกรณีที่มีข้อมูลไม่มาก แต่ข้อเสียคือต้องบริหารจัดการคำสำคัญ (key) เหล่านั้นให้ดี เพราะมีโอกาสซ้ำกันได้

# Fruit.properties
fruit.durain.name = Durain
fruit.durain.price = 90.00
fruti.durain.fruitNote = Teasty fruit

Continue reading