
วันจันทร์ที่ 12 กรกฎาคม พ.ศ. 2553
ภาษา C
ข้อดี : สั้น กะทัดรัด ภาษาซี มีรูปแบบย่อทำให้เขียนสั้นลงอยู่มาก ซึ่งข้อดีก็คือ สั้นดี แต่ข้อเสีย ก็คือ ซับซ้อน อ่านยาก เวลาอ่านก็เหมือนกับการแก้สมการ ซึ่งการเขียนจะยาก แต่ก็ได้รับความนิยม และการใช้ วงเล็บปีกกา ซึ่งดูคล้ายกับวงเล็บธรรมดา จุดอ่อนอีกจุดหนึ่งที่สำคัญของภาษาซีก็คือภาษาซี มองทุกอย่างเป็น Case Sensitive ทำให้เขียนโปรแกรมแล้วหลงเรื่อง Case เป็นประจำ
การรองรับ pointer นั้นอาจจะมองได้ว่าคือจุดอ่อนที่สุดของภาษาซี ทำไมถึงเป็นเช่นนั้นpointer คือความสามารถที่ภาษาอนุญาตให้เราสามารถอ่านเขียนหน่วยความจำได้โดยตรง ซึ่งประสิทธิภาพสูงมาก (สูสีกับภาษา Assembly) เปรียบได้กับเราเปิดร้านขายของชำ แล้วบอกลูกค้าว่า เพื่อความรวดเร็ว ไปหยิบของเองเลย แล้วมาจ่ายเงินก็แล้วกัน ซึ่งวิธีนี้เร็วมากลูกค้าไม่ต้องรอเราเป็นผู้หยิบให้เลย เขาหยิบได้เอง แต่ความสะดวกนี้ ก็ต้องแลก ถ้าลูกค้าคนนั้นเมา เดินเตะของพังหมด หรืออาจจะขโมยด้วยซ้ำ อีกปัญหาหนึ่ง ก็คือตัวของภาษาซี ไม่มีตัวจัดการจองหน่วยความจำในตัวเอง เมื่อเวลาเราต้องการจองหน่วยความจำแบบ Dynamic ภาษาซี ทำ wrapper เพื่อติดต่อกับ OS เพื่อขอจองหน่วยความจำโดยตรง ปัญหาก็คือ การติดต่อกันระหว่างโปรแกรมของเรากับ OS เป็นไปอย่างหลวมๆ ถ้าโปรแกรมลืมบอก OS ว่าเลิกจองหน่วยความจำดังกล่าว หน่วยความจำนั้นก็จะถูกจองไปเรื่อยๆ เราจะเห็นเครื่องคอมพิวเตอร์ทำงานได้เร็วในตอนเช้า แต่พอตกบ่ายก็ช้าลงจนทำงานไม่ไหว จนสุดท้ายต้อง boot ใหม่ สาเหตุหลักของปัญหานี้คือ สิ่งที่เรียกว่าหน่วยความจำรั่ว หรือ Memory Leak ถึงแม้วันนี้ ภาษาซี ก็เสื่อมความนิยมไปมากแล้ว ตั้งแต่ GUI OS อย่าง Windows เข้ามามีบทบาทภาษาซีปรับตัวเองเข้ากับการเขียนโปรแกรมแบบ GUI ไม่ค่อยได้ จึงเสื่อมความนิยมไปเกือบหมด คงเหลือแต่การใช้งานบน UNIX เท่านั้น ที่ยังคงพอใช้ภาษาซีกันอยู่
ข้อเสีย : ภาษา C ไม่มีตัวจัดการจองหน่วยความจำในตัวเอง เมื่อเวลาเราต้องการจองหน่วยความจำแบบ Dynamic ภาษา C ทำ wrapper เพื่อติดต่อกับ OS เพื่อขอจองหน่วยความจำโดยตรง ปัญหาก็คือ การติดต่อกันระหว่างโปรแกรมของเรากับ OS เป็นไปอย่างหลวมๆ ถ้าโปรแกรมลืมบอก OS ว่าเลิกจองหน่วยความจำดังกล่าว หน่วยความจำนั้นก็จะถูกจองไปเรื่อยๆ เราจะเห็นเครื่องคอมพิวเตอร์ทำงานได้เร็วในตอนเช้า แต่พอตกบ่ายก็ช้าลงจนทำงานไม่ไหว จนสุดท้ายต้อง boot ใหม่ สาเหตุหลักของปัญหานี้คือ สิ่งที่เรียกว่าหน่วยความจำรั่ว หรือ Memory Leak
http://khawfangza.blogspot.com/2009/06/c.html
C++
ข้อดี : การแบ่งกันใช้งานทรัพยากรณ็ของระบบอย่างมีประสิทธิภาพ ลองสมมติเหตุการที่เรามีโปรแกรมอยู่ 5 ตัว แต่ละตัวมี Function การทำงานที่เหมือนกัน แต่ถ้าแต่ละตัวมีขนาดของ File 500 KB นั่น หมายความว่าเราเสียพื้นที่ไป 2.5 MB โดยประมาณ แต่ถ้าเราแยกเอาส่วนที่เหมือนกันออกมา เช่น Function การทำงานที่เหมือนกัน นำมาเก็ยไว้ใน File เดียวกัน ซึ่งจะทำให้พื้นที่จัดเก็ยลงได้ เช่น ถ้า เนือที่การทำงานที่เมือนกันมีประมาณ 300 KB ดังนั่น ทั้ง 5 File จะใช้ทรัพยากรณ์ เพียง 1.3 MB แทนที่จะเป็น 2.5 MB
ง่ายต่อการเปลี่ยนแปลง ในงานที่จะต้องเปลี่ยนแปลงอยู่บ่อยๆ เรามักจะเก็บส่วนที่เปลี่ยนแปลงไว้ใน File DLL เพราะมันทำให้เราแก้ไขได้สะดวก โดยแก้ไขเฉพาะส่วนที่เปลี่ยนแปลง ใน File DLL เท่านั้น และยิ่งการทำงานส่วนที่เปลี่ยนแปลงบ่อยๆ นั้นถูกใช้งานจากหลายๆ Application ยิ่งน่าจะนำมาเก็บไว้ใน File DLL แล้ว Share กันใช้งาน
การนำกลับมาใช้ใหม่ การนำกลับมาใช้ใหม่หรือ Reuse เป็นเรื่องสำคัญในกระบวนการ พัฒนา Software เพราะสามารถนำโปรแกรม ที่มีขนาดใหญ่ มาซอยเป้นชิ้นย่อยๆ โดยแต่ละชิ้นย่อยๆ อาจเก็บ Function ที่ทำหน้าที่ อย่างชัดเจนำไว้ ก็เป็นแนวความคิดเดียวกัน กับการสร้าง Component นั่นเอง เพียงแต่ File DLL จะเก็บ Function เอาไว้ ซึ่งช่วยให้เราไม่ต้องมาเขียน Function ใหม่ทุกครั้ง ถ้าเคยมีอยู่แล้ว ก็ใช้สิ่งที่มีอยู่ต่อ ยอดไปเลย
ข้อเสีย :
http://www.thai-programmer.com/?DPage=90201302
C#
ข้อดี
- ไม่ได้เกิดมาเป็นลูก Microsoft- ระบบ Component ดีมากๆ ไม่ยึดติดกับเจ้า ActiveX หรืออะไรพวกนั้น- ภาษาเข้าใจง่าย- IDE ใช้งานง่าย- เหมาะกับการพัฒนา Application สำหรับองค์กร เพราะว่าเก่ง Database- สนับสนุนมาตราฐานทุกตัว (ไม่ใช่แค่ Microsoft)
ข้อเสีย
- ภาษาเยิ่นเย้อ เสียเวลาเขียน- ความเข้ากันได้กับ Windows ยังไม่เท่า MSC++ ไม่เหมาะแก่การเขียนโปรแกรมดูแลระบบ- Help ห่วยมากๆ (Delphi 6)
http://www.thaiadmin.org/board/index.php?topic=4968.0;wap2
VB
ข้อดี
การครอบคลุมตลาด ตั้งแต่ RAD ไปกระทั่ง VB Script สำหรับเขียน ASP บน Web หรือแม้กระทั่ง Application ต่างๆ เช่น Office VISIO ก็ล้วนแล้วแต่รองรับการเพิ่มความสามารถด้วย VBA และในปัจจุบัน Microsoft ได้ขยายสังเวียนการต่อไปไปถึง Pocket PC อีกด้วย สำหรับ VB นัยว่า Store procedure ของ SQL Server Microsoft จะรองรับภาษา VB ด้วย
จุดหนึ่งที่ทำให้ VB ดูดีกว่าภาษาตระ***ล C ก็คือ Case Insensitive ผมคงไม่ปฏิเสธว่า Case Sensitive มันก็มีความยืดหยุ่นสูง แต่มันก็ทำให้เขียนโปรแกรมแล้วหลงได้ง่าย บางคนเลือก VB เพราะเหตุผลนี้เป็นหลัก
ข้อเสีย
ถูกโจมตีอีกข้อก็คือ เรื่องความเร็ว แน่นอนครับภาษา VB ช้ากว่าภาษาอื่นมาก เรื่องนี้จริงครับ แต่คนส่วนมากที่ใช้ VB จะไม่ค่อยรู้สึก เพราะงานที่ต้องใช้ความเร็วจริงๆ มีไม่มาก ถ้างานที่ต้องใช้ความเร็วจริงๆ ก็ใช้ภาษาอื่นครับ อีกข้อก็คือ VB ไม่ใช่เป็นภาษาที่เป็น OOP เต็มรูปแบบ ไม่สามารถทำ Implementation Inheritance ได้
http://www.thaiadmin.org/board/index.php?topic=4968.5;wap2
VB.net
ข้อดี
- รองรับ Optional argument ซึ่งสำคัญมากที่คุณต้องการใช้งานร่วมกับ
ActiveX component หรือการเขียนโค้ดชนกับพวก Office
- ทำตัวไม่ซีเรียสได้ คือยอมรับการทำ late-binding ได้
ถ้าไม่กำหนด Option Strict On การเขียนโค้ดพวกนี้ใช้กับพวก ActiveX
อีกนั่นเอง (ผมแนะนำให้หลีกเลี่ยงการเขียนโค้ดแบบ late-binding ใน .Net)
- รองรับการทำ named indexer (การสร้าง property ที่มี argument)
- มีคำสั่ง VB แบบเดิมๆ เช่น Left, Mid, UCase, ... ให้ใช้ง่ายๆ สำหรับ
ผู้ใช้ VB6 มาก่อน (การเรียกใช้ฟังก์ชันแบบเดิมๆ นี้จะมีผลต่อประสิทธิภาพของโปรแกรม)
- มีประโยค With..End With ให้ใช้
- ความเรียบง่าย เช่นการสร้างประโยค Event
- สามารถกำหนดชื่อเมธอดของการ implements interface ที่ต่างจากที่กำหนดไว้ใน interface
ได้ (ผมว่าไม่ค่อยได้ประโยชน์เลย ทำให้ยุ่งยากในการค้นหาเสียมากกว่า)
- มีประโยค Catch...When... ทำให้สามารถทำการ filter exception
ด้วยเงื่อนไขได้ นอกเหนือจากการ filter ด้วยชนิดของ exception เท่านั้น
- Visual Studio .Net จะทำการ compile โค้ดในลักษณะ backgroundซึ่งช่วยเป็นข้อดี
ในโปรเจ็กต์ขนาดเล็ก แต่ถ้าโปรเจ็กต์ขนาดใหญ่มหึมาจะกลับเป็นข้อเสียอย่างมาก (มีฝรั่งหลายคนบ่นว่าต้องถึงกับต้องยอม
เปลี่ยนจาก VB.Net มาเป็น C# เลย ในโปรเจ็กต์ที่มีไฟล์มีคลาสเป็น
ข้อเสีย
1.เขียนโปรแกรมที่สลับซับซ้อนมากๆไม่ได้2.ใช้Run time3.ใช้งานบน Windows อย่างเดียว
http://multimedia.udru.ac.th/homecs2/mon_cs/VB.NET.html
Java
ข้อดี
โปรแกรมจาวาที่เขียนขึ้นสามารถทำงานได้หลาย platform โดยไม่จำเป็นต้องแก้ไขหรือ compile ใหม่ ทำให้ช่วยลดค่าใช้จ่ายและเวลาที่ต้องเสียไปในการ port หรือทำให้โปรแกรมใช้งานได้หลาย platform
ภาษาจาวาเป็นภาษาเชิงวัตถุ ซึ่งเหมาะสำหรับพัฒนาระบบที่มีความซับซ้อน การพัฒนาโปรแกรมแบบวัตถุจะช่วยให้เราสามารถใช้คำหรือชื่อ ต่าง ๆ ที่มีอยู่ในระบบงานนั้นมาใช้ในการออกแบบโปรแกรมได้ ทำให้เข้าใจได้ง่ายขึ้น
ภาษาจาวามีความซับซ้อนน้อยกว่าภาษา C++ ทำให้ใช้งานได้ง่ายกว่าและลดความผิดพลาดได้มากขึ้น
ภาษาจาวามีการตรวจสอบข้อผิดพลาดทั้งตอน compile time และ runtime ทำให้ลดข้อผิดพลาดที่อาจเกิดขึ้นในโปรแกรม และช่วยให้ debug โปรแกรมได้ง่าย
ภาษาจาวาถูกออกแบบมาให้มีความปลอดภัยสูงตั้งแต่แรก ทำให้โปรแกรมที่เขียนขึ้นด้วยจาวามีความปลอดภัยมากกว่าโปรแกรมที่เขียนขึ้นด้วยภาษาอื่น
มี IDE, application server, และ library ต่าง ๆ มากมายสำหรับจาวาที่เราสามารถใช้งานได้โดยไม่ต้องเสียค่าใช้จ่าย ทำให้เราสามารถลดค่าใช้จ่ายที่ต้องเสียไปกับการซื้อ tool และ s/w ต่าง ๆ
ข้อเสีย
ทำงานได้ช้ากว่า native code (โปรแกรมที่ compile ให้อยู่ในรูปของภาษาเครื่อง) หรือโปรแกรมที่เขียนขึ้นด้วยภาษาอื่น อย่างเช่น C หรือ C++ ทั้งนี้ก็เพราะว่าโปรแกรมที่เขียนขึ้นด้วยภาษาจาวาจะถูกแปลงเป็นภาษากลางก่อน แล้วเมื่อโปรแกรมทำงานคำสั่งของภาษากลางนี้จะถูกเปลี่ยนเป็นภาษาเครื่องอีกทีหนึ่ง ทีล่ะคำสั่ง (หรือกลุ่มของคำสั่ง) ณ runtime ทำให้ทำงานช้ากว่า native code ซึ่งอยู่ในรูปของภาษาเครื่องแล้วตั้งแต่ compile โปรแกรมที่ต้องการความเร็วในการทำงานจึงไม่นิยมเขียนด้วยจาวา
tool ที่มีในการใช้พัฒนาโปรแกรมจาวามักไม่ค่อยเก่ง ทำให้หลายอย่างโปรแกรมเมอร์จะต้องเป็นคนทำเอง ทำให้ต้องเสียเวลาทำงานในส่วนที่ tool ทำไม่ได้ ถ้าดู tool ของ MS จะใช้งานได้ง่ายกว่า และพัฒนาได้เร็วกว่า (แต่ต้องซื้อ tool ของ MS และก็ต้องรันบน platform ของ MS
http://images.paxzcasso.multiply.multiplycontent.com/attachment/0/SLjJqQoKCCYAAA1nAd41/
PHP
ข้อดี
ยืดหยุ่น ไม่ซับซ้อน สามารถพัฒนาแบบ Object ได้ (PHP5 ขึ้นไป)มีบริษัทที่ให้การสนับสนุนโปรแกรมระดับ Enterprise นักพัฒนาสามารถหา Compiler ได้ฟรีๆ ไม่ต้องเสียตัง มีโปรแกรมเสริมจำนวนมาก มีคำสั่งครบถ้วน
ข้อเสีย
ถ้าต้องการการเข้ารหัส Code จะต้องเสียเงิน เพื่อใช้บริการของ Third Partyตัวภาษาเองไม่สามารถเข้ารหัสได้ Developer Environment ยังเป็นแบบ Code Based อยู่ไม่มี Compiler เพื่อสร้าง Binary สำหรับแต่ละ OS
http://www.thaiadmin.org/board/index.php?topic=4968.5;wap2
ปาศคาล
ข้อดี
- Syntax เป็นระเบียบ (Structural) สวยงาม เหมาะกับผู้เริ่มต้น และระดับสูงก็ยังไหว (DELPHI)- syntax ไม่กำกวม (ambigious อาจพิมผิดได้)- มี String
ข้อเสีย
- เพราะมันสวยเกินไป จึงเยิ่นเย้อ พิมเยอะ ไม่สะใจ- จะช้ากว่า C แน่นอน- Library ต่างๆ น้อยกว่า C
http://www.atriumtech.com/cgibin/hilightcgi?Home=/home/InterWeb2000&File=/home2/searchdata/Forums/http/www.pantip.com/tech/developer/topic/DM1041606.html
สรุป เลือกภาษาซี เพราะอยากจะศึกษาภาษานี้ให้เข้าใจก่อน
นางสาว ขวัญฤทัย เจริญผล ฑณ 2/12 เลขที่ 2
นางสาว ปัทมวรรณ ดาสา พณ 2/12 เลขที่ 14
นาย ภูวนัย แผงศร พณ2/12 เลขที่ 33
ข้อดี : สั้น กะทัดรัด ภาษาซี มีรูปแบบย่อทำให้เขียนสั้นลงอยู่มาก ซึ่งข้อดีก็คือ สั้นดี แต่ข้อเสีย ก็คือ ซับซ้อน อ่านยาก เวลาอ่านก็เหมือนกับการแก้สมการ ซึ่งการเขียนจะยาก แต่ก็ได้รับความนิยม และการใช้ วงเล็บปีกกา ซึ่งดูคล้ายกับวงเล็บธรรมดา จุดอ่อนอีกจุดหนึ่งที่สำคัญของภาษาซีก็คือภาษาซี มองทุกอย่างเป็น Case Sensitive ทำให้เขียนโปรแกรมแล้วหลงเรื่อง Case เป็นประจำ
การรองรับ pointer นั้นอาจจะมองได้ว่าคือจุดอ่อนที่สุดของภาษาซี ทำไมถึงเป็นเช่นนั้นpointer คือความสามารถที่ภาษาอนุญาตให้เราสามารถอ่านเขียนหน่วยความจำได้โดยตรง ซึ่งประสิทธิภาพสูงมาก (สูสีกับภาษา Assembly) เปรียบได้กับเราเปิดร้านขายของชำ แล้วบอกลูกค้าว่า เพื่อความรวดเร็ว ไปหยิบของเองเลย แล้วมาจ่ายเงินก็แล้วกัน ซึ่งวิธีนี้เร็วมากลูกค้าไม่ต้องรอเราเป็นผู้หยิบให้เลย เขาหยิบได้เอง แต่ความสะดวกนี้ ก็ต้องแลก ถ้าลูกค้าคนนั้นเมา เดินเตะของพังหมด หรืออาจจะขโมยด้วยซ้ำ อีกปัญหาหนึ่ง ก็คือตัวของภาษาซี ไม่มีตัวจัดการจองหน่วยความจำในตัวเอง เมื่อเวลาเราต้องการจองหน่วยความจำแบบ Dynamic ภาษาซี ทำ wrapper เพื่อติดต่อกับ OS เพื่อขอจองหน่วยความจำโดยตรง ปัญหาก็คือ การติดต่อกันระหว่างโปรแกรมของเรากับ OS เป็นไปอย่างหลวมๆ ถ้าโปรแกรมลืมบอก OS ว่าเลิกจองหน่วยความจำดังกล่าว หน่วยความจำนั้นก็จะถูกจองไปเรื่อยๆ เราจะเห็นเครื่องคอมพิวเตอร์ทำงานได้เร็วในตอนเช้า แต่พอตกบ่ายก็ช้าลงจนทำงานไม่ไหว จนสุดท้ายต้อง boot ใหม่ สาเหตุหลักของปัญหานี้คือ สิ่งที่เรียกว่าหน่วยความจำรั่ว หรือ Memory Leak ถึงแม้วันนี้ ภาษาซี ก็เสื่อมความนิยมไปมากแล้ว ตั้งแต่ GUI OS อย่าง Windows เข้ามามีบทบาทภาษาซีปรับตัวเองเข้ากับการเขียนโปรแกรมแบบ GUI ไม่ค่อยได้ จึงเสื่อมความนิยมไปเกือบหมด คงเหลือแต่การใช้งานบน UNIX เท่านั้น ที่ยังคงพอใช้ภาษาซีกันอยู่
ข้อเสีย : ภาษา C ไม่มีตัวจัดการจองหน่วยความจำในตัวเอง เมื่อเวลาเราต้องการจองหน่วยความจำแบบ Dynamic ภาษา C ทำ wrapper เพื่อติดต่อกับ OS เพื่อขอจองหน่วยความจำโดยตรง ปัญหาก็คือ การติดต่อกันระหว่างโปรแกรมของเรากับ OS เป็นไปอย่างหลวมๆ ถ้าโปรแกรมลืมบอก OS ว่าเลิกจองหน่วยความจำดังกล่าว หน่วยความจำนั้นก็จะถูกจองไปเรื่อยๆ เราจะเห็นเครื่องคอมพิวเตอร์ทำงานได้เร็วในตอนเช้า แต่พอตกบ่ายก็ช้าลงจนทำงานไม่ไหว จนสุดท้ายต้อง boot ใหม่ สาเหตุหลักของปัญหานี้คือ สิ่งที่เรียกว่าหน่วยความจำรั่ว หรือ Memory Leak
http://khawfangza.blogspot.com/2009/06/c.html
C++
ข้อดี : การแบ่งกันใช้งานทรัพยากรณ็ของระบบอย่างมีประสิทธิภาพ ลองสมมติเหตุการที่เรามีโปรแกรมอยู่ 5 ตัว แต่ละตัวมี Function การทำงานที่เหมือนกัน แต่ถ้าแต่ละตัวมีขนาดของ File 500 KB นั่น หมายความว่าเราเสียพื้นที่ไป 2.5 MB โดยประมาณ แต่ถ้าเราแยกเอาส่วนที่เหมือนกันออกมา เช่น Function การทำงานที่เหมือนกัน นำมาเก็ยไว้ใน File เดียวกัน ซึ่งจะทำให้พื้นที่จัดเก็ยลงได้ เช่น ถ้า เนือที่การทำงานที่เมือนกันมีประมาณ 300 KB ดังนั่น ทั้ง 5 File จะใช้ทรัพยากรณ์ เพียง 1.3 MB แทนที่จะเป็น 2.5 MB
ง่ายต่อการเปลี่ยนแปลง ในงานที่จะต้องเปลี่ยนแปลงอยู่บ่อยๆ เรามักจะเก็บส่วนที่เปลี่ยนแปลงไว้ใน File DLL เพราะมันทำให้เราแก้ไขได้สะดวก โดยแก้ไขเฉพาะส่วนที่เปลี่ยนแปลง ใน File DLL เท่านั้น และยิ่งการทำงานส่วนที่เปลี่ยนแปลงบ่อยๆ นั้นถูกใช้งานจากหลายๆ Application ยิ่งน่าจะนำมาเก็บไว้ใน File DLL แล้ว Share กันใช้งาน
การนำกลับมาใช้ใหม่ การนำกลับมาใช้ใหม่หรือ Reuse เป็นเรื่องสำคัญในกระบวนการ พัฒนา Software เพราะสามารถนำโปรแกรม ที่มีขนาดใหญ่ มาซอยเป้นชิ้นย่อยๆ โดยแต่ละชิ้นย่อยๆ อาจเก็บ Function ที่ทำหน้าที่ อย่างชัดเจนำไว้ ก็เป็นแนวความคิดเดียวกัน กับการสร้าง Component นั่นเอง เพียงแต่ File DLL จะเก็บ Function เอาไว้ ซึ่งช่วยให้เราไม่ต้องมาเขียน Function ใหม่ทุกครั้ง ถ้าเคยมีอยู่แล้ว ก็ใช้สิ่งที่มีอยู่ต่อ ยอดไปเลย
ข้อเสีย :
http://www.thai-programmer.com/?DPage=90201302
C#
ข้อดี
- ไม่ได้เกิดมาเป็นลูก Microsoft- ระบบ Component ดีมากๆ ไม่ยึดติดกับเจ้า ActiveX หรืออะไรพวกนั้น- ภาษาเข้าใจง่าย- IDE ใช้งานง่าย- เหมาะกับการพัฒนา Application สำหรับองค์กร เพราะว่าเก่ง Database- สนับสนุนมาตราฐานทุกตัว (ไม่ใช่แค่ Microsoft)
ข้อเสีย
- ภาษาเยิ่นเย้อ เสียเวลาเขียน- ความเข้ากันได้กับ Windows ยังไม่เท่า MSC++ ไม่เหมาะแก่การเขียนโปรแกรมดูแลระบบ- Help ห่วยมากๆ (Delphi 6)
http://www.thaiadmin.org/board/index.php?topic=4968.0;wap2
VB
ข้อดี
การครอบคลุมตลาด ตั้งแต่ RAD ไปกระทั่ง VB Script สำหรับเขียน ASP บน Web หรือแม้กระทั่ง Application ต่างๆ เช่น Office VISIO ก็ล้วนแล้วแต่รองรับการเพิ่มความสามารถด้วย VBA และในปัจจุบัน Microsoft ได้ขยายสังเวียนการต่อไปไปถึง Pocket PC อีกด้วย สำหรับ VB นัยว่า Store procedure ของ SQL Server Microsoft จะรองรับภาษา VB ด้วย
จุดหนึ่งที่ทำให้ VB ดูดีกว่าภาษาตระ***ล C ก็คือ Case Insensitive ผมคงไม่ปฏิเสธว่า Case Sensitive มันก็มีความยืดหยุ่นสูง แต่มันก็ทำให้เขียนโปรแกรมแล้วหลงได้ง่าย บางคนเลือก VB เพราะเหตุผลนี้เป็นหลัก
ข้อเสีย
ถูกโจมตีอีกข้อก็คือ เรื่องความเร็ว แน่นอนครับภาษา VB ช้ากว่าภาษาอื่นมาก เรื่องนี้จริงครับ แต่คนส่วนมากที่ใช้ VB จะไม่ค่อยรู้สึก เพราะงานที่ต้องใช้ความเร็วจริงๆ มีไม่มาก ถ้างานที่ต้องใช้ความเร็วจริงๆ ก็ใช้ภาษาอื่นครับ อีกข้อก็คือ VB ไม่ใช่เป็นภาษาที่เป็น OOP เต็มรูปแบบ ไม่สามารถทำ Implementation Inheritance ได้
http://www.thaiadmin.org/board/index.php?topic=4968.5;wap2
VB.net
ข้อดี
- รองรับ Optional argument ซึ่งสำคัญมากที่คุณต้องการใช้งานร่วมกับ
ActiveX component หรือการเขียนโค้ดชนกับพวก Office
- ทำตัวไม่ซีเรียสได้ คือยอมรับการทำ late-binding ได้
ถ้าไม่กำหนด Option Strict On การเขียนโค้ดพวกนี้ใช้กับพวก ActiveX
อีกนั่นเอง (ผมแนะนำให้หลีกเลี่ยงการเขียนโค้ดแบบ late-binding ใน .Net)
- รองรับการทำ named indexer (การสร้าง property ที่มี argument)
- มีคำสั่ง VB แบบเดิมๆ เช่น Left, Mid, UCase, ... ให้ใช้ง่ายๆ สำหรับ
ผู้ใช้ VB6 มาก่อน (การเรียกใช้ฟังก์ชันแบบเดิมๆ นี้จะมีผลต่อประสิทธิภาพของโปรแกรม)
- มีประโยค With..End With ให้ใช้
- ความเรียบง่าย เช่นการสร้างประโยค Event
- สามารถกำหนดชื่อเมธอดของการ implements interface ที่ต่างจากที่กำหนดไว้ใน interface
ได้ (ผมว่าไม่ค่อยได้ประโยชน์เลย ทำให้ยุ่งยากในการค้นหาเสียมากกว่า)
- มีประโยค Catch...When... ทำให้สามารถทำการ filter exception
ด้วยเงื่อนไขได้ นอกเหนือจากการ filter ด้วยชนิดของ exception เท่านั้น
- Visual Studio .Net จะทำการ compile โค้ดในลักษณะ backgroundซึ่งช่วยเป็นข้อดี
ในโปรเจ็กต์ขนาดเล็ก แต่ถ้าโปรเจ็กต์ขนาดใหญ่มหึมาจะกลับเป็นข้อเสียอย่างมาก (มีฝรั่งหลายคนบ่นว่าต้องถึงกับต้องยอม
เปลี่ยนจาก VB.Net มาเป็น C# เลย ในโปรเจ็กต์ที่มีไฟล์มีคลาสเป็น
ข้อเสีย
1.เขียนโปรแกรมที่สลับซับซ้อนมากๆไม่ได้2.ใช้Run time3.ใช้งานบน Windows อย่างเดียว
http://multimedia.udru.ac.th/homecs2/mon_cs/VB.NET.html
Java
ข้อดี
โปรแกรมจาวาที่เขียนขึ้นสามารถทำงานได้หลาย platform โดยไม่จำเป็นต้องแก้ไขหรือ compile ใหม่ ทำให้ช่วยลดค่าใช้จ่ายและเวลาที่ต้องเสียไปในการ port หรือทำให้โปรแกรมใช้งานได้หลาย platform
ภาษาจาวาเป็นภาษาเชิงวัตถุ ซึ่งเหมาะสำหรับพัฒนาระบบที่มีความซับซ้อน การพัฒนาโปรแกรมแบบวัตถุจะช่วยให้เราสามารถใช้คำหรือชื่อ ต่าง ๆ ที่มีอยู่ในระบบงานนั้นมาใช้ในการออกแบบโปรแกรมได้ ทำให้เข้าใจได้ง่ายขึ้น
ภาษาจาวามีความซับซ้อนน้อยกว่าภาษา C++ ทำให้ใช้งานได้ง่ายกว่าและลดความผิดพลาดได้มากขึ้น
ภาษาจาวามีการตรวจสอบข้อผิดพลาดทั้งตอน compile time และ runtime ทำให้ลดข้อผิดพลาดที่อาจเกิดขึ้นในโปรแกรม และช่วยให้ debug โปรแกรมได้ง่าย
ภาษาจาวาถูกออกแบบมาให้มีความปลอดภัยสูงตั้งแต่แรก ทำให้โปรแกรมที่เขียนขึ้นด้วยจาวามีความปลอดภัยมากกว่าโปรแกรมที่เขียนขึ้นด้วยภาษาอื่น
มี IDE, application server, และ library ต่าง ๆ มากมายสำหรับจาวาที่เราสามารถใช้งานได้โดยไม่ต้องเสียค่าใช้จ่าย ทำให้เราสามารถลดค่าใช้จ่ายที่ต้องเสียไปกับการซื้อ tool และ s/w ต่าง ๆ
ข้อเสีย
ทำงานได้ช้ากว่า native code (โปรแกรมที่ compile ให้อยู่ในรูปของภาษาเครื่อง) หรือโปรแกรมที่เขียนขึ้นด้วยภาษาอื่น อย่างเช่น C หรือ C++ ทั้งนี้ก็เพราะว่าโปรแกรมที่เขียนขึ้นด้วยภาษาจาวาจะถูกแปลงเป็นภาษากลางก่อน แล้วเมื่อโปรแกรมทำงานคำสั่งของภาษากลางนี้จะถูกเปลี่ยนเป็นภาษาเครื่องอีกทีหนึ่ง ทีล่ะคำสั่ง (หรือกลุ่มของคำสั่ง) ณ runtime ทำให้ทำงานช้ากว่า native code ซึ่งอยู่ในรูปของภาษาเครื่องแล้วตั้งแต่ compile โปรแกรมที่ต้องการความเร็วในการทำงานจึงไม่นิยมเขียนด้วยจาวา
tool ที่มีในการใช้พัฒนาโปรแกรมจาวามักไม่ค่อยเก่ง ทำให้หลายอย่างโปรแกรมเมอร์จะต้องเป็นคนทำเอง ทำให้ต้องเสียเวลาทำงานในส่วนที่ tool ทำไม่ได้ ถ้าดู tool ของ MS จะใช้งานได้ง่ายกว่า และพัฒนาได้เร็วกว่า (แต่ต้องซื้อ tool ของ MS และก็ต้องรันบน platform ของ MS
http://images.paxzcasso.multiply.multiplycontent.com/attachment/0/SLjJqQoKCCYAAA1nAd41/
PHP
ข้อดี
ยืดหยุ่น ไม่ซับซ้อน สามารถพัฒนาแบบ Object ได้ (PHP5 ขึ้นไป)มีบริษัทที่ให้การสนับสนุนโปรแกรมระดับ Enterprise นักพัฒนาสามารถหา Compiler ได้ฟรีๆ ไม่ต้องเสียตัง มีโปรแกรมเสริมจำนวนมาก มีคำสั่งครบถ้วน
ข้อเสีย
ถ้าต้องการการเข้ารหัส Code จะต้องเสียเงิน เพื่อใช้บริการของ Third Partyตัวภาษาเองไม่สามารถเข้ารหัสได้ Developer Environment ยังเป็นแบบ Code Based อยู่ไม่มี Compiler เพื่อสร้าง Binary สำหรับแต่ละ OS
http://www.thaiadmin.org/board/index.php?topic=4968.5;wap2
ปาศคาล
ข้อดี
- Syntax เป็นระเบียบ (Structural) สวยงาม เหมาะกับผู้เริ่มต้น และระดับสูงก็ยังไหว (DELPHI)- syntax ไม่กำกวม (ambigious อาจพิมผิดได้)- มี String
ข้อเสีย
- เพราะมันสวยเกินไป จึงเยิ่นเย้อ พิมเยอะ ไม่สะใจ- จะช้ากว่า C แน่นอน- Library ต่างๆ น้อยกว่า C
http://www.atriumtech.com/cgibin/hilightcgi?Home=/home/InterWeb2000&File=/home2/searchdata/Forums/http/www.pantip.com/tech/developer/topic/DM1041606.html
สรุป เลือกภาษาซี เพราะอยากจะศึกษาภาษานี้ให้เข้าใจก่อน
นางสาว ขวัญฤทัย เจริญผล ฑณ 2/12 เลขที่ 2
นางสาว ปัทมวรรณ ดาสา พณ 2/12 เลขที่ 14
นาย ภูวนัย แผงศร พณ2/12 เลขที่ 33
สมัครสมาชิก:
บทความ (Atom)