วันพุธที่ 11 กุมภาพันธ์ พ.ศ. 2558

หัดเขียน Swift ตอนที่ 1 - Variables, Constants, String



          สวัสดีครับ ในบทความนี้ก็จะเป็นบทความถัดจาก บทความที่แล้ว ที่ได้มีการแนะนำเพื่อนๆให้รู้จักกับภาษา Swift และไฟล์สำหรับฝึกทดลองเล่นคำสั่งภาษา Swift อย่าง Playground ไปแล้ว ในบทความนี้ผมแนะนำเรื่องของ Variables , Constants และ String ในภาษา Swift กันครับ โดยใช้เจ้าตัว Playground นี่แหละครับ มาเริ่มกันเลยดีกว่า เพื่อจะได้ไม่เสียเวลาเน้อะ

        ผมเชื่อว่าคนส่วนใหญ่ที่กำลังศึกษาภาษา Swift เพื่อเขียนโปรแกรมสำหรับ iOS หรือ Mac OSX ก็ตาม น่าจะมีพื้นฐานทางโปรแกรมกันมาอยู่แล้ว ดังนั้นผมจะไม่ขอแนะนำพื้นฐานทางโปรแกรมมิ่งทั่วๆไปอย่างเช่น ตัวแปรคืออะไร ชนิดตัวแปรคืออะไร ลูปคืออะไรนะครับ และจะพูดในแง่ของการใช้งาน จะไม่ขอเจาะลึกถึงเบื้องหลังการทำงานในเชิงลึก  ดังนั้นรูปแบบของผมจะเป็น การแสดง Code ตัวอย่างก่อน จากนั้นจะอธิบาย Code ส่วนที่สำคัญที่เกี่ยวกับภาษา Swift ครับ  ป่ะ เริ่ม!!!

1) เข้า Playgroud แล้วทดลองพิมพ์คำสั่งตาม ดังนี้


จะเห็นได้ว่า

- การประกาศตัวแปรนั้น เปลี่ยนไปนิดหน่อย โดยมีรูปแบบดังนี้

                   var [ชื่อตัวแปร]: [ชนิดของตัวแปร] = [value]

- สามารถ assign ค่าให้กับ ตัวแปร greeting ใหม่ได้ 

- การแสดงค่าของตัวแปรออกมา (Debug) จะใช้ฟังก์ชั่น println( )   
  ( มันก็คือ NSLog( ) ในภาษา  Objective-C  นั่นเอง )



2) ลองเอา ชนิดของตัวแปรออก และกำหนดค่าให้ greeting ใหม่ เป็นเลขจำนวนเต็ม ดังนี้


จะเห็นได้ว่า

- เราไม่จำเป็นต้องประกาศชนิดของตัวแปร ก็ได้ แต่ต้องมีการกำหนดค่าเริ่มต้นให้ ซึ่งตัว compiler จะทราบชนิดตัวแปรและกำหนดให้อัตโนมัติ โดยอาศัยดูจาก ค่าเริ่มต้นที่กำหนดให้ (initial assignment) จากตัวอย่างคำสั่งนี้ greeting จะมี type เป็น String เพราะ Hello อยู่ภายใต้เครื่องหมาย Double quotes ซึ่งหมายถึง Value ที่เป็นชนิด String นั่นเอง

- พบ Error ที่ คำสั่ง greeting = 2558 เนื่องจาก greeting เป็นตัวแปรชนิด String แต่เราไปกำหนดค่าใหม่ ที่เป็น Interger ดังนั้นในเรื่องนี้ มันจะไม่ยืดหยุ่นเหมือนในภาษา PHP ครับ


3) กำหนดค่าให้กับตัวแปร greeting ใหม่ ตามนี้เลย 



- ดูจาก Code และผลลัพธ์ แล้ว คงพอเดากันได้ ว่ามันคือการ "ต่อสตริง" นั่นเอง โอ้วว พระเจ้าจอร์จ การต่อสตริง ง่ายเหมือนกับในภาษา Javascript และ PHP เลยครับ ใช้แค่เครื่องหมาย + ในการเชื่อมต่อเท่านั้นเอง  หากคนที่เคยใช้ Objective-C มาก่อน คงจะดีใจน้ำตาไหลแน่ๆ เพราะของเดิมนั้น "โคตรยาว"


4) ลองเปลี่ยนการประกาศตัวแปร โดยใช้ var นำหน้า เป็น let แทน ดังนี้


- การใช้ let นำหน้าตัวแปร ขณะประกาศตัวแปร หมายถึง การกำหนดชนิดตัวแปรให้เป็น ค่าคงที่ หรือ Constant นั่นเอง  ดังนั้น เราจึงไม่สามารถไปเปลี่ยนแปลงค่าให้กับตัวแปร greeting ได้นั่นเอง จึงเกิด Error ขึ้นมาทันทีครับ

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

5) ลองแก้โค้ดเป็นแบบนี้ดูครับ


จะเห็นได้ว่า

- String type มี API Method ให้เรียกใช้ด้วย อย่างเช่น capitalizedString และ append เพราะ String type ในภาษา Swift ก็เหมือนกับ NSString ใน Objective-C นั่นเอง หากคนที่เคยใช้Objective-C หรือพวกJava มาก่อน จะคุ้นเคยกับพวก method ต่างๆ เหล่านี้  เพราะ String ในภาษา Swift ไม่ใช่ Primative Data type เหมือนพวก int , float หรือ double  แต่เป็น Object type



ในบทความหน้า เราจะลุยกันต่อ ในเรื่องของ Numeric type และ Conversion  สวัสดีครับ :3


ไม่มีความคิดเห็น:

แสดงความคิดเห็น