Word Counting in Various (Programming)Language
ผมเป็นคนหนึ่งทีีเขียน Programming Langauge ได้หลายภาษา
เนื่องจากสนใจ ผมเริ่มเขียนจาก C/C++ ซึ่งก็ไม่สบายนัก เลย
ค้นหาภาษาที่จะมาช่วยล่นระยะเวลาในการเขียนเล่น เช่น Python, Ruby
วันนี้ก็อยากเขียนเล่น โดยเราจะมาเขียนโปรแกรมง่ายๆ กันด้วยหลายๆ ภาษากัน
ปัญหา: ผมจะนับคำจำนวนคำที่ไม่ซ้ำจากข้อความหนึ่งข้อความ (string)
C++ เนื่องจากการใช้ split บน C++ นั้นไม่เจอวิธีที่ดูง่ายก็เลยเขียนเองซะเลย
Objective-C (with ARC) เริ่มมีตัวช่วยเป็นภาษาที่ใช้เขียนบน iOS
Java ภาษาที่เขาว่าเวิ่นเว้อ #จาว่าเร็วส์
คราวนี้มาฝั่ง Scripting Langauge กันบ้างเริ่มที่ Python
Ruby กันบ้าง เป็นภาษาที่พักหลังนี้ผมใช้เขียนประจำเลยครับ :)
มีคนบอกว่าภาษาพวก Scripting เร็วส์ ซึ่งเร็วในที่นี้หมายถึง "ความเร็วในการพัฒนา" นะครับ
จากที่เห็นไปด้านบน เราสามารถแก้ปัญหาด้วย Code เพียงไม่กี่บรรทัดเท่านั้น
ลองเล่นกันครับ ... เป็นหลายๆ ภาษามันก็ดี เน้นที่พื้นฐานให้มาก ถ้าพื้นฐานเน้น กำแพงเวลาในการเรียนรู้ภาษาใหม่ๆ จะลดลง แล้วอย่าพยายามเขียนภาษาใหม่ ใน Environment ของภาษาเก่า เช่นมาเขียน Scripting แล้วดันไปเขียน Index-based Loop อะไรแบบนั้น
ผมเล่นหลายๆ ภาษาเพราะการชอบทำ Problem Solving นะครับ ... รู้สึกสนุก ท้าทาย ปัญหาไม่ต้องยากขึ้นเรื่อยๆ ก็ได้ (ยากๆ ก็ทำไม่ได้เหมือนกัน) เพียงแต่เราหาวิธีในการแก้ปัญหาให้มันง่ายขึ้นได้เรื่อยๆ เรื่องความเร็วอย่าไปกังวลให้มาก (ถ้ามันไม่ช้าเกินไปน่ะนะ)
ruby นี่ให้อารมณ์เดียวกันกะ bash เลยแฮะ
ReplyDeleteecho 'this is a cat this is a bat this is a rat' | tr ' ' '\n' | sort | uniq | wc -l