ข่าวเก่าไปนิดแต่คิดว่าน่าจะมีประโยชน์กับทีมพัฒนาที่ใช้ Visual Studio Team Services นะครับ เมื่อไมโครซอฟท์ได้ประกาศให้บริการ Code Search บน Visual Studio Team Services และ Team Foundation Server "15" เข้าสู่สถานะใช้งานจริง (general availiability) ต้นเดือนตุลาคมที่ผ่านมา
Code Search จะช่วยให้ทีมพัฒนาแชร์โค้ดและทำงานร่วมกันได้อย่างมีประสิทธิภาพมากขึ้นด้วยการเปิดให้สามารถค้นหาโค้ดของตนเองและเพื่อนร่วมทีมจากทั้งโปรเจ็กต์บน TFVC หรือบน Git โดยไม่จำกัดเพียงแค่การค้นด้วยการเทียบข้อความดูเพียงเท่านั้น Code Search ยังเข้าใจโครงสร้างของโค้ดทำให้สามารถค้นหาด้วยบริบทเฉพาะอย่างเข่น class definition, comment หรือ property ได้ โดยในเบื้องต้นรองรับภาษา C#, C, C++, VB.NET และ Java สำหรับภาษาอื่นๆ ไมโครซอฟท์สัญญาว่าจะเพิ่มให้ในภายหลัง
ปัญหาของผู้ใช้ Visual Studio ในช่วงหลังคือไมโครซอฟท์จะบังคับล็อกอิน Microsoft Account บ่อยมาก (ทุก 12 ชั่วโมงถ้าเชื่อมโยงบัญชีกับ Azure ด้วย)
เรื่องนี้ไปถึงไมโครซอฟท์แล้ว โดย John Montgomery ผู้บริหารฝ่าย Visual Studio ให้สัมภาษณ์ว่าเป็นเรื่องที่ผู้ใช้ร้องเรียนเข้ามาเยอะเป็นอันดับแรก ซึ่งตอนนี้ไมโครซอฟท์แก้ไขเรียบร้อยแล้ว และการล็อกอินหนึ่งครั้งจะอยู่ได้นานนับเดือน (extended from hours to months) โดยผู้ใช้ไม่ต้องทำอะไรเพิ่ม เพราะเป็นการแก้ไขที่ฝั่งเซิร์ฟเวอร์ของไมโครซอฟท์เอง
ไมโครซอฟท์ออกอัพเดตให้กับตัวแก้ไขซอร์สโค้ดโอเพนซอร์ส Visual Studio Code ขยับเลขเวอร์ชันเป็นรุ่น 1.3
โดยได้เพิ่มฟีเจอร์ใหญ่อย่างการเพิ่มแท็บสำหรับหน้าต่าง editor ช่วยจัดระเบียบ workbench ให้ใช้งานได้สะดวกขึ้น และเพิ่มหน้าจัดการ extension ช่วยให้สามารถค้นหาและติดตั้งและอัพเดตส่วนเสริมที่ต้องการได้จาก VS Code เลย (แต่ก่อนต้องค้นหาผ่าน Visual Studio Marketplace แล้วก็อปปี้คำสั่งติดตั้งมาใช้บน VS Code อีกที)
สำหรับการปรับปรุงทั้งหมดที่ไมโครซอฟท์ยกให้เป็นไฮไลท์ของการอัพเดตครั้งนี้มีดังนี้
ไมโครซอฟท์ประกาศความร่วมมือกับ Red Hat และ Codenvy บริษัทที่รับผิดชอบการพัฒนา Eclipse รุ่นถัดไป สร้างมาตรฐานกลางสำหรับการเพิ่มภาษาโปรแกรมใหม่ๆ ให้ซอฟต์แวร์ IDE (Integrated Development Environment) รองรับได้ง่ายขึ้น
แนวคิดของเรื่องนี้คือตัว IDE หรือ Editor จะรองรับภาษาโปรแกรมใหม่ๆ ต้องมีข้อมูลของภาษานั้นเพื่อใช้ตรวจ syntax, เติมโค้ด (code completion) รวมถึงทำ refactoring ดังนั้น IDE จะถูกออกแบบให้ดึงข้อมูลของภาษาโปรแกรมจาก "Language Servers" ที่มีข้อมูลของแต่ละภาษาอยู่
ไมโครซอฟท์ออกมาโชว์ความสามารถใหม่ของ Visual Studio 15 รุ่นถัดไป ว่าจะสามารถแยกโมดูลของโปรแกรม และติดตั้งโมดูลเท่าที่จำเป็นต้องใช้งานเพื่อประหยัดพื้นที่ (ตัวแกนของ Visual Studio 15 มีขนาดเพียง 320MB)
และเพื่อให้การติดตั้งสะดวกยิ่งขึ้น ไมโครซอฟท์จึงจัดชุดการติดตั้งสำหรับการพัฒนาโปรแกรมแต่ละแนว โดยเรียกว่า stack หรือ workload เบื้องต้นมีทั้งหมด 17 ประเภท ใครใช้งานแบบไหนก็คลิกทีเดียว ติดตั้งเฉพาะส่วนที่ต้องการใช้งานได้ทันที (มีทั้งเทคโนโลยีของไมโครซอฟท์เอง ไปจนถึงเทคโนโลยีของบริษัทอื่นอย่าง Python, Node.js, Cordova)
ไมโครซอฟท์เปิดตัว VSCode ตัวแก้ไขซอร์สโค้ดโอเพนซอร์สมาตั้งแต่งาน Build 2015 เกือบครบหนึ่งปี ตอนนี้ไมโครซอฟท์ก็ออกมาประกาศ VSCode 1.0
ความเปลี่ยนแปลงในรุ่น 1.0 นี้เป็นเรื่องของความเสถียรและประสิทธิภาพมากกว่าฟีเจอร์ โดยช่วงเปิดตัวฟีเจอร์ของ VSCode ยังไม่มากนัก โดยเฉพาะมันไม่รองรับส่วนขยายใดๆ ตอนนี้ VSCode มีส่วนขยายกว่า 1,000 ตัว ที่ช่วยให้ซัพพอร์ตการพัฒนาภาษายอดนิยมอย่าง Python, Go, React Native, หรือแม้แต่ C++
ผมเองใช้ VSCode เป็นตัวแก้ไขโค้ดหลักมาตั้งแต่ช่วงปลายปีที่แล้วหลังจากลองอยู่หลายเดือน กระบวนการพัฒนาของมันค่อนข้างรวดเร็วและเห็นความก้าวหน้าชัดเจน ใครใช้กันอยู่มาแสดงความเห็นกันได้ครับ
ไมโครซอฟท์เพิ่งซื้อ Xamarin เมื่อเดือนที่แล้ว ในงาน Build 2016 วันที่สอง ก็มีข่าวใหญ่ที่หลายคนรอคอย
ไมโครซอฟท์เปิดตัว Visual C++ for Linux Development ส่วนเสริมของ Visual Studio ที่ช่วยให้สามารถพัฒนาแอปพลิเคชั่นบนลินุกซ์ได้จากวินโดวส์โดยตรง
โดยตัวส่วนเสริมเองไม่ใช่การใช้คอมไพลเลอร์ของไมโครซอฟท์ไปคอมไพล์โปรแกรมสำหรับลินุกซ์แต่เป็นการรีโมตไปรัน g++ บนเครื่องปลายทาง และเชื่อมต่อกับ gdb เพื่อดึงข้อมูลกลับมาดีบั๊กบนวินโดวส์
ไมโครซอฟท์เตรียมรองรับภาษา R ใน Visual Studio เต็มรูปแบบด้วยชุดเครื่องมือ R Tools for Visual Studio โดยตอนนี้ยังเป็นรุ่นพรีวิว
ชุดเครื่องมือมีฟีเจอร์ดังนี้
ปีที่แล้ว ไมโครซอฟท์ออก Visual Studio Emulator for Android อีมูเลเตอร์สำหรับทดสอบแอพบน Android เวอร์ชันไมโครซอฟท์ทำเอง (ใช้ Hyper-V ช่วยเร่งความเร็วอีมูเลเตอร์ ทำให้ประสิทธิภาพดีกว่าเวอร์ชันของกูเกิล)
ภายหลังไมโครซอฟท์ขยายความสามารถให้อีมูเลเตอร์ตัวนี้ทำงานกับ Android Studio และ Eclipse ได้ และล่าสุดมันกำลังจะสามารถรันบน Mac OS X ได้ด้วยครับ ผู้ที่สนใจต้องลงทะเบียนรอทดสอบรุ่นเบต้าที่ เว็บไซต์ของ Visual Studio Emulator ซึ่งไมโครซอฟท์ยังไม่ระบุช่วงเวลาว่าจะมาเมื่อไร
ไมโครซอฟท์เปิด Visual Studio Marketplace ศูนย์รวมส่วนขยายแห่งใหม่ที่จะมาแทน Visual Studio Gallery ของเดิม
Visual Studio Marketplace จะเป็นตลาดซื้อขายส่วนขยายของผลิตภัณฑ์ในแบรนด์ Visual Studio ทั้ง 3 ส่วน ได้แก่
ไมโครซอฟท์ประกาศเปลี่ยนชื่อ Visual Studio Online เป็น Visual Studio Team Services เพื่อลดความสับสนของผู้ใช้งาน
คนที่เห็นชื่อ Visual Studio Online ส่วนใหญ่นึกว่ามันคือ Visual Studio IDE เวอร์ชันเว็บแอพ ซึ่งจริงๆ แล้วมันไม่ใช่ IDE แต่เป็นบริการออนไลน์ที่คอยสนับสนุนนักพัฒนาอีกที เช่น ระบบจัดการซอร์สโค้ดออนไลน์แบบเดียวกับ GitHub, ระบบทดสอบโหลดของแอพ, ระบบคอมไพล์บนคลาวด์ เป็นต้น (สโลแกนของไมโครซอฟท์คือ "It’s not an IDE, it’s everything else.") การเปลี่ยนชื่อเป็น Team Services จึงช่วยลดความสับสนลงได้
Visual Studio Code เปิดตัวเมื่อปลายเดือนเมษายนเป็น editor อย่างเดียวไม่มีตัวคอมไพล์เลอร์ แต่ข้อดีคือมันเป็น editor ที่ดีเทียบชั้นกับ Atom ของ GitHub ตอนแรกอาจจะสงสัยว่าไมโครซอฟท์ทำมาเล่นๆ หรือไม่ แต่หลายเดือนที่ผ่านมาไมโครซอฟท์ก็ออกรุ่นใหม่ต่อเนื่องจนดีขึ้นเรื่อยๆ ตอนนี้รุ่นล่าสุดคือ 0.10.1 กลายเป็นรุ่นเบต้า
นักพัฒนาซอฟต์แวร์สายโอเพนซอร์สคงรู้จัก GDB หรือ GNU Debugger ซอฟต์แวร์ดีบั๊กเกอร์ชื่อดังภายใต้โครงการ GNOME
ล่าสุดไมโครซอฟท์ประกาศว่า Visual Studio 2015 จะรองรับ GDB Extension เพิ่มเติม ช่วยให้นักพัฒนาสามารถดีบั๊กโค้ดบนเครื่องลินุกซ์แบบรีโมท ได้จากตัว Visual Studio เลย
ขั้นตอนการใช้งานคือติดตั้ง Visual Studio GDB Debugger จากนั้นเชื่อมต่อเครื่องวินโดวส์ต้นทางกับเครื่องลินุกซ์ปลายทางด้วย SSH ก็เรียบร้อย ในกรณีที่อยากดีบั๊กบนเครื่องตัวเอง (local) สามารถลง GDB ผ่านตัวช่วยอย่าง MinGW ได้เช่นกัน
โครงการนำ Clang มาใช้คอมไพล์โค้ดภาษา C++ ของไมโครซอฟท์ มีความก้าวหน้าอย่างจับต้องได้อีกขั้นเมื่อไมโครซอฟท์ได้นำเสนอวิธีการคอมไพล์โค้ดวินโดวส์แอพด้วย Clang ในงาน CPPCon 2015 ที่ผ่านมา และคาดว่าจะเพิ่มวิธีการคอมไพล์นี้ในชุดอัพเดตสำหรับ Visual C++ ที่จะออกมาในเดือนหน้าด้วย
Visual Studio 2015 ทำงานได้ดีกับ GitHub ขึ้นมาก แต่เมื่อวานนี้นักพัฒนาหลายคนก็รายงานบั๊กว่าปลั๊กอินสำหรับทำงานร่วม แม้จะระบุให้ repository เป็นส่วนตัวก็ตาม แต่โค้ดที่ส่งขึ้น GitHub จะกลายเป็นสาธารณะ ทำให้ทุกคนสามารถมองเห็นโค้ดได้
Carlo van Wyk นักพัฒนาที่รายงานบั๊กนี้ระบุว่าเขาเผยแพร่ API key ของ AWS โดยไม่รู้ตัวจากบั๊กนี้ ทำให้บัญชีของเขาถูกเรียกเก็บเงินไปถึง 6,500 ดอลลาร์
ทาง GitHub ออกมาอัพเดตปลั๊กอินอย่างเร่งด่วนแล้ว โดยระบุว่าเป็นทางแก้ชั่วคราว (workaround) และสาเหตุที่แท้จริงยังต้องตรวจสอบต่อไป
ระหว่างนี้ใครใช้ VS 2015 กับ GitHub ก็ควรตรวจสอบโค้ดตัวเองให้ดีๆ และเตรียมอัพเดตปลั๊กอินกันครับ
เมื่อปลายปีที่แล้ว ไมโครซอฟท์ออกอีมูเลเตอร์สำหรับ Android ของตัวเอง มีจุดเด่นคือประสิทธิภาพสูง รันได้เร็ว (ใช้เทคโนโลยี Hyper-V ของไมโครซอฟท์เอง) แต่ข้อจำกัดของมันคือใช้ได้เฉพาะกับ Visual Studio 2015 เท่านั้น
ล่าสุดไมโครซอฟท์ขยายความสามารถของอีมูเลเตอร์ตัวนี้ ให้สามารถทำงานกับเครื่องมือพัฒนายอดฮิตในโลก Android ทั้งของใหม่ Android Studio และของเก่า Eclipse ที่ลงปลั๊กอิน ADT ได้แล้ว ช่วยให้ผู้สร้างแอพ Android ที่เหนื่อยหน่ายกับอีมูเลเตอร์ของกูเกิลที่ทำงานช้า สามารถเปลี่ยนมาใช้อีมูเลเตอร์ของไมโครซอฟท์ที่ทำงานเร็วกว่าได้
ไมโครซอฟท์ปล่อย Visual Studio 2015 ตามกำหนดการที่ระบุไว้ก่อนหน้านี้ โดยปล่อยทั้ง Visual Studio 2015 และ .NET 4.6 ออกมาพร้อมกัน
สำหรับนักพัฒนาทั่วไป จุดสำคัญของเวอร์ชั่นใหม่คือไมโครซอฟท์มี Visual Studio 2015 Community Edition ที่ความสามารถค่อนข้างครบถ้วนกว่า Express Edition มาก ฟีเจอร์สำคัญๆ หลายตัวก็มีเท่ากับรุ่นเสียเงิน (ดูตารางเปรียบเทียบ) นอกจากนี้ยังมี Visual Studio Online สำหรับการทำงานเป็นทีมให้ใช้งานได้ฟรี และ Visual Studio Code ที่เป็นตัว editor เปล่าๆ
ไมโครซอฟท์ออกมาประกาศว่าจะออก Visual Studio 2015, Team Foundation Server 2015 และ .NET Framework 4.6 รุ่นสมบูรณ์ในวันที่ 20 กรกฎาคมนี้
ของใหม่ที่สำคัญใน Visual Studio 2015 คือเปิดกว้างกับการใช้เขียนแอพข้ามแพลตฟอร์มมากขึ้น โดยจากนี้ไปเราสามารถใช้ Visual Studio เขียนแอพบน Android, iOS, Windows รวมไปถึงแพลตฟอร์มเกมอย่าง Unity และ Unreal
ส่วนฟีเจอร์ใหม่อื่นๆ คือรองรับระบบคอมไพล์แบบใหม่ Roslyn เป็นต้น ที่เหลืออ่านได้จาก ไมโครซอฟท์เปิดตัว Visual Studio 2015 และ .NET 2015
โครงการชุดคอมไพเลอร์โอเพนซอร์ส LLVM มีคอมไพเลอร์ภาษา C/C++/Objective-C ชื่อว่า Clang ที่ถูกใช้งานอย่างแพร่หลาย ปกติแล้ว Clang ทำงานบนระบบปฏิบัติการสายยูนิกซ์ แต่ก็สามารถใช้บนวินโดวส์ได้ด้วย
ล่าสุด Clang ได้ผู้สนับสนุนรายใหม่คือ "ไมโครซอฟท์" ที่ปกติแล้วใช้ Visual C++ ของตัวเองเสมอมา (Clang เริ่มพัฒนาโดยแอปเปิล แต่ปัจจุบันดูแลโดยชุมชน)
นโยบายใหม่ของไมโครซอฟท์มาจาก การเปิดให้ Visual Studio คอมไพล์โค้ดจาก Android/iOS ทำให้ไมโครซอฟท์จำเป็นต้องหาคอมไพเลอร์ที่ทำงานบนแพลตฟอร์มอื่นๆ ได้ด้วย ซึ่ง Clang ก็มารับบทนี้
ไมโครซอฟท์อธิบายการทำงานของการคอมไพล์เป็นแผนภาพด้านล่าง
นอกจาก Visual Studio Code ไมโครซอฟท์ยังออกของใหม่เกี่ยวกับ Visual Studio และ .NET ดังนี้
และแล้วก็ถึงวันที่เราได้เห็น Visual Studio บนแมคและลินุกซ์ ถึงแม้จะยังไม่ใช่ Visual Studio ตัวเต็มก็ตาม
ไมโครซอฟท์เปิดตัว Visual Studio Code ตัวแก้ไขและปรับแต่งโค้ด (code optimized editor) ที่ตัดความสามารถของ Visual Studio รุ่นปกติ (พวก GUI designer) ออกไป เหลือแต่ตัว editor อย่างเดียว ที่น่าสนใจคือทำงานได้ข้ามแพลตฟอร์ม ทั้งบนวินโดวส์ แมค และลินุกซ์
Visual Studio Code ถือเป็น IDE ที่ทำงานเฉพาะส่วนของโค้ด แต่ก็มีฟีเจอร์ครบครันสำหรับการแก้ไขโค้ด เช่น Intellisense และการเชื่อมต่อกับ Git ตัวมันรองรับภาษาโปรแกรมกว่า 30 ภาษา รายชื่อทั้งหมด
ไมโครซอฟท์ออกเครื่องมือพัฒนาแอพแบบ Universal App Platform (UAP) โดยใช้ชื่อว่า Tools for Windows 10 Technical Preview
การใช้งานจะต้องติดตั้งร่วมกับ Visual Studio 2015 CTP 6 และรันแอพทดสอบบน Windows 10 Technical Preview ผู้สนใจต้องสมัครเข้าร่วมโครงการ Windows Insider แล้วดาวน์โหลดไฟล์ทั้งสองส่วนมาติดตั้ง
ท่าทีของไมโครซอฟท์เปลี่ยนแปลงไปมากในรุ่นหลังๆ หลังจากประกาศให้ Visual Studio 2013 สามารถใช้งานได้ฟรีแล้ว ตอนนี้ Visual Studio 2015 ก็เพิ่มความสามารถเข้ามาอีกหลายอย่าง
ที่สำคัญที่สุดคงเป็นความสามารถในการเขียนแอพแอนดรอยด์ได้ในตัว พร้อมกับอีมูเลเตอร์ของตัวเองที่มีประสิทธิภาพสูง โดยชุดพัฒนาแอนดรอยด์จะใช้ Android SDK API Level 19 และ NDK r10
นอกจากแอนดรอยด์แล้ว Visual Studio 2015 ยังรองรับเครื่องมือภายนอกอีกหลายตัวเพื่อให้พัฒนาแอนดรอยด์ได้ เช่น Apache ANT, Git, Google Chrome, หรือ Node.js
นอกเหนือจากประกาศช็อควงการในการโอเพนซอร์ส .NET แล้ว ไมโครซอฟท์ยังถือโอกาสนี้ ประกาศเปิดตัว Visual Studio และ .NET รุ่นใหม่ รวมถึงอัพเดตรุ่นเก่าด้วย ดังนี้