Profile cover photo
Profile photo
Thai Pangsakulyanont
1,436 followers -
THIS IS THAI
THIS IS THAI

1,436 followers
About
Posts

Post has attachment
This is my new library, a small one, to help create accessor/iterator functions (without having to type the function(...) { return ... } thing).

Post has attachment
บางโค้ดที่เป็นลอจิกหรือคำนวนคณิตศาสตร์เยอะๆ ถ้าไม่คอมเม้นต์ไว้ บางครั้งก็งงได้ครับ ผมเคยเขียนโค้ดที่ไว้หามุมระหว่างเว็กเตอร์ ก็เขียนทดเป็นคอมเม้นต์ไว้ครับ เพราะบางทีเขียนเป็นโค้ดอย่างเดียว แล้วใช้หลายๆ ตัวแปร อาจจะอ่านยากกว่า หรือยาวกว่า หรือทำงานช้ากว่า:

// V1 dot V2 = |V1| |V2| cos theta
// theta = arccos( (V1 dot V2) / (|V1| |V2|) )
return Math.acos((x1 * x2 + y1 * y2) / Math.sqrt((x1 * x1 + y1 * y1) * (x2 * x2 + y2 * y2))) * 180 / Math.PI;

บางที โค้ดที่อ่านง่าย ก็ต้องถูกทำให้อ่านยากเพื่อให้มันทำงานเร็วขึ้นครับ หรือบางทีก็คอมเม้นต์ไว้ ว่า "ทำไม" ถึงตัดสินใจเขียนโค้ดไว้แบบนี้ อย่างเช่น

// for Internet Explorer compatibility

ในบางโค้ดที่ใช้ Data Structure หลายๆ ชนิด บางครั้งก็มีความจำเป็นต้องคอมเม้นต์ว่า คลาสนี้คลาสนั้นเอาไว้ทำอะไรครับ เช่นในโค้ดของ CoffeeScript:

http://jashkenas.github.io/coffee-script/documentation/docs/nodes.html

ในบางภาษาอาจจะแทบเป็นไปไม่ได้เลยที่จะเขียนโค้ดให้อ่านง่าย (เช่น C) โดยเฉพาะ API ของภาษาอื่นที่เขียนในภาษา C ยิ่งต้องเขียน Comment เลยครับ อย่างเช่น API บางตัวของภาษา Ruby ซึ่งเมื่อเทียบระหว่างอ่าน Comment กับอ่าน Source Code อ่านคอมเม้นต์เข้าใจง่ายกว่าเยอะครับ นอกจากนี้ Comment ยังสามารถบอกกรณีแปลกๆ วิธีพลิกแพลง ประสิทธิภาพ ชนิดของข้อมูลที่ฟังก์ชั่นนี้จะทำงานได้ดี ข้อยกเว้น ข้อจำกัด โดยไม่ต้องให้คนอ่านโค้ดมา Analyze เองครับ:

https://github.com/ruby/ruby/blob/trunk/enum.c
http://www.ruby-doc.org/core-2.0/Enumerable.html
Add a comment...

Post has attachment
Add a comment...

Post has attachment
I had to deal with UTF-8 data that comes as a binary stream and sometimes encountered gibberish data along with the output.

The reason is because I use buffer.toString() which doesn't handle incomplete UTF-8 sequence. The fix is to use StringDecoder instead. The API docs didn't say much about StringDecoder so I wrote a post about it. Hope that this can be useful.

Post has shared content

Post has shared content
Add a comment...

Post has shared content

Post has shared content

Post has attachment
Added photos to Barcamp Bangkhen 3.
Commenting is disabled for this post.

Post has attachment
Real Idol Real You @ มาที่ ม. เกษตรครับบ

มีแจกหนังสือกับเสื้อด้วย :D
Add a comment...
Wait while more posts are being loaded