Tüm alanlarda aramak için en az 2 karakter yazın.
Yazılım İngilizcesi: 1.143 Temel Terim ve Anlamları
Yazılım İngilizcesi sözlüğündeki 1.000 terim; programlamadan veritabanlarına, web ve mobil geliştirmeden bulut, güvenlik ve veri işlemeye uzanır. Her terimin Türkçe karşılığını, anlamını, işte nerelerde kullanıldığını ve çevirili örnek cümlelerini inceleyerek teknik belgeleri ve ekip konuşmalarını daha rahat takip edebilirsiniz.
- 1.143 terim
- 13 konu
- 430 temel terim
- 2.298 örnek cümle
Veritabanları ve Kalıcı Saklama
Bir tablonun adı ve veri tipi olan dikey bölümü; her satır için aynı türden bir bilgiyi, örneğin e-posta ya da oluşturulma tarihini tutar.
Veri okumak ya da değiştirmek için veritabanına gönderilen, çoğunlukla SQL ile yazılmış istek. Fiil olarak 'query' veritabanından veri istemek, sorgulamak anlamına gelir.
Veriyi satır ve sütunlardan oluşan tablolarda tutan, tabloları anahtarlar aracılığıyla birbirine bağlayan veritabanı türü. Veri genellikle SQL ile yönetilir.
Database management system, yani veritabanı yönetim sistemi: veriyi saklayan, sorguları çalıştıran, erişimi denetleyen ve verinin güvenliğini sağlayan yazılım; PostgreSQL ya da Oracle gibi.
Bir tablodaki her satırı benzersiz biçimde tanımlayan sütun ya da sütun grubu. Boş bırakılamaz ve iki satır aynı değere sahip olamaz.
Bir tablodaki, başka bir tablonun birincil anahtarına işaret eden sütun. İki tabloyu birbirine bağlar ve var olmayan satırlara referans kaydedilmesini engeller.
Bir ya da daha fazla tablodan veri okuyup koşula uyan satırları döndüren, veritabanında hiçbir şeyi değiştirmeyen SQL komutu.
Bir SQL komutunda koşul belirleyen bölüm; yalnızca bu koşulu sağlayan satırlar okunur, güncellenir ya da silinir.
İki ya da daha fazla tablodaki satırları, müşteri ID'si gibi ortak bir sütun üzerinden bir araya getiren SQL işlemi. Fiil olarak tabloları bu şekilde birleştirmek anlamına gelir.
Bir veritabanının yapısı: tabloları, sütunları, veri tipleri, anahtarları ve ilişkileri. Bazı ürünlerde veritabanı içindeki tabloları gruplayan adlandırılmış bir alan anlamına da gelir.
Tek bir bütün olarak ele alınan veritabanı işlemleri grubu: ya hepsi birlikte başarılı olur ya da hiçbiri uygulanmaz.
Bir sütunun tutabileceği değerin türü; tam sayı, metin, tarih ya da doğru/yanlış değeri gibi. Neyin saklanabileceğini ve ne kadar yer kaplayacağını belirler.
Bir değerin eksik ya da bilinmediğini gösteren özel işaret. Sıfırla ya da boş metinle aynı şey değildir.
Bir tabloya bir ya da daha fazla yeni satır ekleyen SQL komutu; INSERT INTO ifadesinden sonra sütun adları ve değerleri yazılır.
Var olan satırlardaki değerleri değiştiren SQL komutu; yalnızca doğru satırların değişmesi için genellikle bir WHERE koşuluyla sınırlandırılır.
Bir tablodan satır silen SQL komutu. WHERE koşuluyla yalnızca koşula uyan satırları siler; koşul yoksa bütün satırları siler.
Bir arıza, hata ya da saldırıdan sonra veriyi geri getirebilmek için veritabanının belirli bir andaki kopyası.
Klasik tablo ve SQL modelini kullanmayan, veriyi bunun yerine doküman, anahtar-değer çifti, geniş sütun ya da graf olarak saklayan geniş veritabanı ailesi.
Bir tablo ya da sütun üzerinde tanımlanan, veritabanının otomatik olarak uyguladığı ve kuralı bozacak her veriyi reddettiği kural.
Her bilginin yalnızca tek bir yerde saklanması için tabloları düzenleme süreci; tekrar eden veriyi azaltır ve güncelleme hatalarını önler.
Sorgu sonucundaki satırları bir ya da daha fazla sütuna göre artan (ASC) ya da azalan (DESC) sırada dizen SQL ifadesi.
Aynı değerlere sahip satırları gruplara ayıran ve her grup için toplam, sayı ya da ortalama hesaplanmasını sağlayan SQL ifadesi.
Birçok satırı alıp bunlardan tek bir değer üreten SQL fonksiyonu; COUNT, SUM, AVG, MIN ya da MAX gibi.
Yalnızca iki tabloda da eşleşmesi olan satırları döndüren join; diğer tarafta karşılığı olmayan satırlar sonuca girmez.
Birinci (sol) tablodaki bütün satırları ve ikinci tablodaki eşleşen satırları döndüren join; eşleşme yoksa ikinci tablonun sütunları NULL gelir.
Yeni bir tablo oluşturan SQL komutu; tablonun adını, sütunlarını ve veri tiplerini, birincil anahtar gibi kısıtlarını tanımlar.
Var olan bir tablonun yapısını değiştiren SQL komutu; örneğin sütun eklemek, yeniden adlandırmak ya da silmek veya kısıt eklemek için kullanılır.
Tablo gibi kullanılabilen, kaydedilmiş bir SELECT sorgusu. Genellikle kendi verisini saklamaz ve her seferinde sorgunun güncel sonucunu gösterir.
Veritabanının içinde saklanan, parametre alabilen ve tek bir çağrıyla tekrar tekrar çalıştırılabilen adlandırılmış SQL kod bloğu.
Atomicity (bölünmezlik), Consistency (tutarlılık), Isolation (yalıtım), Durability (kalıcılık): hatalara, çökmelere ve aynı anda çok sayıda kullanıcıya rağmen transaction'ları güvenilir kılan dört güvence.
Veritabanının bir sorguyu çalıştırmak için seçtiği adım adım strateji; hangi indeksleri kullandığını, tabloları nasıl birleştirdiğini ve kaç satır beklediğini gösterir.
Bir sorguya ve tablo istatistiklerine bakarak onu çalıştırmanın en ucuz yolunu seçen ve yürütme planını üreten veritabanı motoru bileşeni.
Bir sunucudaki her değişikliği diğerlerine göndererek aynı veritabanının kopyalarını birden fazla sunucuda tutmak; güvenlik ve yük paylaşımı için yapılır.
Bir veritabanını yedekten geri getirmek; ya veri kaybını gidermek ya da başka bir sunucuda kopyasını oluşturmak için yapılır.
Database administrator, yani veritabanı yöneticisi: bir şirketin veritabanlarını kurmak, güvenliğini sağlamak, yedeklemek, performansını ayarlamak ve ayakta tutmaktan sorumlu kişi.
Bir veritabanı tasarımını gösteren çizim; varlıkları (genellikle tabloları), özelliklerini ve aralarındaki bire-çok gibi ilişkileri gösterir.
Birinci tablodaki bir satırın ikinci tablodaki birçok satırla bağlantılı olabildiği, ama bu satırların her birinin yalnızca tek bir satıra ait olduğu ilişki; müşteri ve siparişleri gibi.
Bir tablodaki birçok satırın diğer tablodaki birçok satırla ilişkili olabildiği bağlantı; öğrenciler ve dersler gibi. Eşleşmeleri saklamak için arada üçüncü bir tablo gerekir.
Bir sütunda ya da sütun grubunda iki satırın aynı değere sahip olmasını engelleyen kural; örneğin aynı e-posta adresine sahip iki kullanıcı olmasını önler.
Yeni bir satır eklendiğinde değeri veritabanı tarafından sıradaki sayıyla otomatik olarak doldurulan sayısal sütunu tanımlar.
Her öğeyi genellikle JSON benzeri biçimde, kendi içinde bütün bir doküman olarak saklayan NoSQL veritabanı; ilişkili veriler sabit tablolar olmadan bir arada tutulabilir.
Her değeri benzersiz bir anahtar altında saklayan ve o anahtarla çok hızlı biçimde geri bulan, en basit NoSQL veritabanı türü.
Başka bir sorgunun içine parantez içinde yazılan ve sonucu dıştaki sorgu tarafından, örneğin filtrelenecek değerlerin listesi olarak kullanılan sorgu.
GROUP BY çalıştıktan sonra grupları filtreleyen SQL bölümü; genellikle COUNT ya da SUM gibi bir toplama fonksiyonunun sonucunu kullanır.
Sonuçtaki tekrar eden satırları çıkaran SELECT biçimi; böylece döndürülen değerlerin her birleşimi yalnızca bir kez görünür.
Sorgu içinde bir tabloya ya da sütuna genellikle AS anahtar kelimesiyle verilen geçici kısa ad; sorguyu kısaltmak ya da çıktıyı daha anlaşılır hale getirmek için kullanılır.
Bir satırı ancak birlikte kullanıldığında tanımlayan iki ya da daha fazla sütundan oluşan anahtar; sipariş kalemleri tablosundaki sipariş ID'si ile ürün ID'sinin birlikte kullanılması gibi.
Yalnızca her satırı tanımlamak için oluşturulan, iş açısından hiçbir anlam taşımayan yapay anahtar; otomatik artan bir sayı ya da UUID gibi.
Tablolar arasındaki her referansın gerçekten var olan bir satırı göstermesi gerektiği kuralı; böylece var olmayan müşterilere ait siparişler oluşmaz.
Bir silme ya da güncelleme işleminin üst satırdan, yabancı anahtarla ona bağlı bütün alt satırlara otomatik olarak yansıması.
Yeni bir satır o sütun için değer verilmeden eklendiğinde sütuna otomatik olarak atanan değer; 0, 'pending' ya da o anki zaman gibi.
Okumayı hızlandırmak için bazı verileri bilerek birden fazla yerde saklamak ya da tabloları birleştirmek; kopyaları doğru tutmak için daha fazla çaba gerektirmeyi göze almak.
Tablo tasarımı için tanımlanmış bir dizi kuraldan biri (1NF, 2NF, 3NF ve daha üstü); her düzey belirli bir tür tekrar eden ya da yanlış yerde duran veriyi ortadan kaldırır.
Ya tablolar arasındaki ilişkinin türü (bire-bir, bire-çok, çoka-çok) ya da bir sütundaki farklı değerlerin sayısı.
Bir tablonun satırlarının fiziksel olarak hangi sırayla saklanacağını belirleyen indeks; bu yüzden bir tabloda yalnızca bir tane olabilir, diğer indeksler kümelenmemiş (non-clustered) indekslerdir.
Bir sorgunun ihtiyaç duyduğu satırları indeks aracılığıyla doğrudan bulmak yerine tablodaki bütün satırları okumak.
Tamamlanması belirlenen bir süre sınırından uzun süren, uygulamayı yavaşlatan ve veritabanı kaynaklarını tüketen sorgu.
Bir transaction'ın diğer transaction'ların değişikliklerinden ne kadarını görebileceğini belirleyen ayar; veri güvenliği ile hız ve eşzamanlılık arasında bir denge kurar.
Veritabanının bir satıra, sayfaya ya da tabloya koyduğu, mevcut transaction bitene kadar diğer transaction'ların orayı değiştirmesini, bazen de okumasını engelleyen işaret.
İki ya da daha fazla transaction'ın her birinin diğerinin tuttuğu kilidi beklediği, veritabanı birini iptal edene kadar hiçbirinin ilerleyemediği durum.
Bir tabloda ekleme, güncelleme ya da silme gibi belirli bir olay gerçekleştiğinde otomatik olarak çalışan, veritabanında saklanan kod parçası.
Veritabanı şemasını kontrollü biçimde değiştiren sürümlü betik ya da daha geniş anlamda verileri bir veritabanından veya sistemden diğerine taşıma projesi.
Bir yedeğin üzerine kaydedilmiş değişiklik loglarını yeniden uygulayarak veritabanını seçilen bir andaki, örneğin hatalı bir DELETE'ten bir dakika önceki haline döndürmek.
Ana sunucudan değişiklikleri alan ve yalnızca okuma sorguları için kullanılan veritabanı kopyası; birincil sunucunun yükünü hafifletir.
Arızalanan birincil veritabanı sunucusunun işini, uygulamanın çalışmaya devam edebilmesi için bekleme sunucusuna ya da replikaya aktarmak.
Bir veritabanı kullanıcısının ya da rolünün bir tabloyu okumak, satır eklemek veya yeni nesne oluşturmak gibi belirli bir işlemi yapmasına izin veren izin.
SQL'deki GRANT komutuyla bir veritabanı kullanıcısına ya da rolüne bir işlemi yapma izni vermek; REVOKE ise bu izni geri alır.
Uygulamanın her istek için yeni ve yavaş bir bağlantı açmak yerine hazır tuttuğu ve yeniden kullandığı açık veritabanı bağlantıları kümesi.
Object-relational mapping, yani nesne-ilişkisel eşleme: geliştiricilerin veritabanı satırlarıyla kendi programlama dillerindeki nesneler gibi çalışmasını sağlayan ve SQL'i onlar yerine üreten kütüphane.
Create, Read, Update, Delete: saklanan veri üzerindeki dört temel işlem; SQL'deki INSERT, SELECT, UPDATE ve DELETE komutlarına karşılık gelir.
Büyük bir veri kümesini, her biri satırların farklı bir bölümünü tutan birden fazla veritabanı sunucusuna dağıtmak; böylece sistem tek bir makinenin sınırlarını aşabilir.
Büyük bir tabloyu tarih aralığı ya da bölge gibi bir kurala göre partition denen daha küçük parçalara bölmek; sorgular açısından tablo yine tek bir tablo gibi görünür.
Bir veritabanı sisteminin bir sunucu, disk ya da veri merkezi arızalansa bile çok az kesintiyle çalışmaya devam edecek şekilde tasarlanması.
Bir veritabanının yapısını ve verisini SQL komutları ya da özel bir dışa aktarım biçimi olarak içeren ve başka bir veritabanına yüklenebilen dosya.
Yeni bir değişiklik yapılmazsa verinin bütün kopyalarının kısa bir süre sonra aynı hale geleceği güvencesi; ancak okumalar kısa bir süre eski değerleri döndürebilir.
Bir ağ arızası dağıtık bir veritabanını ikiye böldüğünde sistemin tutarlılık (her yerde aynı veri) ile erişilebilirlik (her zaman yanıt verme) arasında seçim yapmak zorunda olduğu fikri.
Veriyi ilişkilerle birbirine bağlanan düğümler olarak saklayan NoSQL veritabanı; 'arkadaşlarımın arkadaşları' gibi bağlantıları hızla izlemeyi sağlar.
MongoDB gibi doküman veritabanlarında birlikte saklanan doküman grubu; ilişkisel veritabanındaki tabloya benzer.
Verisini disk yerine ağırlıklı olarak RAM'de tutan ve bu sayede okuma ve yazma işlemlerini son derece hızlı yapan veritabanı.
Birçok sistemden geçmiş verileri toplayan, küçük güncellemelerden çok büyük okuma sorguları için tasarlanmış, raporlama ve analize yönelik merkezi veritabanı.
Online transaction processing, yani çevrimiçi işlem işleme: sipariş vermek ya da profil güncellemek gibi kullanıcılardan gelen çok sayıda küçük ve hızlı okuma-yazma işleminden oluşan veritabanı iş yükü.
Bir satır henüz yoksa eklemek, zaten varsa güncellemek işlemini tek adımda yapmak. Kelime 'update' ve 'insert' sözcüklerinin birleşimidir.
Common table expression, yani ortak tablo ifadesi: bir sorgunun başında WITH ile tanımlanan, ana sorgunun ardından tablo gibi kullanabildiği adlandırılmış geçici sonuç.
Birbiriyle ilişkili bir satır kümesi üzerinden yürüyen toplam ya da sıralama gibi bir değer hesaplayan ama her satırı yine ayrı ayrı döndüren SQL fonksiyonu.
İki ya da daha fazla SELECT sorgusunun sonuçlarını alt alta ekleyerek tek bir sonuçta birleştiren ve tekrar eden satırları çıkaran SQL operatörü.
TRUNCATE TABLE komutuyla bir tablodaki bütün satırları tek seferde silmek; tablo ve yapısı korunur ve satırları tek tek silmekten çok daha hızlıdır.
Data definition language, yani veri tanımlama dili: CREATE, ALTER ve DROP gibi veritabanı nesnelerini oluşturan, değiştiren ve kaldıran SQL komutları.
Data manipulation language, yani veri işleme dili: tabloların içindeki veriyle çalışan SQL komutları; başlıcaları INSERT, UPDATE, DELETE ve çoğu zaman SELECT'tir.
Yavaş sorguların yürütme planlarını inceleyip ardından indeks ekleyerek, SQL'i yeniden yazarak ya da veritabanı ayarlarını değiştirerek onları hızlandırma çalışması.
Birçok kullanıcıya aynı anda verilebilen, read_only ya da app_writer gibi adlandırılmış veritabanı yetkileri kümesi; yetki yönetimini kolaylaştırır.
Veritabanı tasarımında veriyi varlıklar, onların nitelikleri ve aralarındaki ilişkiler olarak tanımlayan kavramsal modeldir.
Veritabanının ilgili değişiklikleri kalıcı veri sayfalarına yazmadan önce kaydettiği günlük.
Doğrudan okunabilen ve temel veri değiştiğinde yenilenebilen, saklanmış sorgu sonuçları.
Güncellemeyi kabul etmeden önce, çoğunlukla sürüm değeriyle, verinin okunmasından sonra değişip değişmediğini kontrol etme.
Başka bir işlemin yaptığı değişikliği, o işlem değişikliği kalıcı olarak tamamlamadan önce okuma.
Başka işlemin veriyi değiştirmesi nedeniyle aynı sorgu tekrarlandığında koşula uyan satır kümesinin değiştiği işlem anomalisi.
Eski veriye dayalı bir yazmanın, başka güncellemenin etkisini korumadan onun üzerine yazdığı eşzamanlılık hatası.
Belirli sorgunun gerektirdiği tüm sütun değerlerini içererek ayrı tablo satırı okumalarını azaltabilen indeks.
Bir sorgunun listeyi yüklediği ve listedeki N öğenin her biri için ayrıca bir sorgu çalıştırıldığı durum.
Web, Mobil ve Arayüz Geliştirme
Bir web sitesinin ya da web uygulamasının kullanıcının tarayıcıda gördüğü ve etkileşime girdiği kısmı; temel olarak HTML, CSS ve JavaScript ile geliştirilir.
Mini test: bu terimleri biliyor musun?
Bu sözlükten 10 soru. Her terimin doğru Türkçe karşılığını seç, puanını gör.
Yazılım İngilizcesi nasıl öğrenilir?
- Her gün alandan gerçek metinler okuyun: resmi dokümantasyon, README dosyaları, sürüm notları ve açık kaynak projelerdeki pull request ve issue tartışmaları.
- Terimleri birlikte kullanıldıkları kelimelerle öğrenin: sadece 'bug' değil, 'fix a bug', 'report a bug' ve 'steps to reproduce'.
- Kimse istemese bile İngilizce yazın. Commit mesajları, ticket açıklamaları ve kod yorumları kısa ve risksiz pratik fırsatlarıdır.
- Kısaltmaları ekiplerin söylediği gibi sesli tekrar edin: API ve SDK harf harf, JSON 'Jason' ismi gibi, REST ise tek kelime olarak okunur.
- Ekip arkadaşlarınızın incelemelerde ve günlük toplantılarda kullandığı 'Could you take a look?' ya da 'I'm blocked on…' gibi kibar kalıpları not edin ve siz de kullanın.
Sıkça sorulan sorular
Yazılım İngilizcesi kelimelerini nasıl öğrenebilirim?
Alandan gerçek metinler okuyun ve kelimelerin nasıl kullanıldığına dikkat edin: dokümantasyon, README dosyaları, sürüm notları, issue tartışmaları ve pull request yorumları. Her terimi sık birlikte kullanıldığı kelimelerle öğrenin (open a pull request, fix a bug) ve yeni kelimeleri hemen kendi commit'lerinizde, ticket'larınızda ve mesajlarınızda kullanın.
Önce hangi yazılım terimlerini öğrenmeliyim?
Günlük iş akışının kelimeleriyle başlayın: bug, fix, commit, branch, pull request, merge, code review, deploy, release, ticket, sprint ve stand-up. Ardından test ve hata ayıklama terimlerine, daha sonra da mimari ve API kelimelerine geçin. Bu sözlükteki terimler de aynı şekilde, en temelden daha ileri seviyeye doğru sıralanmıştır.
Yazılımda İngiliz ve Amerikan İngilizcesi arasında fark var mı?
Kodlarda, API'lerde ve dokümantasyonun büyük kısmında Amerikan yazımı kullanılır: color, initialize, behavior. İngiliz ekipler e-postalarda ve belgelerde 'colour' veya 'behaviour' yazabilir ama kodda Amerikan biçimini korur; örneğin CSS'teki color özelliği. Bazı kelimeler farklı okunur: agile (ABD'de 'EC-ıl', İngiltere'de 'EC-ayl') ve route (ABD'de çoğunlukla 'raut', İngiltere'de 'rut') gibi.
İş yerinde Türkçe terimi mi, İngilizcesini mi kullanmalıyım?
Türk ekiplerinde commit, merge, deploy ve pull request gibi birçok İngilizce kelime olduğu gibi, çoğu zaman Türkçe eklerle ('deploy etmek') kullanılır. 'Sürüm', 'dal' ve 'birim testi' gibi Türkçe karşılıklar ise resmi belgelerde, üniversite derslerinde ve akademik yayınlarda yaygındır. İkisini de bilmek, Türkçe bir toplantı ile İngilizce bir kod tabanı arasında rahatça geçiş yapmanızı sağlar.
Günlük toplantılarda ve kod incelemelerinde işimi İngilizce nasıl anlatırım?
Kısa ve kalıplaşmış ifadeler kullanın. Günlük toplantıda: 'Yesterday I fixed…, today I'm working on…, no blockers.' İncelemelerde: 'Could you take a look at my PR?', 'I've addressed your comments', küçük notlar için 'nit: …' ve onay için 'LGTM'. 'What do you think about…?' gibi kibar sorular doğrudan emirlerden daha iyi karşılanır.
İlgili alanlar
Seviyene uygun okumayla pekiştir
Yeni kelimelerin kalıcı olmasının en hızlı yolu seviyene uygun metin okumaktır. Seviyene göre ücretsiz İngilizce kitaplar:
