React ya da Laravel ile basit WhatsApp geliştireceğim

Tortue

Kilopat
Katılım
1 Aralık 2018
Mesajlar
6.127
Makaleler
1
Çözümler
19
Yer
İstanbul
React ya da laravel ile basit bir WhatsApp uygulaması geliştireceğim. Web kısmında sorularım var. Web'in yanı sıra, mobil platformu da React-native ile yazacağım. Front-end olarak WhatsApp'ı kopyalarım yüksek ihtimalle.

1. Web'i React ile yazmam durumunda, mobilin de yine aynı şekilde RN ile yazacağım için senkron gibi bir şey olabilir mi hız açısından?
Özellikle API bakımından.

2. laravel (PHP) mi yoksa React mı kullanmamı önerirsiniz? Kesinlikle MVC yapısı dışına çıkmayacağım veya MVC yapısına ters düşen bir kodlama yapmayacağım.

3. Websocket kullanmak ne kadar sağlıklı olur hız açısından?

Veritabanı MySQL olacak. (Hız bakımından alternatif DB öneriniz var ise alabilirim.)

Ek olarak, QR kod ile WhatsApp web de yazacağım projenin sonuna bırakmayı düşünüyorum. Çok profesyonel olmayacak, arkadaşlarımla aramızda konuşacağız sadece.
Lütfen sadece laravel ya da React ile ilgilenen arkadaşlar yazabilir mi? Ona göre Laravel'i seçersem Web'i arkadaşa devir edeceğim, React'ı seçersem projeyi tamamen kendim alacağım. Teşekkürler şimdiden.
Uygulama ve Site adını da belirlemedim, bunun için de önerilerinize açığım. :)
Aklımda ToChat var ancak pek iyi değil.
 
Son düzenleme:
1- Hayır olmaz ama yazarken kolaylık sağlar size.
2- Laravel yerine lumen önerebilirim. Laravelin sağlamış olup kullanmayacağınız bir çok şey lumende yok. Lazım olursa kolaylıkla ekleyebiliyorsunuz.
 
Veritabanı olarak NoSQL bir veritabanı kullanmak daha iyi olur diye düşünüyorum, MongoDB veya Redis gibi.
 
Veritabanı olarak NoSQL bir veritabanı kullanmak daha iyi olur diye düşünüyorum, MongoDB veya Redis gibi.
NoSQL veya Redis ile hiç çalışmadım. MongoDB ile biraz çalışmışlığım var bu yüzden olabilir, teşekkür ederim.
Diğerlerinin olmamasının sebebi öğrenme süreci de doğacak bu yüzden.


Güncelleme
React kullanmaya karar verdik, veritabanı ise Firebase düşünüyoruz ama kararsızız.
 
Son düzenleme:
Redis ile socket bağlantısı düşünülebilir. MySQL o kadar request kaldırmaz.
React ile laravel ayrı şeyler.
React ile request atıp bi response alıp onu arayüzde kullanırsınız. SPA için kullanılıyor.
Ve evet kullanabilirsiniz.
 
Redis ile socket bağlantısı düşünülebilir. MySQL o kadar request kaldırmaz.
React ile laravel ayrı şeyler.
React ile request atıp bi response alıp onu arayüzde kullanırsınız. SPA için kullanılıyor.
Ve evet kullanabilirsiniz.

Redis hiç kullanmadım, şu anda da düşünmüyoruz.
Laravel ve React'ın ayrı şeyler olduğunu biliyorum, Laravel'ı da eledik zaten PHP kullanmayacağız projede asla.
Bugün deneme amaçlı React ile Firebase veritabanı kullanarak test yaptık, tam istediğimiz gibi sonuç alabildik. Dediğim gibi, aman aman bir proje değil. Kendi aramızda mesajlaşacağız.

Güncelleme
Şimdilik hazır tasarım giydirdim, veritabanı olarak Firebase kullandım. Gayet hızlı, iyi bir sonuç aldık. Mesaj yazanların ismi yok tabii orası ayrı komedi. :D
Ayrıca Front-End kısmından aşırı nefret ediyordum, bir kez daha anlamış oldum...
Ve Firebase kullandığım için API yazmama gerek yok, RN'de bunun için paket mevcut. Web kısmını WhatsApp'a klonladıktan sonra mobil'e geçeceğim.
IMG_20200512_061916.jpg
 
Son düzenleme:
Ben kendi kurumum için bir tane yaptım sunucu tarafı Node.js veritabanı Mongodb iletişim için ise socket.io( long polling kullanıyorum web socket değil).Ön arka ne varsa hepsini kendim kodladım.Kullanıcı atma , kullanıcı yazıyor , özel sohbet odası oluşturma vs.

İlk olarak google cloud run üzerinden denemelerimi yaptım ve firestore kullandım verileri için.

Zaten chat uygulamalarında web socket kullanmanın çok da gerekli olduğunu düşünmüyorum çünkü sürekli bir veri alışverişine gerek yok , biri mesaj yazar o mesaj ilgili kişilere gönderilir; fakat websocket kullanması gerekilen yerlerde sürekli bir iletişim olması gerekir .Örnek : Online bir oyun.
 
Hocam React bir frontend kütüphanesi, Laravel ise backend frameworkü. Yani ikisini aynı anda kullanabilirsiniz. Frontendden nefret ediyorsanız mobil uygulamayı react native ile yazmanızı önermem. Flutter kullanmanız daha iyi olur.
 
Böyle bir iş için MERN stack kullanabilirsin. Laravel vs gerek yok. Mesajın geldiğinde kullanıcının anlık olarak görmesini istiyorsan websocket gerekiyor ve socket konusunda PHP'nin native desteği yok. web.whatsapp 'ın Network alanından WS filtresi yaparsan bir websocket çalıştığını göreceksin.
 

Geri
Yukarı