Web geliştirme söz konusu olduğunda “Backend / Serverside” i gerçekten anlamıyorum?


18

Web geliştirme dünyasında, arka uç / sunucu tarafı programcıları tam olarak ne yapar? Sanırım bütün konsepti tam olarak anlamıyorum.

HTML / CSS mizanpajları ve web sitesi tasarımı ve PHP ile biraz SQL yaptım (hala becerilerimi geliştiriyorum, bu benim için daha çok yan bir proje). Ayrıca az miktarda JavaScript / JQuery yaptım.

Ama ben betik dilleri (Rails / Python / etc) ve benzeri gibi "arka uç" iş anlamıyorum. Onlarla tam olarak ne yapıyorsunuz?


8
Sizce bu sitenin Sorular ve Cevapları nereye gidiyor ve nasıl?
Mayank

Yanıtlar:


17

PHP kullandıysanız, sunucu tarafı iş yaptınız!

Layman'ın terimleriyle, istemci tarafı kodu bilgisayarınızda, Web tarayıcınızda çalıştırılır ve sunucu tarafı kodu Internet'teki bir bilgisayarda çalıştırılır ve sunucu tarafı hesaplamasının sonuçları daha sonra İnternet üzerinden bilgisayarınıza gönderilir. tarayıcı.

SQL deyimlerini çalıştıran PHP kodu yazdığınızda, SQL çağrıları uzak bilgisayarda (sunucuda) yapıldı ve bu sonuç - genellikle oluşturulan HTML biçiminde - daha sonra Internet üzerinden tarayıcıya gönderilir.

Diğer yandan, JavaScript tarayıcınızda çalıştırılır. CSS de öyle.

Check out Programlama İstemci Side ve Sunucu Side Arasındaki Fark daha fazla bilgi için.


13

Temel dayanak:

resim açıklamasını buraya girin

Kullanıcı girdisini verir, bir tür ağ üzerinden gönderir ve sunucu girdiye göre büyüsünü yapar.

Temel olarak tüm güvenlik ve doğrulama işlemlerinin sunucu tarafında yapılmasını istersiniz. Nezaketsiz form doğrulama gibi istemci tarafında çalışan niceties ile (yine de sunucu tarafı doğrulamak gerekir!).

Büyük soru: Neden?

Kullanıcılar makinelerindeki bilgileri değiştirebilir. Örnek olarak, kullanıcıların oyunu 'hacklemesine' izin vermek için bellek değerlerini değiştiren oyun eğitmenlerine bakın. Makinenizde, fiziksel tesislerinizde temel şeyleri yaparsanız, birisinin güvenlik kontrollerinize müdahale etme şansını önemli ölçüde azaltırsınız.


6
Serbest daireler kullanmadınız. :(
glasnt

Peki, Web Uygulama Çerçevelerinin amacı tam olarak nedir?

3
@Mercfh: Basitleştirmek için. Size vizyonunuzu inşa etmek için temel sağlarlar. Bir kimlik doğrulama çerçevesi oluşturmak ister misiniz ? Tarihler, görünümler ve denetleyiciler ve yönlendirme işlemeye ne dersiniz? Akademik bir alıştırma olmadıkça öyle düşünmüyorum. Başlangıçta çözmek için bir sorununuz olduğu için bir çerçeve istiyorsunuz ve tarihleri ​​işlemek değildi. :)

0

sistemlerinizin istemcisi ile etkileşime giren sistemler tasarlarken Ön uç öğeleri tasarlarsınız. Burada istemci sözcüğü oldukça büyüktür, ancak temel olarak dış dünyaya bir arayüz sağlarken ön uçta çalıştığınız anlamına gelir.

Çoğu web sitesi sadece ön uçtur, yani dış dünyaya bilgi sağlarlar ve çoğu zaman bu bilgiler HTML dosyalarında metin olarak kolayca saklanabilir.

Kullanıcı arabiriminizin tüketeceği hizmetleri ve kapsülleme işlevselliğini sağlamanız gerektiğinde arka ucu tasarlarsınız. Bu, iş yükünün bir kısmını istemciden (ön uç) sunucuya (arka uç) değiştirmeye izin verir. Bunu, sisteminize aynı anda erişebilecek farklı istemcilerden gelen bilgileri koordine etmeniz gerektiğinde yaparsınız. Veya dinamik verileri harmanlamak için merkezi bir veri havuzu kullanmanız gerekiyorsa veya bazı özel güvenlik gereksinimlerine ihtiyacınız varsa tekrar. Bu liste hiçbir şekilde kapsamlı, sadece hızlı örnekler değildir.

kısaca ifade etmek gerekirse, Ön Uç (istemci) dış dünyaya bilgi sunacaktır. Genellikle bunlar HTML veya başka bir tür GUI aracılığıyla insanlardır.

Arka uç, ön ucunuzun kullanması için hizmetleri merkezileştirmek için araçlar sağlayacaktır. Bir arka uç kullanmak zorunlu değildir ve bir sisteme karmaşıklık katar, ancak oluşturmaya çalıştığınız sisteme özgü karmaşıklığı daha iyi yönetmeyi sağlar.

Örneğin, wiki gibi bir hizmeti yalnızca ön uçtan sağlamak mümkündür, ancak verileri depolamak ve ön tarafa sunmak için bir arka uç kullanmanın daha doğal bir şekilde çözülmesine ilişkin birçok sınırlamaya sahip olacaktır.


Çoğu web sitesinin sadece ön uç olduğunu söylemeniz dışında açıklamanız harika. Belki 2003'te, ama bugün, çoğunlukta olduğu gibi "çoğu" nun bazı arka uç / veritabanı etkileşimleri olduğunu söyledim.
Kyle

Bu dünyanın SO, Facebook ve diğerlerine bakıldığında biri müzeye statik bir web sitesi atacaktı ama hala çok sayıda site, şirketler için ön sayfalar vb. Sadece wordpress kurmak ve CSS'yi biraz değiştirmek aynı sonucu elde etmek çok daha kolay bir form elde etmek gibi biraz azalmak eğiliminde olduğunu söyledi. Ön uç'un, sitenizin gösterdiği RESTfull API'sını da belirtirken, arka uç bu API'nın nasıl uygulandığını unutmayın.
Newtopian

0

Ön uç tarayıcıda çalışan şeylerdir, PHP gibi arka uç bir sunucuda çalışır ve veriyi veritabanında saklar ve bu tür şeyler yapar.


0

Benim görüşüme göre (ki daha önce de bahsettiğim web sitesinde erişilen sunucu üzerinde çalışan bir şeydir) sunucu tarafı çalışmaları bir siteye gerçek hayat verir. İşlevselliğin çoğu hala istemci tarafı teknolojiler kullanılarak elde edilebilir, ancak bence bu çok daha karmaşık bir yaklaşımdır ve müşterilerin istemci tarafı kodundaki her şeye erişebilmeleri açısından çok daha az güvenlidir. PHP ve ASP bir şekilde, neredeyse sadece bazı hesaplama aktiviteleri yaptıktan sonra web sayfası içeriğini bir tarayıcıya sunmayı amaçlayan karma programlama dilleri. Python, ruby, java veya diğer programlama dilleriyle çalışmaya başladığınızda, daha fazla güç ve kapasiteye sahip olursunuz, ancak işlemin sonunda müşteriye sonuç bilgilerini göndermek için biraz daha fazla çalışma yaparsınız.


0

Herhangi bir tipik web uygulaması / web sitesinin iki tarafı vardır.

  1. Ön Taraf - Hangi kontrol ui / düzen / renkler / yazı tipleri vb.

  2. Arka Taraf - Veritabanındaki verilerin değiştirilmesini veya dosya manipülasyonunu yönetir, eğer bunu yaparsa, bunu yapmazsa, vb. Yapar. Apache / IIS / etc gibi web sunucusu yazılımı ve veritabanı sunucusu ile bütünleşir mySQL / PostreSQL / MS SQL Server gibi yazılımlar.

Arka taraf çok daha güçlü taraftır, çünkü excel dosyaları oluşturmak, raporlar oluşturmak, hesaplamalar yapmak, farklı sunuculardan veri almak gibi birçok şey yapabilir.

Ardından, Ön Tarafın nasıl ayarlandığını bu verileri hazırlar ve görüntüler.

Her ikisinde de başarılı olmak zor iştir, çok fazla pratik, öğrenme ve öz disiplintir.

En iyi olmak istiyorsanız, pratik yapın ve öğrenmeyi asla bırakmayın ve asla tüm cevapları bildiğinizi varsaymayın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.