Sadece Html, css ve javascript bilmek bir dezavantaj gibi görünse de javascript ile aklınıza gelebilecek birçok şeyi yapabilirsiniz. Bunlardan bazılarını aşağıda maddeler halinde listeledim. Bu listelediklerimi sadece javascript ile denedim ve bizzat uyguladım.

  1. İçinde veri tabanı ile ilgili bir uygulama olmayan herhangi bir web sitesini sıfırdan dilediğiniz gibi kodlayabilirsiniz.
  2. Tarayıcı üzerinden çalışan oyunlar yapabilirsiniz. (Canvas yardımıyla.)
  3. Mobil uygulama geliştirebilirsiniz.
  4. Masaüstü uygulama geliştirebilirsiniz.
  5. Javascript selenium ile Python kullanılarak yapılan botları yapabilirsiniz.
  6. Discord gibi platformlar için botlar yapabilirsiniz.
  7. Bir web sitesindeki tasarımsal bütün sorunları çözebilirsiniz.
  8. Javascript ajax ile API kullanabilir ve bu API ile web sitelerini dinamikleştirebilirsiniz.
  9. Bir web sitesi sahibinin ihtiyaç duyabileceği yazı editörü, içerik analizi, özel işlevi olan uygulamalar, otomatik kontrol araçları gibi birçok uygulama geliştirebilirsiniz.
  10. Html, css ve javascript ile ileri seviye animasyonlar yaparak bu animasyonları bir dosya haline getirip web sitenizde yayınlayabilirsiniz. (Hazır şablon sitesi.)
  11. Html tasarımlar yapıp Theme Forest gibi web sitelerinde satabilirsiniz. 
  12. Kelime sayıcı, Denklem çözücü gibi uygulamalar geliştirerek bir web sitesi üzerinden kazanç sağlayabilirsiniz.
  13. Bir Backend dili öğrendikten sonra (Örneğin Node.js) javascript bilginizi de işin içine katarak normalin üzerinde tasarım ve performansa sahip web siteleri kodlayabilirsiniz.
  14. Bootstrap ve Jquery gibi kütüphanelere benzer kütüphaneleri kodlayabilirsiniz. (Örneğin anime.js)
  15. Javascript diğer dillere göre öğrenmesi daha kolay bir dil olduğundan javascript öğrendikten sonra diğer dilleri hızlıca öğrenebilirsiniz. (Benim için javascript 1 yıl, c# 1 ay sürdü.)
  16. Freelancer işler alabilirsiniz. Bu işler html tasarım ya da web sitesi sorunlarıyla alakalı işler olabilir.
  17. Blogger yardımıyla html tasarımlarınızı Backend bilmeden sadece html, css ve javascript bilginizle dinamikleştirebilirsiniz.
  18. Chrome eklentisi kodlayabilirsiniz.
  19. Local storage kullanarak sadece kullanıcının tarayıcısında tuttuğunuz bilgilerle otomasyonlar yapabilirsiniz.
  20. Web siteleri için eklentiler geliştirip satabilirsiniz.
  21. Google Page Speed puanı düşük sitelerin puanını ücret karşılığı yükseltebilirsiniz. (Kodları istenen şekilde düzenleyerek.)
  22. Birkaç sayfalık Backend’e gerek olmayan web sitelerini kodlayarak teslim edebilirsiniz.
  23. Biraz da SEO öğrenerek hem yazılım ile alakalı hem de içerik ile alakalı SEO çalışmaları yapabilirsiniz.
  24. Sadece javascript bilginizle Node.js’i kolayca öğrenerek Backend tarafında da çalışabilirsiniz.
  25. Bir web tasarım firmasında işe girerek Temaları editleyebilir ve istenen değişiklikleri kolayca javascript bilginizle yapabilirsiniz. (Çoğu firma genelde sadece WordPress temalarını düzenleyerek satıyor.)
  26. Javascript için sunulmuş yüz tanıma sistemi, 3D grafik çizimi kütüphanelerini kullanabilir ve entegre edebilirsiniz.
  27. Size sunulan bir API’ye kullanıcının yaptığı her hareketi, örneğin scroll barı kaydırma, mouse gezdirme, gelinen siteyi öğrenme (document.referrer), tarayıcı bilgisi, kullanıcının sizin sekmenizde olup olmadığı, tarayıcı genişliği ve bugenişliğin anlık değişip değişmediğini kontrol eden fonksiyon, kullanıcının sayfada ne kadar durduğu, Kullanıcının kopyaladığı ya da kopyalamak istediği text, kullanıcının bastığı her tuş, kullanıcının bir div ya da elemana html üzerindeki uzaklığı gibi tonlarca bilgiyi gönderebilirsiniz.

Kısaca veri tabanı ile ilgisi olmayan herhangi bir işlemi yapabilirsiniz. Bu işlemleri yaparken de hiçbir özelliği ezberlemenize gerek kalmaz. Çünkü javascript kaynak açısından çok zengin bir dildir. Aradığınız her sorunun cevabını stackoverflow web sitelerinden bulabilirsiniz. Html, css ve javascript ile neler yapılabilir? Sorusunun cevabı genel olarak bu işlemlerle sınırlı değildir. Normalde c++ gibi herhangi bir dil ile yapılan bir işlem bir kütüphane oluşturularak javascript ile de yapılabilecek hale getiriliyor. Dolayısıyla javascript ihtiyaçlarınızın çoğunu karşılayacak bir dildir. Web programlamaya adım atacaksanız ya da atmışsanız html, css ve javascript bilginizin gerçekten iyi seviyede olması gerekiyor. İngilizceniz olmasa dahi ki benim yok, sorunlarınızı ingilizce arayarak çözebilirsiniz. Google translate ne kadar mükemmel çeviriler yapmasa da kod bloklarına bakmak sorununuzu çözmek için yeterli oluyor. Aşağıda linkini vermiş olduğum yazılar da ilginizi çekebilir.

Javascript mi C# mı Hangisini Öğrenmeliyiz?

Javascript Öğrenmek Zor mu?

Html, Css ve Javascript ile Neler Yapılabilir

Html ve Css ile Neler Yapılabilir?

Html ve css kullanarak birçok alanda çalışabilir ve gelir elde edebilirsiniz. Özellikle html ve css ile ortaya çıkardığınız tasarımlar sandığınızdan daha değerlidir. İstenildiği kadar mükemmel Backend kodlansın yine de kullanıcı html ve css ile yapılan tasarımı göreceğinden asıl iş bu kısımda bitiyor. Bir web sitesine girdiğinizde ilk baktığınız şey web sitesinin tasarımıdır. Web sitesi hangi alanda hizmet veriyorsa o alana uygun kodlanmış güzel bir tema web sitesinin her şeyidir.

Backend tarafında tek yapılan sizin rasgele veriler girdiğiniz bölümlere verileri veri tabanından getirmektir. Dolayısıyla asıl iş tasarım kısmında bitiyor. Menü, sidebar, main, footer derken bir temada kodlanması gereken birçok bölüm ortaya çıkıyor.

Html, Css ve Javascript ile Neler Yapılabilir

Html ve css ne kadar kolay görünse de bilmediğimiz birçok özelliği mevcuttur. Örneğin yukarıda görmüş olduğunuz temadaki yorum formunun etrafındaki çizgi html ile gelen bir özellikle yapılıyor.

Html, Css ve Javascript ile Neler Yapılabilir

Html üzerinde gördüğünüz gibi iki etiket böyle bir tasarımı yapmak için yetiyor. Html ve css sadece renk değiştirme div ekleme gibi basit işlevlerden ibaret değil. Henüz bilmediğiniz işlevsel ve kesin kullanırım diyebileceğiniz birçok özellik mevcut. Bu özellikleri öğrenmek için yabancı YouTube kanallarını takip etmenizi öneririm. Önerebileceğim en iyi kanallardan bir tanesi Online Tutorials kanalıdır. Bu kanal normal standartların üzerinde tasarımlar yapıyor. Basit bir Login formunu bile mükemmel tasarımlara oturtabiliyor.

Linkini ve ismini vermiş olduğum kanalı birazcık da olsa inceleyerek html, css ve javascript ile neler yapılabilir? Sorunuzun cevabını rahatlıkla alabilirsiniz.

Javascript ile Oyun Nasıl Yapılır?

Javascript ile oyun yapabilmek için Canvas bilmeniz gerekiyor. Canvas grafiksel birçok yapıyı tarayıcı üzerinde kurmanıza izin veriyor. w3schools ufak bir başlangıç için linke tıklayabilirsiniz. Zaten javascript oyun yapımı şeklinde bir arama yaparak bu konuda bilgi sahibi olabilirsiniz. Ancak oyun yapımı için kullanacağımız canvas beraberinde bilmediğimiz özellikler de getiriyor. moveTo, lineTo, stroke  gibi birçok komutu öğrenmeniz gerekiyor.

Canvas temelde vektörel çizimler yapıyor. Kullandığını bir font ikon da temelde svg formatındaki bir dosya içerisindeki koordinatlardan ibarettir. Her bir <path> bir çizimi ifade ediyor. Font awesome gibi kütüphaneleri kullanarak çağırdığınız ikonların tamamı svg formatından yazı fontuna çevrilmiş ikonlardır. Dolayısıyla çizim için kullandığımız canvas da koordinatları kullanıyor. Üstelik canvas ile istediğiniz gibi grafikler oluşurabilirsiniz. Hali hazırda bunun için canvas js gibi birçok kütüphane mevcut. Hazır olarak kullanabilir ya da canvas öğrendikten sonra kendiniz kodlayabilirsiniz.

Javascrtipt Öğrenmenin Avantajları Nelerdir?

Html, css ve javascript ile neler yapılabilir sorusunun önemli bir başlığı da avantajlarıdır. Javascript aşağıda sıralamış olduğum maddeler ışığında ajantajlara sahiptir. Ancak sadece bu başlıklar ile sınırlı kalmak hiç doğru olmaz. Ne kadar çok özellik sıralasanız da mutlaka javascript bu özelliklerde fazlasıdır.

  1. Öğrenmesi diğer dillere göre çok daha kolaydır. Örneğin değişkenler let, var ve const ile tanımlanır ve türe göre ayırmanız gerekmez. Ancak c# gibi bir dilde verinin sayısal mı sting mi olduğu ve büyüklüğü gibi birçok alanda düşünerek değişken tanımlamanız gerekiyor.
  2. Javascripti öğrendikten sonra diğer programlama dillerini çok daha kolay öğrenebilirsiniz. Javascriptte kullandığımız birçok fonksiyon diğer dillerde de mevcuttur. Split, random, splice gibi birçok metodun aynı olmasıyla birlikte for, foreach, while gibi döngüler ve fonksiyon tanımlamaları da çok benzerdir.
  3. Javascript bilginiz varsa veri tabanı da öğrenerek Node.js ile Backend tarafında çalışabilirsiniz.
  4. Yazdığınız javascript kodları Backend dili farketmeksizin herhangi bir web sitelerinde çalışır. 
  5. Herhangi bir web sitesindeki sorunları eklediğiniz javascript kodları ile çözebilirsiniz.
  6. Her türlü API’yi kullanabilirsiniz. 
  7. Aklınıza gelebileceğinden fazla animasyonlar yapabilirsiniz. (Anime.js animasyonları gibi.)
  8. Sunucu tarafında yapılacak işlemleri tarayıcı tarafında yaparak sunucunun yükünü hafifletebilirsiniz. Bu konuda destek de verebilirsiniz.
  9. Fotoğraf boyutu küçültme gibi birçok özel işlemi javascript ile yapabilirsiniz.

Daha birçok özellik sıralanabilir. Bu özelliklerin içine girişte verdiğim oyun, uygulama, eklenti gibi işlemleri daha katmadım bile. Javascript kullanarak neredeyse aklınıza gelebilecek her şeyi yapabiliyorsunuz. Zaten web alanında çalışmak istiyorsanız html, css ve javascripti iyi bir seviyede bilmeniz gerekiyor. 

Projelerde Kütüphaneler Kullanılmalı Mı?

Herhangi bir projenizde kütüphane kullanmanızı tavsiye etmem. Birçok kişi teknolojiye karşı çıkmak gibi görse fe kendime göre birçok sebebim var. Bir kütüphaneyi projenize dahil ettiğiniz anda birçok kullanmadığınız gereksiz kodu da dahil etmiş oluyorsunuz. Dahil ettiğiniz kütüphane kullanıcı sitenize her girdiğinde kullandığı tarayıcı tarafından indiriliyor. Kütüphane içerisindeki gereksiz tonlarca kod da bu indirilenlere dahil. Ayrıca kütüphane kullanmak zamanla o dildeki hakimiyetinizi yitirmenize neden olacaktır.

Bir divi query selector ile seçmek yerine dolar işaretiyle seçmek bu dezavantajları maalesef karşılamıyor. Web siteleri arama motorları tarafından Page Speed değerlerine göre de sıralanıyor. Yani sitenizin hızı bir nevi aramalardaki sıralamanızı etkiliyor. Dahil ettiğiniz tonlarca kütüphane de site hızınızı çok yavaşlatıyor. Ayrıca javascript ile birçok sorunun çözümünü bulabilirsiniz ancak bulduğunuz bu çözümleri bir de kütüphanenin dilinden yazmanız gerekiyor. Direk de çalıştırabilirsiniz ancak kütüphane kullandığınızda mümkün mertebe kodlarınızı kütüphane ile yazmanız daha uygun olacaktır.

Kütüphanelerin avantajlı olduğu yerler de yok mu? Elbette var. Örneğin dakikalar içerisinde sayfalar tasarlayarak bir proje geliştirebiliyorsunuz. İşlerinizi normalden çok daha hızlı bitirebiliyorsunuz. Ancak yaptığınız işlerin hepsi aynı fabrikadan çıkmış gibi gözüküyor. Kütüphanelerdeki standart renk ve şekilleri kullandığınızdan standart bir tasarıma sahip oluyorsunuz. Alelacele bir iş yapmak istiyorsanız kütüphaneler çok avantajlı. Özel bir proje geliştirmek istiyorsanız da kütüphane kullanmanızı asla tavsiye etmem.

Sonuç

Sonuç olarak html, css ve javascript kullanarak Backend tarafında bir işlevi olmayan herhangi bir web sitesi, mobil uygulama, masaüstü uygulama geliştirebilirsiniz. Hatta dosyaların içerisindeki bir json dosyasını javascript ajax ile okuyabilirsiniz. Veri yazmak için bir programlama dili bilmeniz gerekse de dosyaları okuyabilirsiniz.

Bilgileri local storage ile kaydeden bir otomasyon ya da web sitesi kodlayabilirsiniz. Html, css ve javascript ile yapabileceklerinizin ne kadar sınırı olmasa da Python ile rahatlıkla yapılabilecek bir işlemi javascript ile yapmaya çalışmak absürt olacaktır. Dolayısıyla sadece html, css ve javascript ile yetinmeyip diğer dilleri de öğrenmelisiniz. Her dilin birçok avantajı ve dezavantajı vardır. Örneğin javascriptte değişken tanımlarken üç türe göre tanımlayıp büyüklüğünün önemli olmadığını söylemiştik. Bu sebeple javascript girdinin ne olduğunu anlamak için diğer dillere göre daha çok koda ihtiyaç duyuyor. Bir başka örnek olarak noktalı virgül koymasak da kodumuz çalışıyor. Ancak noktalı virgül koymadan da çalışan bir dil kodun nerde başlayıp nerede biteceğini anlamak için fazladan koda ihtiyaç duyuyor. Ancak bu gibi dezajantajlar javascriptten vazgeçmenize neden olmamalıdır. Dağ kadar ajantajı bir yana bırakıp çakıl kadar dezajantaja odaklanmak körlüktür.

Kategori: