Clang Format ile C++ Otomatik Biçimlendirme 101

2.494 Kişi Okudu
Clang Format ile C++ Otomatik Biçimlendirme
Clang Format ile C++ Otomatik Biçimlendirme

Clang Format ile C++ Otomatik Biçimlendirme: Kodunuzu Daha Verimli ve Tutarlı Hale Getirin

C++ kodu yazarken tutarlı ve okunabilir bir stil kullanmak, özellikle büyük projelerde oldukça önemlidir. Bu yazımızda, C++ otomatik biçimlendirme aracı olan Clang Format hakkında detaylı bilgi vereceğiz. Kodunuzu otomatik olarak biçimlendirmek neden önemlidir? Clang Format nasıl çalışır ve kod geliştirme sürecinizi nasıl hızlandırır? Tüm bu soruların yanıtlarını burada bulabilirsiniz.

Otomatik Kod Biçimlendirme Neden Gereklidir?

Geliştirici ekipleri genellikle ortak projelerde çalışır. Bu nedenle, tutarlı bir kod stili oluşturmak, kodun okunabilirliğini artırır ve geliştirme sürecini hızlandırır. Clang Format, C++ projelerinde kodun formatını otomatik hale getirerek bu süreci kolaylaştırır.

Okumaya devam et Clang Format ile C++ Otomatik Biçimlendirme 101

Cpp Fonksiyon Parametreleri: Dizi ve Pointer Kullanımı

341 Kişi Okudu

Cpp Fonksiyon Parametreleri: Dizi ve Pointer Kullanımı,

Cpp Fonksiyon Parametreleri: Dizi ve Pointer Kullanımı
Cpp Fonksiyon Parametreleri: Dizi ve Pointer Kullanımı

C++ dilinde fonksiyon parametreleri olarak diziler ve pointer’lar kullanmak yaygın bir pratiktir. Ancak, dizi parametreleri ve pointer’lar arasındaki farkları anlamak, kodunuzu daha okunabilir ve bakımı daha kolay hale getirebilir. Bu yazıda, dizi ve pointer parametrelerinin farklarını açıklayacağız ve bu durumu kod örnekleriyle destekleyeceğiz.

C++’da Dizi Parametresi Olarak Geçmek

Okumaya devam et Cpp Fonksiyon Parametreleri: Dizi ve Pointer Kullanımı

Kodun Yeniden Düzenlenmesi 1: Fonksiyonel Ayrıştırma ile Okunabilirlik ve Bakım Kolaylığı

453 Kişi Okudu
Kodun Yeniden Düzenlenmesi
Kodun Yeniden Düzenlenmesi Yazı Görseli

Kodun Yeniden Düzenlenmesi 1 Giriş

Yazılım geliştirme sürecinde, kodun okunabilirliği ve bakım kolaylığı büyük önem taşır. Bu amaçla, fonksiyonları ayırarak kodun daha düzenli ve anlaşılır hale getirilmesi yaygın bir uygulamadır. Bu yazıda, belirli bir koşula göre farklı işlemler gerçekleştiren bir kod bloğunu iki ayrı fonksiyona ayırarak nasıl daha temiz ve bakım dostu hale getirdiğimizi açıklayacağız.

Problem Tanımı

Okumaya devam et Kodun Yeniden Düzenlenmesi 1: Fonksiyonel Ayrıştırma ile Okunabilirlik ve Bakım Kolaylığı

Host Dosyası İle Yerel Yönlendirme: Pratik Bir Çözüm

727 Kişi Okudu

Host dosyası ile yerel yönlendirme yapabilirsiniz, modern internet dünyasında, bir web adresini belirli bir IP adresine yönlendirmek isteyebiliriz. Bu, çeşitli sebeplerle gerekebilir; belki bir ağ içinde özel bir sunucuya erişim sağlamak istiyoruz ya da genel DNS değişiklikleri yapmadan yerel testler gerçekleştirmek istiyoruz. Bu gibi durumlar için, host dosyası değişikliği, basit ve etkili bir çözüm sunar.

Windows’ta Host Dosyası Değişikliği

Windows işletim sisteminde bu yönlendirmeyi yapmak için, yönetici haklarına sahip Not Defteri’ni kullanarak C:\Windows\System32\drivers\etc\hosts dosyasını açmamız gerekiyor. Bu dosyanın sonuna, yönlendirmek istediğimiz IP adresi ve domain adını ekleyerek (192.168.1.100 gitlab.example.com gibi) istediğimiz yerel yönlendirmeyi kolayca sağlayabiliriz. Bu basit değişiklik, belirtilen bilgisayardan söz konusu domain adına yapılan tüm isteklerin doğrudan belirlediğimiz IP adresine yönlendirilmesini sağlar.

Adım Adım Yönlendirme

Okumaya devam et Host Dosyası İle Yerel Yönlendirme: Pratik Bir Çözüm

Cpp Sınıfı İçinde Global ve Yerel Değişken Kullanımı: Performans ve Hafıza Yönetimi

2.952 Kişi Okudu

Cpp Sınıfı İçinde Global ve Yerel Değişken Kullanımı: Performans ve Hafıza Yönetimi

Yazılım geliştirme sürecinde, performans ve hafıza yönetimi hayati öneme sahiptir. Bu yazımızda, C++ programlama dilinde sınıf içinde global ve yerel değişken kullanımının performans ve hafıza yönetimi üzerindeki etkilerini detaylı bir şekilde ele alacağız. Ayrıca, bu konseptleri anlamak için basit ancak etkili örnek kodlar ve bu kodların assembly diline çevrilmiş hallerini inceleyeceğiz.

C++ Örnek Kod

#include <stdint.h>

struct LargeStruct {
    uint64_t num1 = 0;
    uint64_t num2 = 0;
    uint64_t num3 = 0;    
    
    // Büyük bir veri bloğu
    uint8_t data[10000] = {0}; 
};

class MyClass {
public:
    void updateGlobalInstance();
    void updateLocalInstance();
    // Sınıf seviyesinde global bir örnek
    LargeStruct globalInstance = {0}; 
};

void MyClass::updateGlobalInstance() {
    // Global örneği güncelle
    globalInstance.num1 = 0; 
}

void MyClass::updateLocalInstance() {
   // Fonksiyon seviyesinde yerel bir örnek
    LargeStruct localInstance = {0}; 
    localInstance.num1 = 0;
}

Assembly Dilindeki İki Fonksiyonun Karşılaştırılması ve Performans Etkileri

Okumaya devam et Cpp Sınıfı İçinde Global ve Yerel Değişken Kullanımı: Performans ve Hafıza Yönetimi

PID Kontrolünün Temelleri: Grafikler ve C++ Kodu ile Basit ve Anlaşılır Bir Rehber

3.329 Kişi Okudu

Diyelim ki bir araba kullanıyorsun ve belirli bir hızda gitmek istiyorsun. Bu durumda, PID kontrolörünün üç bileşeni olan P (Proporsiyonel), I (İntegral) ve D (Türevsel) kontrolü, arabanın hızını ayarlamanıza yardımcı olur.

  1. P (Proporsiyonel Kontrol) – Hedefe Doğru İlk İvme: İlk olarak, hızınızı hedef hıza ulaştırmak için gaza basarsınız. Eğer hedef hızın altındaysanız daha fazla, hedef hızın üstündeyse daha az gaza basarsınız. Bu, ‘P’ kontrolünün işidir; hedefe ne kadar uzakta olduğunuza (hata miktarı) bağlı olarak bir tepki verir. Ancak, bu kontrol tek başına bazen hedef hıza tam olarak ulaşmanıza veya aşırı tepki vermenize sebep olabilir.
  2. I (İntegral Kontrol) – Küçük Düzeltmeler: Uzun bir süre hedef hızın altında kaldıysanız, ‘I’ kontrolü devreye girer. Bu, geçmişteki tüm hataları biriktirir ve hedefe ulaşmak için yavaş yavaş artan bir düzeltme yapar. Örneğin, rüzgar nedeniyle sürekli hafif bir ivme gerektiğinde bu önemlidir. Ancak, bu kontrol yavaş tepki verir ve aşırı düzeltmelere neden olabilir.
  3. D (Türevsel Kontrol) – Ani Değişikliklere Tepki: Eğer bir tepeye tırmanıyorsanız ve hızınız hızla düşmeye başlarsa, ‘D’ kontrolü devreye girer. Bu, hızdaki değişimin hızını algılar ve ona göre bir tepki verir, böylece ani değişikliklere hızla yanıt verebilirsiniz. Bu, aşırı tepkileri ve sarsıntıları önlemeye yardımcı olur.

Bu üç kontrol birlikte çalışarak, hedef hıza stabil ve verimli bir şekilde ulaşmanızı sağlar. Araba örneğinde, P hızınızı hedefe yaklaştırır, I uzun vadeli sapmaları düzeltir ve D ani değişikliklere hızlı bir şekilde yanıt verir. PID kontrolörü de benzer şekilde, sistemleri hedef değerlerine hızlı ve doğru bir şekilde ulaştırmak için bu üç kontrol mekanizmasını kullanır.

Okumaya devam et PID Kontrolünün Temelleri: Grafikler ve C++ Kodu ile Basit ve Anlaşılır Bir Rehber

PEM – Privacy Enhanced Mail ve x509

1.896 Kişi Okudu

Bu yazıda PEM dosyası nedir? Nasıl oluşturulur ve x509 standardı ile nasıl kullanılır? Konularına değineceğiz.

PEM Nedir?

PEM Gizliliği Arttırılmış Posta (Privacy Enhanced Mail), açık anahtarlı şifreleme yöntemi kullanarak e-posta iletişiminin güvenliğinin sağlanması için IETF tarafından önerilen bir standarttır. IETF tarafından önerilen bir standart olmasına rağmen yaygın olarak kullanılmamıştır. PEM gizlilik, kimlik kanıtlama ve veri bütünlüğünün sağlanması amacıyla bünyesinde bir dizi kriptografik tekniği barındırır.

Birçok şifreleme standardı , veri yapılarını tanımlamak için ASN.1‘i ve bu yapıları seri hale getirmek için  Distinguished Encoding Rules (DER) kullanır. [2] DER ikili çıktı ürettiğinden , elde edilen dosyaları elektronik posta gibi yalnızca ASCII‘yi destekleyen sistemler aracılığıyla iletmek zor olabilir. Bu yüzden ASCII destekleyen yapılarda çoğunluklu olarak PEM formatında dosyalar kullanılır.

Nasıl Bir Formatı Vardır?

Okumaya devam et PEM – Privacy Enhanced Mail ve x509

CMS – Kriptografik Mesaj Söz Dizimi

5.134 Kişi Okudu

CMS İngilizce olarak açılımı Cryptographic Message Sytax olarak ifade edilir. Kriptografik Mesaj Söz Dizimi olarak Türkçeleştirilmiştir. Mesajları imzalamak amacıyla söz dizini standardı tanımalar.

Dijital ortamlarda gerçekleştirilen mesajların sağlıklı bir şekilde taşınabilmesi çok önemlidir. Bunun sağlanabilmesi içinde çeşitli kriptografik tekniklere başvurulmaktadır. Bu tekniklerin başında Elektronik imza gelir, dijital verilerin korunması ve taşınma esnasında değiştirilmesine karşı önemli bir koruma sağlamaktadır.

İmza ve Elektronik İmza Nedir?

İmza, yazılı, sanatsal veya dijital nesnelerin sahipleri adına oluşturulan benzersiz ve her defasında aynı olan bir işaret, çizim veya kod bütünüdür. Elektronik imza ise, 5070 sayılı Elektronik İmza Kanunu [1]’nda tanımlandığı şekliyle; başka bir elektronik veriye eklenen veya elektronik veriyle mantıksal bağlantısı bulunan ve kimlik doğrulama amacıyla kullanılan elektronik veriyi ifade eder.

Elektronik İmza Nedir?

Elektronik İmza bir takım matematiksel işlemler sonucu ortaya çıkar, her belge için belgenin içeriğine bağlı olarak farklılıklar gösterebilir. Elektronik İmza oluşturulurken çeşitli şifreleme ve özet çıkartma algoritmaları kullanılır. Bu teknikler de her belgenin kendine özgü imzalara sahip olmasına neden olabilir. Hatta Elektronik İmzaların içerisine istenilen bir mesajda eklenebilir.

Kriptografik Mesaj Söz Dizimi ( Cryptographic Message Sytax (CMS)) Nedir?

Okumaya devam et CMS – Kriptografik Mesaj Söz Dizimi

ALES Zaman Koçu

4.108 Kişi Okudu

ALES sınavı bilindiği üzere konu ve ezber yeteneğinden çok hızlı okuma ve zaman yönetiminin ön plana çıktığı bir sınavdır. 

Deneme sınavı yaparken zaman konusunda performansınızı denetleyecek ve soru başına harcadığınız zaman konusunda sizi uyaracak çevrim içi bir araç yaptım. Umarım yararlı olur.

Aşağıda yer alan kutular içerisine öncelikle matematik testine kaç dakika ayırmak istediğinizi giriyorsunuz, daha sonra Türkçe sınavı için kaç dakika kullanmak istediğinizi yazıyorsunuz. Sınav soru sayıları zaten belli ancak bazen az soru sayılarında da zaman performansınızı görmek isteyebilirsiniz diye onları ekledim. Başlat butonuna tıklayarak sayaçlar başlatılır.

Üstte bulunan geri doğru sayaç tüm sınavı, altta bulunan geri doğru sayaç ise bir soru için harcayacağınız zamanı belirtir.

İlgili kutucukları doldurup Başlat butonuna tıklayın.

Okumaya devam et ALES Zaman Koçu

Pomodoro Sayacı

3.741 Kişi Okudu

Rahatsız edici reklamlar ve gereksiz içerikler olmadan kullanabileceğiniz çevrim içi bir pomodora çalışma zamanlayıcı hazırladım☺ .

Kullanmak için dakika olarak çalışmak istediğiniz süreyi girmeniz yeterli süre bittiğinde sizi sesli bir şekilde uyaracaktır. Sonra tekrar başlatmanız gerekiyor.


Dakika:

Sayıcı: