เตรียมตัวรับการเปลี่ยนแปลง ในการเขียนโปรแกรมบน Windows Vista

หายไปนานเนื่องจากสอบ และปั่นงานให้มี performance สูงที่สุดเท่าที่จะทำได้ T_T กะว่าถ้าเสร็จแล้วจะมาอัพ blog สัก 6-7 เรื่องเลย แต่ว่าตอนนี้เอานี่ไปก่อนแล้วกัน ชิมลางไปก่อน

โดยที่เมื่อเช้านี้ได้อีเมลจากข่าวสารจาก CodeProject (Forum หรือเว็บที่น่าจะเป็น Partner ของ  Microsoft Developer Network) ให้ลองเข้าไปอ่าน Windows Vista User Experience Guidelines หรือเอกสารประกอบการออกแบบ User interface ของ Windows Vista ซึ่งเป็น Windows ตัวใหม่ของ Microsoft สามารถอ่านได้ที่ http://msdn.microsoft.com/library/?url=/library/en-us/UxGuide/UXGuide/Home.asp โดยตัวเอกสารยังคงไม่เสร็จดี แต่ก็คงเติมใส่ลงไปเรื่อย ๆ ให้ทันสมัยต่อไปเรื่อย ๆ โดยรวมน่าจะทำเพื่อให้การออกแบบ ส่วนติดต่อกับผู้ใช้นั้นเป็นไปในแนวทางที่ดี และทำให้โปรแกรมที่ทำงานบน Windows Vista นั้นใช้งานได้ง่ายขึ้น รวมไปถึงทำให้มันดูเป็นชิ้นเดียวกัน แน่ๆ และอาจรวมไปถึงการเล่น Themes ของระบบที่ทำให้โปรแกรมของเรานั้นสามารถทำงานกับ Themes ของระบบได้ดีขึ้นด้วย

โดยเตรียมตัวไว้ก่อนน่าจะดีกว่า พอ Windows ตัวใหม่ออกมาใครพัฒนาโปรแกรมตัวใหม่จะได้รองรับอนาคตได้พอดี (เห็นว่าเปลี่ยนแปลงไปเยอะเลย) แนะนำว่าให้ลองโหลด Microsoft .NET 3.0 Beta (WinFX) มาลองเล่นด้วยก็ดีนะ

ส่วนในตอนนี้ Windows Vista ออกรุ่นทดสอบถึง RC2 แล้วคาดว่าจะ RTM ได้ในอีกไม่กี่เดือนนี้ แต่ bug ในรุ่น RC1 และ Beta นั้นมีรายงานว่าเยอะระดับหลักพันเลยทีเดียว -_-‘ ใครจะลอง RC2 ถ้ามี error ก็ send error ส่งให้ Microsoft ด้วยนะ ;) ไปหล่ะ

โพสสักพักไปอ่านข่าวที ่Blognone แล้วเจอเรื่องคล้ายๆ กันพอดี Windows Vista RC2

Express Editions มัน Free (แต่มีเงื่อนไข) จริงๆ นะ

เข้าไปดูส่วนของ Microsoft SQL Server 2005 Express Editions แล้วตกใจหมดเลยกับคำว่า Free !!! เป็นไปได้ไง

แต่อ่านไปอ่านมา ก็ถึงบางอ้อ?.. หรือหนองอ้อ ดีหว่า (หุๆๆๆ) เพราะว่ามันคือการเปลี่ยนชื่อของ Microsoft SQL Server Desktop Engine (MSDE) จากเดิมที่ Microsoft แบ่ง SQL Server ของตัวเองเป็นสองส่วนคือส่วน Commercial ที่ใช้ชื่อว่า Microsoft SQL Server กับ Free ที่เป็น Microsoft SQL Server Desktop Engine แต่ตอนนี้เพื่อไม่สับสน (หรือเปล่า) เลยให้มันชื่อเหมือนๆ กันซะเลย เลยเปลี่ยนชื่อ MSDE เป็น Microsoft SQL Server Express Editions แทนซะเลย

ว่า Microsoft SQL Server 2005 Express Editions ถึงแม้จะ Express Edition ก็ตามที แต่ก็คาดว่าน่าจะทำงานได้ดีในระดับหนึ่ง แต่ดูๆ ไปแล้วคาดว่าทาง Microsoft คงเอามาสู้กับ Oracle Database 10g Express Edition ที่ Free ที่ได้เปิดตัว Beta ไปเมื่อเร็วๆ นี้เช่นกัน

แต่ขึ้นชื่อว่าของฟรีแล้ว มันก็มีข้อจำกัดในตัวของมัน Microsoft SQL Server 2005 Express Editions นั้นทำงานได้แค่ 1 CPU, RAM ไม่เกิน 1GB , ขนาดฐานข้อมูลไม่เกิน 4GB และไม่มีพวกสิ่งอำนวยความสะดวกพวก Analysis Services, Reporting Services, Data Transformation Services และ Notification Services เท่านั้นเอง แต่ถ้าอยากได้มากกว่านี้ก็ต้องใช้ของเสียเงินแทนหล่ะครับ ซึ่งถ้าดูๆ ไปก็เหมาะสำหรับคนที่ใช้เล็กๆ น้อยๆ, ธุรกิจขนาดเล็ก หรือนักพัฒนาระบบทั่วไปครับ

ต่อมาในส่วนของ Visual Studio Express Editions ที่แยกมาเป็น

Visual Basic 2005 Express Edition
Visual C# 2005 Express Edition
Visual C++ 2005 Express Edition
Visual J# 2005 Express Edition

แต่อันนี้ใช้ได้แค่ 1 ปีเท่านั้นหลังจากนั้นก็ซื้อมาใช้แล้วกันครับ คงไม่มีอะไรมาก แต่ว่าถ้าเอามาใช้ศึกษานี่เหมาะมาก หรือเอาไปเขียนซอฟต์แวร์ขายก็น่าจะ OK แต่ว่าติดที่คุณต้องลง Microsoft .NET Framework 2.0 ด้วย ซึ่งขนาดไม่แตกต่างกับ 1.1 หรือ 1.0 เท่าไหร่นัก

อย่างอื่นก็ลองอ่านเอาที่

Visual Studio Express : http://msdn.microsoft.com/vstudio/express/
SQL Server Express : http://msdn.microsoft.com/vstudio/express/sql/
Frequently Asked Questions : http://msdn.microsoft.com/vstudio/express/support/faq/default.aspx
Oracle Database 10g Express Edition : http://www.oracle.com/technology/products/database/xe/index.html

Update !!! 11/11/2005
เพิ่งได้รับความกระจ่างในเรื่องของ Visual Studio 2005 Express Edition ต่าง ๆ ของ Microsoft ในเรื่องนี้จากพี่เดฟ (ithilien_rp) โดยผมเข้าใจผิดไปนิดนึงในเรื่องของการใช้ฟรี 1 ปีแล้วหมดอายุนั้น “ไม่ใช่” ครับ

ขอปรับเปลี่ยนว่า การใช้งานนั้น “สามารถใช้ได้เท่าที่ต้องการไม่จำกัดระยะเวลา” แต่ที่จำกัดคือ “ระยะเวลาในการที่จะ Download ตัว Visual Studio 2005 Express Edtion มาเก็บไว้”

อ้างอิงจาก Frequently Asked Questions ใน Link ข้างต้นในข้อที่ 12 ที่ว่าไว้ว่า

You said “free for one year” ? what does that mean, exactly “Will you be charging for this later”

We originally announced pricing of Visual Studio Express at US$49. We are now offering Visual Studio Express for free, as a limited-in-time promotional offer, until November 6, 2006. Note that we are also offering SQL Server 2005 Express Edition as a free download, and that this offer is not limited to the same promotional pricing period as Visual Studio Express.

โดยที่ใจความสำคัญว่า “พวกเราตั้งราคาพื้นฐานของ Visual Studio Express ไว้ที่ 49$ แต่ในตอนนี้ Visual Studio Express นั้น Free โดยมีช่วง Promotion ถึงวันที่ 6 พฤศจิกายน 2006 โดยที่ SQL Server 2005 Express Edition นั้นก็ Free เช่นกัน แต่ไม่ได้กำหนดเวลา Promotion เหมือนกับ Visual Studio Express”

Update !!! 12/11/2005
มีคนถามว่ามันเป็น Beta หรือเปล่า ก็บอกได้เลยว่า Visual Studio 2005 Express Edition ที่อยู่ในเว็บ มันเป็นตัว Full Version แล้วครับ ไม่ใช่ Beta หรือ Demo/Trial ครับ ซึ่งตอนนี้ผมกำลังโหลดอยู่เหมือนกันครับ

แต่เท่าที่คาดการณ์นะครับ ในเรื่อง Express Edition ที่ได้ฟังจากพี่เดฟ และความเห็นส่วนตัวนั้น เป็นการเปิดตัว Free Developer Tools สำหรับ .NET Platform ทั้งระบบครับ โดยภายใต้การทำ IDE จาก Microsoft แทน Third Party อื่นๆ เพราะว่าปีหน้า Vista กำลังมาครับ และ Vista เป็นการทำระบบทั้งหมดใน OS ใหม่ทั้งหมด ไม่ว่าจะ Avalon, WinFS, Indego และทั้งส่วนของ Base Operating System ด้วย โดยคาดการณ์ไว้ว่า Microsoft Windows Vista จะไม่สนับสนุน Win32 Library , VB Runtime Library 6.0 หรืออื่นๆ ก่อนหน้า .NET Platform ทั้งหมด หรือถ้าสนับสนุน ก็ผ่าน Emulator หรือ Run Time Virtual Machine ไปแทน ซึ่งทำให้ประสิทธิภาพลดลงไป แต่ใช้งานได้ แต่ช้าหน่อย อย่าลืมนะครับว่า .NET มันมี 2 ส่วนใหญ่ๆ คือ CLR (Common Language Runtime) กับ CLI (Common Language Infrastructure) ซึ่งทำให้คนที่พัฒนาซอฟต์แวร์ทำงานได้ง่าย และดีขึ้น รวมไปถึงถ้าใช้ C++.NET ในการพัฒนาแล้ว Compile เป็น Native Code แบบ .NET แล้วด้วยเนี่ย ทำให้เราใช้ Feature ใหม่ๆ ใน .NET รุ่นใหม่ๆ ได้ดีขึ้น ซึ่งเป็นการทำ Express Edition ออกมาเป็นของเล่นของนักพัฒนาซอฟค์แวร์ได้ลองใช้ และปรับเปลี่ยนการใช้งานของตนเอง รวมไปถึง Recompile ตัว Software เดิมใหม่ด้วย เพื่อให้ Win32 Library , VB Runtime Library 6.0 หรืออื่นๆ ที่ตนเองได้ใช้อยู่ได้ทำการเปลี่ยนแปลงตัวเองมาทำงานบน .NET แทน ซึ่งดูจากเวลาที่ออกก็มีเวลาในการปรับเปลี่ยนตรงนี้ประมาณเกือบ 1 ปีเห็นจะได้ครับ ซึ่งที่ทำแบบนี้เพราะต้องเอามารองรับการเปลี่ยนระบบ Base Operating System ใน Vista เองด้วย เพื่อให้การปรับเปลี่ยนนี้ราบรื่นขึ้น และมี Software ที่ทำงานได้ดีบน Vista ซึ่งบทเรียนนี้เกิดจากตอน XP ที่ออกมาไม่ได้ทำแบบนี้เลยทำให้ซอฟต์แวร์ส่วนใหญ่ทำงานไม่ค่อยได้ในตอนแรกนั้นเอง และรวมไปถึง Microsoft น่าจะทำออกมาแข่งกับ Java Platform ที่เพิ่งปล่อยพวก Enterprise IDE ออกมาให้ใช้ฟรีๆ แถมด้วยตลาด Database ที่ออก Oracle ที่ออก Express Edition ที่ยังเป็น Beta เช่นกัน โดยคราวนี้ Microsoft ปล่อยมา ยกระบบเลยทั้ง IDE และ DBMS ด้วย

แหม เล่นซะคนช็อคกันทั่วโลก ไม่อยากเชื่อว่า Microsoft จะสำกดคำว่า Free !!! ได้

Update !!! 13/11/2005
แต่ลองใช้งานแล้ว convert project เก่าจาก VB.NET 2003 มาใช้ใน 2005 ก็ไม่มีปัญหาใดๆ ตัว project ทำงานได้ปกติดี แต่ไม่รู้ว่าตัว project ที่ซับซ้อนมากๆ จะมีผลหรือเปล่า

ส่วนการ download มาแล้วทำการลง แนะนำว่าให้ทำการ register ด้วยจะดีมากครับ เพื่อเป็นการยืนยันลิขสิทธิ์ครับ กันไว้ก่อนดีกว่า

แต่ผมชอบมากเลยสำหรับ Learning Resources for Visual Basic Express เป็น VDO Review ครับ ทำได้ดีพอสมควรทีเดียว

http://msdn.microsoft.com/vstudio/express/vb/learning/default.aspx

เท่าที่ดูนี่ ผมว่างานนี้ Microsoft มาแปลก ๆ ดูทุ่มเท มากเลยงานนี้ ;)