Model

เริ่มจากโมเดลกันก่อน

ให้เราสร้างไฟล์ใหม่ ด้วยการคลิ๊กขวาที่โฟลเดอร์ TodoApp ใน Project navigator เลือก New File...

จากนั้นเลือก Swift File กด Next

ตั้งชื่อไฟล์เป็น Todo.swift เนื่องจากไฟล์นี้จะเป็นโค้ดของแอป ไม่ใช่โค้ดเทส ให้เลือก Target เป็น TodoApp เท่านั้น แล้วกด create

Xcode จะแสดงไฟล์ที่เพิ่งสร้างให้เรา

circle-info

ถ้าเรา enable Git เอาไว้ในตอนสร้างโปรเจค จะมีสัญลักษณ์ A ที่ท้ายชื่อไฟล์ของเราเพื่อบอกว่านี่คือไฟล์ที่เราเพิ่มเข้ามา

Todo.swift

ให้เราเขียนโค้ดดังนี้

บรรทัดที่ 3 - 32 เป็นการประกาศ Class Todo ที่เก็บรวบรวม TodoItem บรรทัดที่ 34 - 42 เป็น Class TodoItem

บรรทัดที่ 6 - 8 เรียกว่า compute property สามารถ get ค่าได้อย่างเดียวไม่สามารถ set ค่าได้เนื่องจากไม่สามารถเก็บค่าไว้ได้ โดยเมื่อเรียกจะได้จำนวน TodoItem ที่เก็บไว้ใน items กลับไป

บรรทัดที่ 10 - 12 เป็นการประกาศฟังก์ชั่นที่รับ Int และคืนเป็น TodoItem ใช้ในการ get TodoItem ที่เก็บไว้ใน items ตาม index ที่ระบุ

บรรทัดที่ 14 - 16 เป็นการประกาศฟังก์ชั่นที่รับ TodoItem ใช้ในการเก็บ TodoItem เพิ่ม โดยเพิ่มลงไปใน index ที่ 0 ของ items (Prepend)

บรรทัดที่ 18 - 20 เป็นการประกาศฟังก์ชั่นที่ใช้ลบ TodoItem ตาม index ที่ระบุ

บรรทัดที่ 22 - 26 เป็นการประกาศฟังก์ชั่นที่ใช้ในการหา index ของ TodoItem ที่อยู่ใน items

บรรทัดที่ 28 - 31 เป็นการประกาศฟังก์ชั่นที่ใช้ในการย้าย TodoItem ในตำแหน่ง sourceIndex ไปยัง destinationIndex

TodoItem.swift

เนื่องจาก Todo.swift มีคลาส TodoItem ปนอยู่ด้วยจะเป็นการดีกว่าที่เราจะแยกมันออกมาเป็นอีกไฟล์นึงแทน ให้เราสร้างไฟล์ใหม่ชื่อ TodoItem.swift

แล้วย้ายโค้ดมาที่นี่

Last updated