By mk Founder on Tag: Microsoft, UWP, Development, .NET
Microsoft

จักรวาลของไมโครซอฟท์มีเครื่องมือสร้าง GUI หลายตัว ตั้งแต่ของเก่าอย่าง Win32 ไล่มาถึงยุค Windows Forms, WPF และล่าสุดคือ UWP ความแตกต่างของแพลตฟอร์มทั้ง 4 ทำให้เรียกใช้คอมโพเนนต์/คอนโทรลต่างๆ ร่วมกันได้ยากพอสมควร

ล่าสุดในงาน Build 2019 ไมโครซอฟท์เปิดตัว XAML Islands หรือการฝังคอนโทรล UWP ในแอพพลิเคชันที่ไม่ใช่ UWP (เช่น Win32, WinForms, WPF) ได้ด้วย

ฟีเจอร์นี้ทำให้เราสามารถฝังคอนโทรลรุ่นใหม่ๆ จากแอพยุค UWP ที่มีจุดเด่นคือหน้าตาสวยงาม (เป็น Fluent Design) หรือรองรับอินพุตแบบใหม่ๆ (เช่น การใช้ปากกา) ลงในแอพพลิเคชันยุคเก่าได้ด้วย

By mk Founder on Tag: Visual Studio, Development, Microsoft, Artificial Intelligence, IDE
Visual Studio

Visual Studio มีฟีเจอร์ IntelliCode ใช้ AI ช่วยแนะนำการเขียนโค้ด มาได้สักพักใหญ่ๆ โดยช่วงแรกยังมีสถานะเป็นรุ่นพรีวิว และยังรองรับแค่ภาษา C# กับโมเดล XAML เท่านั้น
ในงาน Build 2019 ปีนี้ ไมโครซอฟท์ประกาศว่า IntelliCode มีสถานะเป็น GA เรียบร้อยแล้ว พร้อมประกาศฟีเจอร์เพิ่มอีกชุดใหญ่ ตั้งแต่การรองรับภาษาที่เพิ่มขึ้นคือ C++ และ TypeScript/JavaScript (ตอนนี้ยังเป็นรุ่นพรีวิวใน Visual Studio 2019 Version 16.1)

Visual Studio

ไมโครซอฟท์เปิดตัว Visual Studio Online ความสามารถก็ตามชื่อคือเป็น IDE เวอร์ชันเว็บเบราว์เซอร์ สามารถเขียนโค้ดได้โดยไม่ต้องติดตั้งโปรแกรมใดๆ เพียงแค่เข้าเว็บ online.visualstudio.com ก็ทำงานได้ทันที
Visual Studio Online ไม่ได้เป็น Visual Studio ตัวเต็ม แต่เป็น Visual Studio Code เวอร์ชันทำงานบนเบราว์เซอร์ (VS Code สร้างด้วยเทคโนโลยีเว็บบน Electron อยู่แล้ว) และรองรับส่วนขยายของ VS Code ที่คุ้นเคย

By mk Founder on Tag: .NET, Mono, Xamarin, Microsoft, Development
.NET

การเดินทางอันยาวนานของ .NET หลากหลายแพลตฟอร์มกำลังจะสิ้นสุดลง เพราะไมโครซอฟท์ประกาศทำ .NET 5 ที่เป็นการรวม .NET ทั้ง 3 สายคือ .NET Framework ตัวดั้งเดิม, .NET Core เวอร์ชันโอเพนซอร์ส และ Xamarin เข้าด้วยกัน

ผลคือ .NET 5 (ใช้ชื่อ .NET เฉยๆ ไม่มีสร้อยใดๆ ต่อท้าย) จะเป็น .NET ตัวเดียวที่ทำงานได้หลากหลายแพลตฟอร์ม ตั้งแต่ Windows, Linux, macOS, iOS, Android ไปจนถึงอุปกรณ์ IoT และเอนจินเกม Unity

By lew Founder on Tag: Visual Studio, Development, Microsoft, IDE
Visual Studio

ไมโครซอฟท์เปิดตัว Visual Studio Remote Development ฟีเจอร์แบบเดียวกับที่เพิ่งเปิดตัวให้กับ VS Code แต่เป็นเวอร์ชั่นสำหรับลูกค้า Visual Studio

ช่วงแรก Visual Studio Remote Development ยังรองรับเฉพาะภาษา C++ และ C# เท่านั้นแม้ว่าเวอร์ชั่น VS Code จะรองรับแทบทุกภาษาก็ตาม แต่ความพิเศษคือไมโครซอฟท์จะมีบริการ environment สำหรับการพัฒนาบนคลาวด์ด้วย โดยนักพัฒนาสามารถไม่ต้องเสียเวลาเซ็ตอัพ environment เองแต่เรียกใช้เซิร์ฟเวอร์บนคลาวด์ตามการใช้งานจริง

By mk Founder on Tag: React, Development, Microsoft, Windows 10
React

React Native เป็นเฟรมเวิร์คที่พัฒนาโดย Facebook ตั้งแต่ปี 2015 เพื่อใช้ภาษา JavaScript สร้างแอพมือถือบน iOS/Android แบบเนทีฟ และได้รับความนิยมอย่างสูงจนถึงปัจจุบัน

By lew Founder on Tag: Visual Studio Code, Microsoft, WSL, Development
Visual Studio Code

ไมโครซอฟท์เปิดตัวส่วนขยายสำหรับ VS Code ในชื่อ Remote Development ทำให้สามารถพัฒนาซอฟต์แวร์บนเครื่องอื่นผ่านการเชื่อมต่อ SSH, ใน Windows Subsystem for Linux (WSL), หรือแม้แต่ในคอนเทนเนอร์

ความสามารถนี้ไม่ใช่เพียงการเมาน์สตอเรจจากระยะไกลมาแก้ไขไฟล์บนเครื่องของเราเท่านั้น แต่ในเครื่องหรือคอนเทนเนอร์นั้นมี VS Code รันอยู่ด้วย และส่วนขยายบางส่วนก็จะไปรันอยู่บนเครื่องระยะไกลเหล่านั้น เช่น ส่วนขยายสำหรับรองรับภาษาที่ใช้ดีบั๊กก็จะรันอยู่ในเซิร์ฟเวอร์ ขณะที่ส่วนขยายจำพวกธีมจะรันบนเครื่องของเรา

By itpcc Contributor on Tag: Ransomware, Git, Development
Ransomware

มีผู้รายงานบน Reddit และ StackExchange หลายรายว่าพบ Ransomeware commit หรือแม้กระทั่งล้างเนื้อหาใน repository (บางรายแจ้งว่าเนื้อหาในประวัติยังคงอยู่) แล้วทิ้งข้อความให้เจ้าของโอนเงินผ่าน Bitcoin 0.1 ฺBTC (ราวๆ $560) ไม่เช่นนั้นจะเผยแพร่เนื้อหา เช่น source code, keys ที่อยู่ใน repository เป็นสาธารณะ

ซึ่งจากรายงานพบว่าผู้ใช้งาน Git ที่พบปัญหาใช้บริการ Git ทั้งบน GitHub, Gitlab และ BitBucket และใช้ SourceTree ซึ่งเป็น Git GUI ของ Atlassian

ยังไม่มีรายละเอียดโดยชัดเจนว่า SourceTree เป็นต้นเหตุหรือไม่ และยังไม่มีข้อชี้แจงจาก Atlassian แต่อย่างใด

เพิ่มเติม: Gitlab รับทราบปัญหาแล้ว อยู่ระหว่างการสืบสวนเพิ่มเติม เบื้องต้นทราบว่าตัวข้อมูลไม่หายหากมี backup ที่อื่นๆ แต่มีความเป็นไปได้ว่าผู้โจมตีจะมีรหัสผ่านของผู้ใช้ฯ และทั้งหมดไม่ได้ใช้การยืนยันตัวตนแบบสองปัจจัย

By mk Founder on Tag: Atlassian, Visual Studio Code, Bitbucket, Jira, Development, CI/CD
Atlassian

Atlassian ประกาศออกส่วนขยาย Atlassian for VS Code สำหรับเชื่อมต่อ Visual Studio Code เข้ากับบริการของตัวเอง 2 ตัวคือ Bitbucket Cloud และ Jira Software Cloud อย่างแนบแน่น

Atlassian บอกว่าปัจจุบัน นักพัฒนาใช้โปรแกรม 3 ตัวร่วมกันคือ แชท, IDE และ code repository ทำให้ต้องสลับแอพไปมาตลอดเวลา บริษัทจึงออกส่วนขยายตัวนี้ เพื่อให้ทุกอย่างรวมอยู่ที่เดียวกัน เราสามารถส่งโค้ดขึ้น Bitbucket, ทดสอบแอพผ่าน CI/CD (Bitbucket Pipelines) และคุยกับเพื่อนร่วมงานเพื่อแก้บั๊กบน Jira ได้จากตัว IDE (ในที่นี้คือ VS Code) ได้เลย

By mk Founder on Tag: .NET, F#, C#, Microsoft, Apache Spark, Big Data, Development
.NET

Apache Spark กลายเป็นซอฟต์แวร์มาตรฐานในการวิเคราะห์ข้อมูลขนาดใหญ่แบบเรียลไทม์ แต่ภาษาโปรแกรมที่เชื่อมต่อกับ Spark ได้ยังจำกัดอยู่แค่ภาษา Java, Python, Scala, R, SQL เท่านั้น

ไมโครซอฟท์จึงเอาใจชาว .NET ด้วยการเปิดตัว .NET for Apache Spark เพื่อให้สามารถใช้ภาษาตระกูล .NET (C#, F#) เชื่อมต่อกับ Spark ได้ด้วย

.NET for Apache Spark เป็นซอฟต์แวร์โอเพนซอร์ส เปิดโค้ดบน GitHub ทำงานข้ามแพลตฟอร์มได้ทั้งบนวินโดวส์ ลินุกซ์ แมค โดยตอนนี้ยังอยู่ในสถานะพรีวิว ต้องใช้ร่วมกับ .NET Core 2.1 ขึ้นไป

By mk Founder on Tag: Microsoft Edge, Development, Microsoft, Browser, Visual Studio Code
Microsoft Edge

สิ่งที่ขาดไม่ได้ของเบราว์เซอร์ยุคนี้คือ Developer Tools (DevTools) หรือเครื่องมือให้นักพัฒนาคอยดีบั๊กเว็บไซต์ ฝั่งไมโครซอฟท์ก็เผยหน้าตาของ DevTools ใน Microsoft Edge ตัวใหม่ยุค Chromium

หน้าตาของ DevTools ของ Edge ในตอนนี้ต้องบอกว่าไม่ต่างจากของ Chrome แต่อย่างใด สิ่งที่ไมโครซอฟท์เพิ่มเข้ามาเป็นอย่างแรกคือปรับธีมเป็นสีดำ โดยใช้ธีมสีเดียวกับ Visual Studio Code เพื่อให้หน้าตาเครื่องมือของไมโครซอฟท์ไปในทางเดียวกันหมด

By mk Founder on Tag: Eclipse, Kubernetes, Development, IDE, Open Source, IBM
Eclipse

ความร้อนแรงของ Kubernetes ทำให้มูลนิธิ Eclipse เสนอตั้งโครงการใหม่ชื่อ Eclipse Tempest ขึ้นมาเพื่อสร้างชุดเครื่องมือสำหรับพัฒนาแอพบน Kubernetes โดยเฉพาะ

Eclipse Tempest ไม่ได้เป็น IDE แต่จะเป็นชุดของปลั๊กอินสำหรับ IDE ยอดนิยม 3 ตัวคือ Eclipse IDE (เดสก์ท็อป), Eclipse Che (เว็บ) และ Visual Studio Code เพื่อให้การสร้างและทดสอบแอพพลิเคชันบน Kubernetes ผ่าน IDE เหล่านี้ทำได้ง่ายขึ้น

ในเบื้องต้น IBM ยินดีบริจากโค้ดจากโครงการ Microclimate ซึ่งเป็นตัวช่วยพัฒนาซอฟต์แวร์บน Kubernetes และ Jenkins ให้เป็นโค้ดตั้งต้นของ Eclipse Tempest ด้วย

By mk Founder on Tag: .NET, Microsoft, Development, Open Source
.NET

ขนานมากับ .NET Framework 4.8 ไมโครซอฟท์ยังมี .NET Core 3.0 เวอร์ชันโอเพนซอร์สและรันข้ามแพลตฟอร์ม ซึ่งตอนนี้ออกรุ่นพรีวิว 4 แล้ว

ฟีเจอร์สำคัญของ .NET Core 3.0 คือรองรับ Windows Forms และ Windows Presentation Framework (WPF) ทำให้แอพแบบ GUI ตัวเก่าๆ ที่เขียนด้วย .NET Framework สามารถพอร์ตมารันบน .NET Core ได้ (สักที!)

By mk Founder on Tag: .NET, Microsoft, Development
.NET

ไมโครซอฟท์ประกาศออก .NET Framework 4.8 ซึ่งเป็นรุ่นอัพเดตย่อยของ .NET Framework สาย 4.x บนแพลตฟอร์มวินโดวส์

ปัจจุบันไมโครซอฟท์แยก .NET เป็นสองตัวขนานกันคือ .NET Framework ของเดิม และ .NET Core เวอร์ชันโอเพนซอร์ส โดยจะเน้นพัฒนาของใหม่ให้ .NET Core มากกว่า แต่ .NET Framework ก็มีอัพเดตเล็กๆ น้อยๆ ไม่ถูกทอดทิ้งแต่อย่างใด

ของใหม่ใน .NET Framework 4.8 มีดังนี้

By mk Founder on Tag: Android Studio, IDE, Android, Development
Android Studio

Android Studio ออกเวอร์ชัน 3.4 ที่เข้าสถานะเสถียร (stable channel) เรียบร้อยแล้ว ของใหม่ในรุ่นนี้มีไม่เยอะนักเมื่อเทียบกับรุ่นก่อนๆ เพราะกูเกิลกำลังดำเนินโครงการ Project Marble เน้นปรับปรุงฟีเจอร์พื้นฐาน และ flow การทำงานของตัว IDE ให้ดีขึ้นแทน

By mk Founder on Tag: Microsoft Edge, Browser, Microsoft, Development
Microsoft Edge

นักพัฒนาเว็บโปรดทราบ ไมโครซอฟท์ประกาศ User Agent String ของ Microsoft Edge ยุค Chromium ว่า Edg (ไม่มี e)

เหตุผลของไมโครซอฟท์คือไม่ต้องการใช้ชื่อซ้ำซ้อนกับ Edge ตัวเดิมที่ใช้เอนจิน EdgeHTML และใช้คำว่า "Edge" ไปแล้ว บวกกับ Microsoft Edge บนมือถือก็ใช้ String แบบไม่มีตัว e มาก่อนแล้ว ("EdgiOS" และ "EdgA") ทำให้การใช้ "Edg" สอดคล้องไปในทิศทางเดียวกัน

ตัวอย่าง User Agent String ของ Edge ตัวใหม่

By mk Founder on Tag: Android 10, Android, Development
Android 10

กูเกิลออก Android Q Beta 2 ตามหลังมาจาก Beta 1 ในเวลาไม่ถึงเดือน

ของใหม่ที่สำคัญของ Beta 2 ได้แก่ฟีเจอร์ "Bubbles" หรือการให้หน้าต่างแชทลอยขึ้นมาบนหน้าจอ ลักษณะเดียวกับฟีเจอร์ Chat Head ของ Facebook Messenger แต่รอบนี้กูเกิลทำให้รองรับที่ระดับ OS เลยเพื่อความเป็นอันหนึ่งอันเดียวกัน ประสบการณ์ใช้งานเหมือนกัน และนักพัฒนาแอพแต่ละตัวไม่ต้องพัฒนาฟีเจอร์นี้เอง

ตอนนี้ยังไม่มีแอพแชทตัวไหนรองรับ Bubbles แต่จากภาพของกูเกิลเอง ก็แสดงให้เห็นว่า Android Messages และ Hangouts สามารถใช้ฟีเจอร์นี้ได้

By mk Founder on Tag: Visual Studio, IDE, Microsoft, Development
Visual Studio

Visual Studio 2019 ออกรุ่นสมบูรณ์แล้ว ของใหม่ที่สำคัญได้แก่

By mk Founder on Tag: Chrome, JavaScript, Development, Browser
Chrome

Chrome for iOS อาจเป็น Chrome เวอร์ชันที่คนไม่ค่อยนึกถึงสักเท่าไรนัก แต่ก็มีผู้ใช้งานเป็นจำนวนไม่น้อย (สถิติของ Blognone อยู่ราว 8% ของผู้ใช้ iOS ทั้งหมด)

ด้วยข้อจำกัดของแอปเปิลเอง ทำให้ Chrome for iOS (รวมถึงเบราว์เซอร์อื่นทุกตัว) ไม่สามารถใช้เอนจิน Blink ของตัวเองได้ และต้องใช้เอนจิน WebKit ที่มากับตัวระบบปฏิบัติการแทน

อย่างไรก็ตาม ตัวไบนารี WKWebView ของแอปเปิลกลับไม่ซัพพอร์ตฟีเจอร์ Safari Remote Debugging ทำให้การทดสอบเว็บเพจบน Chrome for iOS ทำได้ยากพอสมควร (สามารถทำได้หากคอมไพล์ Chrome for iOS เองทั้งหมดจากซอร์สโค้ด แต่ก็ยุ่งยากไม่น้อย)

Visual Studio Code

เมื่อประมาณต้นเดือนมีนาคมไมโครซอฟท์ได้ออกอัพเดตเวอร์ชัน 1.32 ให้ Visual Studio Code มาพร้อมการปรับปรุงหลายอย่าง

การปรับปรุงที่น่าสนใจอย่างแรกคือ การเพิ่มความสามารถให้ IntelliSense แสดงผลคำอธิบาย ARIA attribute และ DOM event ขณะเขียนโค้ด HTML (ใช้ข้อมูลจาก W3C และ MDN) ซึ่งจะช่วยให้นักพัฒนาเว็บเลือกใช้งาน attribute ข้างต้นได้สะดวกกว่าเดิม

Subscribe to Development