Kendi forum sitemi nasıl oluştururum?

Bu forumu yapma sebebim Back-End'de ve dinamik site nasıl yapıldığını kavramış olurum.
Back-end'i hangi dille yazmayı düşünüyorsunuz?
Forum sitesi back-end'e yeni başlayan kişileri zorlayabilir ama o kadar da değil doğrusu. Pratik yapmak için güzel bir proje bulmuşsunuz.
Bir önerim var, eklenecek özelliklerle projenin düzenini, yollarını, hangi adrese hangi requestin gideceğini bir yere not alın. Taslaksız yapınca baya karışıyor işler.

Ben daha önce denemiştim, geliştirmeye nasip olursa devam ederim, çünkü önü baya açık.
 
Bunun tamamını PHP ile yapmak yerine PHP ile kendine bir REST API oluşturup onu JavaScript'le işleyerek de yapabilirsin.
APİ'yi nasıl oluşturacam. Ve ben php bilmiyorum 😁
Html css js
Genel olarak APİ mantığını anlatırsan anlarım

Back-end'i hangi dille yazmayı düşünüyorsunuz
JavaScript

Taslaksız yapınca baya karışıyor işler.
Ne tür bi taslak?

Back-End'i hangi dille yazmayı düşünüyorsunuz?
Forum sitesi Back-End'e yeni başlayan kişileri zorlayabilir ama o kadar da değil doğrusu. Pratik yapmak için güzel bir proje bulmuşsunuz.
Bir önerim var, eklenecek özelliklerle projenin düzenini, yollarını, hangi adrese hangi requestin gideceğini bir yere not alın. Taslaksız yapınca bayağı karışıyor işler.

Ben daha önce denemiştim, geliştirmeye nasip olursa devam ederim, çünkü önü bayağı açık.

GitHub kodlari gördüm. Temellerini atamışsınız. Ben bir kod yazarsam her şeyi tek bir scripte bitirme gibi bir huyum var. Sizinki gibi bölerek yaparsam belki bi tık optimizasyonu yaparım

Bir sürü dosya oluşturmuşsunuz acaba görevleri neler? Public, test, models ve vb.
 
Son düzenleme:
APİ'yi nasıl oluşturacam. Ve ben php bilmiyorum. 😁
Genel olarak APİ mantığını anlatırsan anlarım
Back-end'i PHP ile yazacaksanız sandım. Aynısı JavaScript ile de olur.

API, gelen isteği analiz edip ona göre JSON verisi döndürür. Mesela API linki example.com/authuser olsun. Sen bu adrese kullanıcı adı ve parola değişkenleri ile isteği atıyorsun. Daha sonra API'de de veri tabanını kontrol edip ona göre durum mesajını ve başka gönderilmesi gereken bilgileri JSON olarak geri veriyor.

Mesela GitHub'ın kullanıcı API'siyle kendi kullanıcımın verilerini aldım:
JSON:
{
  "login": "Segilmez06",
  "id": 33354718,
  "node_id": "MDQ6VXNlcjMzMzU0NzE4",
  "avatar_url": "https://avatars.githubusercontent.com/u/33354718?v=4",
  "gravatar_id": "",
  "url": "https://api.github.com/users/Segilmez06",
  "html_url": "https://github.com/Segilmez06",
  "followers_url": "https://api.github.com/users/Segilmez06/followers",
  "following_url": "https://api.github.com/users/Segilmez06/following{/other_user}",
  "gists_url": "https://api.github.com/users/Segilmez06/gists{/gist_id}",
  "starred_url": "https://api.github.com/users/Segilmez06/starred{/owner}{/repo}",
  "subscriptions_url": "https://api.github.com/users/Segilmez06/subscriptions",
  "organizations_url": "https://api.github.com/users/Segilmez06/orgs",
  "repos_url": "https://api.github.com/users/Segilmez06/repos",
  "events_url": "https://api.github.com/users/Segilmez06/events{/privacy}",
  "received_events_url": "https://api.github.com/users/Segilmez06/received_events",
  "type": "User",
  "site_admin": false,
  "name": "Sarp Eren EGILMEZ",
  "company": "Erentronik Corp.",
  "blog": "https://www.sarpegilmez.com ",
  "location": "/boot",
  "email": null,
  "hireable": null,
  "bio": "Just another open source developer.",
  "twitter_username": "Segilmez06",
  "public_repos": 42,
  "public_gists": 5,
  "followers": 14,
  "following": 22,
  "created_at": "2017-11-03T16:13:34Z",
  "updated_at": "2022-07-26T15:36:46Z"
}

Eğer kullanıcı işlemi gibi bir şey yapacaksan, eğer verilen kullanıcı adı ve şifre doğru ise API ile şu tarz bir cevap çevirebilirsin:
JSON:
{
    "auth": true,
    "user": [
        "name": "kullanici",
        "messageCount": 1234,
        "admin": false
    ]
}

Ayrıca parola tarzı gizli kalması gereken verileri direkt göndermek yerine belirli kurallarla şifreleyerek gönder.
 
Back-end'de JS kullanmak istiyorsanız Node.js falan lazım onun için. Öbür türlü sadece front-end JS ile forum olmaz, DB'nin gizliliği vs. için.
Ne tür bi taslak?
Yollarla ilgili. /login, /register, /thread, /message diye bir sürü yol oluşturuluyor.
Bir sürü dosya oluşturmuşsunuz acaba görevleri neler? Public, test, models ve vb.
Onlar düz JS dosyası değil, Node.js dosyası, yine de sayayım:
Public: Tarayıcıya gönderilecek statik dosyalar. Front end dosyaları yani.
Test: API'yi test etmek için yazdığımız python kodları. çok gerekli dğeil program için.
Models veritabanının veri tipleri için.
Routes: yollar, isteğin geldiği yolda nasıl bir olay var onu yazdım oraya, login giriş yapar vs. gibi
views ise HTML dosyalları.
 
Daha PHP bilmeden forum sitesi kurmaya çalışıyor önce iyi bir şekilde PHP öğren ondan sonra forum sitesi yap.
Back-end'i Node.js ile yapmasında bence bir sorun yok. Server-side çalışan kodların illaki PHP ile yazılması gerekli diye bir kural var mı?
 

Geri
Yukarı