Saya ingin menggunakan MEAN JavaScript Stack, tetapi saya perhatikan bahwa ada dua tumpukan yang berbeda dengan situs web mereka sendiri dan metode instalasi: mean.js dan mean.io. Jadi saya datang bertanya pada diri sendiri pertanyaan ini: "Yang mana yang saya gunakan?"
Jadi untuk menjawab pertanyaan ini saya bertanya kepada komunitas apakah Anda bisa menjelaskan apa perbedaan antara keduanya? Dan jika mungkin pro dan kontra? Karena mereka terlihat sangat mirip dengan saya.
javascript
node.js
angularjs
web-applications
mean-stack
CMPSoares
sumber
sumber
Jawaban:
Mereka pada dasarnya sama ... Mereka berdua menggunakan swig untuk templating, mereka berdua menggunakan karma dan moka untuk tes, integrasi paspor, nodemon, dll.
Kenapa begitu mirip? Mean.js adalah cabang dari Mean.io dan kedua inisiatif dimulai oleh orang yang sama ... Mean.io sekarang berada di bawah payung perusahaan Linnovate dan sepertinya orang (Amos Haviv) menghentikan kolaborasinya dengan perusahaan ini dan mulai Mean.js. Anda dapat membaca lebih lanjut tentang alasannya di sini .
Sekarang ... perbedaan utama (atau sedikit) yang dapat Anda lihat sekarang adalah:
GENERASI PEMRANCANGAN DAN PEMESANAN BOILERPLATE
Mean.io menggunakan alat cli khusus bernama 'mean'
Mean.js menggunakan Yeoman Generators
MODULARITAS
Mean.io menggunakan modularitas paket node yang lebih lengkap dengan file klien dan server di dalam modul.
Mean.js menggunakan modul hanya di front-end (untuk sudut), dan menghubungkannya dengan Express. Meskipun mereka bekerja pada modul vertikal juga ...
BANGUN SISTEM
Mean.io baru-baru ini pindah ke teguk
Mean.js menggunakan gerutuan
PENYEBARAN
Keduanya memiliki Dockerfiles di repo masing-masing, dan Mean.io memiliki instalasi satu-klik di Google Compute Engine , sedangkan Mean.js juga dapat digunakan dengan instalasi satu-klik di Digital Ocean .
DOKUMENTASI
Mean.io memiliki dokumen ok
Mean.js memiliki dokumen AWESOME
MASYARAKAT
Mean.io memiliki komunitas yang lebih besar karena itu adalah boilerplate
Mean.js asli memiliki momentum yang kurang tetapi pertumbuhan yang stabil
Pada tingkat pribadi, saya lebih menyukai filosofi dan keterbukaan MeanJS dan lebih banyak pendekatan traksi dan modul / paket dari MeanIO. Keduanya bagus, dan Anda mungkin akan akhirnya memodifikasinya, jadi Anda tidak bisa salah memilih satu atau yang lain. Anggap saja sebagai titik awal dan sebagai latihan pembelajaran.
SOLUSI “MEAN” ALTERNATIF
MEAN adalah cara umum (diciptakan oleh Valeri Karpov ) untuk menggambarkan boilerplate / kerangka kerja yang menggunakan "Mongo + Express + Angular + Node" sebagai dasar tumpukan. Anda dapat menemukan kerangka kerja dengan tumpukan ini yang menggunakan denominasi lain, beberapa di antaranya sangat bagus untuk RAD (Pengembangan Aplikasi Cepat) dan membangun SPA. Misalnya:
Anda juga memiliki Hackathon Starter . Itu tidak memiliki A dari BERARTI (itu adalah 'MEN'), tetapi itu batu ..
Selamat bersenang-senang!
sumber
Pertama-tama, MEAN adalah akronim untuk M ongoDB, E xpress, A ngular dan N ode.js.
Secara umum mengidentifikasi gabungan yang digunakan dari teknologi ini dalam "tumpukan". Tidak ada hal seperti itu sebagai " The MEAN kerangka".
Lior Kesos di Linnovate memanfaatkan kebingungan ini. Dia membeli domain MEAN.io dan menaruh beberapa kode di https://github.com/linnovate/mean
Untungnya mereka menerima banyak publisitas, dan ada lebih banyak artikel dan video tentang MEAN. Ketika Anda Google "kerangka kerja berarti", mean.io adalah yang pertama dalam daftar.
Sayangnya kode di https://github.com/linnovate/mean sepertinya tidak direkayasa dengan baik .
Pada bulan Februari saya jatuh dalam perangkap sendiri. Situs mean.io memiliki desain yang menarik dan repo Github memiliki 1000+ bintang. Gagasan mempertanyakan kualitas bahkan tidak melewati pikiran saya. Saya mulai bereksperimen dengan itu tetapi tidak butuh waktu terlalu lama untuk menemukan hal-hal yang tidak berfungsi, dan membingungkan potongan-potongan kode.
Sejarah komit juga cukup memprihatinkan. Mereka merekayasa ulang struktur kode dan direktori beberapa kali, dan menggabungkan perubahan baru terlalu memakan waktu.
Hal-hal baik tentang kode mean.io dan mean.js adalah keduanya disertai dengan integrasi Bootstrap. Mereka juga datang dengan Facebook, Github, Linkedin dll otentikasi melalui PassportJs dan contoh model (Artikel) di backend pada MongoDB yang disinkronkan dengan model frontend dengan AngularJS.
Menurut situs web Linnovate:
Dari situs web sepertinya kumpulan keterampilan inti mereka adalah Drupal (sistem manajemen konten PHP) dan hanya belakangan ini mereka mulai menggunakan Node.js dan AngularJS.
Akhir-akhir ini saya membaca Blog Mean.js dan segalanya menjadi lebih jelas. Pemahaman saya adalah bahwa pengembang Javascript utama (Amos Haviv) meninggalkan Linnovate untuk bekerja pada Mean.js meninggalkan proyek MEAN.io dengan orang-orang yang merupakan pengembang pemula Node.js yang lambat memahami bagaimana hal-hal seharusnya bekerja.
Di masa depan hal-hal dapat berubah tetapi untuk saat ini saya akan menghindari untuk menggunakan mean.io. Jika Anda mencari pelat baja untuk quickstart Mean.js tampaknya pilihan yang lebih baik daripada mean.io.
sumber
Berikut ini adalah perbandingan berdampingan dari beberapa starter aplikasi / generator dan teknologi lainnya termasuk MEAN.js, MEAN.io, dan cleverstack. Saya terus menambahkan alternatif ketika saya menemukan waktu dan ketika itu terjadi, daftar manfaat yang berpotensi diberikan terus bertambah juga. Hari ini terserah sekitar 1600. Jika ada yang ingin membantu meningkatkan keakuratan atau kelengkapannya, klik tautan berikutnya dan lakukan kuesioner tentang sesuatu yang Anda ketahui.
Bandingkan proyek teknologi aplikasi
Dari basis data ini, sistem menghasilkan laporan seperti berikut:
Laporan trade-off MeanJS vs MeanIO
sumber
Lembar Trade-off Starter dari spreadsheet perbandingan saya memiliki perbandingan satu-satu yang komprehensif antara masing-masing generator. Jadi tidak perlu lagi menyimpang dari hal-hal besar untuk dikatakan tentang favorit Anda.
Berikut ini adalah antara generator-angular-fullstack dan MEAN.js. Persentase adalah nilai untuk setiap manfaat berdasarkan bobot pribadi saya, di mana generator yang sempurna adalah 100%
generator- angular- fullstack menawarkan 8% yang tidak dimiliki MEANJS.org
MeanJS.org. menawarkan 9% yang tidak generator-angular-fullstack
Berikut ini adalah antara MEAN.io dan MEAN.js dalam format yang lebih mudah dibaca
sumber
Saya terkejut tidak ada yang menyebutkan generator Yeoman angular-fullstack . Ini adalah generator komunitas Yeoman nomor satu, dengan saat ini 1.490 bintang di halaman generator vs Mean.js '81 bintang (diakui bukan perbandingan yang adil mengingat bagaimana MEANJS baru adalah). Tampaknya aktif dipertahankan dan dalam versi 2.05 saat saya menulis ini. Tidak seperti MEANJS, itu tidak menggunakan Swig untuk templating. Itu bisa dibuat dengan paspor bawaan.
sumber