Programlama Dili Nedir?
Yayınlanan: 2022-10-20Bilgisayarların ve programlarının temelinde programlama dilleri, sadece onlara bakarak başınızı ağrıtabilecek garip görünen kod satırları vardır. Fakat programlama dilleri nelerdir ve nasıl çalışırlar?
Programlama Dilleri Nelerdir?
Kısacası, bir programlama dili, bir bilgisayar programcısının bir cihazla "konuşma" yoludur. Bu dillerden birini nasıl "konuşacağınızı" biliyorsanız - ve yüzlerce var - görevleri yerine getirebilecek bir program oluşturabilirsiniz. Bunlar, bir dosyayı bir yerden diğerine taşıyan bir komut dosyası gibi çok basitten, bir video oyununda 3B bir dünya oluşturmak gibi çok karmaşık olana kadar değişebilir.
Programlama dilleri, bilgisayarlarla karmaşık şeyler yapabilmemizin nedenidir. Özünde, bilgisayarlar hala, sıfırların ve birlerin bilgisayarın ne yapacağını ve nasıl yapacağını belirlediği bir sistem olan makine dili olarak da adlandırılan ikili sistemde çalışıyor. Programlama dillerini bu çekirdeğin üzerinde bir katman olarak düşünebilirsiniz, böylece insanların sıfırları birler haline getirip tekrar geri almasına gerek kalmaz.
Bu çok iyi bir şey: eğer programlamak için hala ikili kullanmak zorunda olsaydık, basit bir komut dosyası oluşturmak bile uzun zaman alırdı. Tüm birleri ve sıfırları doğru sarayda almak bir ordu insanını alacağından, gelişmiş programlar muhtemelen asla yapılmayacaktır. Programlama dilleri, öğrenmesi ve kullanması zor olsa da özünde emek tasarrufu sağlayan cihazlardır.
Dil Düzeyleri
Kabaca söylemek gerekirse, programlama dilleri iki kategoriye ayrılır: düşük seviyeli ve yüksek seviyeli diller. Düşük seviyeli dillere, makineye "yakın" oldukları için doğrudan konuşabildikleri için denir. Buna, ikili dosyadan yalnızca biraz kaldırılmış programlama dilleri olan makine dili ve montaj dilleri dahildir.
Yüksek seviyeli diller, düşük seviyeli dillerin bir adım üstündedir. Makineden daha uzaktalar ama insanlar tarafından okunabiliyorlar. Bu durumda “okunabilir” demek, söz konusu dili biliyorsanız birkaç satır koda bakıp neler olduğunu anlayabileceğiniz anlamına gelir. Bu aynı zamanda tersi şekilde de çalışır: daha sonra makine tarafından yürütülecek komutları yazabilirsiniz.
yorumlanan konuşma
Bununla birlikte, programlamanın bu kadar doğrudan olmadığı belirtilmelidir. Komutları üst düzey bir dilde yazarken, bir cihaza ne yapması gerektiğini söylemezsiniz. Bunun yerine, bir komutu ikili dosyaya dönüştüren dilin bir parçası olan bir program olan sözde tercümanla konuşuyorsunuz. Tercümana ne istediğinizi söylersiniz ve o da bilgisayara ne söylediğinizi söyler, ancak makine dilinde.
Tercüman, sizinle makine arasındaki boşluğu doldurur ve her dilin farklı bir tercümanı vardır. Montaj dilleri, komutlarının da yorumlanması gerektiğinden biraz gariptir, ancak komutları “saf” makine diline daha yakın olduğundan ve bu nedenle tam çeviriye ihtiyaç duymadığından yorumlayıcı yerine birleştirici denilen şeyi kullanırlar.
Tercüman biraz titiz bir teknolojidir: bilgisayara sıfırları ve birleri nasıl hareket ettireceğini söyleme işini yapması için belirli bir şekilde konuşulması gerekir. “Mavi kutuyu sağ üst köşeye götür” demek yerine, yorumlayıcının anlayacağı, programlama diline göre değişen bir kod satırı girmeliyiz. Tercüman daha sonra bu girişi alır ve bilgisayara ne yapması gerektiğini söyler.
Bilgisayarlar ve tercümanlar için doğal dilin anlaşılması çok zor olduğu için (kodsuz devrimle değişebilecek bir şey), hem tercümanlar hem de insanlar tarafından anlaşılabilen programlama dilleri kullanıyoruz. Tercüman daha sonra bunu makine diline iletir ve küçük bir papatya zinciri oluşturur.
Programlama Dilleri Nasıl Çalışır?
“Dil” kelimesinin seçimi de tesadüfen yapılmadı: tıpkı insan dillerinde olduğu gibi, programlama dillerinin de her şeyin raydan çıkmasını engelleyen dahili kuralları var.
Bir programlama dili, tıpkı bir insan dilinde olduğu gibi, bir sözdizimine, kelime sırası ve kelime kullanımına ilişkin bir dizi kurala sahip olacaktır. Örneğin, İngilizce'de "Gary, Fred'e bir kitap verdi" diyebilirsiniz. Bu cümlede kimin neyi, kime verdiğini tam olarak biliyorsunuz; kelimeleri değiştirin ve farklı bir cümle elde edin: “Fred Gary'ye bir kitap verdi.” Bu yine de mantıklı, ancak “Gary Fred'e bir kitap verdi” diyorsanız, elimizde bir sorun var.
Programlama dilleri de farklı değildir: Bir cümlenin -genellikle "çizgi" olarak adlandırılan- anlamlı olması için doğru bitlerin doğru yerlere gitmesi gerekir. Sadece programlama dilleri kendilerini ifade etmek için farklı yollar kullanır.
Yapmak
Bazı şeyler aynıdır: örneğin birçok programlama dili fiilleri kullanır. Genellikle öğrenmesi en kolay dillerden biri olarak kabul edilen Python'da, ona bir satır metin print
söyleyebilirsiniz.
print("Merhaba dünya")
Bu durumda ekranda “Merhaba dünya” yazısı çıkacaktır. Doğal olarak, komutlar bundan çok daha karmaşık hale gelebilir; çoğu dilde, her türlü eylemi gerçekleştirmek için kullanılabilecek çok sayıda fiil vardır.
Tabii ki, her şey bir bakışta bu kadar mantıklı gelmiyor: Karşılaşacağınız kodun çoğunda günlük konuşmada kullanmayacağınız çılgınca miktarda sembol ve noktalama işareti var. Ancak, kafanızı onların etrafından dolaştırdığınızda, düşündüğünüzden daha az tuhaflar.
İnsan dilinde, farklı şeyleri belirtmek için farklı kelimeler kullanabiliriz. Örneğin İngilizce'de nesneleri “o” ile ve insanları “she” veya “he” ile ifade ederiz. Bunları değiştirirseniz, bir cümle dağılır. Programlama dilleri çok farklı değildir: parantezler ve parantezler sadece farklı eylem sınıflarını belirtir. Onları değiştirin ve cümle dağılır.
Doğal olarak, bu şeyler diller arasında da değişebilir: Python'da bir parantez, Lisp'te yaptıklarından tamamen farklı bir şey yapar, bu da yine C'den farklıdır. Tıpkı insan dillerinde olduğu gibi, kullanım ve anlam değişerek bazı dilleri belirli şeylerde daha iyi hale getirebilir. diğerlerinden daha.
Hangi Programlama Dilini Öğrenmelisiniz?
Peki öğrenmeye başlamak için en iyi dil hangisi? Farklı dillerin hayranları arasında, her bir dilin neyi yapıp neyi yapamayacağı ve hangisinin en iyi olduğu konusunda pek çok – ve biz çok ciddiyiz – tartışma var. Ancak sonuçta, hangi dilin en iyi olduğu, söz konusu programcıya gerçekten bağlıdır. Tıpkı insan dillerinde olduğu gibi, fikriniz de düşünce kalıplarınızdan ve doğal olarak size mantıklı gelen şeylerden etkilenir.
Makinelerle "konuşabilen" ve onlara istediğinizi yaptırabilen birkaç kişiden biri olmak istiyorsanız, öğrenmesi kolay bir üne sahip olan Python'a göz atabilirsiniz. Daha fazla zorluk istiyorsanız, çoğu işletim sisteminin temeli olan C'ye göz atabilirsiniz. Hangisini seçerseniz seçin, bir programcı gibi düşünmeye başlamak çok eğlenceli.
İLGİLİ: Bu Harika Uygulamalar ve Web Siteleriyle Kod Yazmayı Öğrenin