Modern bir web tasarımcısının yapması gerekenler. Web programcıları: meslek tanımı, artıları ve eksileri

  • 02.08.2019

Web geliştirmeyi öğrenmek ve bu alanda kariyer yapmak isteyen ancak nereden başlayacağını bilemeyen insanlarla çok sık karşılaşıyoruz. İlk adım ne olmalı? Ne çalışmalı? Beklentiler nelerdir? Bu ve diğer birçok soru, bir web geliştiricisinin yolunu tutmak isteyen birçok kişiye işkence ediyor.

Size web programlama, tasarım, pazarlama ve daha pek çok konuda temel bir anlayış kazandırmak için bu makaledeki tüm bilgileri topladık. Bu makaleyi sonuna kadar okuyun ve web geliştirme uzmanı olmak isteyip istemediğinize karar verebileceksiniz. Okuduktan sonra arzunuz nihayet güçlenirse, yeni bir kariyere gidene kadar aktif bir şekilde motivasyon ruhunu korumanız gerekecektir.

Yazıya motivasyon noktası ile başlayalım. Diğer herhangi bir aktivitede olduğu gibi, motivasyon sizi nihayetinde en iyi uzman yapacak kilit bir faktördür. İlk aşamalarda, web geliştirme saflarına katılma motivasyonu basit olabilir. Önce bu alanda çalışma arzusu var, sonra iyi geliştiricilerin çalışmalarıyla görsel temas var, ardından içinizde sizi benzer makaleler aramaya ve ilk adımları atmaya motive eden bir şey doğuyor.

Size karşı dürüst olalım: Başlangıçtaki motivasyon çok çabuk sönebilir ve size sonsuz enerji veremez. Motivasyonun gücü nasıl uzatılır? Biliyor musun, böyle yeşil kağıt parçaları var, hatta başka renkler de var, bence bunlara para deniyor. Yani para, ihtiyacımız olan şeyleri kolayca elde etmemize, onlarsız neredeyse imkansız olanı yapmamıza yardımcı olan bir sarf malzemesidir. Bunu neden yapıyorum? Ve para harika bir motive edici olabilir.

Ama ne yapacağınıza henüz karar vermediyseniz, para nereden geliyor? İlk adımları atarken dönem için yeterli başlangıç ​​motivasyonuna sahip olmalısınız. Bu dalgada zaten bir şeyler satmak mümkün olacak. Muhtemelen bunun 2-3 yıl, hatta belki 5 yıl içinde olacağını düşünüyorsunuz? Şüphelerinizi gidermekten memnuniyet duyacağım. 2-3 ay içinde bir şeyler satabileceksiniz. 2-3 yıl sonra satışlar ve kârınız önemli ölçüde artacaktır. Aynı zamanı daha pahalı ürünlere harcayabileceksiniz. Artık işi verimli, hızlı ve profesyonel bir şekilde yapabileceksiniz, çünkü sonuç sizi bekletmeyecek (hoş çıtır banknotlar dahil).

Belki de hala dünyada epeyce iyi geliştirici olduğunu düşünüyorsunuz, neden yeni başlayanlardan bir şey satın alsın ki? Görüyorsunuz, başka bir taraf daha var - müşteri. Ve geliştiricilerin yeni başlayanlar, uzmanlar ve profesyoneller olarak ayrılması gibi, müşteriler de ya uzun süredir piyasadalar ya da profesyonel yollarının başındalar. Buna göre, müşterilerin ihtiyaçları farklıdır.

Örneğin, balık tutmayı seven bir müşteriyi ele alalım. İletişim mühendisi olarak çalışıyor ve ortalama bir maaş alıyor. Ve böylece kendini balıkçılıkla ilgili bir web sitesi-blog yapmaya karar verdi. Çoğu durumda, bu müşterilerin sınırlı bir bütçesi vardır ve onlar için geliştirme kalitesi ilk sırada değildir. Tabii ki, kazandığı parayı ödeyeceği için bunun hakkında bağırmayacak. Ve burada, saf HTML veya bir tür ücretsiz motor üzerinde olacak olan site, ihtiyaçlarını karşılayabilir. Burada ilk 50$'ınızı (şartlı) alırsınız ve motivasyonunuza +50 puan eklenir. Bu, eğitime devam etmek ve bir sonraki siparişi geliştirmek için yeterlidir.

Bu nokta ilk olabilir, ancak deneyimlerimize göre yeri burasıdır. Yani motivasyon ruhunuz sizi uzmanlık aramaya yöneltti. Burada her şey çok, çok basit. Bu noktada parayı, trendleri, web siteleri yaparak "vay be ne para" kazanan arkadaşın Max'i tamamen unutmalısın. Çocukken, okulda, geçen yıl, dün sevdiğiniz her şeyi hatırlamanız gerekir. Tüm bunları analiz ederek, gerçekten bir web tasarımcısı mı, web programcısı mı olmak istediğinize veya projelerin daha başarılı olmasına yardımcı olmak için pazarlamayı sevip sevmediğinize karar verebilirsiniz.

Size kişisel örneğimi vereceğim. Erken çocukluk döneminde (4-6 yaşlarında) bir havya almayı, baskılı devre kartlarıyla uğraşmayı, LED'ler ve pillerle oynamayı severdim. 6-10 yaşlarında Atari bilgisayarım oldu. Yanında bir teyp dahil edildi ve oyunlar kasetin manyetik bandına kaydedildi. Evet, kesinlikle 8 bitlik oyunlar oynadım! Ama bu Atari'nin sahip olduğu Temel dile iyi bir ilgim vardı ve sonucu daha sonra ekranda gösterecek programlar bile yazabilirdiniz. O zaman bunun programlama olduğunu ve bunun Temel dil olduğunu bile bilmiyordum. Kodu kitaptan kopyaladım ve ekrandaki görsellere baktım. Sonra denemeye başladı. Sayıları, komutları değiştirin ve yeni resimler ve sesler alın. Bu beni çok mutlu etti. Daha sonra okuldayken The Matrix filmine rastladım. Defalarca izledim ve hala benim için zamanının en iyi filmlerinden biri. Okulda cebir ve geometriyi çok severdim. Ayrıca içimde bir çeşit "anti-ders kitabı" vardı. Bize dersler verildi - ben öğrettim. Ardından, alınan malzemeleri kullanarak bir kontrol yazmak gerekiyordu. Öğrenilen verilere dayanarak sorunu nasıl çözeceğimi biliyordum, ancak her zaman bir şeyler "icat etmeye" ve sorunu bir geçici çözümde çözmeye çalıştım. 12 yaşımdayken buna benzer bir şey aldım.Her zaman bize öğretilenden farklı bir şey yapmak istedim, ama sonunda daha hızlı, daha doğru bir karara varmak ve herkesin yaptığı gibi değil.


Şimdi, "Kim olmam gerekiyordu?" sorusunu sormanın zamanı geldi. Evet, bir programcı, ancak büyük olasılıkla bir yazılım kompleksinin mimarı. Yaklaşımımı deneyin ve uzun bir süre gerçekten neyi seveceğinizi anlayabileceksiniz. Bütün bunları bana kimse söylemedi. Ve tüm bunları düşünmeden nasıl programcı olabilirim. Ama başlangıçta bu şekilde düşünseydim, daha önce karar verebilirdim. Bu arada programlamaya ilk adımımı 13 yaşında Pascal'da atmaya başladım (Atari'yi çocuk saymıyorum). Ama eminim ki 10 yaşından itibaren başlamak mümkündü!

Bu nedenle, üç alandan birine karar vermek size kalıyor: bir web projesi tasarımcısı, bir web programcısı veya bir pazarlamacı. Programcı olmak istiyorsanız, öğreneceğiniz ilk dile karar vermeniz gerekecektir. Diğer iki durumda, başlangıçta daha yüksek düzeyde uzmanlaşmış bir şey seçmek mantıklı değil.

Programcı olmak istiyorum. Hangi dili seçmeli?

Günümüzde web siteleri için çok sayıda programlama dili bulunmaktadır. Aşağıda, popüler programlama dillerinin bir listesi ve neyin ne için ve hangi görevler için kullanıldığına dair kısa bir açıklama bulunmaktadır.

HTML + CSS

HTML işaretlemesini öğrenerek web geliştirme yolculuğunuza başlamaya kesinlikle değer. Programcı veya tasarımcı olmanız fark etmez. HTML bilmek, bir bilgisayarın temellerini ve içindekileri bilmek gibidir. HTML bilgisi olmadan iyi bir web programcısı veya web tasarımcısı olamazsınız. Temel gelişimi için en fazla birkaç aylık titizlik ve çaba gerekecektir.

Temel anlayış için bu iki öğreticiyle başlayabilirsiniz:
. HTML Eğitimi;
. CSS Eğitimi.

İnternette çok fazla bilgi olduğunu unutmayın. Ve "HTML Eğitimi" anahtar kelimeleri için Google'daki ilk 2-3 sonuç oldukça alakalı ve alakalı olacaktır. Başlangıçta, cevapları kendi başınıza bulmak için kendinizi ayarlamanız gerekir.


İkinci adım, bu özel betik programlama dilinin incelenmesidir. Sitelerinizi etkileşimli hale getirmeye yardımcı olacaktır. Bununla, istemcinin tarayıcısında çalışacak komut dosyası uygulamaları oluşturabilirsiniz. Örnek olarak: hesap makineleri, kaydırıcılar, animasyonlar, çizelgeler ve daha fazlası. Bir Java Script, HTML, CSS kompleksi, örneğin çıplak web sitesi düzeni gibi ilk satışlar için yeterli olacaktır.

PHP

Sonra daha ciddi dillere geçiyoruz. PHP'yi düşünün. Dinamik web siteleri oluşturmak için önde gelen dillerden biridir. Web siteleri geliştirmek istiyorsanız, yolculuğunuza onunla başlamanızı öneririz. Diğer dilleri istediğiniz zaman öğrenebilirsiniz, ancak PHP temel kavramlarda hızla ustalaşmanıza ve eserinizi satmaya başlamanıza yardımcı olacaktır. PHP öğrenirken, site oluşturmanın özünü tamamen keşfetmeye başlayacaksınız.

Java

Sun Microsystems tarafından geliştirilmiştir. Java, sınıf tabanlı nesne yönelimli bir programlama dilidir. Kurumsal yazılım, web içeriği, oyunlar ve mobil uygulamalar için standart olan süper popüler bir programlama dilidir. OS Android için bir programlama dilinin yanı sıra. Java, birden fazla yazılım platformunda çalışabilecek şekilde tasarlanmıştır. Bu bağlamda Mac OS X üzerinde yazılmış bir program Windows üzerinde de çalışabilir.

yakut

Ruby'nin amacı basit ve kodlaması kolay bir programlama dili yaratmaktı. Web siteleri ve mobil uygulamalar oluşturmak için bir betik dili olarak tasarlanmıştır ve dinamik ve nesne yönelimlidir. Ruby, Groupon ve GitHub dahil olmak üzere birçok web sitesi tarafından kullanılan Ruby On Rails'i yarattı. Ayrıca, çoğu kişi Ruby'yi yeni başlayan geliştiriciler için iyi bir başlangıç ​​noktası olarak görür.

C++

C++, orijinal olarak C dilini geliştirmek için geliştirilmiş orta düzey bir nesne yönelimli programlama dilidir.Firefox, Winamp ve Adobe gibi birçok popüler program C++'ı temel alır. Sistem yazılımı geliştirme, uygulama yazılımı, yüksek performanslı sunucu ve istemci uygulamaları ve video oyunu oluşturma için kullanılır. Bunu bilmek harika, ancak web siteleri oluşturmak için bir dil olarak buna güvenmemelisiniz.


Python, web siteleri ve sunucu tarafı mobil uygulamalar için üst düzey bir betik dilidir. Öğrenmesi kolay ve aynı zamanda okunması kolay bir dil olarak kabul edilir. Geliştiriciler, diğer programlama dillerinde aynı hedeflere ulaşmak için daha az kod satırı kullanabilir. Python temelinde birçok karmaşık ürün oluşturulmuştur: Instagram, Django, Rdio. Python ayrıca Google, Yahoo ve NASA ürünlerinde yoğun olarak kullanılmaktadır. Yüksek yüklü projeler oluşturmak için yük sorununu çözen dillerden biri olarak Python tam size göre. Python'u ikinci veya üçüncü dil olarak öğrenmenizi öneririz.

anlamak önemlidir
Öğrenmenin herhangi bir aşamasında, yavaş yavaş kendinizi bir programcı olarak görmeye başlayabilirsiniz, ancak kendinizi asla daha iyi bir programcı olarak görmemelisiniz. Her zaman bilmediğin bir şey olacak ve her zaman öğrenecek bir şey olacak. Programcı olmak, belirli bir deneyim kazanmak ve üzerinde durmak değildir. Araçlar her geçen gün genişliyor. Sürekli bu dinamiğin içinde olmalısın, sürekli kendini geliştirmelisin. Paralel olarak seminerlere katılabilir, raporları dinleyebilirsiniz ancak alacağınız asıl temel sadece kendinizi geliştirme arzunuz olacaktır.

Başarılı bir programcı olmak, sorularınızın yanıtlarını kendiniz bulmak anlamına gelir. Bu başlangıçta zor olabilir. Ancak zamanla hiçbir şeyin imkansız olmadığını anlamaya başlayacaksınız ve İnternet sayesinde size sayısız kapı açık. Her seferinde doğru kapıyı bulmanız yeterlidir. Hata yapmaktan çekinmeyin, hatalarınızı kabul etmek ve gelecekte bunları en aza indirmek önemlidir.

"24 saatte nasıl programcı olunur" gibi eğitimlere asla inanmayın. Sadece çok çalışarak, pratik yaparak ve ancak zamanla yüksek sonuçlar elde edebileceğinizi anlayarak anlamalısınız. Ortalama olarak, iyi bir programcı olmak için en az 10.000 saat programlama yapmak gerektiğine inanılıyor. Ve bu, günde 4 saat geçireceğiniz düşünülürse, ortalama 5 yıldır. Evet, tam olarak 4, 8 değil, çünkü 8 saatlik saf programlama beyin için iyi bir yük olacaktır, bu da malzemenin konsantrasyonuna ve kaliteye hakim olmasına müdahale eder.


Kodun kendisini yazmak, programlamanın yalnızca bir parçasıdır. Kendini kontrol etmelisin, sürekli kendini geliştirme arzusuna sahip olmalısın, mümkün olduğunca disiplinli ve ısrarcı olmalısın. İlk günlerden itibaren çalışmanız gereken bu nitelikler üzerindedir. Kolay yollar yoktur. Derslere ve eğitimlere katılarak kendi başınıza edinebileceğiniz bilgileri edinemezsiniz. Sizi diğerlerinden üstün kılacak olan azim, çalışma ve azimdir.

Asla üzülme ve kendini başkalarından aşağı görme. İlk aşamalarda, "nasıl yapılacağı" hakkında bir fikriniz bile olmayacağı çok sayıda an olabilir. Hepsi deneyimle gelir. İyi bir programcı, hiç yapmamış olsa bile her şeyi yapabilir ve ilk bakışta sorunu tam olarak hangi yöntemle çözeceğini anlamasa bile. Ancak her şeyin kendi elinde olduğundan ve her şeyin saat gibi işleyeceğinden emindir.


Sonsuzluk! Programlama, diğer birçok alan gibi, sürekli kendini geliştirmeyi gerektirir. Her gün yeni fırsatlar, yeni çözümler. Her zaman haberleri takip edin, çevrenizdeki dünyaya bakın, sürekli gelişin. Her proje ile dünden daha iyi bir şey bileceksiniz. Ve her projede kendinizi dünden daha akıllı sayacaksınız. Bu normal ve hatta harika!

Daima mevcut projeyi öncekinden daha iyi hale getirmenin bir yolunu arayın! Altı ay önce yaptığınızın aynısı yeni bir projeniz varsa, bu projeden 1'de 1 kodunu kullanmamalısınız. Her zaman yeniden kod yazmaya çalışın ve her seferinde dünden daha iyi yazmaya çalışın.

Önemli kural
Kendinize yatırım yapmak en karlı ve karlı yatırımdır. Sorunu daha iyi bir şekilde çözmek için bugün projeye harcanan fazladan birkaç saat, deneyiminize yatırılacak.

Motivasyonunuz için bonus


Bu grafik, iyi bir programcının UpWork.com'da ortalama olarak elde ettiği nihai karı gösterir. Bu çizelge, çabalarınız için ek bir motivasyon olsun. Ayrıca insanların her şeyi mümkün olduğunca otomatikleştirmeye çalıştığı bir çağda yaşadığımız gerçeğini de göz önünde bulundurun. Bu nedenle, kelimenin tam anlamıyla her yıl birçok faaliyet alanı azalmaktadır.Bu nedenle, yakın gelecekte programcıların konumunun sadece güçleneceğinden emin olabilirsiniz.

Çalışmalarınızda iyi şanslar. Kalıcı olun, seçtiğiniz şeyi sevin ve her şey yoluna girecek!

İçtenlikle,
kurucu

Bir programcı olarak kariyer yolunuza şu soruyu cevaplayarak başlamalısınız, programlamaya hiç ihtiyacınız var mı? Bu soru, programlamaya yakın bir uzmanlık alanında okuyan veya okumuş olanlar için geçerli değildir. Okulda matematikte beşeri bilimlerden daha iyiyseniz, bilgisayarda çok zaman geçirmeyi seviyorsanız, yeni bir şeyler öğrenmek istiyorsanız, programlama size uyacaktır.

Nereden başlamalı

Bir kişinin programcı olduğu olayların gelişimi için çeşitli seçenekler vardır. Birincisi, çocuklarına her şeyi öğreten programcı ebeveynlerdir. Bu çocukların üniversiteye gitmesine bile gerek yok. İkinci seçenek, bir programcının modaya uygun mesleğidir. Okuldan sonra, nerede çalışacağımı seçmek zorunda kaldım ve BT'nin moda yönünü seçtiler, beğenmiş görünüyorlardı. Ve son seçenek, bir işe dönüşen bir hobidir.

Yukarıdakilerin hiçbiri başınıza gelmediyse, dört seçeneğiniz vardır:

  • kendi kendine eğitim. Bu seçenek tek başına veya diğer yöntemlerle birlikte kullanılabilir. İnternet, çeşitli programlama dillerini ve teknolojilerini öğrenmenize yardımcı olan uygulamalarla doludur. Ancak bu, yeni başlayanlar için en zor yoldur.
  • Üniversite. Okulu bitiriyorsan ve programcı olmak istiyorsan üniversiteye git. Bilgi için değilse, o zaman bir kabuk için. Bir işe başvururken bonus olarak hizmet edebilir. Yine de biraz bilgi edineceksiniz. Ama kendinizi eğitmeyi unutmayın. Üniversite seçimine çok sorumlu bir şekilde yaklaşılmalıdır. Eğitim programlarını dikkatlice inceleyin ve en iyi teknik üniversiteleri seçin.
  • akıl hocası. Size yardım etmeyi ve sizi doğru yöne yönlendirmeyi kabul eden birini bulmanız çok iyi olacaktır. Uygun kitaplar ve kaynaklar önerecek, kodunuzu kontrol edecek ve faydalı ipuçları verecektir. Bu arada, bir akıl hocasını nerede bulabileceğinizi zaten yazdık. Tanıdık programcılar arasından, BT partilerinde ve konferanslarda, çevrimiçi forumlarda vb. bir akıl hocası arayabilirsiniz.
  • Uzmanlaşmış uygulamalı kurslar. Şehrinizde size programlama dili veya teknolojisi öğretilecek kurslar aramaya çalışın. Ücretsiz olanlar da dahil olmak üzere Kiev'deki bu tür kursların sayısı ve daha sonra istihdam ile hoş bir şekilde şaşırdım.

Hangi dili, teknolojiyi ve yönü seçmeli

Programcı olduğunuzda, bir veya iki yıl içinde istediğiniz dili seçmekte özgür olacaksınız. Ancak ilk programlama dilini seçerken, yeni başlayanlar aşağıdaki kriterleri göz önünde bulundurmalıdır:

  • İş piyasasında bulunabilirlik. Bu yolun nihai amacı, programcı olarak bir iş bulmaktır. Ve eğer kimse iş piyasasında programlama dilinizde geliştirici aramıyorsa, bunu yapmak zor olacaktır. İş sitelerini kontrol edin, en çok kimin aradığını görün, bir düzine dil yazın. Ve bir sonraki kritere geçin.
  • Düşük Giriş. Bir dili öğrenmek için uzun zaman harcamanız gerekiyorsa, bu sizi genel olarak programlama yapmaktan vazgeçirebilir. Yukarıda seçtiğiniz diller hakkında bilgi edinin. Bu dilleri öğrenmek için okumanız gereken literatürü gözden geçirin. Ve ışık olarak yazılanları veya ışık olduğunu düşündüğünüzü seçin. Bu tür diller PHP, Ruby, Python olabilir.
  • Sürecin heyecanı. Seçtiğiniz dilde kod yazmaktan hoşlanmıyorsanız, süreçten, işten veya hayattan zevk alamazsınız. Ona ihtiyacın var mı? Doğru seçimi yap.

Ayrıca programlama yönüne de karar vermeniz gerekecektir. Mobil, masaüstü, oyunlar, web, düşük seviyeli programlama vb. En popüler ve nispeten kolay sektörler web, mobil ve masaüstü istemciler için geliştirmedir. Bir dil her yön için uygun olabilirken diğeri hiç uygun olmayabilir. Yani bir programlama dili seçerken bu faktörden de başlamakta fayda var.

Her durumda, web teknolojilerini öğrenin. Bu, sayfanızı dinamik hale getirecek biçimlendirme dili , stilleri ve . Bir sonraki adım, sunucu tarafı bir dil (Python, PHP, Ruby ve daha fazlası) ve buna uygun web çerçevelerini öğrenmektir. Veritabanlarını keşfedin: hemen hemen her programcı işi bunu listeler.

İlk deneyim nasıl edinilir

Tecrübe olmadan iş bulamazsın. İş olmadan deneyim kazanamazsınız. Gerçek hayatın kısır döngüsü. Ama merak etmeyin, bundan kurtulacağız.

Öncelikle, seçtiğiniz programlama dilindeki tüm kitapları okuyana kadar beklemeyin. Kitabın ikinci bölümünden sonra ilk kod satırlarınızı yazmaya başlayın. Kitaplardaki tüm görevleri tamamlayın, örnekleri yeniden yazdırın, anlayın. Kitaplardan kendi fikirlerinizle karmaşık örnekler ve görevler. Kapsanan malzeme için kendi görevlerinizi oluşturun. Bu sorunları çözün.

İkincisi, ilk projelerinizi bulmanız gerekiyor. Bu muhtemelen en zor seçenektir, ancak çalışıyor. Siparişleri kendiniz aramanız, yerine getirmeniz, ödeme ile uğraşmanız gerekecek. Yeni başlayanlar için bu göz korkutucu, ancak diğer tüm seçenekler önemsiz bir mesele gibi görünecek. Tamamlanan projeler deneyime kaydedilebilir ve gelecekteki işvereninize gösterilebilir. Gerçek projeler özgeçmişinizde büyük bir artıdır.

İngilizce biliyorsanız, İngilizce konuşulan borsalara daha iyi kaydolun. Pazar daha büyük. İngilizce bilmiyorsanız öğrenin. Bu arada, Rusça dilinde serbest borsalar sizin için kullanılabilir. Bilgi seviyenizde veya üstünde olan küçük projeler arayın. Bu işlerden birkaç düzine başvurun. Ve çokça reddedilmeye hazır olun. Ancak bir veya iki uygulama işe yararsa, gerçek deneyim kazanma şansınız olacaktır.

Gerçek deneyim elde etmek için bir başka iyi seçenek de açık kaynaktır. Bu tür projeler her zaman yeni insanlara, hatta yeni başlayanlara ihtiyaç duyar. Projedeki hataları arayabilir veya hata izleyiciye bakabilir ve bunları çözmek için yöntemler önerebilirsiniz. Bu tür projeleri bulmak GitHub veya . Orada soru sormaktan çekinmeyin.

Deneyim kazanmak için dördüncü seçenek, tanıdık programcılara yardımcı olmaktır. Size küçük ve kolay görevler vermelerini isteyin. Bir şeyler yolunda gitmezse, her zaman başvuracak birileri olacaktır. Ve aynı zamanda gerçek bir projeye katılacaksınız.

Son yol, kendi projeleriniz, çeşitli hackathon'larınız veya ortak çalışma alanında çalışmanızdır. Kendi projelerinizi başlatmak zordur, tanıdık veya arkadaş aramak daha iyidir.

Neden Python'u Seçmelisiniz?

İlk programlama dilinin seçimi hakkında biraz daha konuşalım. İlk dil piyasada basit ve popüler olmalıdır. Böyle bir dil piton. İlk programlama diliniz olarak onu seçmenizi şiddetle tavsiye ederim.

Python kodu okunabilir. Bir programda neler olup bittiğini genel anlamda anlamak için programcı olmanıza bile gerek yok. Python'un basit sözdizimi nedeniyle, bir program yazmak, örneğin Java'da olduğundan daha az zaman alacaktır. Size çok fazla çaba, sinir ve zaman kazandıracak devasa bir kütüphane veritabanı. Python üst düzey bir dildir. Bu, hafıza hücreleri ve oraya ne yerleştireceğiniz hakkında fazla düşünmenize gerek olmadığı anlamına gelir. Python genel amaçlı bir dildir. Ve o kadar basit ki çocuklar bile öğrenebilir.

Adil olmak gerekirse, diğer programlama dillerinden bahsetmeye değer. Java Yeni başlayanlar için iyi bir seçim olabilir. Bu dil Python'dan daha popüler ama aynı zamanda biraz daha karmaşık. Ancak geliştirme araçları çok daha iyi geliştirildi. Sadece Eclipse ve IDLE'ı karşılaştırmak gerekir. Java'dan sonra düşük seviyeli programlama dilleri ile çalışmaya geçmeniz daha kolay olacaktır.

PHP başka bir çok popüler dildir. Ve bence Python'dan bile daha kolay. Forumda bir akıl hocası veya bir soruna çözüm bulmak çok kolay. Bunun nedeni, dünyada çeşitli seviyelerde çok sayıda PHP programcısı bulunmasıdır. PHP'de normal bir içe aktarma yoktur, aynı görevi çözmek için birçok seçenek vardır. Ve bu öğrenmeyi zorlaştırıyor. Ve PHP yalnızca web için keskinleştirilmiştir.

Diller C ve C# yeni başlayan biri için çok zor. yakut ikinci dil olarak iyi bir seçimdir, ancak ilk değildir. JavaScript- çok basit bir dil, ama size iyi bir şey öğretmeyecek. Ve ilk programlama dilinin görevi hala size doğru bir şey öğretmek, bir tür mantık oluşturmaktır.

İngilizce Önemli mi

Önemli! Bilmemek? Öğretmek. Biliyor musunuz? Geliştirmek. İngilizce okumayı, yazmayı, dinlemeyi ve konuşmayı öğrenin. Teknik literatüre odaklanın. İngilizce podcast'leri dinleyin. Programlama ile ilgili İngilizce ders kitaplarını okuyun.

Programlama dili dışında bilmeniz gerekenler

Elbette programlama dili ve İngilizce dışında bir şey daha bilmeniz gerekiyor. Ama ne - seçtiğiniz yöne bağlı. Bir web programcısı HTML, CSS, JavaScript'i bilmelidir. Bir masaüstü programcısı, işletim sistemi API'lerini ve çeşitli çerçeveleri öğretir. Bir mobil uygulama geliştiricisi Android, iOS veya Windows Phone çerçevelerini öğrenir.

Herkesin algoritma öğrenmesi gerekiyor. Coursera'da bir kurs almayı deneyin veya size uygun algoritmalar hakkında bir kitap bulun. Ek olarak, veritabanlarından, programlama kalıplarından, veri yapılarından birini bilmeniz gerekir. Ayrıca kod depolarını tanımaya değer. En azından biriyle. Versiyon kontrol sistemleri bilgisi gereklidir. Git'i seçin, en popüler olanıdır. Çalıştığınız araçları, işletim sistemini ve geliştirme ortamını bilmeniz gerekir. Ve bir programcının temel becerisi google'a girebilmektir. Onsuz yaşamayacaksın.

Son adımlar

Özgeçmiş hazırlamanız gerekiyor. Sadece bir özgeçmiş değil, aynı zamanda. Oraya yazmamalısınız, ancak becerileriniz hakkında da sessiz kalmanıza gerek yok. Mülakata davet edildikten sonra buna hazırlanmanız gerekir. Özgeçmişinizde listelenen materyali gözden geçirin. Bilginize güvenmelisiniz. Çalıştığınız projeleri gözden geçirin, kullandığınız teknolojileri hatırlayın. Ve ileri - yeni bir programcı mesleği ile parlak bir geleceğe.

Yazardan: Acemi geliştiriciler için en popüler sorgu “web geliştirme nereden başlamalı” sorusudur. Gerçekten de, eğitimin başlangıç ​​noktasını bağımsız olarak belirlemek neredeyse imkansızdır. Küre çok sayıda farklı araçla doludur, bu da bir dizi beceri gerektirdiği anlamına gelir. Kendinizi mümkün olan en kısa sürede geliştirici olarak adlandırabilmeniz için web için yazılım ve dillerle hangi sırayla çalışacağınızı öğrenmenize yardımcı olacağız.

Başlamaya değer!

2000'lerin başında deneyimli bir programcıya, üzerinde çalışılacak en ilginç şeyin ne olduğunu sorsanız, gözünü kırpmadan "yazılım geliştirme" derdi. O zamanlar, bu yöndeki çalışma miktarı gerçekten harikaydı: Oyunlar için ana işletim sistemleri, antivirüsler, tarayıcılar ve motorlar oluşturmak gerekiyordu. Bugün, tüm bunlar gelişmeye devam ediyor, ancak web'in odak noktası.

İnternet ürünleri oluşturmak yeni başlayanlar için ilginçtir. Her gün gördükleri şey bu: sayfalar ve uygulamalar. Kullanımları aktiftir, bu da pazarın bu tür uzmanlara ihtiyaç duyduğu anlamına gelir. Ayrıca, öğrenim artık İnternet bağlantısı olan herkes tarafından kullanılabilir - artık kütüphanedeki bilgi dizileriyle çalışmaya gerek yoktur.

Web geliştirme, yaratıcı bir zihniyete sahip insanları cezbeder. İşte programcılar ve sanatçılar. Ürün kaliteli bir öze ve çekici bir görünüme ihtiyaç duyar. Şimdiye kadar, bir web ürünü için neyin daha önemli olduğu konusunda aktif bir tartışma var: görünüm veya hız. Bazıları (Telegram, Facebook) basit bir görsel parçanın bile kullanıcı tarafından iyi algılandığını gösterirse, diğerleri (Instagram) bazen kullanıcının güzel tasarlanmış bir uygulama için hız ödemeye hazır olduğunu gösterir.

Bir web geliştiricisi olmak da gereklidir çünkü burada her yaklaşım kendi uygulamasını bulur. Bu, sürekli geliştirme ve arama dünyasıdır. Burada her şey müşteriye ve onun ihtiyaçlarına odaklanmıştır. Ek olarak, web ortamında deneyim kazanmış olarak yazılım geliştirmeye gidebilirsiniz: bu tür geliştirmeler için diller ve araçlar yaygınlaştı.
Ön uç mu yoksa arka uç mu?

Alanı sıfırdan incelemeye başlayanlar bile, gelişimde bu iki ana yönün olduğunu bilirler. Ancak çok az insan her birinin ne anlama geldiğini biliyor. Ve "ön" ile her şey az çok netse, o zaman sunucu kısmı, arka uç, aptallar için karanlıkla kaplıdır. Gelişim vektörlerinin her birini tam olarak anlamadan, hangisinde en rahat olacağınızı belirlemek imkansızdır. Yeni başlayanlar için ayrıntılı bir genel bakış açıklığa kavuşturabilir.

Web için bir ürün yaratmanın ne olduğunu genel olarak bu şekilde tanımlayabilirsiniz. Hayır, yeni başlayan birinin tam olarak desteği seçmesi konusunda ısrar etmiyoruz, sadece bu daha gizemli bir taraf.

Aslında, çoğu öğenin genel olarak görsel kısımlarında nasıl oluşturulduğu herkes için açıktır. Ancak ne tür bir sihir, belirli bir anda ihtiyaç duyulan işlevsel unsurları yüklemenizi sağlar, herkes için net değildir. Web'in büyüsü sunucu tarafında yönetilir: kullanıcının makinesinde değil, sunucuda işlenen bilgiler.

Gelişmiş bir arka uç, dinamik siteler için tipiktir. Örneğin, sosyal ağlar dinamiktir. Siz fark etmeden sayfanızı yeniler ve imleç hareketinden belirli bir zaman dilimine kadar değişen faktörlere göre tarayıcı için HTML oluştururlar.

Kayıt olurken bir takma ad seçersiniz. Ve meşgulse, sistem bunu size bildirir: arka uç çalışmaya başladı. Öngörülen algoritmaya göre, web sayfasının alanına girdiğiniz veriler sunucuya gönderildi. Orada, program kayıtlı tüm kullanıcıları veritabanına karşı kontrol eder ve eğer isim alınırsa, bununla ilgili kullanıcı bilgilerini ekrana gönderir. Daha karmaşık bir versiyonda, özel olarak yazılmış bir program, kullanıcıya kullanılabilecek çeşitli takma ad varyasyonları sunar.

Ve bu sadece bir örnek: Yeni başlayanlar için en anlaşılır olanıdır. Genel olarak, sunucu tarafı sınırsız sayıda işlev gerçekleştirebilir. Sıfırdan bir ürün yaratan geliştirici, sunucunun kapasiteleri tarafından hangi işlevlerin gerçekleştirileceğini ve hangilerinin kullanıcının makinesinin omuzlarına düşeceğini kendisi belirler. Çok şey, web yöneticisinin oluşturduğu hizmete bağlıdır.

Örneğin, en popüler araba paylaşımı uygulaması BlaBlaCar, tüm kartvizit sayfalarının toplamından daha fazla arka uca bağımlıdır. Devasa bir geliştirme ekibi sunucu tarafıyla etkileşime girerken, ön ucu web aptalları için bile anlaşılabilir. Sadece tüm talep-cevap sürecini resmileştirmek gerekli değildir. Ama aynı zamanda platformların her biri için mobil ve masaüstü uygulamaları oluşturmak.

Programlamaya daha yatkın olanlar genellikle "geri"yi seçerler. İyi görseller ve sayfa geçişleri yaratmayı hayal eden yeni başlayanlar için sıkıcı olabilir. Ancak gelişimin bu tarafının uzmanlarının kendi avantajları vardır: istikrar. Belli bir teknolojiyi öğrendikten sonra, cepheler zamana karşı sürekli bir yarışken, yıllarca onunla silahlanabilirler.

Web'in bu tarafı için kullanılan dillere sunucu dilleri denir. Bazıları genel olarak programlamada kullanılır, ancak web geliştiricileri arasındaki popülerliği nedeniyle web ürünlerinin bakımı ile ilişkilendirilmiştir. Aralarında:

Popülerliğini öğrenme kolaylığı nedeniyle kazanan PHP. Dışarıdan gelen eleştirilere rağmen en çok kullanılanı olmaya devam ediyor;

Javascript ve modifikasyonları;

En ünlü çerçevelerden birini doğuran Ruby - Ruby on Rails;

Aslında, öğrenmeyi seçtiğiniz dil o kadar önemli değil. Sonuçta, her biri sunucuyla etkileşim için çok uygundur. Bunlara ek olarak sorgulama dilini de öğrenmek faydalı olacaktır. En ünlüsü ve kullanılanı SEQUEL veya SQL'dir. Bu diller arasındaki benzerlikler güçlüdür. Bu nedenle, birini öğrendikten sonra, diğeriyle işlemler için yeniden ayarlamak kolay olacaktır.

Web geliştirmede modern eğilimler ve yaklaşımlar

Web sitesi oluşturmada sıfırdan hızlı büyüme için algoritmayı öğrenin

Bu dil, veritabanlarıyla iletişim kurmak için gereklidir - bu şekilde büyük miktarda veri kullanan bir uygulamayı hızlı bir şekilde yapabilirsiniz. En popüler veritabanı yönetim sistemleri MySQL, MSSQL, MariaDB ve diğerleridir. Hangisinin daha iyi olduğunu söylemek zor ama en popüler olanı MySQL kazandı. Veritabanlarıyla etkileşim yeteneği, bir web uygulaması geliştiricisi için gerekli bir andır, bu hem ön uç hem de arka uç uzmanları için geçerlidir. Kilit noktalara hakim olmak zor değildir, ancak mesleki bilgi, belirli sorunları çözme konusunda deneyim gerektirir.

Tek bir tasarım değil

… yeni başlayanların müşteri tarafını bu şekilde anlamasına rağmen, ön ucu karakterize edebilirsiniz. Bir dereceye kadar haklılar, çünkü ön uç çalışmalarının çoğu kullanıcı tarafından görülebilen bir arayüz. Ancak, sadece tasarımdan değil, aynı zamanda kullanıcı ile etkileşimli etkileşimden de sorumludur.

Çizim kodlama değil

Ön tarafta iki ana geliştirme vektörü var: tasarımcılar ve yerleşim tasarımcıları. Yaratıcılığı ve düzenleri seviyorsanız, web tasarımının temellerini öğrenmeye başlayın. Her şeyden önce, Adobe Photoshop gibi bir grafik düzenleyici yükleyin. Bu yönde birçok eğitim materyali var ve yüksek kalitede. Aslan payı, sadece aptallar için yönlendirilmiştir.

PS'yi kurduktan hemen sonra, işlevsellik ve arayüz size düşmanca görünecek ve araçların kullanımı zor olacaktır. Gerçekten de, programla çalışmak belirli beceriler gerektirir. Ancak, ilk olarak, göründüğü kadar zor değil ve ikinci olarak, Photoshop'un yeteneklerinin tüm potansiyeline ihtiyacınız yok. YouTube'da web ürünü düzenleriyle çalışma konusunda uzmanlaşmış kurslar vardır. Öğrenmek için onları seçin!

Düzen tasarımcılarının kadrosu hakkında konuşursak, görevleri düzenleri tarayıcının anladığı koda - HTML'ye dönüştürmektir. Ama sana yetmeyecek. Köprü metni dili, sıkı bir çalışma ile sizi iki günden fazla sürmeyecek ve siteyi renkli kılan CSS'nin temelleri için aynı miktarda zaman alacaktır. Bu, programlama dilleriyle aynı değildir - yeni başlayanlar için yaratılmış gibi.

Programlama dili hakkında konuşursak, ön uç geliştirici için Javascript'tir. Ve yukarıda bahsettiğimiz zamana karşı yarış olmasaydı harika olurdu. Bu sayede modern bir web geliştiricisi aynı anda iki standartla çalışmak zorundadır: beşinci ve altıncı ECMAScript. Yeni ürünler 6. ciltte yazılmıştır, ancak bazı ürünler hala beşinci cildi kullanmaktadır. Her biriyle uğraşmak zorunda kalacaksınız.

Birkaç yıl önce, önemli bir beceri, tarayıcılar arası kod yazma yeteneğiydi. Kısacası, büyük tarayıcılarda iyi çalışacak bir Javascript programı yazmak anlamına gelir. Geçmişte, web'de gezinme yazılımı satıcıları, kimin teknolojisinin ana akım haline geleceğini görmek için yarıştı. Ancak bugün, neredeyse tüm tarayıcılar standart hale getirildi ve farklılıkları kullanıcı arayüzünde yoğunlaştı. Daha yakın zamanlarda, tarayıcılar arası uyumluluk, Javascript kodunun modern tarayıcılar ve Internet Explorer için uygun olacağı anlamına geliyordu. Ancak toplum, IE'yi işe yaramaz olarak kabul etti ve kullanımını tamamen olmaktan biraz daha az terk etti.

Son zamanlarda, ön uç geliştiriciler daha yüksek taleplerle karşı karşıya kaldı. Daha önce, böyle bir geliştirici daha çok istemci tarafı JS'nin incelikleri konusunda eğitilmiş ve kitaplıktan komut dosyalarını "bağlayan" bir kodlayıcıya benziyordu, şimdi ise kapsamlı becerilere sahip bir kişidir. Modern pazar, şöyle bir ön uç geliştirici görmek istiyor:

özellikleriyle HTML/CSS'yi bilir;

optimizasyon için ön işlemcileri kullanır;

JavaScript konusunda kendinden emin;

Angular ve React gibi js çerçeveleriyle çalışır;

BEM metodolojisini kullanarak bir tasarım oluşturur;

popüler CMS'yi anlar (böylece daha sonra işlevsellik “aptallar için” bile anlaşılabilir);

arka ucun temelini anlar ve gerekirse içine girmekten korkmaz;

Git gibi sürüm kontrol sistemleriyle çalışır;

Bu zaten tam bir yığını andırıyor, ancak daha fazlası aşağıda. Bu yaklaşım programcılar tarafından eleştirilir, çünkü onları daha önce çözmedikleri görevlerle zaman kaybetmeye zorlar.

Ya da belki tam bir yığın?

Herhangi bir alanda, ister doktor, mühendis, matematikçi veya web geliştiricisi olun, tüm becerilerde ustalaşmaya çalışmalısınız. Ve günümüzde ön uç geliştiricinin arka uç temellerini bilmesi gerektiği gerçeği doğal bir olgudur.

Ancak öyle görünüyor ki, şu anda yaşadığımız böyle bir gelişme çağında, web geliştirmedeki tüm becerilere bir kerede sıfırdan hakim olmak mümkün olmayacak. Gerçek şu ki, birinde ustalaşırken yeni bir şey icat edecekler ve harcanan zaman “parlatma” ve pratik kısım için harcanabilir. Büyük şirketler, birinin aynı anda iki savaş alanını kapsayabileceğini ummaktansa iki uzmanı işe almanın daha kolay olduğunu anlıyor.

Kaliteli bir ürün yaratmak için gereken teknoloji miktarının çok geniş olmadığı birkaç yıl önce tam bir yığın mümkündü. Ancak dillerin ve yazılımın kendisi bile ana engel değildir. Aslında, tam bir yığın hem ürünün kendisini hem de mobil olanlar da dahil olmak üzere çeşitli platformlar için uyarlanabilir sürümlerini geliştirmelidir. Uygulaması zor, test etmesi daha da zor: geliştiricinin, uygulamayı oluşturduğu cihazlarla kendisini kuşatması gerektiği ortaya çıktı.

Ancak eğitiminize yeni başlıyorsanız - her iki yönde de hareket edin. Bu kesinlikle tam bir yığın olacağınız anlamına gelmez. Ancak bu şekilde hangi geliştirme vektörlerinden hoşlandığınızı ve hangisinde gezineceğinizi öğrenebilirsiniz.

Bu arada, modern koşullarda ön ve arka arasındaki çizgi çok şartlı. Bazen geliştiriciler, neredeyse tamamen istemci tarafına dayanan tam teşekküllü uygulamalar oluştururken, diğerleri tüm işlemleri sunucuya aktarır ve kullanıcıya yalnızca programın sonucunu verir.

Ve son olarak, ana kural: Geliştirmenin hangi tarafını seçerseniz seçin, asla gelişmeyi bırakmayın.

Web geliştirmede modern eğilimler ve yaklaşımlar

Web sitesi oluşturmada sıfırdan hızlı büyüme için algoritmayı öğrenin

  • Tercüme
  • öğretici

Yol uzun ve zor ama ilginç ve ödüllendirici!

Makale, profesyonel bir web geliştiricisi olmak isteyenler için pratik bir rehber olarak tasarlandı. 20 yılı aşkın bir süredir web için kod yazıyorum. Her gün web geliştiricileriyle çalışıyorum ve onlara yardım ediyorum. Makalede ne öğrenmeniz gerektiğini, ne zaman öğrenmeniz gerektiğini ve bilgiyi nereden alacağınızı açıklayacağım (çoğunlukla ücretsiz olarak). Ardından, gerçek deneyim kazanma ve en önemlisi kod yazmak için para alma konusunda tavsiyelerde bulunacağım.

Makale boyunca dağınık, ücretsiz ve önemli kaynaklara birçok bağlantı vardır. Basit olması için bunları PDF olarak topladım ve kategorilere ayırdım. Bağlantı verdiğim sitelerden bahsetmek için para almıyorum - sadece hedefinize ulaşmanıza yardımcı olacak en iyi kaynakları önermek istiyorum.

Hatırlanacak şeyler:

1. Makalenin kaydırılmasına izin verilir

Kılavuz, mesleki gelişim yolunda nerede olursanız olun size yardımcı olabilir. Bugün nerede olduğunuzu en iyi tanımlayan başlığa gidin ve oradan okuyun. Bu yolculuğa yeni başladıysanız veya hala düşünüyorsanız, Alice Harikalar Diyarında Kralı'nın tavsiyesine uyun:

Baştan başlayın ve sona ulaşana kadar devam edin; ve orada dur.

2. Her şeyden biraz deneyin ve ardından bir uzmanlık seçin.

Para en önemli şey değildir. Yaptığınız şeyi SEVMEK gerekir! Ama denemeden neyi sevdiğinizi bilemezsiniz.


Tutkunuzu bulun ve ondan para kazanın

Kılavuz, web geliştirmenin birçok alanına mümkün olduğunca çabuk aşina olmanıza yardımcı olacaktır. Ardından, sevdiğiniz alanda bir uzmanlık seçmenize yardımcı olur. İlk başta hiçbir şeyde mükemmelliğe ulaşamayacaksınız - temel bilgileri öğrenecek ve ardından çalışmaya devam edeceksiniz. Tutkunuzu bulun ve size nasıl devam edeceğinizi göstereyim.

Kod yazmaya karar verdim. Web'i seviyorum. nereden başlayacağımı bilmiyorum


Başaracaksın!

Tebrikler! Bu ciddi bir ilk adım ve çok heyecan verici bir şeyin başlangıcı. Ama aynı zamanda çok zor olabilir. Merak etme, yardım edeceğim.

İlk olarak, web geliştirmenin tüm alanlarının ("tam döngü") temellerini hızlı bir şekilde öğrenmeniz gerekir. Eğitim çeşitli olacak, ancak sığ olacak. Bu, sevdiğiniz bir alan bulmak ve farklı alanlarda temel beceriler kazanmak için gereklidir. O zaman ne seçerseniz seçin, çok sayıda görevi anlayabilecek ve bunlarla çalışabileceksiniz.

HTML'nin Temellerini Öğrenin

Köprü metni biçimlendirme dili, Köprü Metni Biçimlendirme Dili (HTML), bir tarayıcıda gördüğünüzün içeriğini ve işaretlemesini kontrol eder. Bununla başlamak size etkileşimde bulunabileceğiniz ve kodunuzun sonuçlarını görebileceğiniz bir kullanıcı arayüzü sunar. Daha karmaşık dilleri öğrenirken önemi artacaktır. Körü körüne kodlamak zorunda değilsiniz.

İşte HTML hakkında öğrenmeniz gerekenler:

HTML'nin temellerini zaten biliyorum

Serin! Bu çok önemli bir adım. Şimdi JavaScript'in temellerini öğrenin.

JavaScript'in temellerini öğrenin

JavaScript, web'in dilidir ve tüm büyük tarayıcılar (Chrome, Firefox, Safari, IE, çok daha fazlası) onu destekler. Kullandığınız her site, her web uygulaması büyük olasılıkla büyük miktarda JS kodu içerir. Dilin diğer platformlarda da popülerlik kazandığından bahsetmiyorum bile - sunucular, masaüstleri, diğer cihazlar.

Şimdilik temel bilgilere ihtiyacınız var ve aşağıdaki kaynaklar işinizi görecektir:

JavaScript ve HTML'nin temellerini biliyorum

Mükemmel! Şimdi CSS becerilerinizi ekleyelim

CSS öğrenin

CSS veya Basamaklı Stil Sayfaları (basamaklı stil sayfaları). Bir sayfadaki HTML öğelerinin görünümünü özelleştirmek için kullanılır. Mozilla'nın ücretsiz eğitimine göz atın, ardından en zorlu problemler için CSS-Tricks'e göz atın (sağ üstte bir arama var).

arka uca gidelim

Şimdiye kadar, web geliştirmenin "ön uç" denilen şeye bakıyorduk. Tarayıcıda çalışan ana dillere aşina oldunuz. Arka uca geçmenin zamanı geldi - sunucuda çalışan kod. Endişelenme, bir sunucuya ihtiyacın olmayacak - senin bilgisayarın halledecek.

Back end için bir çok dil var ama JavaScript'e aşina olduğunuz için Node.js kullanmayı öğrenmenizi tavsiye ederim. JS kodunu tarayıcıda değil sunucuda çalıştırmanıza izin verir.

Buna ek olarak Express ve MongoDB öğrenmeniz gerekiyor.

İfade etmek
Bu, Node.JS'nin bir web sunucusu gibi davranabileceği bir kitaplıktır (sayfalardan gelen istekleri dinleyin ve onlara yanıtlar gönderin).
MongoDB
Bilgileri saklamanızı ve almanızı sağlayan bir veritabanıdır.

Bu üç konuyu aşağıdaki mükemmel ve ücretsiz öğrenme materyali ve devamı ile keşfedebilirsiniz.

Ön uç, arka uç ve tam döngü geliştirme arasında seçim yapmam gerekiyor

Her iki geliştirme seçeneğini de denedikten sonra, bir seçim yapma zamanı. Bunları denemek için zamanınız olmadıysa, bilginizdeki boşlukları doldurmak için makalenin önceki bölümüne bakın.

Şimdiye kadar iki tür kod yazdınız. Biri kullanıcı etkileşimi, diğeri veri içindir. Ne tercih edersin?

Kullanıcı etkileşimi? Tebrikler, bir ön uç geliştiricisiniz!

Verilerle etkileşim? Tebrikler, siz bir arka uç geliştiricisiniz!

İkisi birden? Tebrikler, tam zamanlı bir geliştiricisiniz!

Hiçbir şeyden hoşlanmadın mı? Tebrikler, web geliştirme size göre değil. Şimdi anladığınıza ve çok fazla zaman ve para kaybetmediğinize sevinin. Vazgeçmeye hazır değil misiniz? Belki de hoşunuza giden bir dile rastlamadınız? "Arka uç geliştirici olmak istiyorum" bölümünde diğer dilleri öğrenmeyi deneyin.

Tam döngü geliştiricisi olmak istiyorum

Serin. "Arka uç geliştirici olmak istiyorum" ve "ön uç geliştirici olmak istiyorum" bölümlerinin tüm içeriğini tanımanız gerekir.

Ön uç geliştirici olmak istiyorum ve JavaScript, HTML ve CSS'nin temellerini biliyorum

Etkili bir ön uç geliştirici olmak için HTML, CSS ve istemci tarafı JavaScript'te yetkin olmanız gerekir. Ayrıca birkaç önemli çerçeveyi iyi anlamanız gerekecektir. İşverenlerin ve müşterilerin ön uç geliştiricilerde bulmayı umduğu becerileri kazanacaksınız.

Şimdiye kadar, HTML'nin temellerini zaten biliyor olmalısınız. Aksi takdirde, HTML'nin Temellerini Öğrenin'e geri dönün.

Orta Düzey ve İleri Düzey HTML Öğrenin
Orta Düzey HTML öğreticisine ve ardından Gelişmiş HTML öğreticisine göz atın.
Gelişmiş istemci tarafı JavaScript'i öğrenin


JS üzerine mükemmel bir kitap dizisi ve ücretsiz

JavaScript uzmanlığınızı bir sonraki seviyeye taşımak için Kyle Simpson'ın You Don't Know JS kitap serisini öneririm. Yazar tüm seriyi çevrimiçi olarak ücretsiz olarak yayınladı:

Ayrıca, MDN JavaScript en iyi arkadaşınız olmalıdır.

[Ayrıca, "Expression JavaScript" adlı mükemmel kitabın mükemmel bir çevirisi de tamamen ücretsiz olarak mevcuttur - yaklaşık.çeviri.]

"Ön uç üçlüsünü", HTML, CSS ve JavaScript'i bilmek elbette harika. Ancak para kazanmak için bazı çerçevelerle tanışmanız gerekecek.

jQuery öğrenin
Tüm zamanların en popüler JS kütüphanesidir. Bir iş arıyorsanız, bazı yeni çerçeveler jQuery'nin önemini azaltmış olsa da, jQuery'nin uzun yıllar boyunca beceri tanımında (ve iş görüşmelerinde bahsedilmiştir) olma ihtimali vardır.

FreeCodeCamp materyallerini kullanarak jQuery öğrenmenizi öneririm - bu hızlı ve etkili bir yöntemdir. Bundan sonra, daha fazla talimat için resmi eğitim sitesine gidin.

Popüler JS çerçevesini keşfedin
Çerçeveler, seçilen teknolojinin sahip olduğu en büyük sorunları çözdüğü için belirli bir dil veya teknolojiyle çalışmayı kolaylaştırır. JavaScript, çerçevelerin geliştirilmesi ve yaygınlaştırılması üzerinde çok faydalı bir etkiye sahiptir.

Neredeyse haftada bir kez, yeni bir geliştirme standardının yerini alması beklenen yeni bir çerçeve ortaya çıkıyor. Pazarınızda hangi çerçevenin popüler olduğunu bulmak için iş sitelerini araştırmanız ve google'da çokça aramanız gerekecek. Ayrıca iş piyasası trendlerini değerlendirmek için Hacker News'den bir araç öneriyorum.

Bu yazının yazıldığı sırada, aşağıdaki çerçeveler popülerdir:

En uygun çerçeveyi seçtikten ve ona iyice aşina olduktan sonra, onunla birlikte gelen CSS çerçevesini incelemeye değer. Bugün bu pazardaki en büyük iki oyuncu Bootstrap ve Material Design.

Önyükleme
Bootstrap, Twitter geliştiricileri tarafından yapılmıştır ve zaten oldukça olgun ve popülerdir. Angular, Angular 2 ve React için Bootstrap sürümleri mevcuttur.
malzeme
Materyal, Google tarafından geliştirilen bir dizi tasarım kuralıdır. Popülerlik kazanıyor, Angular ve React sürümleri var. Angular aynı zamanda Google'ın buluşu olduğu için Material onunla mükemmel bir şekilde eşleşir.

İşte size bazı bağlantılar:

Tebrikler! Bir ön uç geliştiricinin temel becerilerine sahipsiniz!


Sadece ona bak!

Arka uç geliştiricisi olmak istiyorum

Müthiş! İlk adım bir dil seçmektir. Arka uçla çalışmak için birçok dil vardır ve her birinin kendi avantajları ve dezavantajları vardır. Popülerliğe göre sıralanmış programlama dilleri tablosuna göz atın. Hepsi on yıldır ilk on içinde. Yeşil ile işaretlenmiş, yıllar içinde popülerlik kazanan web dilleridir.


TIOBE Programlama Dilleri Dizini, www.tiobe.com/tiobe_index?page=index

İsimlerini yeşil daire içine aldığım dillere odaklanın. Onları tanımıyorsanız, masanın en üstünden başlayın ve aşağı inin. Hoşunuza giden bir şey bulduğunuzda durun ve derine inin!

Yeşil ile işaretlenmiş dillerden birine aşinaysanız ve beğendiyseniz, ona konsantre olun.

Bir röportaj için ihtiyacınız olan becerileri geliştirin
Kod yazmaktan daha fazlasına hazırlanmanız gerekir. Life Hacker'dan iyi bir makale, birçok faydalı ve değerli bilgi içerir.
Ana şey piyasada bir yer edinmektir.
Hayalinizdeki işverene hayalinizdeki maaşla hayalinizdeki işe sahip olma konusunda çok fazla endişelenmeyin. İlk olarak, sadece para için kod yazdığınız bir iş bulun. Daha fazla deneyim kazandıkça, bir sonraki adımı planlayabileceksiniz.
serbest meslek sahibi olmak istiyorum
Kendi patronunuz olmak iyidir, ancak bu hem büyük bir baskı hem de büyük bir meydan okumadır. Şimdiye kadar gördüğüm en iyi serbest çalışma bilgisi kaynağı DoubleYourFreelancing.com. Benden daha iyi bir serbest meslek sahibi olmanıza yardımcı olacak bir dizi makalesi var. Okumak.

Kendinize güveniyorsanız bir diğer seçenek de Toptal hizmetidir. Başvuran herkesin sadece %3'ünü kabul ediyorlar ve süreç çok karmaşık, ancak oraya ulaşırsanız, uzaktan çalışabileceğiniz iyi ücretli işlere erişiminiz olacak.

İşe başladım ama çıkmaza girmiş gibi hissediyorum.
Anlamak. Kolay değil ve biri size aksini söylediyse, ya yapmamıştır ya da sizi dolandırarak para kazanmaya çalışmaktadır. Bir çıkmaza girdiğinizi düşünüyorsanız, aşağıdaki seçenekleri deneyin:
Orijinal amacınızı yenileyin
Kendinize sorun, neden bu yoldan gitmeye karar verdiğinizi kağıda yazın. Cevabınız hala geçerli mi? Evet ise, neden dursun? İleri!

Yazardan: merhaba blogumuzun sevgili okuyucusu! Web programcıları hakkında birçok klişe duymuş olmalısınız. Birçok insan, kelimelerin yerine bir kodun olduğu özel bir dil konuştuklarını düşünüyor. Ve onlar gece yaratıklarıdır ve genel olarak pratikte uyumazlar. Programcı asla kulaklıklarını çıkarmaz ve fareyi de bırakmaz. Ve elinde fare yoksa, o zaman kağıt, tablet veya tozlu bir masa üzerinde bazı gizemli sembolleri coşkuyla gösterir. Elbette bunlar kalıplaşmış yargılardan başka bir şey değil. Aksi takdirde, sıfırdan bir web programcısı olmayı öğrenmek isteyen bu kadar çok insan olmazdı. Meraklarını giderelim ve onlara bu ilginç ve talep gören çevrimiçi mesleği anlatalım.

Yani, sıfırdan nasıl bir web programcısı olunacağını düşünüyorsunuz. Ama küçük bir sorun var gibi... Kesinlikle hiç tecrüben yok. Bu alanda ciddiye alındığınızdan nasıl emin olabilirsiniz? Bir web geliştiricisinin gururlu unvanını taşımak için atmanız gereken adımların listesini öğrenmenizi öneririm. Ne kadar basit olduğuna bile şaşıracaksınız. İlk önce yolunuzdaki tüm şüpheleri atmanız gerekir. Bir de tembellik. Gitmek!

Söz konusu meslek hakkında kısa bilgi

Araştırmanın amacı: bir web programcısı, aynı zamanda bir web geliştiricisidir, aynı zamanda bir geliştirici, web yöneticisi ve İnternet'in görünmez mimarıdır. Bu kadar isim.

Kim o? Yeni siteler geliştiren ve mevcut siteleri ve web uygulamalarını iyileştiren kişi. Bu süreç, web tasarımı, sitenin programlanması ve düzenlenmesi, web sunucusunun yapılandırılması ve hazır projelerin işlevselliğinin genişletilmesi gibi aşamaları içerebilir.

Gereksinimler: Özel programlama becerileri ve potansiyel müşterilere göstermek için halihazırda yapılmış web sitelerinden oluşan iyi bir portföy.

Web yöneticisi türleri: Bunların tümü, uzmanın bildiği istemci veya sunucu diline bağlıdır. Örneğin, siteler için geliştirmeler veya motorlar oluşturmak için de kullanılabilen ASP.NET, Perl, C#, Java, PHP - CMS. Ücretsiz (Joomla, WordPress) ve ücretli (Bitrix, SiteEdit) motorları vardır. Özellikle yetenekli programcılar kendi motorlarını yaratabilirler.

Genel olarak, web geliştirme, web programlamadan daha geniş bir kavramdır. Web geliştiricilerinin fahri kastında sadece sitenin temelini (motorunu) yazan bir programcı değil, aynı zamanda bir tasarımcı, mizanpaj tasarımcısı, testçi vb. Sitenin.
İşte nasıl bir web programcısı olunacağına dair söz verilen eğitim.

Birinci adım - bir uzmanlık seçin

Sıfırdan herhangi bir iyi web programlama kursu, belirli bir dar uzmanlık öğretir. O yüzden sadece ne yapmak istediğine karar ver. En azından ilk etapta. O zaman diğer ufukları keşfedebilirsiniz. İşte seçim yapabileceğiniz bazı hazır destinasyonlar:

Ön Uç mu, Arka Uç mu?

React.js veya Angular.js?

Tüm bunların ne anlama geldiğini bir arama motorunda tutkuyla arıyorsanız, tüm esnafların krikosu olma kesin inancında, o zaman aklınıza gelin. Çoğu şirket son derece uzmanlaşmış uzmanlara ihtiyaç duyar.

Bununla birlikte, bir uzmanlığa karar vermek için her şeyden biraz denemeniz gerekebilir. Yaptığın şeyi SEVMEK zorundasın. O yüzden şimdilik parayı unutun. Sana daha yakın olanı düşün. Gece gündüz kod yazmak ister misin? Ya da belki arayüzler geliştirmek? Web sitelerini test etmeye ne dersiniz?

İkinci Adım - Web geliştirmenin tüm alanlarının temellerini öğrenin

"Tam döngü" geliştirici olmasanız bile, yine de temel bilgileri bilmeniz gerekir.

HTML ve CSS.

Web programlamayı öğrenmek, HTML'nin temellerini anlamakla başlamalıdır. Tarayıcıda gördüğümüz bilgilerin işaretlemesini ve içeriğini kontrol eden bir hiper metin işaretleme dilidir. Gelecekte, daha karmaşık dillerin incelenmesiyle HTML'nin önemi daha da artacaktır.

İşte HTML hakkında öğrenecekleriniz:

etiketler, nitelikler, öğeler;

başlıklar;

Web geliştirmede modern eğilimler ve yaklaşımlar

Web sitesi oluşturmada sıfırdan hızlı büyüme için algoritmayı öğrenin

paragraflar;

Görüntüler;

CSS, bir web sayfasındaki HTML öğelerinin görünümünü özelleştirmek için kullanılan Basamaklı Stil Sayfalarıdır. HTML ve CSS öğrenmek için buna göz atabilir ve ardından daha gelişmiş görevler için kursa başvurabilirsiniz.

PHP.

Ardından, PHP dili. Piyasa, PHP geliştiricileri için boş pozisyonlarla dolu. Bu dil nispeten karmaşık değildir ve bir kariyere başlamak için harikadır. Burada PHP'nin kendisinin ve MySQL veritabanlarının sözdizimini, ana işlevlerini ve komutlarını, jQuery, AJAX, CMS, CSS ve tabii ki HLML'yi bilmeniz gerekir. İşte iyi bir tane.

JavaScript.

Neredeyse her yerde çalışan son derece popüler bir başka dil de JavaScript'tir. Son derece geniş bir kapsamı vardır. Üzerinde Android uygulamaları, masaüstü ve web uygulamaları yazılıdır; tüm tarayıcılar ve platformlar (mobil cihazlar, bilgisayarlar, sunucular vb.) tarafından desteklenmektedir.

JavaScript'in temellerini öğrenirken şunlara ihtiyacınız olacak: veriler ve değişkenler, koşullar, olaylar, diziler, döngüler, nesneler, işlevler, geri aramalar, DOM, mantık, JSON, .

Web programcıları için mükemmel bir kurs yardımıyla JavaScript dilini öğrenebilirsiniz.

Şimdiye kadar, kullanıcılarla etkileşim kurmak için tasarlanan Ön Uç geliştirme olarak adlandırılan geliştirmeyi düşündük. Ve sunucuda çalışan başka bir kod daha var - Back-end. Arka uç geliştirici olmaya karar verirseniz, sunucuda JS kodu çalıştıran Node.js, Express kitaplığı ve MongoDB veritabanı hakkında bilgi edinmenizi tavsiye ederim.

Üçüncü adım - gerçek deneyim elde edin

Başlamak için, web programcılarına yönelik kitaplarda ve kurslarda bulunan birkaç öğretici projeyi tamamlayın. Temel düzeyde olsa bile kendi blogunuzu da geliştirebilirsiniz.

Sonra başka biri için çalışmaya başlayın:

kendi işinin sahibi bir akraba veya arkadaşa yardım etmek. “Teşekkürler için” veya cüzi bir ücret karşılığında onun için bir web sitesi veya web uygulaması yapın. Hemen uluslararası ölçekte projeler hedeflemeyin ve çok fazla “altın dağları” vaadinde bulunmayın;

ofiste çalışmak. Şanslıysanız, orada sıfırdan bir web programcısı olacak ve profesyonellerden öğreneceksiniz;

serbest borsalarda ve özel forumlarda sipariş arayın. Geliştiriciler için her zaman iş vardır.

Portföyünüze eklemeye devam etmeyi unutmayın. Onsuz, yeterli müşteri bulmak zor olacaktır.

Makalemi okuduysanız ve ön uç veya arka uç geliştirme ile ilgilenmiyorsanız, sevinin, web programlama size göre değil. Mutlu olacak ne var? Evet, bunu zamanla anlamanız ve çok para, sinir ve zaman kaybetmemeniz gerçeği.

Web geliştirmede modern eğilimler ve yaklaşımlar

Web sitesi oluşturmada sıfırdan hızlı büyüme için algoritmayı öğrenin