Blazor และ WebAssembly คืออะไร?

Blazor คือ Web UI Framework โดยใช้ภาษา C# + Razor + HTML และเอาไปรันอยู่บน Browser ด้วย WebAssembly จะช่วยลดความยุ่งยากในการสร้าง Single Page Web App (SPA) ที่รวดเร็วและสวยงามที่ทำงานใน Browser ช่วยให้นักพัฒนา .NET สามารถเขียน Web Application ที่ใช้งานฝั่ง Client บน Web Browser ได้โดยใช้มาตรฐาน Open Web Standards

ถ้าคุณเป็นนักพัฒนา .NET อยู่แล้ว Blazor นี่แหละคือคำตอบ คุณจะสามารถใช้ทักษะในการพัฒนาเดิมที่เคยทำอยู่ เพียงแค่เพิ่มความสามารถในการพัฒนาแบบ browser-based development ไปก็แค่นั้น

ทำไมต้องใช้ .NET ไปทำงานบน Web Browser ด้วยล่ะ?

การพัฒนา Web App นั้นมีการพัฒนาอย่างต่อเนื่องมาเรื่อยๆ และมีการปรับปรุงในหลาย ๆ ด้านในช่วงหลายปีที่ผ่านมา แต่การสร้าง Web App ที่ทันสมัยก็ยังคงเป็นปัญหาอยู่ การใช้. NET ไปทำงานบน Web Browser มีข้อดีหลายอย่างที่สามารถช่วยให้การพัฒนาเว็บได้ง่ายขึ้นและมีประสิทธิผลมากขึ้น

  • Stable and consistent .NET มี Standard APIs เครื่องมือและสร้างโครงสร้างพื้นฐานในทุกแพลตฟอร์ม .NET ที่มีความเสถียรคุณลักษณะที่หลากหลายและใช้งานง่าย

  • Modern innovative languages ภาษา .NET เช่น C# และ F# ทำให้การเขียนโปรแกรมมีความสุขและเริ่มดีขึ้นด้วยคุณสมบัติใหม่ของภาษาใหม่ ๆ

  • Industry leading tools ตระกูลผลิตภัณฑ์ Visual Studio ให้ประสบการณ์การพัฒนา .NET ที่ยอดเยี่ยมใน Windows, Linux และ MacOS

  • Fast and scalable .NET มีประวัติอันยาวนานของประสิทธิภาพความน่าเชื่อถือและความปลอดภัยสำหรับการพัฒนาเว็บบนเซิร์ฟเวอร์ การใช้. NET เป็นโซลูชันแบบ Full-Stack ช่วยให้สร้างแอพพลิเคชันที่รวดเร็วเชื่อถือได้และมีความปลอดภัยมากขึ้น

Browser + Razor = Blazor

Blazor ใช้เทคโนโลยีเว็บที่มีอยู่เช่น HTML และ CSS แต่คุณใช้ไวยากรณ์ C# และ Razor แทน JavaScript เพื่อสร้างเว็บ UI แบบผสมได้ และมีคุณสมบัติทั้งหมดของเว็บเฟรมที่ทันสมัย ​​ได้แก่

  • A component model for building composable UI
  • Routing
  • Layouts
  • Forms and validation
  • Dependency injection
  • JavaScript interop
  • Live reloading in the browser during development
  • Server-side rendering
  • Full .NET debugging both in browsers and in the IDE
  • Rich IntelliSense and tooling
  • Ability to run on older (non-WebAssembly) browsers via asm.js
  • Publishing and app size trimming

Blazor ทำงานอย่างไร


thanks Jon Galloway for this slide

WebAssembly กำลังจะเปลี่ยนแปลงโลกของการพัฒนาเว็บ

การใช้งาน .NET บน Web Browser ทำได้โดย WebAssembly ซึ่งเป็นมาตรฐานเว็บใหม่สำหรับรูปแบบ “Portable โดยมีขนาดและเวลาในการโหลดที่เหมาะสมสำหรับการรวบรวมข้อมูลบนเว็บ”

WebAssembly ช่วยให้สามารถเขียนเว็บแอ็พพลิเคชันใหม่ ๆ ได้ โค้ดที่คอมไพล์ไปยัง WebAssembly สามารถเรียกใช้ Web Browser ใดก็ได้ด้วยความเร็วแบบ Native โดยไม่ต้องติดตั้ง Plug-in ใดๆเลย คุณก็สามารถรันโปแกรมพื้นฐานของ .NET assemblies บน Web Browser ด้วย WebAssembly based .NET runtime ได้แล้ว

ลิ้งที่เกี่ยวข้องกับโครงการ

ที่มา: https://blogs.msdn.microsoft.com/webdev/2018/02/06/blazor-experimental-project/

ติดตามบทความเกี่ยวกับ Blazor ต่อไปได้ที่ CodeBangkok นะครับ

บริจาค (Donate) ให้กับ CodeBangkok ได้ที่
BTC = 3GDxhb84ho2jmAV9seAgAFJ7dy1XR3GCyc
ETH = 0x119fa8A618A0283D1834853325A8FF4fe1101230
LTC = ME2abSdDeQYuTmzZSAnHL7LGGeF836d1ut
ZEC = t1Y4NkK3Dx3yBbwCVdpXzKYrqUSJSHgaFXa

https://www.lazada.co.th/products/codebangkok-i219874509-s334754949.html

https://www.lazada.co.th/products/c-net-core-i221844611-s338593893.html?spm=a2o6z.10453683.17.2.77ba30028gg3mg&mp=3

1 Like