Page 13 - Swift Languae programing
P. 13

Swift programming language Page.11

                 ประโยชน์ของ Optionals


                 1.  ท าให้เราต้องท าการ unwrap ทุกครั้งที่เจอ Optionals เนื่องจากการ Unwrap นั้นท าให้ไม่เกิด Error เมื่อเกิดปัญหาค่าว่าง (nil)
                    ซึ่งท าให้เกิด bug มากมายนั่นเอง


                 2.  เพิ่มความสะดวกในเรื่องของการอ่านโค้ด เราจะรู้ได้ทันทีเลยว่าตัวแปรที่อ่านหรือก าลังใช้งานนั้น อาจจะมี
                    ค่าหรือไม่มีค่าก็ได้ หรือว่าเป็นตัวแปรที่มีค่าอย่างเดียวเท่านั้น



                       สรุปคือ


                              1.  เราไม่สามารถก าหนดค่า nil ตรงๆให้กับตัวแปร ในภาษา Swift ได้
                                                           ็
                              2.  Optionals คือชนิดตัวแปรเอาไว้เกบตัวแปรที่มีค่าและไม่มีค่า (nil)
                                                                    ่
                              3.  ถ้าต้องการก าหนดค่า nil ต้องใช้ Optionals นันเอง โดยใส่เครื่องหมาย ?
                                         ็
                              4.  ตัวแปรที่เปน Optionals ไม่สามารถมาใช้งานร่วมกันได้ ต้องท าการ Unwrap ก่อน
                                   ี
                                                   ี
                              5.  วิธการ Unwrap มี 4 วิธ ดังนี้
                                                          ่
                                  a)  Force Unwrap (!) ต้องมันใจว่าตัวแปรต้องไม่ nil *****
                                               ื่
                                             ่
                                  b)  เขียนค าสังเงอนไข เช็คค่า nil ก่อน Force Unwrap
                                               ื่
                                             ่
                                  c)  เขียนค าสังเงอนไข ด้วย If let
                                               ื่
                                             ่
                                  d)  เขียนค าสังเงอนไข ด้วย Guard let
                    6.  rd let
                 เมื่อห่อตัวแปรด้วย Optionals แล้วจะไม่สามารถเอาตัวแปรมาใช้งานร่วมกันได้ ดังนี้ ในกรณีต้องการใช้ค่า ต้องท าการ Unwrap
          Optionals มี 4 วิธี คือ

















                 1.  Force Unwrap วิธีการนี้ใชเครื่องหมาย exclamation mark (!) ดังรูปซ้าย แต่
                                          ้
                    ปัญหาการแกะด้วยวิธีการนี้คือ เมื่อไปแกะค่าตัวแปรที่ เป็น nil ท าให้เกิด Runtime
                    Error ดังรูปขวา โปรแกรมที่เขียนจะ Crash ทันที สรุปว่าค่าถ้าใช้วิธีนี้ตัวแปรต้องไม่
                    เป็นค่า nil เท่านั้น
   8   9   10   11   12   13   14   15   16   17   18