HomeComSci M.4Python101 : Welcome to the World of Python!

Python101 : Welcome to the World of Python!

Learning Objectives:

  • Students will be able to explain the origins of the Python programming language.
  • Students will be able to write and run a simple Python program to print a message

สวัสดีครับ นี่คือสัปดาห์แรกของการเรียนเขียนโปรแกรมด้วยภาษา Python กัน หลาย ๆ คนก็อยากที่จะศึกษาอยู่แล้ว แต่ก็อาจมีบางคนตั้งคำถามว่าทำไมต้องใช้ภาษานี้ในการเขียนโปรแกรม ??? คำตอบคือบอกไม่ได้หรอกครับ

แต่เราต้องดูเหตุผลกันดีกว่าครับ ว่าทำไมเราควรจะเลือกภาษาตัวนี้ในการพัฒนาโปรแกรมจนกลายไปสู่ซอฟต์แวร์ได้ เหตุผลหลัก ๆ ที่เราควรจะเรียนภาษา Python คือ เขียนน้อย เข้าใจได้ง่าย มีประสิทธิภาพมาก เหมาะแก่มือใหม่ทุกคนครับ

ภาษาไพทอน (Python Programming Language)

เป็นภาษาระดับสูง (High-level Programming Language) ออกแบบมาให้ใกล้เคียงภาษามนุษย์เพื่อให้มนุษย์สามารถอ่านเข้าใจได้ง่าย ใกล้เคียงกับภาษาธรรมชาติ เพื่อที่มนุษย์จะสามารถเขียนลำดับขั้นตอนการแก้ปัญหา (Algorithm) ให้อยู่ในรูปแบบของชุดคำสั่งทำให้ programmer ไม่ต้องไปรู้จักกับวงจรหรือสัญญาณไฟฟ้าภายในเครื่อง (Source code) แตกต่างจากภาษาเครื่อง (Machine Language) จะใกล้เคียงกับการทำงานของเครื่องมากกว่า ภาษาคอมพิวเตอร์ (machine language) เป็นภาษาที่เครื่องเข้าใจได้โดยตรง แต่สำหรับคนจะอ่านและเขียนได้ยาก ตัวอย่างเช่น Assembly language

คุณสมบัติHigh-level programmingLow-level programming
ใช้งานง่ายง่าย (Easy)ยาก (Difficult)
อ่านออกเขียนได้สะดวกสะดวก (Readable)ยาก (Difficult)
ใกล้เคียงภาษาธรรมชาติใกล้เคียง (Similar)ไม่ใกล้เคียง (Different)
Abstractionสูง (High)ต่ำ (Low)
รู้จักวงจรภายในเครื่องไม่จำเป็น (Not required)จำเป็น (Required)
ตัวอย่างภาษาPython, Java, C#Assembly language
ตารางเปรียบเทียบในด้านต่าง ๆ ระหว่างการเขียนโปรแกรมภาษาระดับสูงและระดับต่ำ
Credit : Caffiend, stackoverflow

จากรูปตัวอย่างข้างต้นเป็นการสั่งงานให้คอมพิวเตอร์ทำงานโปรแกรมที่เราได้เขียนขึ้น โดยกำหนดการทำงานให้แสดงผลว่า “Hello, World” นั่นเอง ลองดูรูปทางด้านซ้ายมือ นั่นคือการเขียนโปรแกรมโดยใช้ภาษา Assembly ซึ่งเป็นการเขียนโปรแกรมโดยใช้ภาษาระดับ Low-level ลองเปรียบเทียบกับด้านขวาซึ่งใช้ภาษา C ซึ่งเป็นการเขียนโปรแกรมโดยใช้ภาษาระดับ High-level

แต่อย่าลืมนะครับว่าภาษา ภาษาเครื่อง (Machine Language) หรือ Low-level Language นั้นแม้จะดูแล้ววุ่นวายกว่าในการเขียนโปรแกรม แต่คอมพิวเตอร์เข้าใจได้ ส่วน . . . High-level Language นั้นมนุษย์เข้าใจได้ง่ายแต่คอมพิวเตอร์ไม่เข้าใจครับ เรามีทางออกโดยการใช้วุ้นแปลภาษาครับ . . . ? ? ?

จะบอกว่าจริง ๆ แล้วมันต้องอาศัยการแปลภาษาครับ ใช้ Translate ต่าง ๆ นั่นแหละครับ แต่ในการเขียนโปรแกรมคอมพิวเตอร์เราใช้ คอมไพเลอร์ (Compiler) หรือ อินเทอร์พรีเตอร์ (Interpreter) ครับ


คอมไพเลอร์ (Compiler) กับ อินเทอร์พรีเตอร์ (Interpreter)

การที่จะให้คอมพิวเตอร์แปลโปรแกรมที่มนุษย์เขียนโดยใช้ High-level ต้องทำการแปลโปรแกรมเป็นชุดคำสั่งภาษาคอมพิวเตอร์หนึ่ง ไปเป็นชุดคำสั่งที่มีความหมายเดียวกันในภาษาคอมพิวเตอร์ที่เข้าใจได้ เปรียบเสมือนล่ามที่แปลภาษาหนึ่ง ไปเป็นอีกภาษาหนึ่ง

สมมติว่าเราเขียนโปรแกรมภาษา Python ไว้ชุดหนึ่ง ต้องการรันโปรแกรมนี้บนเครื่องคอมพิวเตอร์ คอมไพเลอร์จะทำหน้าที่แปลงโค้ด Python ของเรา ไปเป็นภาษาเครื่อง (Machine language) ซึ่งเป็นภาษาที่ CPU เข้าใจและสามารถรันได้โดยตรง

ซึ่งสามารถแบ่งย่อยเป็นคอมไพเลอร์ กับ อินเทอร์พรีเตอร์
สมมุติว่าเราได้รับคำสั่งให้เราไปทำงานซึ่งเราไม่สามารถอ่านภาษาที่เขียนมานั้นเราจะต้องแปลภาษาใช่ไหมครับ เราจะลองเปรียบเทียบดังนี้ครับ
คอมไพเลอร์ (Compiler) จะทำงานโดยแปลภาษาทั้งหมดให้เสร็จสิ้นแล้วจากนั้นค่อยดำเนินการทำงาน
อินเทอร์พรีเตอร์ (Interpreter) มีขั้นตอนการแปลภาษาครั้งละประโยค แล้วจึงทำงานจนเสร็จสิ้นประโยคนั้นจึงจะไปแปลประโยคถัดไป

ไปเริ่มเขียนโปรแกรมกันดีกว่า ไปก้านน . . .

Share: 

Comments

  • KaoChayatorn
    June 17, 2024

    กานดีมากครับ

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *