Kodlardan İbaret Bir Dünya: Birler ve Sıfırlar


Bilgisayarlar artık her yerde. Onların nerede varlık gösterdiğini düşünmektense, nerede olmadıklarını düşünmek işimizi kolaylaştırır doğrusu. Çünkü artık hayatımızın her anında bir şekilde bilgisayarlara başvuruyor, onları kullanıyoruz. Bilgisayar deyince aklınıza kasa ve monitörden ibaret makineler gelmesin. Telefonlarımız dahi birer bilgisayardır aslında. Daha gündelik ve ilginç bir örnek vermek gerekirse, şunu söyleyebiliriz; para çektiğimiz bankamatikler de, tıpkı masaüstü bilgisayarımız gibi bir işletim sistemiyle çalışan cihazlardır.

İşte tüm bu bilgisayar teknolojilerinin temeli aslında iki şeye bağlı. 1’e ve 0’a. Bitlerin bir elektrik anahtarı görevi gördüğü bu aletlerde tüm detaylar, true veya false olmak üzere; olumlu veya olumsuz; aktif veya değil; açık veya kapalı anlamları yükleyebileceğimiz ikili sayı sistemine dayanıyor. Bu sisteme dayanarak yazılan programlar, yazılımlar ise bize tüm bu gördüğümüz sanal dünyayı sunuyor. Daha iyi anlaşılması açısından şunu söyleyelim, şu anda bu gördüğünüz yazı dahi bu sistem ile oluşturuldu. Ayrıca bu yazıyı bu şekilde görmenizi sağlayan, ekranın tam bu noktasında olmasını sağlayan, rengini ayarlayan, bu sayfaya tıkladığınızda veritabanından şu anda okuduğunuz bu cümleleri çeken bir yazılımlar birliği var. Bunların bir kısmı şekillendirme ile işaretleme dili iken, bir kısmı ise program olarak çalışan kodlardan ibaret. Birbirine bağımlı şekilde çalışan yüzlerce uygulama ile şu anda gördüğünüz sanal dünyaya erişebiliyoruz.

Eminim ki bilgisayar teknolojisi sizin de kafanıza bir dönem takılmıştır, hayret etmenize sebep olmuştur. İşte bu meraktan yola çıkan bu yazıda objektifi daha çok yazılım kısmına çevirmek istiyorum.

Programlar Yazılardan İbaret Metin Belgeleridir

Onları yazanlar da, yazarlardır. Sanırım ancak bu cümleyle anlatabilirdim. Evet, onlar aslında birer metin belgeleridir. Onların derleyicisi veya yorumlayıcısı ise size eğer sunulmuşsa görsel arayüz ile gelmelerini sağlar. Geliştiriciler, bir programlama diliyle belirli görevi yerine getirmesi için bir program yazarlar. Bu program, örneğin yorumlayıcısı tarafından sisteme anlatılır. Bu ise size yazılımın son halini gösterir. Eğer işleri bununla sınırlı sanıyorsanız, henüz bu düşünceniz için erken olduğunu söylemeliyim. Aslında çok daha karmaşık bir yapı var. Ancak bunun derinlerine inmek yerine farklı bir detay vermek gerekir; her alan için ayrı bir programlama veya betik dili bulunmaktadır. Birçoğu, birbirinin yerine kullanılabilse de aslında her birinin yöneldiği alan farklıdır.

Örneğin bir websitesi oluşturmak için HTML ve CSS işaretleme dillerine ihtiyaç duyarsınız. HTML ile elementleri oluştururken, CSS ile onları şekillendirir ve özelleştirirsiniz. Örnek vermek gerekirse, bu sayfadaki resimler, editör üzerinde basit birkaç butonla eklenmiş olsalar da o önceden programlanmış editörler olmasa idi HTML dili ile gerekli kodu yazacak, CSS ile nerede ve hangi boyutta görüneceğini belirleyecektik. Bunun için pikseller üzerinden bir yönerge bildirecektik. Tüm bunlar yalnızca ekranda gördüğünüz nesneleri meydana getirmek için kullanılır. İşin bir de program tarafı var. Yani, bir yer ile etkileşime geçtiğinizde size düşünen bir cihaz gibi sonuç getirmesi kısmı. İşte bunu da programlama dilleriyle yaparız. Asıl karmaşık olan kısım ise budur. Belirli görevi yapmak üzere yaratılmış insan yaratmak gibi düşünebilirsiniz programlamayı.

Bir internet sitesini aslında basit bir araç olarak görmek konusunda başarılıyız. Ancak arkasında çok ciddi emekler bulunmaktadır. Öyle ki aylarca süren, yüzlerce sayfa koddan oluşan internet siteleri her ne kadar basit görünseler de aslında işin arkaplanı böyle değildir.

Milyonlarca mobil uygulama, katrilyonlarca satır sorgu

Genel olarak ihtiyaç duyduğumuz uygulamayı söz konusu sistemin uygulama mağazasından tek bir dokunuşla indirebiliyor, beğendiğimiz oyunları anında telefonumuza yükleyebiliyoruz. İlk hatasında 1 yıldızlara boğulan uygulamalar ve oyunlar acıklı kaderleriyle bir kenara dursunlar, aslında burada da işler sandığımız kadar basit değildir.

Bir mobil uygulama yapmanın temel bazı aşamaları bulunmakta. İlk olarak algoritmanızı oluşturursunuz. Ardından üzerine giydirdiğiniz sistem, sorununuza çözüm bulmak veya hedefinizi ortaya koymak zorundadır. Basitçe anlatmak gerekirse, çok kısıtlı bir üyelik formu yaptığınızı varsayalım küçük bir uygulama içinde. Bu uygulama, sizin veritabanınıza bağlanıp yeni kullanıcıyı kaydedecektir. Bunun için izlemeniz gereken bir takım yollar var. Öncelikle kullanıcıya görsel bir arayüz oluşturmalısınız. Bununla birlikte kullanıcıdan belirli tiplerde veri alacaksınız. Bu yazıların uzunluğunu ve değerini kontrol edeceksiniz. Mesela doğum tarihi alanına bir yazı girilmesine karşın hazırlıklı sistem inşa etmelisiniz. İlk adımı başarıyla geçip doğru verilerin girildiğini teyit eden uygulamanız veritabanı ile belirli protokoller üzerinden bağlantı kurmalıdır. Bu bağlantı ile daha önceden oluşturduğunuz tablolardaki değerleri kontrol edecek, daha önce böyle bir isimde üye var ise söz konusu ismin önceden başka üye tarafından kullanıldığına dair uyarı göstereceksinizdir. Eğer bu gerçekleşmiyor ise, kullanıcıyı veritabanına kaydedip yeni verileri çekerek oturum tanımlayacak ve giriş yapmış sayacaksınızdır. İşte bu basit eylemde bile, büyük ihtimalle bir veya iki sayfa kod yazmak zorunda kalacaksınız. Üstelik, yapacağınız kontrolde, veri türlerinden tutun veri değerlerine kadar her detayı düşünmek ve kontrole tabi tutmak zorundasınız.

Bir buton, üç satır kod

Yazıyı bitirmek için güzel bir nokta sanırım bu. Ne demiştik? Gördüğümüz her şey aslında kodlardan ibaret. Sisteminize şu anda yeni bir güncelleme veya bildirim gelip gelmediğini denetlemek için aralıksız olarak belirli alanları kontrol eden uygulamacıklardan tutun bu sayfayı karşınıza getiren tarayıcınıza, bu sitenin sunucu tarafında üç ayrı koldan dönen sistemden tutun birazdan başka sayfaya gitmek için dokunacağınız butona kadar, her şey sıfırdan, tamamen bir yokluktan meydana getirildi. “Şurada şöyle bir buton olsun, tıklayınca şu olsun” dediğiniz her şey için bunu bilgisayara anlatacak tutarlı bir kod bloğu girmelisiniz. Bu yazıda da güzel sanal dünyamızın aslında nasıl meydana getirildiğini sanırım az çok incelemiş olduk! 🙂

BU İÇERİĞE EMOJİ İLE TEPKİ VER!

Kızdım Kızdım
0
Kızdım
Üzüldüm Üzüldüm
0
Üzüldüm
Yok artık Yok artık
1
Yok artık
Sesli Güldüm Sesli Güldüm
0
Sesli Güldüm
Helal olsun Helal olsun
0
Helal olsun
Beğenmedim Beğenmedim
0
Beğenmedim
Bayıldım Bayıldım
0
Bayıldım
Beğendim Beğendim
1
Beğendim
Eyüp C.
Uzay ve gök bilimi sevdalısı, bilime aşık, programlamada ve gelişen teknolojiyi takip etmekte hâyli istekli, yazmayı ve okumayı çok seven bir insan.

Yorumlar 0

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Giriş Yap

Kargamel.com'a Hoşgeldiniz.

Hesabınız yok mu? Şimdi kayıt olun.
Kayıt Ol

Şifre sıfırla

Şifrenizi buradan sıfırlayabilirsiniz.

Geri Dön
Giriş Yap

Kayıt Ol

Kargamel'e Katılın!

Geri Dön
Giriş Yap
Gönder Gelsin
Kişilik Testi
Kişilik ortaya çıkaran sorular dizisi
Bilgi Testi
Bilgi veya kültür ölçen sorular
Düz Yazı
Görseller ile süslenmiş makaleler
Liste
Klasik Düz Listeler
Oylanabilir Liste
Oylanabilir Liste
Caps
Caps yarat