By mk Founder on Tag: IntelliJ, JetBrains, IDE, Security, Development
IntelliJ

JetBrains ออก IntelliJ IDEA 2022.1 เป็นเวอร์ชันใหญ่ตัวแรกของปี 2022 มีฟีเจอร์ใหม่ที่สำคัญคือ Dependency Analyzer ช่วยจัดการและวิเคราะห์แพ็กเกจซอฟต์แวร์ (ในที่นี้รองรับ Maven และ Gradle) เพื่อแก้ปัญหาเรื่องเวอร์ชันทับซ้อน (conflict resolution และ configurations correction)

นอกจากประเด็นเรื่องเวอร์ชันแล้ว IntelliJ ยังสามารถตรวจเช็คช่องโหว่ความปลอดภัยของแพ็กเกจที่เรียกใช้ได้ด้วย (ผ่านฐานข้อมูล Checkmarx Software Composition Analysis) โดยฟีเจอร์นี้ต้องเป็น IntelliJ IDEA Ultimate แบบเสียเงินถึงใช้งานได้

By mk Founder on Tag: Emoji, Android, Font, Google, Development
Emoji

กูเกิลอธิบายวิธีแก้ปัญหาการแสดง emoji เป็นกล่องสี่เหลี่ยมใน Android ที่เกิดจากระบบปฏิบัติการรุ่นเก่าไม่รองรับ emoji รุ่นใหม่ๆ ที่ออกตามหลังจากนั้น

เบื้องหลังการทำงานของ emoji เป็นฟอนต์ที่มีอักขระตามรหัส Unicode โดยกรณีของกูเกิลใช้ฟอนต์ชื่อ Noto Emoji (เป็นหนึ่งในฟอนต์ชุด Noto ที่ชื่อมาจากคำว่า no more tofu ซึ่งเต้าหู้หมายถึงกล่องที่แสดงฟอนต์ไม่ได้) ที่จะอัพเดตไอคอน emoji ให้ทันสมัยตลอดเวลา ปัจจุบัน Noto Emoji รองรับแล้ว 3,366 ตัว

By mk Founder on Tag: GitHub, Security, Development
GitHub

GitHub มีเครื่องมือชื่อ Actions เป็นระบบ workflow ช่วยทำงานอัตโนมัติตามเงื่อนไขที่กำหนด เปิดใช้งานมาตั้งแต่ปี 2019 โดยบัญชีฟรีก็ใช้ได้

ล่าสุด GitHub ออกมาแนะนำ action ชื่อ dependency-review-action ที่พัฒนาโดยพนักงานของตัวเอง หน้าที่ของมันคือตรวจสอบหากโค้ดของเรามีการเพิ่ม dependency ใหม่เข้ามา จะวิ่งไปเช็คกับฐานข้อมูล GitHub Advisory Database ว่า dependency นั้นมีช่องโหว่ที่เป็นที่รู้จักอยู่แล้วหรือไม่

By mk Founder on Tag: Google Play, Android, Development, Google
Google Play

Google Play Store ประกาศนโยบายให้แอพต้องปรับตัวรองรับ API ของ Android เวอร์ชันใหม่ๆ มากขึ้น

ปัจจุบัน Google Play มีนโยบายว่าแอพใหม่และแอพเดิมที่มีอัพเดต จะต้องตั้ง target API ตาม Android เวอร์ชันล่าสุดภายใน 1 ปีหลังจากออกเวอร์ชัน หากไม่ปฏิบัติตามจะไม่สามารถส่งแอพขึ้นสโตร์ได้ แต่ไม่มีผลกับแอพเดิมที่อยู่บนสโตร์

นโยบายใหม่มีผลต่อแอพเดิมที่อยู่บนสโตร์ หากไม่ target API ตาม Android เวอร์ชันล่าสุดภายใน 2 ปีหลังออกเวอร์ชัน จะค้นหาไม่เจอและผู้ใช้ใหม่ไม่สามารถติดตั้งได้อีก (ผู้ใช้เดิมยังใช้ต่อได้) นโยบายนี้จะเริ่มมีผล 1 พฤศจิกายน 2022 เป็นต้นไป

By mk Founder on Tag: React, JavaScript, Development
React

React ออกเวอร์ชัน 18.0 ถือเป็นการออกเวอร์ชันใหญ่ครั้งแรกนับจาก React 17.0 ในปี 2020 ที่ไร้ฟีเจอร์ใหม่ รอบนี้จึงมีฟีเจอร์ใหญ่สะสมมาออกทีเดียวหลายอย่าง

ฟีเจอร์สำคัญที่สุดคือ Concurrent React เป็นการเปิดให้มี UI หลายเวอร์ชันในเวลาเดียวกัน (concurrency) โดย Concurrent React เป็นการปรับกลไกภายในของ React เองให้รองรับฟีเจอร์ใหม่สาย concurrency ต่างๆ ซึ่งนักพัฒนาสามารถเลือกใช้ได้แบบ opt-in

ทีมพัฒนา React บอกว่าในระยะใกล้ นักพัฒนาแอพจะเลือกใช้ Concurrent หรือไม่ก็ได้ แต่ในระยะยาวแล้ว หลายส่วนใน React จะมุ่งไปทาง Concurrent มากขึ้น

By mk Founder on Tag: AWS, Games, Development, Amazon
AWS

สัปดาห์ที่ผ่านมาในงาน Game Developer Conference 2022 บริษัทยักษ์ใหญ่ Amazon เปิดตัว AWS for Games เป็นชื่อของบริการร่มใหญ่สำหรับการพัฒนาเกมด้วย AWS

AWS for Games ประกอบด้วยบริการย่อยๆ จำนวนมาก ซึ่ง AWS แบ่งออกเป็น 6 กลุ่ม ได้แก่ development, game servers, live operations, analytics, AL & ML, security

บริการที่น่าสนใจได้แก่

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

ไมโครซอฟท์ประกาศเตือน .NET 5.0 หมดระยะซัพพอร์ตวันที่ 8 พฤษภาคม 2022 ตามระยะการซัพพอร์ตนาน 18 เดือน (ไม่ใช่รุ่น LTS) โดยแนะนำให้ย้ายไปใช้รันไทม์เป็น .NET 6.0 ที่เป็นรุ่น LTS ซัพพอร์ตนาน 3 ปี

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

By mk Founder on Tag: Microsoft Azure, Games, Development, Microsoft
Microsoft Azure

ช่วงหลังๆ เราเห็นกระแสการใช้สภาพแวดล้อมในการพัฒนาโปรแกรมที่เป็น VM รันบนคลาวด์ แทนการรันในเครื่องไคลเอนต์มากขึ้นเรื่อยๆ (ตัวอย่าง GitHub Codespaces) ด้วยเหตุผลเรื่องความสะดวกในการจัดการเวอร์ชันของซอฟต์แวร์ และลดเวลาการเซ็ตอัพระบบ (ทำอิมเมจมาตรฐานเก็บไว้แล้วเปิด VM ขึ้นมา)

ล่าสุดแนวคิดนี้เริ่มลามมายังวงการพัฒนาเกม สัปดาห์ที่ผ่านมา ไมโครซอฟท์เปิดตัว Azure Game Dev VM ที่เป็นอิมเมจบน Azure พร้อมใช้รันใน VM เพื่อพัฒนาเกมได้ทันที

By mk Founder on Tag: Unity, Cloud Computing, Development
Unity

ตลาดคลาวด์สำหรับให้บริการเกม เป็นอีกตลาดที่เติบโตอย่างรวดเร็ว และมีบริษัทเข้ามาสู่ตลาดนี้กันเรื่อยๆ ทั้งฝั่งผู้ให้บริการคลาวด์ยักษ์ใหญ่ (AWS, Azure, Google) และฝั่งบริษัทสายพัฒนาเกม

สัปดาห์นี้ Unity ในฐานะเจ้าของเอนจินเกมชื่อดัง ก็ประกาศว่า Unity Gaming Services (UGS) จะเปิดให้บริการอย่างเป็นทางการในเดือนมิถุนายน 2022 หลังทดสอบ Beta มาสักพักใหญ่ๆ

By mk Founder on Tag: Mozilla, MDN, Development
Mozilla

MDN หรือชื่อเดิม Mozilla Developer Network เป็นคลังเอกสารอ้างอิงสำหรับนักพัฒนาเว็บมายาวนาน เปิดตัวบริการแบบพรีเมียม MDN Plus เพื่อเป็นช่องทางหารายได้มาสนับสนุน MDN อีกทางหนึ่ง หลังจาก Mozilla ประสบปัญหาทางการเงินในปี 2020 จนต้องปลดคนฝ่าย MDN ออกบางส่วน

หลัง Mozilla ประสบปัญหาในการดูแลรักษา MDN ทำให้ในปี 2021 ไมโครซอฟท์และกูเกิลเข้ามาช่วยบริจาคเงินให้โครงการไปต่อได้ ส่วนการออกแพ็กเกจ MDN Plus ก็ถือเป็นวิธีการหารายได้เพิ่มอีกทางนั่นเอง

สมาชิก MDN Plus จะได้ฟีเจอร์ชุดแรกคือ

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

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

ทีมพัฒนาของ Visual Studio บอกว่าได้ยินการรายงานปัญหาลืมเซฟโค้ดเป็นประจำ เมื่อสลับไปใช้เครื่องมืออื่น (เช่น ดีบั๊กเกอร์หรืออีมูเลเตอร์) ก็พบว่าเป็นโค้ดเก่า ไม่ใช่โค้ดล่าสุด หากไปแก้โค้ดในเครื่องมือตัวอื่น ก็จะมีปัญหาเรื่องการซิงก์โค้ดให้เป็นเวอร์ชันเดียวกันตามมาอีก

Selenium

ไมโครซอฟท์ร่วมมือกับ Selenium โครงการโอเพ่นซอร์สซึ่งพัฒนาเครื่องมือสั่งรันงานอัตโนมัติบนเว็บเบราว์เซอร์ออก Selenium WebDriver สำหรับ Internet Explorer (IE Driver) เวอร์ชันใหม่ เพื่อรองรับการใช้งาน Selenium WebDriver กับ IE Mode บน Microsoft Edge โดยเฉพาะ

สำหรับท่านที่ไม่คุ้นเคยกับเครื่องมือข้างต้น Selenium WebDriver เป็นเฟรมเวิร์คที่ช่วยให้นักพัฒนาสามารถเขียนโค้ดเพื่อสั่งรันงานบนเว็บเบราว์เซอร์ ซึ่งมักจะใช้กับการทดสอบเว็บอัตโนมัติ (automated test)

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

ไมโครซอฟท์ปรับปรุงฟีเจอร์ Live Unit Testing ให้กับ Visual Studio 2022 ช่วยให้สามารถรัน unit test ทันทีเมื่อโค้ดถูกแก้ไข

ฟีเจอร์ Live Unit Testing จะตรวจสอบว่าโค้ดส่วนไหนบ้างที่เปลี่ยน และรันเทสต์เฉพาะส่วนนั้นๆ อยู่เบื้องหลัง แล้วแจ้งเตือนว่าเทสต์ผ่านหรือไม่ สิ่งที่เพิ่มเข้ามาคือระบบ build ซอร์สโค้ดที่ทำงานได้เร็วขึ้น รองรับการรันเทสต์ขนาดใหญ่ขึ้น

Live Unit Testing เวอร์ชันใหม่ยังมีสถานะเป็นรุ่นพรีวิว ทดลองใช้ได้ใน Visual Studio Enterprise 2022 version 17.2 Preview 2 ขึ้นไป

By mk Founder on Tag: DirectX, Microsoft, Storage, Windows 10, Windows 11, Games, Development
DirectX

ไมโครซอฟท์เปิดตัว DirectStorage API บนพีซีอย่างเป็นทางการ ทั้งบน Windows 10 และ 11

DirectStorage API เป็น API ตัวใหม่ที่เริ่มใช้กับ Xbox Series X|S ก่อน ไอเดียของมันคือใช้ประโยชน์จาก NVMe SSD ที่ใช้งานกันแพร่หลายแล้วในยุคนี้ เกมสามารถสั่งดึงข้อมูลจากดิสก์เป็นชิ้นเล็กๆ (64kb) แต่ทำงานขนานกันมากๆ โดยไม่เปลืองแรงของซีพียูมากนัก เพราะกระจายงานโหลดและแตกไฟล์ไปอยู่ที่ตัว NVMe แทน

By mk Founder on Tag: Google Play, Android, Development, Compose
Google Play

กูเกิลมีแนวทางพัฒนาแอพบน Android ยุคใหม่ที่เรียกว่า Modern Android Development (MAD) มาได้สักระยะแล้ว ประกอบด้วยภาษา Kotlin, เครื่องมือ Android Studio, ชุด API Jetpack, และชุดเขียน UI Jetpack Compose

กรณีของ Jetpack Compose เป็นชุดเครื่องมือสร้าง UI แบบเนทีฟสำหรับ Kotlin ที่ออกเวอร์ชัน 1.0 ในปี 2021 และเริ่มมีแอพดังๆ หลายตัวนำมาใช้แล้ว เช่น Twitter, Airbnb, Pinterest

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

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

ล่าสุดกูเกิลกำลังเปลี่ยนวิธีการแก้ปัญหานี้ โดยให้ "บีบอัดไฟล์แอพ" แทนการลบทิ้ง กูเกิลบอกว่าสามารถลดเนื้อที่ลงได้ 60% โดยที่ตัวไฟล์แอพ (APK) และข้อมูลแอพยังอยู่ในสตอเรจเหมือนเดิม สามารถนำกลับคืนมาทำงานได้ตามปกติหากต้องการ

By mk Founder on Tag: Java, Development
Java

บริษัท Perforce เจ้าของซอฟต์แวร์ JRebel ที่ใช้จัดการการเขียน UI สาย Java ออกรายงานสำรวจข้อมูลนักพัฒนาสาย Java ประจำปี 2022 มีประเด็นที่น่าสนใจดังนี้

By Job_The_Gamer Writer on Tag: Visual Studio Code, Development, IDE, Microsoft
Visual Studio Code

เมื่อประมาณต้นเดือนกุมภาพันธ์ ไมโครซอฟท์ออกอัพเดตเวอร์ชัน 1.64 ให้กับ Visual Studio Code โดยได้เพิ่มปรับปรุงในส่วนของ UI และฟีเจอร์อำนวยความสะดวกอีกหลายอย่าง

การเปลี่ยนแปลงในส่วนของ UI ที่เห็นได้ชัดในอัพเดตนี้ คือการเพิ่ม Side Panel เข้ามาเป็นพื้นที่แสดงผลด้านข้างชุดใหม่ซึ่งจะจัดวางอยู่ด้านตรงข้ามกับ Side Bar เดิมเสมอ

โดยผู้ใช้จะสามารถเลือก view จาก Side Bar และ Panel ด้านล่างเดิมไปแสดงผลได้ตามต้องการแค่คลิกเมาส์ค้างบน view ที่ต้องการแล้วลากไปยังขอบอีกข้างของ VS Code เท่านั้น

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

.NET มีอายุครบ 20 ปีในเดือนนี้ และไมโครซอฟท์ก็ออก .NET 7 Preview 1 มาให้ทดสอบกัน ตามนโยบายใหม่ที่ออก .NET รุ่นใหม่ปีละ 1 ครั้งช่วงปลายปี (รุ่นเลขคู่จะเป็น LTS ใช้ได้ 3 ปี เริ่มจาก .NET 6 ที่ออกปลายปี 2021 ส่วน .NET 7 ซัพพอร์ต 18 เดือน)

By mk Founder on Tag: Flutter, Windows, Development
Flutter

Flutter ออกเวอร์ชัน 2.10 ของใหม่ที่สำคัญคือ Flutter for Windows เข้าสถานะเสถียรอย่างเป็นทางการ หลังจากเริ่มพัฒนามาตั้งแต่ปี 2020

โครงการ Flutter บอกว่าตั้งใจรองรับการทำงานหลายแพลตฟอร์มอยู่แล้ว (ปัจจุบัน มี 6 แพลตฟอร์ม คือ Android, iOS, Web, Windows, macOS, Linux) แต่การใช้งาน Flutter บนเดสก์ท็อปมีความต่างจากบนมือถือ ทั้งในแง่ขนาดของหน้าจอและวิธีป้อนข้อมูล ทำให้ทีม Flutter ต้องสร้างเลเยอร์ที่เป็น C++ เพิ่มเข้ามา (สีเขียวในภาพ) เพื่อให้ทำงานกับ API ต่างๆ ของวินโดวส์ได้อย่างสมบูรณ์

Subscribe to Development