[Series C#] HELLO .NET CORE

9/16/2020 2:20 PM | Lập trình

Cách đây vài hôm, Microsoft vừa khiến cộng đồng Open Source dậy sóng bằng việc ra mắt .NET Core 1.0 và ASP.NET Core 1.0. Giờ đây, .NET không chỉ chạy trên mỗi Windows mà còn chạy được trên Linux và MacOS. Đây là một nước cờ khá cao tay của Microsoft. Hãy cùng xem anh em developer chúng ta được lợi ích gì trong vụ này nhé.

Đây là một nước cờ khá cao tay của Microsoft. Hãy cùng xem anh em developer chúng ta được lợi ích gì trong vụ này nhé.

.NET Framework của ngày hôm qua

Ngày xửa ngày xưa, khi nhắc tới C#, người ta nghĩ ngay tới .NET Framework của Microsoft. C# hay bị người đời ném đá bởi vì nó đi kèm với .NET Framework chỉ hoạt động trên Windows.

Ngoài ra, để viết ứng dụng C#, lập trình viên còn phải làm việc với 2 thằng vừa nặng vừa mắc tiền là Visual Studio và Microsoft SQL Server. Hai thằng này cũng … chỉ hoạt động trên Windows nốt.

Trước đây, để chạy C# trên các hệ điều hành khác, ta có thể sử dụng Mono. Tuy nhiên, đây không phải là 1 dự án chính thức của Microsoft. Developer vẫn không có IDE C# nào ngon lành, cũng chẳng có SQL Server nào đi kèm.

Sử dụng C#.NET đồng nghĩa với việc phải dùng toàn bộ hệ sinh thái (tốn tiền) của Microsoft!! Vì lẽ đó, C# tiếp tục trùm chăm đắp chiếu trên Windows, chịu sự ghẻ lạnh của người đời (người đời ở đây là cộng đồng developer dùng Linux, MacOS).

.NET Framework ngày hôm nay

Thế rồi Microsoft bắt đầu mở cửa dần dần. Thay vì đóng im ỉm như trước, Microsoft bắt đầu open source .NET Framework, ASP.NET MVC, Entity Framework để thu hút cộng đồng lập trình viên Open Source.

.NET Core đã bắt đầu ra những bản beta từ năm ngoái, và bản 1.0 vừa được chính thức ra mắt cách đây vài hôm.

Giờ đây, việc lập trình C# trở nên nhẹ nhàng rất nhiều. Ta chỉ cần cài đặt .NET Core (nhẹ), Visual Studio Code (cũng nhẹ). Tất cả đều free nhé. Trong thời gian sắp tới thì Microsoft sẽ đưa SQL Server 2016 lên Linux luôn.

Lý do Microsoft đưa .NET lên Linux

Lý do rất đơn giản: Vì Microsoft muốn cho các developer có thêm nhiều lựa chọn, góp phần phát triển ngành phần mềm.

Đùa đấy, bọn tư bản giãy chết làm gì tốt bụng như thế được! Đây là chiêu thả con săn sắt bắt con cá khô của Microsoft. Nền tảng đám mây Azure của Microsoft cho phép tạo các máy ảo Red Hat Linux.  Việc Red Hat Linux chạy được .NET sẽ giúp Microsoft tăng doanh số Azure Cloud.

Ngoài ra, do rào cản về tiền bạc đã biến mất, Microsoft cũng thu hút được kha khá lập trình viên sử dụng công nghệ của họ.

 .NET Core đi kèm những “đồ chơi” gì?

  • Bộ cài .NET Runtime: cho phép viết code, build và chạy ứng dụng .NET trên Windows, Linux, Mac
  • .NET Cli: Thay vì phải sử dụng Visual Studio để mở project, build và bấm run, nay ta có thể dùng command line và gõ dotnet builddotnet run. Vừa ngầu vừa nhanh gọn. Việc build và run bằng command line cũng giúp tích hợp CI và deploy dự án dễ dàng hơn nhiều.
  • IDE: Visual Studio rất nhiều tính năng nhưng chạy chậm và khá tốn RAM. Giờ đây ta có Visual Studio Code: nhanh, gọn, nhẹ, tích hợp git và chạy được trên mọi hệ điều hành. Bạn nào quen dùng hàng của JetBrain (ReSharper, WebStorm) có thể chờ và dùng Project Rider của họ
  • Database: Trước nay dùng .NET là phải dùng kèm với Microsoft SQL Server. Giờ chuyển qua Linux thì dùng Database gì?? Đừng lo, Microsoft cũng sẽ đưa bản SQL Server 2016 của họ lên Red Hat Linux luôn.

Ơ thế có ảnh hưởng gì tới cuộc sống của mình không?

Dĩ nhiên là.. có chứ! Trước đây, nếu muốn deploy một trang web C#, bạn phải tự mua host, mua Azure cloud hoặc up lên somee. Rất phiền toái.

Giờ đây, bạn có thể thoải mái deploy lên heroku, openshift và các host Linux khác. Bạn cũng có thể code và chạy C# trực tiếp trên Cloud9 luôn. Tuyệt quá phải không nào! (À, WebForm thì .NET Core chưa hỗ trợ đâu nhé, ahihi).

Kết luận

Nước đi này của Microsoft được cộng đồng các developer hoan nghênh nhiệt liệt. Cộng đồng developer có thêm lựa chọn công nghệ để sử dụng. Microsoft thì lôi kéo được một đống developer sử dụng phần mềm của họ.

Bản thân C# vốn đã là một ngôn ngữ khá mạnh mẽ. Với sự ra đời của .NET Core, C# đã có thể chạy trên mọi hệ điều hành. Giờ đây, bạn có thể dùng C# để viết web, viết ứng dụng di động (với Xamarin), chạy được trên nhiều nền tảng khác nhau.

Còn chờ gì nữa nào? Cùng vào dot.net để tải .NET Core 1.0 về máy và nghịch nào. Bản này nhẹ lắm, không nặng như .NET Framework đâu.

Dành cho các bạn muốn tìm hiểu thêm:

Tác giả: Phạm Huy Hoàng

Tin tức khác

  • Tích hợp zalo vào website.

    Tích hợp zalo vào website.

    Nếu bạn là một người có website bán hàng thì việc liên hệ thuận lợi nhanh cho khách hàng luôn là ưu tiên hàng đầu. Cũng chính vì lí dó này mình đã tìm hiểu sau khi chèn cho website của mình. Thấy hay nên chia sẻ cho mọi người có nhu cầu.

  • Cách dựng 1 website bằng iis.

    Cách dựng 1 website bằng iis.

    Có rất nhiều bạn làm web nhưng lại không biết cách build 1 site trên iis. Nên hôm nay mình sẽ chia sẻ các bước đơn giản để có thể dễ dàng tạo được 1 trang web bằng iis trên  server windows.

  • Build site PHP trên server windows.

    Build site PHP trên server windows.

    Mình đang quản trị các website asp.net nên việc build một website wordpress lên vps của mình gặp rất nhiều khó khăn. Và mình hỏi còn gặp những ý kiến như không thể build php và asp.net trên cùng một môi trường. Nhưng hôm nay mình đã làm được và chia sẻ lại cho mọi người. Nếu vẫn gặp khó khăn thì inbox cho mình nha. Thông tin nằm ở footer trang web.

  • Upload hình ảnh trong ckeditor asp.net

    Upload hình ảnh trong ckeditor asp.net

    Mình làm dự án và khách hàng yêu cầu thêm chức năng trong ckeditor. Nên cũng đọc, tìm kiếm share lại cho anh em có nhu cầu sử dụng nhé.

  • Microservice là gì? Ưu nhược điểm khi xài Microservice.

    Microservice là gì? Ưu nhược điểm khi xài Microservice.

    Hôm bữa mình có viết 1 bài về tổng quan về abp framwork. Trong framework này cũng có nhắc tới cách sử dụng và demo về microservice. Hôm nay mình sẽ chia sẻ chi tiết hơn về microservice. Mọi người xem nhé

  • DNS là gì?

    DNS là gì?

    DNS là viết tắt của cụm từ Domain Name System, mang ý nghĩa đầy đủ là hệ thống phân giải tên miền. DNS được phát minh vào năm 1984 cho Internet, chỉ một hệ thống cho phép thiết lập tương ứng giữa địa chỉ IP và tên miền.

  • Cách download, upload file lên ftp sử dụng SftpClient Renci.SshNet

    Cách download, upload file lên ftp sử dụng SftpClient Renci.SshNet

    Hôm nay mình sẽ hướng dẫn các bạn thao tác check exits folder, file, cách upload file, download file, delete file từ ftp về máy local sử dụng thư viện SftpClient Renci.SshNet trong c#