14 พฤษภาคม 2560

Published พฤษภาคม 14, 2560 by with 0 comment

จาก Python สู่ Golang

ภาษา Python เป็นภาษาที่เขียนง่าย มีโมดูลมากมายและเหมาะสมกับผู้เริ่มเขียนโปรแกรม เป็นข้อดีของภาษานี้ แต่หากต้องการเปลี่ยนจากเขียนภาษา Python ไปเป็น Golang เนื่องด้วยต้องการประสิทธิภาพที่สูงขึ้น หรือ เหตุผลอื่น ๆ ก็ตาม
เพราะภาษาไพทอน (Python) เป็นภาษาแบบ interpreter ไม่มีทางสู้ภาษาแบบ compile ในด้านประสิทธิภาพ เช่น C , Golang ได้ เป็นข้อจำกัดโดยธรรมชาติของภาษาแบบ interpreter และไพทอนมีข้อจำกัดหนึ่งที่ชื่อว่า global interpreter lock (GIL)

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

จากเหตุผลขั้นต้น ทำให้แม้แต่ Google เองที่ใช้ไพทอนรันโค้ดจำนวนมาก แต่มาเจอ ข้อจำกัด global interpreter lock (GIL) ทำให้บริการของกูเกิลไม่สามารถขยายระบบได้ดีนัก

กูเกิลจึงสร้าง Grumpy ขึ้นมา โดยแปลงไพทอน 2.7 มารันใน Golang (เหมือน Jython ที่นำไพทอนมารันในภาษาจาวา)

สามารถอ่านรายละเอียด Grumpy  ได้ที่ https://github.com/google/grumpy

สำหรับผู้ที่ต้องการเขียนโค้ดใหม่โดยย้ายจากไพทอนมา Golang สามารถอ่านเอกสารได้ที่ https://golang-for-python-programmers.readthedocs.io/en/latest/index.html

0 ความคิดเห็น:

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

แสดงความคิดเห็นได้ครับ :)