Web geliştirme karmaşıklığı nasıl dizginlenir? [kapalı]


17

Kariyerimin çoğunda sunucu tarafı programcıyım ve yakın zamanda web geliştirmeye daha fazla zaman ayırmaya başladım. İyi bir web uygulaması yazmak için ustalaşmam gereken şeylere hayran kaldım. Öğrenmem gereken birkaç araç / teknolojiyi listelemek için,

  • Sunucu tarafı programlama dili (Java / JSP, ASP, PHP, Ruby veya başka bir şey)

  • İyi bir web çerçevesi (herhangi bir orta ila büyük boy uygulama için).

  • HTML ve CSS

  • JavaScript

  • Javascript kütüphanesi (öncelikle AJAX için JQuery / ExtJS vb.). Gerekli olmasa bile bilmek güzel.

  • En azından web tasarımı hakkında temel bilgiler - düzenler, renkler, yazı tipleri vb.

  • Web güvenliğinin iyi anlaşılması.

  • Performans / ölçeklenebilirlik konularının iyi anlaşılması.

  • Test, tarayıcı uyumluluğu sorunları vb.

Liste devam ediyor.

Öyleyse, deneyimli web geliştiricilerine sorum şu: Siz bu kadar çok şey hakkında kendinizi nasıl öğrenmeyi ve güncel tutmayı başarıyorsunuz? Bir web uygulaması geliştirirken, bu alanlardaki karmaşıklıkları nasıl ele alırsınız ve yine de iyi tasarlanmış, kullanıcı dostu, güvenli, performans ve ölçeklenebilir bir uygulama yazmayı başarabilirsiniz.

Bir web geliştiricisi olarak, tüm esnafların bir krikosu olmalı mı yoksa bir ya da iki alanda uzmanlaşmalı ve gerisini ekibin diğer üyelerine mi bırakmalı?


Yeni şeyler ilk başta zordur. Seni öldürmesine izin verme. tecrübeli, deneyimli geliştiricilerle rekabet edemeyeceğinizi ve sadece elinizden gelenin en iyisini yapacağınızı anlayın. Zaman içinde becerilerinizi gerektiği gibi genişletin. Tüm bu araçlar o kadar hızlı değişir ki, dev'de hayatta kalabilmek için ömür boyu öğrenen olmalısınız. Bu, ya da "şanslı" programlama olsun. 20 yıldır.
P.Brian.Mackey

Yanıtlar:


9

Sunucu tarafı programlama dili (Java / JSP, ASP, PHP, Ruby veya başka bir şey)

Bir çerçeve kullanın. Örneğin Django.

İyi bir web çerçevesi (herhangi bir orta ila büyük boy uygulama için).

"Orta ila büyük" değil. Her şey için bir çerçeve kullanın .

HTML ve CSS

Neyse ne. Öğren.

JavaScript

Kütüphaneleri ve çerçeveleri mümkün olduğunca kullanın. Daha az yaz, daha çok kullan.

Javascript kütüphanesi (öncelikle AJAX için JQuery / ExtJS vb.). Gerekli olmasa bile bilmek güzel.

Doğru. Bir kütüphane kullanın.

Veya.

FLEX kullanın.

En azından web tasarımı hakkında temel bilgiler - düzenler, renkler, yazı tipleri vb.

Mevcut siteleri kopyalayın.

Web güvenliğinin iyi anlaşılması.

Www.owasp.org adresini dikkatlice okuyun. Ve. Bunu yapan bir çerçeve kullanın.

Performans / ölçeklenebilirlik konularının iyi anlaşılması.

Apache kullanın. Bunu ele alan bir çerçeve kullanın. Schlossnagle'ın Ölçeklenebilir İnternet Mimarilerini okuyun.

Test, tarayıcı uyumluluğu sorunları vb.

Çerçeveler. Kütüphaneler.

Bunun bir püf noktası var. Mümkün olduğu kadar çok kütüphane ve çerçeve kullanın. Web yıllardır yayında.

Devlerin omuzlarında durun. Lütfen. Tüm bunları yeniden keşfetmenize gerek yok.


Doğru, hepsini tüm çerçevelere ve araçlara aşina deneyimli bir geliştirici olarak yeniden icat etmemelisiniz. Ancak, tüm bu araçları yeni bir adam olarak patlatmak sadece giriş engelini artırır. Bu engeli azaltmak için temel javascript ve bir acemi gibi olmalı. Ancak, OP bir "tecrübeli dev" nasıl -1 için ping olamaz şeyler yaptığını sordum beri.
P.Brian.Mackey

5

Pek çok konuda kendinizi nasıl öğrenir ve güncel tutarsınız?

İpucu 1 . Orada olan her şeye bir göz atın. İnsanların ne hakkında konuştuğunu dinleyin, bir şeyler kontrol edin, makaleler ve bloglar okuyun, önemli olanları yer imlerine ekleyin, öğrenin, deney yapın, her şey hakkında doğal olarak meraklı kalın.

İpucu 2 . Sürecinde kesinlikle eğlenin.

İpucu 3 . Birinin SO'ya bir kez işaret ettiği gibi, listelediğiniz şeyler birçok geliştiricinin kolektif bilgisiyle ilgilidir . Hepsini mükemmel olarak bilmeyi beklemeyin, tek bir zihnin işlemesi için çok fazla. İhtiyacınız olanı alın ve gerisini nerede bulacağınızı öğrenin.

Bir web geliştiricisi olarak, tüm esnafların bir jack olması gerekir mi yoksa uzmanlaşmalı mı

Farklı alanlarda iyi bilgili olmak daha iyidir. Web geliştirmeyle ilgili özel olan şey, aniden ürün geliştirmenin tüm yönlerini tek bir yerde tek bir yerde birleştirmesidir. Kaçınılmaz olarak, şeyleri işaretlemek için birçok şeyin farkında olmalısınız. Ama cidden, parmaklarınızı her yerde tutmak çok sevinç!


2

Her zaman bir ekibiniz yok, en azından benim durumumda. Böylece "tüm esnaf jack" olmak yardımcı olur.

Ancak her şeyi bilmeniz gerekmiyor / bilmiyorsunuz, bu nedenle Google'da arama konusunda iyi olun.

İhtiyacınız olan becerileri geliştireceksiniz.


Evet, başlangıçta çok zor görünüyordu.
Pirinç Unu Çerezleri

1

Bilmeniz gereken temel bilgiler var - HTML, CSS, anlamsal işaretleme, HTTP'nin ne yaptığı ve bundan nasıl yararlanılacağı.

Ardından , mevcut proje ne olursa olsun, bu proje için neye ihtiyacınız olduğuna bakın . Muhtemelen, mevcut bir platform veya CMS ile başlamayı ve onu özelleştirmeyi, bazen tamamen ısmarlama, ancak daha sık değil. Bazen sizi doğru platforma yönlendirecek nerede ve nasıl barındırılacağı ile ilgili gereksinimler olacaktır, diğer zamanlarda istediğiniz işlevsellik kullanabileceğiniz barındırma konusunda rehberlik edecektir. İhtiyacınız olan şeyi ihtiyacınız olduğu anda öğrenirsiniz. Bir çalışma yöntemi olarak biraz yavaş ama sonuçta bilmemiz gerekeni öğrenerek projemizin çoğunda yaptığımız işte iyi olma şeklimiz oluyor.

Açıkçası, daha deneyimli web geliştiricilerinin şirketlerinde ne kadar çok çalışırsanız, onlardan daha hızlı öğrenebilirsiniz, ancak çoğumuz bu becerileri zaman içinde parçalı olarak aldık.


1

Tüm teknolojiler hakkında yeterince bilgi sahibi olmaya çalışıyorum, böylece ne zaman uygulanmaları gerektiğini öğrenebiliyorum. Örneğin, öncelikle bir ASP.NET geliştiricisiyim, ancak Ruby on Rails için belirli bir soruna daha uygun olup olmadığını anlamak için yeterli biliyorum.

Aslında kullandığım teknolojiler girip çıkarmaya çalışıyorum. ASP.NET'te belirli bir özellik varsa, ayrıntılı olarak bilmek ve ne zaman ve ne zaman uygulamam gerektiğini bilmek istiyorum. Aynı şey JQuery, CSS ve kullandığım diğer her şey için de geçerli.

Güncel kalmak için podcast dinliyorum, RSS yayınlarına abone oluyor, StackOverflow'u inceliyor ve geliştirici etkinliklerine katılıyorum.


1

.NET veya JEE / JSF ile kolay yolu başlatın. İlk projenizi zor yoldan yapmanıza gerek yok. Gerçekten ihtiyacınız olduğunda karmaşıklığı kaydedin.

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.