Etrafınıza şöyle bir baktığınızda, elektronik cihazlarla çevrili olmama ihtimaliniz nedir sizce? Bana kalırsa neredeyse imkânsız. Biri, saati sorduğunda bile genelde telefona bakıp söyler olduk. Yani ekranlarla, internetle, telefonla etkileşimimiz öyle arttı ki ayrılmaz bir parçamız haline geldiler. Hootsuite ve We Are Social tarafından hazırlanan 2021 Ocak Dijital Raporu’na göre internette yaklaşık günde 7 saat geçirdiğimizi söylersem abartmış olmam. Saatler geçirdiğimiz bu uygulamalar ve web siteleri ise bazı programlama dilleri sayesinde ortaya çıkmaktadır. Programlama dilleri basitçe bilgisayarla iletişim kurmayı ve komut vererek işlem yapmayı sağlar. Ancak programlama dillerinden ayrışan betik dil adı verilen diller vardır. Bu yazımızda gelin script’i yakından inceleyelim.
Betik Dilin Farklı Yönleri Nelerdir?
Latince kökenli script kelimesi yazılı metin anlamına gelir. Lakin “scripting language”, Türkçe’de betik dil olarak kullanılır. Programlama dilleri arasında farklı bir isim almasının temel bir sebebi vardır. Aslında programlama dilleri, bilgisayara bir işlemi yerine getirmesi için kullandığımız talimatlardır. Örneğin bir oyun geliştirirken veya web sitesi tasarlarken kullanım alanlarına göre farklı diller kullanılır. Bu dillerin cihazın anlayacağı hale getirilmesi gerekir. Bu noktada derleyici (compiler) ile bilgisayar istenen görevi yerine getirir. Derleyici, bir tercüman gibi yazılımcıların kullandığı dili makine diline dönüştürerek, onların birden fazla dili kullanabilmesini sağlar. Bu sayede otomasyon daha hızlı gerçekleşir ve süreç kısalır. Derleyicinin en önemli yönlerinden biri de hataları fark etmesi ve yazılım geliştiriciyi uyarmasıdır.
Script ise bu noktada diğer programlama dillerinden ayrışır. Derleyiciye gerek duymadan direkt yorumlanır. Özel bir yazılıma ihtiyaç duymadığı için süreç daha hızlıdır. Genellikle, daha az yoğun olan (script) betik dili hem istemci hem sunucu tarafında belirli görevleri otomatikleştirir, uygulamalar için eklentiler oluşturabilirsiniz. Betik dil, programlama dillerine göre daha küçük kodlama satırlarından oluşur. Programlama dillerinde ise her fonksiyon için birçok kod satırına ihtiyaç duyarsınız. Kullanıcı arayüzü, veri türleri ve tasarım açısından baktığımızda betik dillerin sınırlı bir desteği vardır. C, C++, Java gibi programlama dilleri ana sunucu görevi gören bir ana bilgisayara ihtiyaç duymaz. Ancak JavaScript, Ruby, Perl gibi betik diller için bir ana bilgisayar (host) gerekir. Ek olarak bakım maliyetleri programlama dillerinin kullanımıyla artar.
Öneri içerik: Framework nedir?
Betik Dil Çeşitleri
Kodların işlendiği yere göre temel olarak betik diller istemci ve sunucu taraflı olarak ikiye ayrılır.
İstemci (Client) Taraflı Betik Diller
İstemci tarafında komut dosyası, web tarayıcılarında çalışır. Bu sayede sunucu tarafındaki talep azalır ve web siteleri daha hızlı açılır. İstemci taraflı betik dil odağı kullanıcı ara yüzü ve fonksiyonelliktir. Bu gruptaki diller genel olarak ön yüz dediğimiz web sitelerinin görünümünü oluşturan alanda kullanılır. Öte yandan ziyaretçilere açık olduğu için daha savunmasız bir yapısı vardır. HTML, CSS, JavaScript ve Lua istemci taraflı betik dil örnekleridir.
Sunucu (Server) Taraflı Betik Diller
Adından da anlaşılacağı gibi bu dil grubu bir web sunucusunda işlenerek istemci tarafına sonuç gönderilir. İstemcinin isteği üzerine http aracılığıyla sunucu tarafından yanıt gelir. Yani komut dosyası istemci tarafında bulunmadığı için gizlilik avantajı elde edersiniz. Sunucu taraflı betik (script) dillerde odak veriye ulaşmak, hızlı işlem yapmak ve hataları çözmektir. Eğer web siteleri, platformlar oluşturmak, veri elde etmek ve yapılan sorguları yönetmek istiyorsanız bu dilleri kullanmalısınız. Ruby, PHP, Python, Node.js, Perl, ASP.NET ve Java sunucu taraflı dillere örnek verilebilir.
İlginizi çekebilir: Hosting nedir? Nasıl alınır?
Betik Dillerinin Avantajları ve Dezavantajları
Bu dilleri kullanmanız durumunda size sağlayacağı avantajlara gelin beraber bakalım.
- Script diller yorumlandığı için derlemeye ve kaynak kodunu bağlamaya gerek duymazsınız.
- Geleneksel programlama dillerine göre öğrenmesi daha kolaydır. Dolayısıyla ağ yöneticilerinin çoğu betik dillere hâkimdir.
- Kullanıcı, tarayıcısından ek bir yazılım yüklemeden herhangi bir işletim sistemi altında çalışabilir.
- Kullandığınız alana göre fayda gücü yüksektir. Örneğin istemci taraflı dil kullanıyorsanız web sunucusundaki talep azalabilir.
- Betik dillerin tamamlayıcı bir özelliği olduğu için farklı dillerle de kullanabilirsiniz.
- Açık kaynağa sahip olan betik (scripting) diller herkese dünya çapında kendini geliştirme imkânı sunar.
- Betik dil derleyiciye ihtiyaç duymadığı için diğer programlama dillerine kıyasla daha az bellek kullanır.
- Web sitenizin görsel olarak zenginleşmesine yardımcı olur. Aynı zamanda test sürecindeki projelerinizde size zaman kazandırır.
İlginizi çekebilir: En iyi WordPress eklentileri
Tabi ki bu noktada bazı dezavantajlardan da söz etmemiz gerekir.
- Betik dil halka açık olduğu için ve istemci taraflı da kullanıldığı için herhangi biri koddan yararlanabilir, onu değiştirebilir.
- Ancak tarayıcı destekliyorsa farklı tarayıcılarda çalışabilir.
- Bu diller tam bir program oluşturmak için yetersizdir.
- Bazı yorumlayıcılar, derleyiciden daha yavaş çalışabilir.
- Düzenli olarak kontrol etmeniz gerekir. Özellikle de güncelleme veya değişiklik durumu söz konusuysa.
Öneri içerik: Javascript nasıl kullanılır?Kategoriler
En Yaygın Kullanılan Betik Dil Örnekleri
-
JavaScript
Genellikle istemci taraflı, kullanması kolay olan JavaScript yorumlanmış ve dinamik bir dildir. İlk olarak 1995’te Netscape tarafından oluşturuldu. Web geliştirme konusunda HTML ve CSS ile yapamadığınız dinamik özellikleri geliştirmenizi sağlar. Tıklayıp açtığınız menülerde, ek olarak yapılan içeriklerde, web sitesindeki renk değişimlerinde JavaScript etkisini görebilirsiniz. Kullanıcı tarafından yapılan etkileşimleri yönetmenizi de sağlar. Örneğin, kullanıcının doldurduğu formu JavaScript ile yürütürsünüz, tıklamaları ve bağlantı gezilerini kontrol edebilirsiniz. Bu dil, site ziyaretçilerinizi her hangi bir sayfada eksik bilgi olması durumunda da uyarır. Ek olarak, sürükle/bırak gibi özellikleri de ekleyebilirsiniz. Zengin bir kütüphaneye sahip olması ve çok yönlülüğü bu dilin tercih edilmesinde önemli etkenlerdir.
-
PHP
En çok tercih edilen sunucu taraflı ve dinamik bir betik dildir. Açılımı ise Hypertext Preprocessor olan PHP, Rasmus Lerdorf tarafından yaratılmış ve açık kaynaklı bir dildir. Nesne yönelimli özelliklere sahip ve ücretsiz olarak kullanabileceğiniz PHP, farklı HTTP sunucularında çalışabilir. İçerik yönetimi konusunda ise WordPress, Joomla ve Drupal gibi sistemlere entegre edilebilir. Aynı zamanda çeşitli veri tabanlarıyla çalışarak etkili bir performans elde etmenizi sağlar. Hatta Facebook, Wikipedia ve Youtube’da PHP kullanır.
-
Python
Son zamanlarda çok popüler olan betik dillerinden biridir Python. 1990 yılında Guido van Rossum tarafından tasarlanmıştır. Şahsen benim de kullanımını kolay bulduğum günlük görevlerde, raporlamalarda yararlanabileceğiniz bir dil. Daha az kod satırı kullanarak, veri analitiği, bilimsel hesaplama gibi alanlarda oldukça yararlıdır. Yine zengin bir kütüphanesi vardır ve nesne yönelimli programlamayı destekler. C, C++ dillere entegre edilebilir ve çeşitli platformlarda çalışabilir. Örnek olarak ağ uygulama sunucusu olan Zope, Youtube, Google ve NASA da Python kullanmaktadır.
-
Ruby
Nesnel yönelimli ve yine açık kaynağa sahip Ruby, daha çok back-end mantığında çalışır. Kullanımı kolay ve esnek bir betik dili olduğunu söyleyebiliriz. Bir web uygulama geliştirme yeri olan Ruby on Rails’ın, Fcebook’un kullandığı Chef’in ve Sas gibi yenilikçi yazılımların gelişmesine katkı sağlamıştır. Ruby kullanan diğer şirketler arasında Spotify, Airbnb ve Kickstarter yer alır.
-
Perl
Açılımı “Practical Extraction and Report Language” olan Perl’ü, 1987 yılında Larry Wall, Unix işletim sistemi için tasarlamıştır. Açık bir kaynak olması, esnekliği, toplu metin işleme özellikleri geliştiriciler için çekicidir. Temeli çok eskiye dayansa da Apache ve Nginx web sunucularında yürütebilirsiniz. Birçok iyi web site trafiğine sahip şirket Perl kullanmaktadır. Amazon, IMDB, Booking.com ve priceline.com bunlardan bazılarıdır.
-
Lua
Roberto Ierusalimschy 1993 yılında Lua’yı tasarlamıştır. Genellikle oyun yazılımında tercih edilen istemci taraflı bir script dildir. Portekizce’de ay anlamına gelen Lua, nesnel yönelimli ve fonksiyonel programlamaya yöneliktir. Manuel bir dermele yapmanıza gerek kalmadan, C tabanlı dillerde uygulayabilirsiniz. Bunun yanısıra, Angry Birds, Wow gibi video oyunları, otomobil göstergeleri ve IP kameralar Lua temelli örneklerdir.
-
Bash
GNU projesinin bir parçası olarak Brian Fox tarafından tasarlanan Bash, kabuk betik dilinde dosyaları çalıştırır. Birden fazla komut yürütmek, etkileşimli mod kullanmak ve görevleri özelleştirmek için tercih edebilirsiniz. Bir Linux kullanıcısı için ayrı bir kuruluma gerek duymaz. İnteraktif komutlar oluşturmak ve karışık komutları basite indirgemek için oldukça elverişlidir.
Script dillerin yanısıra daha pek çok konuda bilgi almak, web sitenizi geliştirmek veya yaratıcı fikirleri keşfetmek için diğer içerikleri de okumayı unutmayın!
Öneri İçerik: Saas Nedir?