Saya telah membaca beberapa artikel berbeda tentang apa itu aplikasi Isomorphic, mengapa jenis arsitektur ini lebih baik dan sebagainya. Tapi saya masih memiliki sedikit ketidakpastian tentang apa yang dimaksud dengan istilah tersebut.

Bagaimana Anda mendefinisikan apa itu "Aplikasi Isomorfik", tanpa terlalu detail?

9
Eduard 28 Desember 2017, 16:36

1 menjawab

Jawaban Terbaik

Mereka, baru-baru ini, juga disebut universal. Saya tidak yakin tentang seluruh aplikasi yang disebut isomorfik/universal, tetapi Anda pasti dapat memiliki bagian dari basis kode yang universal.

Kode isomorfik/universal adalah kode yang berjalan di klien (browser) dan di server (NodeJS). Karena keduanya adalah JavaScript, ini sesuatu yang mungkin jika:

  1. Anda tidak menyebutkan window, document atau metode khusus browser lainnya
  2. Anda tidak menyebutkan server, fs atau metode khusus simpul lainnya.
  3. Jika Anda perlu melakukan hal di atas dalam beberapa kode yang dimaksudkan untuk universal, Anda harus membungkusnya dalam fungsi yang mengolok-olok metode yang diperlukan dalam lingkungan alternatif atau membungkusnya dalam kondisi sehingga aplikasi tidak mogok.

Contohnya adalah console.log yang akan berfungsi baik di dalam NodeJS dan browser apa pun, bersama dengan sebagian besar metode es6 lainnya di browser modern.

Saya menggunakan alat build (seperti webpack) untuk kemudian membantu membuat / mengekspor fungsi dalam file individual sehingga kami kemudian memiliki bundle seperti client-app.js yang disertakan dalam file HTML dan hanya browser js. Server kemudian mungkin mulai menggunakan server-app.js yang merupakan bundel khusus server. Kedua bundel dapat dibuat menggunakan banyak kode sumber universal yang sama.

12
peter.mouland 27 November 2019, 18:47