Jumat, 10 Agustus 2018

Perbedaan Net Core dan Net Framework

https://i.stack.imgur.com/GQVQJ.pngPerbedaan Net Core dan Net Framework? Ketika anda membuat project yang dibangun diatas teknologi NET, maka ada 2 jenis yaitu .NET Core dan .NET Framework, apa sih perbedaanya?




Pengembang menggunakan .NET framework untuk membuat aplikasi desktop Windows dan aplikasi berbasis server termasuk juga aplikasi web ASP.NET, sedangkan .NET Core digunakan untuk membuat aplikasi server yang berjalan di Windows, Linux dan Mac


Kapan menggunakan .NET Core

Ketika pengembang membuat aplikasi seperti berikut
  1. Membutuhkan  aplikasi yang cross platform.
  2. Membuat aplikasi microservice
  3. Memerlukan aplikasi performa dan skalabilitas yang tinggi
  4. Memerlukan aplikasi yang berjalan di beberapa versi .NET
  5. Hanya membuat aplikasi berbasis CLI (command line interface)
Biasanya sih penulis membuat .NET Core hanya untuk diperlukan ketika membuat pustaka yang menuntut perhitungan matematika saja, maka hindari .NET core digunakan untuk
  1. Memerlukan Windows Form dan WPF
  2. ASP.NET dan WebForm
  3. Memerlukan spesifik API windows, karena .NET Core didesain untuk berjalan di multi OS

Kapan menggunakan .NET Framework

Ketika  membuat aplikasi yang didistribusikan khusus untuk berbasis windows atau aplikasi perusahaan yang berskala besar dan memerlukan koneksi data (interface) seperti ciri-ciri berikut
  1. Memory management
  2. Type and memory safety
  3. Security
  4. Networking
  5. Application deployment
  6. Data structures
  7. APIs
Hindari .NET Framework jika ditemui project berikut
  1. Mensyarakat Multi OS
  2. Dituntut untuk performa dan skalabilitas yang tinggi
  3. Mensyarakat Open source framework

Bagaimana memilih .NET Core dan .NET Framework

Tentu kita bisa melakukan analisis, kapan sebaiknya menggunakan 2 teknologi diatas, yaitu
  1. Lakukan analisis terhadap depency atas library pihak ketiga, anda bisa menggunakan NuGet
  2. Target dari project anda, seperti table berikut 
  3. Pemisahan Core Engine, yups sebaiknya untuk Core Engine yang memerlukan performa tinggi, sebaiknya ditulis di .NET Core saja
 

Tentu ada solusi lainya yaitu kita bisa menggunakan Xamarin. Xamarin adalah platform untuk mengembangkan aplikasi yang berjalan di perangkat iOS, Android, atau Windows Phone. Xamarin ditulis dalam C # dan termasuk dalam semua edisi Visual Studio. Microsoft menjanjikan bahwa Xamarin adalah cara terbaik untuk membuat antarmuka pengguna (UI) dan mengoptimalkan kinerja dalam aplikasi di berbagai platform. Sehingga ketika aplikasi bisa berjalan di setidaknya perangkat iOS dan Android.




Posting Komentar