Yazılım & No-Code Terimleri – Sayfa 3
362 terim
Terimler
gRPCgRPC, Google tarafından geliştirilen ve servislerin birbirindeki fonksiyonları ağ üzerinden yerelmiş gibi çağırmasını sağlayan açık kaynaklı bir uzak prosedür çağrısı (RPC) çatısıdır. HTTP/2 ve Protocol Buffers kullanır.HackathonHackathon, yazılımcı, tasarımcı ve farklı alanlardan katılımcıların genellikle 24 ila 48 saat gibi kısa bir sürede ekipler hâlinde belirli bir problemi çözen ürün ya da prototip geliştirdiği etkinlik ve yarışmadır.Hash Tablosu(Hash Table)Hash tablosu, verileri anahtar-değer çiftleri olarak saklayan ve bir hash fonksiyonu yardımıyla aranan değere ortalamada sabit sürede ulaşmayı sağlayan veri yapısıdır. Python'daki dict ve JavaScript'teki Map bu mantıkla çalışır.Hata Ayıklama(Debugging)Hata ayıklama (debugging), bir yazılımdaki hatanın nedenini bulma, anlama ve düzeltme sürecidir. Hatayı yeniden üretmek, kaynağını daraltmak ve düzeltmeyi test etmek bu sürecin temel adımlarıdır.Hata Yönetimi(Error Handling)Hata yönetimi (error handling), bir programın çalışırken karşılaştığı beklenmedik durumları yakalayıp çökmeden, kontrollü biçimde ele almasını sağlayan yöntemlerin bütünüdür. Try-catch blokları, hata kodları ve loglama bu yöntemlerin parçasıdır.HeapHeap, yazılımda iki anlamda kullanılır: programın çalışırken dinamik olarak bellek ayırdığı geniş bellek bölgesi ve en büyük ya da en küçük elemanı her zaman en üstte tutan ağaç biçimli veri yapısı.Hızlı Sıralama(Quick Sort)Hızlı sıralama (quick sort), listeden bir pivot eleman seçip diğer elemanları pivottan küçükler ve büyükler olarak ikiye ayıran, sonra her parçayı aynı yöntemle sıralayan böl ve yönet algoritmasıdır.Hosting(Web Hosting)Hosting (web barındırma), bir web sitesinin dosyalarının ve veritabanının internete sürekli açık bir sunucuda tutulmasını sağlayan hizmettir. Siteniz ziyaretçilere bu sunucudan sunulur.HotfixHotfix, canlı ortamda kullanıcıları etkileyen kritik bir hatayı düzenli sürüm takvimini beklemeden acilen düzelten küçük yazılım değişikliğidir. Türkçede sıcak düzeltme ya da acil yama olarak da anılır.HTMLHTML (HyperText Markup Language), web sayfalarının başlık, paragraf, bağlantı, görsel ve form gibi içerik yapısını etiketlerle tanımlayan ve tarayıcıların sayfayı nasıl göstereceğini belirleyen standart işaretleme dilidir.HTML Etiketi(HTML Tag)HTML etiketi, bir web sayfasındaki içeriğin ne olduğunu tarayıcıya bildiren, köşeli parantez içinde yazılan işaretlerdir. Başlık, paragraf, bağlantı ve görsel gibi her öğe bir etiketle tanımlanır.HTTPHTTP (Hypertext Transfer Protocol), tarayıcı gibi istemciler ile web sunucuları arasında web sayfası, görsel ve veri alışverişini düzenleyen iletişim protokolüdür. İstek ve yanıt mantığıyla çalışır.HTTPSHTTPS (Hypertext Transfer Protocol Secure), HTTP iletişiminin TLS protokolüyle şifrelenmiş hâlidir. Tarayıcı ile web sitesi arasındaki verilerin üçüncü kişilerce okunmasını ve değiştirilmesini önler.HTTP Durum Kodları(HTTP Status Codes)HTTP durum kodları, web sunucusunun tarayıcıdan gelen her isteğe verdiği yanıtın sonucunu bildiren üç haneli sayılardır. İsteğin başarılı olup olmadığını, yönlendirildiğini ya da hangi tarafta hata çıktığını gösterir.HTTP İsteği(HTTP Request)HTTP isteği (HTTP request), bir istemcinin web sunucusundan sayfa, dosya veya veri almak ya da ona veri göndermek için HTTP protokolüne uygun biçimde gönderdiği mesajdır. Metot, adres, başlıklar ve isteğe bağlı gövdeden oluşur.IDEIDE (Integrated Development Environment), kod yazma, çalıştırma, test etme ve hata ayıklama araçlarını tek bir uygulamada birleştiren tümleşik geliştirme ortamıdır. IntelliJ IDEA, Visual Studio ve Android Studio bilinen örneklerdir.IntegerInteger (int), programlamada ondalık kısmı olmayan pozitif ya da negatif tam sayıları tutan veri tipidir. Adet, yaş, sıra numarası gibi küsuratsız değerler için kullanılır; örneğin 42, 0 ve -7 birer integer'dır.IPv4IPv4 (Internet Protocol version 4), 32 bitlik adresler kullanan ve 192.168.1.1 gibi noktalarla ayrılmış dört sayıyla yazılan IP sürümüdür. İnternetin bugün hâlâ en yaygın adresleme biçimidir.IPv6IPv6 (Internet Protocol version 6), 128 bitlik adresler kullanan yeni nesil IP sürümüdür. IPv4 adreslerinin tükenmesine çözüm olarak geliştirildi ve 2001:db8::1 gibi onaltılık sayılarla yazılır.IP Adresi(IP Address)IP adresi (Internet Protocol adresi), bir ağa bağlı her cihaza verilen ve verinin doğru yere ulaşmasını sağlayan sayısal adrestir. 192.168.1.10 ya da 2001:db8::1 gibi biçimlerde yazılır.İçerik Yönetim Sistemi(Content Management System)İçerik yönetim sistemi (CMS), kod yazmadan web sitesine yazı, sayfa, görsel ve ürün eklemeyi, düzenlemeyi ve yayınlamayı sağlayan yazılımdır. WordPress en bilinen örneğidir.İkili Arama(Binary Search)İkili arama (binary search), sıralı bir listede aranan değeri her adımda listenin ortasındaki elemanla karşılaştırıp arama alanını yarıya indiren arama algoritmasıdır. Bir milyon elemanlı listede bile yaklaşık 20 adımda sonuca ulaşır.İkili Arama Ağacı(Binary Search Tree)İkili arama ağacı (binary search tree, BST), her düğümün solundaki değerlerin kendisinden küçük, sağındakilerin büyük olduğu ikili ağaçtır. Bu düzen sayesinde arama, ekleme ve silme işlemleri dengeli ağaçta çok hızlı yapılır.İlişkisel Veritabanı(Relational Database)İlişkisel veritabanı, verileri satır ve sütunlardan oluşan tablolarda saklayan ve tabloları ortak anahtarlarla birbirine bağlayan veritabanı türüdür. Veriler SQL diliyle sorgulanır ve güncellenir.İstemci(Client)İstemci (client), bir ağ üzerinden sunucuya istek gönderip ondan veri veya hizmet alan cihaz ya da yazılımdır. Web tarayıcısı, mobil uygulama ve e-posta programı yaygın istemci örnekleridir.İstisna(Exception)İstisna (exception), program çalışırken normal akışı bozan beklenmedik bir durumun programlama dilindeki temsilidir. Sıfıra bölme, olmayan bir dosyayı açma ya da geçersiz veri dönüşümü istisna fırlatır.JAMstackJAMstack, web sitelerini önceden üretilmiş statik sayfalar, tarayıcıda çalışan JavaScript ve harici API'ler üzerine kuran bir web mimarisi yaklaşımıdır. Hız, güvenlik ve düşük barındırma maliyeti hedefler.JavaJava, Sun Microsystems tarafından 1995'te yayımlanan, bugün Oracle tarafından geliştirilen, nesne yönelimli ve platformdan bağımsız bir programlama dilidir; kod Java Sanal Makinesi (JVM) üzerinde çalışır.JavaScriptJavaScript, web sayfalarına buton tıklaması, form doğrulama ve anlık güncelleme gibi etkileşimler kazandıran, tarayıcıların yanı sıra Node.js ile sunucuda da çalışabilen yaygın bir programlama dilidir.JSONJSON (JavaScript Object Notation), verileri anahtar-değer çiftleri ve listeler hâlinde, hem insanların hem makinelerin kolayca okuyabileceği metin biçiminde saklayan ve taşıyan veri formatıdır.Junior DeveloperJunior developer, yazılım geliştirme kariyerinin başında olan, temel programlama bilgisi olan, işleri genellikle daha deneyimli geliştiricilerin rehberliğinde ve kod incelemesiyle yapan geliştiricidir.Kabarcık Sıralaması(Bubble Sort)Kabarcık sıralaması (bubble sort), listedeki komşu elemanları ikişer ikişer karşılaştırıp yanlış sıradaysa yer değiştiren basit bir sıralama algoritmasıdır. Öğrenmesi kolaydır ama büyük listelerde çok yavaştır.Kabul Testi(Acceptance Testing)Kabul testi (acceptance testing), bir yazılımın teslimden önce iş gereksinimlerini ve kullanıcı beklentilerini karşılayıp karşılamadığını doğrulamak için yapılan son test aşamasıdır. Kullanıcı kabul testi (UAT) en bilinen türüdür.Kalıtım(Inheritance)Kalıtım (inheritance), nesne yönelimli programlamada bir sınıfın başka bir sınıfın özelliklerini ve metotlarını devralmasıdır. Devralan sınıfa alt sınıf, devredilen sınıfa üst sınıf denir.KanbanKanban, işleri kartlar hâlinde sütunlu bir pano üzerinde görselleştiren, aynı anda yürütülen iş sayısını sınırlayan ve işin akışını sürekli iyileştirmeyi amaçlayan bir iş yönetimi yöntemidir.Kapalı Kaynak(Proprietary Software)Kapalı kaynak (tescilli yazılım), kaynak kodu yalnız geliştiren şirkette kalan, kullanıcıların kodu göremediği ve değiştiremediği yazılımdır. Kullanım hakkı bir lisans sözleşmesiyle verilir. Windows ve Microsoft Office bilinen örneklerdir.Kapsülleme(Encapsulation)Kapsülleme (encapsulation), nesne yönelimli programlamada bir nesnenin verilerini ve bu verilerle çalışan metotları bir arada tutup veriye dışarıdan doğrudan erişimi sınırlayan ilkedir. Veri yalnız kontrollü metotlarla okunur ve değiştirilir.Kara Kutu Testi(Black Box Testing)Kara kutu testi (black box testing), yazılımın iç yapısı ve kodu bilinmeden, yalnız verilen girdilere karşı beklenen çıktıların üretilip üretilmediğine bakılarak yapılan test yöntemidir. Kullanıcının bakış açısını taklit eder.Karşılaştırma Operatörü(Comparison Operator)Karşılaştırma operatörü, iki değeri eşitlik ya da büyüklük açısından kıyaslayıp sonucu doğru veya yanlış olarak döndüren operatördür. Eşit mi (==), büyük mü (>), küçük ya da eşit mi (<=) gibi soruları yanıtlar.Katmanlı Mimari(Layered Architecture)Katmanlı mimari, uygulama kodunu sunum, iş mantığı ve veri erişimi gibi yatay katmanlara ayıran ve her katmanın yalnızca bir altındaki katmanla konuştuğu, en yaygın kullanılan yazılım mimarisi yaklaşımlarından biridir.Kaynak Kod(Source Code)Kaynak kod, bir programın programcılar tarafından okunabilir bir programlama diliyle yazılmış asıl metnidir. Bu metin derleyici ya da yorumlayıcıyla bilgisayarın çalıştırabileceği biçime dönüştürülür.KISS Prensibi(KISS Principle)KISS prensibi (Keep It Simple, Stupid), sistemlerin gereksiz karmaşıklıktan arındırılıp olabildiğince basit tasarlandığında en iyi çalıştığını söyleyen ilkedir. Yazılımda sade çözümleri, karmaşık ve gösterişli çözümlere tercih etmeyi önerir.Kodlama(Coding)Kodlama, bir işin nasıl yapılacağını programlama dilinin kurallarına uygun komutlarla yazma işidir. Yazılan metne kod denir ve bilgisayar bu kodu çalıştırarak istenen işlemi yapar.Kod Editörü(Code Editor)Kod editörü, programlama dillerinde kod yazmak için tasarlanmış, sözdizimi renklendirme, otomatik tamamlama ve eklenti desteği gibi özellikler sunan metin düzenleme programıdır. VS Code, Sublime Text ve Vim yaygın örneklerdir.Komut Satırı(Command Line)Komut satırı, bilgisayara yazılı komutlar girerek işlem yapılan metin tabanlı çalışma biçimidir. Kullanıcı bir komut yazar, Enter'a basar ve sonuç yine metin olarak ekrana gelir. Windows'ta Komut İstemi ve PowerShell, macOS ve Linux'ta Terminal ile kullanılır.Konfigürasyon Dosyası(Configuration File)Konfigürasyon dosyası, bir programın nasıl çalışacağını belirleyen ayarların kodun dışında tutulduğu dosyadır. Bağlantı adresleri, port numaraları ve özellik açma kapama seçenekleri gibi bilgiler JSON, YAML, INI ya da .env biçiminde saklanır.Koşullu İfade(Conditional Statement)Koşullu ifade, programlamada bir koşulun doğru ya da yanlış olmasına göre farklı kodların çalışmasını sağlayan yapıdır. En yaygın biçimi if-else'tir: koşul doğruysa bir blok, yanlışsa başka bir blok çalışır.KotlinKotlin, JetBrains'in geliştirdiği, Java sanal makinesinde çalışan, Java ile tam uyumlu ve daha kısa kod yazmayı sağlayan modern bir programlama dilidir. Google, Android geliştirmede Kotlin'i öncelikli dil olarak önerir.Kullanılabilirlik(Usability)Kullanılabilirlik (usability), bir ürünün belirli kullanıcılar tarafından belirli bir amaca ulaşmak için ne kadar etkili, verimli ve memnuniyet verici biçimde kullanılabildiğini anlatan kalite ölçütüdür.Kuyruk(Queue)Kuyruk (queue), ilk eklenen elemanın ilk çıkarıldığı (FIFO) bir veri yapısıdır. Elemanlar arkadan eklenir, önden alınır; tıpkı bir banka gişesindeki müşteri sırası gibi çalışır.Küme(Set)Küme (set), programlamada her değeri yalnızca bir kez tutan, sırasız bir veri yapısıdır. Tekrar eden kayıtları ayıklamak ve birleşim, kesişim gibi matematiksel küme işlemleri yapmak için kullanılır.Kütüphane(Library)Yazılımda kütüphane (library), belirli işleri yapmak için önceden yazılmış ve tekrar kullanılabilir kod koleksiyonudur. Geliştirici, aynı işi sıfırdan yazmak yerine kütüphanenin fonksiyonlarını çağırarak zaman kazanır.Lambda Fonksiyonu(Lambda Function)Lambda fonksiyonu, adı olmayan ve genellikle tek satırda tanımlanan kısa fonksiyondur. Çoğunlukla sıralama, filtreleme ya da başka bir fonksiyona parametre olarak verilecek küçük işlemler için kullanılır.LaravelLaravel, PHP ile web uygulamaları geliştirmek için kullanılan, MVC mimarisine dayanan, okunaklı sözdizimi ve hazır araçlarıyla bilinen açık kaynaklı bir web çatısıdır.Lazy LoadingLazy loading (tembel yükleme), bir sayfadaki görsel, video gibi içeriklerin hepsini baştan yüklemek yerine yalnızca kullanıcı onlara yaklaştığında yükleyen performans tekniğidir.Legacy Kod(Legacy Code)Legacy kod (miras kod), hâlâ kullanılan ama eski teknolojilerle yazılmış, çoğu zaman belgesi ve testi eksik, yazanların artık ekipte olmadığı koddur. Şirketin işi için önemlidir ama değiştirmesi risklidir.LinuxLinux, Linus Torvalds'ın 1991'de geliştirmeye başladığı açık kaynaklı bir işletim sistemi çekirdeğidir. Gündelik dilde bu çekirdek üzerine kurulu Ubuntu, Debian gibi işletim sistemlerinin tamamı için kullanılır.Liste(List)Liste (list), programlamada birden fazla değeri sıralı tutan, eleman eklenip çıkarılabilen ve değiştirilebilen veri yapısıdır. Python'da köşeli parantezle yazılır: `meyveler = ["elma", "armut"]`.LocalhostLocalhost, bir bilgisayarın kendisini ifade eden özel ağ adıdır. Tarayıcıya localhost yazdığınızda istek internete çıkmaz, kendi makinenizde çalışan bir sunucuya gider. Genelde 127.0.0.1 IP adresine karşılık gelir.Local StorageLocal Storage, web sitelerinin tarayıcıda anahtar-değer biçiminde, tarayıcı kapansa bile silinmeyen küçük veriler saklamasını sağlayan bir web depolama özelliğidir. Tema tercihi veya taslak metin gibi bilgiler için kullanılır.