Forum: Yardım Merkezi
by IgraQuady at 10-19-2024, 02:11 PM
1 comments
by wolfgang at 10-07-2024, 04:11 PM
0 comments
JVM Nedir?
JVM (Java Virtual Machine), Java programlama dilinde yazılmış kodların çalıştırılmasını sağlayan bir sanal makinedir. Java’nın "bir kez yaz, her yerde çalıştır" (WORA – Write Once, Run Anywhere) sloganını mümkün kılan teknolojidir. JVM, Java kaynak kodunu alıp, bytecode adı verilen ara bir dile çevirir ve bu bytecode'u çalıştırır. Bytecode, platform bağımsızdır, yani herhangi bir işletim sistemi ya da donanımda JVM'in bulunduğu her yerde çalışabilir.
JVM Nasıl Çalışır?
JVM'in çalışması üç temel adıma dayanır:
Dezavantajları:
JVM (Java Virtual Machine), Java programlama dilinde yazılmış kodların çalıştırılmasını sağlayan bir sanal makinedir. Java’nın "bir kez yaz, her yerde çalıştır" (WORA – Write Once, Run Anywhere) sloganını mümkün kılan teknolojidir. JVM, Java kaynak kodunu alıp, bytecode adı verilen ara bir dile çevirir ve bu bytecode'u çalıştırır. Bytecode, platform bağımsızdır, yani herhangi bir işletim sistemi ya da donanımda JVM'in bulunduğu her yerde çalışabilir.
JVM Nasıl Çalışır?
JVM'in çalışması üç temel adıma dayanır:
- Kaynak Kodundan Bytecode’a Dönüşüm: Öncelikle Java kaynak kodu (.java dosyası), Java derleyicisi (Javac) tarafından bytecode'a (.class dosyası) dönüştürülür. Bu bytecode, doğrudan donanımın anladığı makine diline çevrilmez, platformdan bağımsız bir dil olarak kalır.
- Bytecode’un Yürütülmesi: JVM, bu bytecode’u çalıştırır. JVM, donanım ve işletim sistemi bağımsız bir sanal makine gibi hareket eder ve bytecode'u uygun zamanlı (Just-In-Time - JIT) derleme ya da yorumlama yoluyla makine diline çevirir ve işletim sistemine gönderir.
- Çalışma Zamanı Yönetimi: JVM aynı zamanda bellek yönetimi, çöp toplama (Garbage Collection), güvenlik, çoklu iş parçacığı (multithreading) gibi konuları da yönetir.
- Platform Bağımsızlığı:
- Java kodu bir kez yazılır ve JVM'nin olduğu herhangi bir platformda çalıştırılabilir (Windows, Linux, macOS, vb.). Bu, "Write Once, Run Anywhere" (WORA) prensibi ile sağlanır.
- Java kodu bir kez yazılır ve JVM'nin olduğu herhangi bir platformda çalıştırılabilir (Windows, Linux, macOS, vb.). Bu, "Write Once, Run Anywhere" (WORA) prensibi ile sağlanır.
- Bellek Yönetimi:
- JVM, otomatik bellek yönetimi sağlar. Garbage Collection (GC) mekanizması sayesinde geliştiricilerin bellek yönetimiyle doğrudan ilgilenmesine gerek kalmaz, bellek sızıntılarını en aza indirir.
- JVM, otomatik bellek yönetimi sağlar. Garbage Collection (GC) mekanizması sayesinde geliştiricilerin bellek yönetimiyle doğrudan ilgilenmesine gerek kalmaz, bellek sızıntılarını en aza indirir.
- Geniş Dil Desteği:
- JVM sadece Java'yı değil, Scala, Groovy, Kotlin gibi dilleri de destekler. Bu sayede JVM üzerinde farklı dillerle geliştirme yapabilirsiniz.
- JVM sadece Java'yı değil, Scala, Groovy, Kotlin gibi dilleri de destekler. Bu sayede JVM üzerinde farklı dillerle geliştirme yapabilirsiniz.
- Zengin Kütüphane Ekosistemi:
- JVM üzerinde çalışan diller için devasa bir kütüphane ekosistemi vardır. Bu, çeşitli çözümleri hızla uygulamak için kullanışlıdır.
- JVM üzerinde çalışan diller için devasa bir kütüphane ekosistemi vardır. Bu, çeşitli çözümleri hızla uygulamak için kullanışlıdır.
- Güvenlik:
- JVM, kodu sanal bir ortamda çalıştırdığı için güvenlik katmanı sağlar. Örneğin, Java Applet'ler veya sandbox ortamları kullanılarak güvenli kod yürütme mümkündür.
- JVM, kodu sanal bir ortamda çalıştırdığı için güvenlik katmanı sağlar. Örneğin, Java Applet'ler veya sandbox ortamları kullanılarak güvenli kod yürütme mümkündür.
- Yüksek Performans:
- Just-In-Time (JIT) derleyici sayesinde kodun kritik bölümleri çalıştırılmadan önce optimize edilir ve yerel makine koduna çevrilir, bu da performansı artırır.
- Just-In-Time (JIT) derleyici sayesinde kodun kritik bölümleri çalıştırılmadan önce optimize edilir ve yerel makine koduna çevrilir, bu da performansı artırır.
- Geniş Topluluk Desteği:
- Java ve JVM tabanlı dillerin geniş bir topluluğu vardır. Sorunlarla karşılaştığınızda çözüm bulmanız daha kolaydır.
- Java ve JVM tabanlı dillerin geniş bir topluluğu vardır. Sorunlarla karşılaştığınızda çözüm bulmanız daha kolaydır.
Dezavantajları:
- Başlangıç Süresi (Startup Time):
- JVM'nin çalışmaya başlaması diğer platformlara göre daha uzun sürebilir. Bu özellikle kısa süreli işlemler için bir dezavantaj olabilir.
- JVM'nin çalışmaya başlaması diğer platformlara göre daha uzun sürebilir. Bu özellikle kısa süreli işlemler için bir dezavantaj olabilir.
- Bellek Tüketimi:
- JVM, bazı durumlarda fazla bellek tüketebilir. Özellikle büyük uygulamalarda JVM'nin gereksinimleri, kaynak kullanımını artırabilir.
- JVM, bazı durumlarda fazla bellek tüketebilir. Özellikle büyük uygulamalarda JVM'nin gereksinimleri, kaynak kullanımını artırabilir.
- Garbage Collection Gecikmeleri:
- Garbage Collection zaman zaman performans sorunlarına yol açabilir. Büyük bellek bloklarının temizlenmesi sırasında uygulama gecikmeler (latency) yaşayabilir.
- Garbage Collection zaman zaman performans sorunlarına yol açabilir. Büyük bellek bloklarının temizlenmesi sırasında uygulama gecikmeler (latency) yaşayabilir.
- Performans Üzerindeki Kontrol Eksikliği:
- JVM, geliştiricinin uygulama performansını optimize etme yeteneğini bazı durumlarda sınırlayabilir. Düşük seviye optimizasyonlar (örneğin C veya C++'daki gibi) mümkün olmayabilir.
- JVM, geliştiricinin uygulama performansını optimize etme yeteneğini bazı durumlarda sınırlayabilir. Düşük seviye optimizasyonlar (örneğin C veya C++'daki gibi) mümkün olmayabilir.
- Sınırlı Donanım Etkileşimi:
- JVM, donanım seviyesinde düşük seviye işlemler gerektiren uygulamalarda (örneğin gerçek zamanlı sistemler) ideal olmayabilir. Bu tarz işlemler için daha düşük seviyeli diller tercih edilir.
- JVM, donanım seviyesinde düşük seviye işlemler gerektiren uygulamalarda (örneğin gerçek zamanlı sistemler) ideal olmayabilir. Bu tarz işlemler için daha düşük seviyeli diller tercih edilir.
- Yüksek Öğrenme Eğrisi:
- JVM ve onun özelliklerini (özellikle Garbage Collection, bellek yönetimi vb.) anlamak başlangıçta karmaşık gelebilir.
- JVM ve onun özelliklerini (özellikle Garbage Collection, bellek yönetimi vb.) anlamak başlangıçta karmaşık gelebilir.
by wolfgang at 10-07-2024, 02:55 PM
0 comments
Kod:
#!/bin/bash
# Sürekli döngü
while true; do
# 10 saniye bekle
sleep 10
# Tor servisini yeniden başlat
brew services restart tor
done
macOS Cihazınızda Nasıl 10 Saniyede IP Adresinizi Değiştirebilirsiniz?
Adım 1: Homebrew Kurun
Homebrew, macOS ve Linux için popüler bir paket yöneticisidir. Aşağıdaki komutu terminalde çalıştırarak Homebrew'u kurabilirsiniz:
Kod:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Adım 2: Homebrew ile Tor'u Kurun
Homebrew yüklendikten sonra Tor'u kurmak için şu komutu çalıştırın:
Kod:
brew install tor
Adım 3: Tor Servisini Başlatın
Tor'u başarıyla yükledikten sonra arka planda çalıştırmak için:
Kod:
brew services start tor
Adım 4: Tor'un Çalıştığını Doğrulayın
Tor'un düzgün çalıştığından emin olmak için terminalde şu komutu kullanarak Tor'u çalıştırın:
Kod:
tor
Adım 5: Sistem Proxy Ayarlarını Yapılandırın
Tor genellikle SOCKS5 proxy olarak çalışır. Sistem genelinde Tor proxy kullanmak için şu adımları takip edin:
Sistem Tercihleri → Ağ → Kullandığınız bağlantıyı (Wi-Fi veya Ethernet) seçin.
Gelişmiş butonuna tıklayın.
Proxyler sekmesine geçin.
SOCKS Proxy seçeneğini işaretleyin ve şu bilgileri girin:
Proxy Sunucusu: 127.0.0.1
Port: 9050
Değişiklikleri kaydedin ve çıkın.
Adım 6: Bash Script ile IP Adresini 10 Saniyede Değiştirme
10 saniyede bir Tor servisini durdurup başlatarak IP adresinizi değiştirebilirsiniz. Yukarıdaki bash scriptini çalıştırın.
Kod:
bash tor.sh
by wolfgang at 09-17-2024, 10:24 PM
0 comments
1. Git'i Kur
Eğer Git yüklü değilse, aşağıdaki komutla yükleyebilirsin:
Terminalini aç ve aşağıdaki komutla Amix'in Vimrc konfigürasyonunu indir:
3. Kurulumu Tamamla
Depoyu indirdikten sonra, kurulum işlemini başlatmak için şu komutu çalıştır:
Bu işlem, temel Vimrc ayarlarını yükleyecektir. Eğer daha gelişmiş ayarları istersen, şu komutu kullanarak "awesome" versiyonunu kurabilirsin:
4. Vim'i Aç ve Kontrol Et
Vim'i açarak değişikliklerin uygulandığını görebilirsin:
5. Gelişmiş Özelleştirme (Opsiyonel)
Eğer kendi eklentilerini ve ayarlarını eklemek istersen,
dosyasını düzenleyerek kendi ayarlarını ekleyebilirsin.
Kurulum tamamlandıktan sonra Vim'in çok daha kullanışlı hale gelecektir.
Git Linki: https://github.com/amix/vimrc
Ekran Görüntüleri:
Eğer Git yüklü değilse, aşağıdaki komutla yükleyebilirsin:
- Ubuntu/Debian:
Kod:sudo apt update
sudo apt install git - macOS:
(Homebrew kullanarak)Kod:brew install git
Terminalini aç ve aşağıdaki komutla Amix'in Vimrc konfigürasyonunu indir:
Kod:
git clone https://github.com/amix/vimrc.git ~/.vim_runtime
Depoyu indirdikten sonra, kurulum işlemini başlatmak için şu komutu çalıştır:
Kod:
sh ~/.vim_runtime/install_basic_vimrc.sh
Kod:
sh ~/.vim_runtime/install_awesome_vimrc.sh
Vim'i açarak değişikliklerin uygulandığını görebilirsin:
Kod:
vim
Eğer kendi eklentilerini ve ayarlarını eklemek istersen,
Kod:
~/.vim_runtime/my_configs.vim
Kurulum tamamlandıktan sonra Vim'in çok daha kullanışlı hale gelecektir.
Git Linki: https://github.com/amix/vimrc
Ekran Görüntüleri:
by wolfgang at 09-16-2024, 08:25 PM
0 comments
Elinizde bir sunucu olması gerekiyor. Minimum özellikler olarak 1 GB RAM, 1 CPU ve 10 GB depolama kapasitesi bile yeterli olacaktır. Ücretsiz sunucu hizmeti sağlayan bazı platformlar aşağıdadır:
SSH ile sunucumuza bağlanıyoruz
bu kodu çalıştırıyoruz
Bulunduğumuz dizinde bir bash script dosyası oluşturulmuş. Bu dosyayı çalıştırmak için şu adımları izleyebilirsiniz:
sizden IPv6 desteği isteyip istemediğinizi soracaktır. Bu tamamen tercihinize bağlı bir seçimdir. Ben "Evet(y)" seçeneğini tercih ediyorum, ancak isterseniz siz de tercihinizi yapabilirsiniz.
IPv6 desteği, yeni nesil internet protokolüyle uyumluluk sağlar, ancak gereksinimlerinize göre karar verebilirsiniz.
sizden **hangi portu kullanmak istediğinizi** soracaktır. Varsayılan olarak **1194** portu gelir. **1** yazarak bu varsayılan portu onaylayabilirsiniz. Tabii isterseniz, tercih ettiğiniz farklı bir port numarasını da girebilirsiniz.
**UDP mi yoksa TCP mi kullanmak istediğinizi** soracaktır. Ben **UDP**'yi tercih ediyorum çünkü daha hızlı bir bağlantı sağlar. Ancak, ihtiyaçlarınıza göre siz de tercihinizi yapabilirsiniz. Eğer güvenlik ve kararlılık sizin için daha önemliyse, **TCP** kullanmayı da düşünebilirsiniz.
Script, bu aşamada sizden **hangi DNS'i kullanmak istediğinizi** soracaktır. Varsayılan olarak **AdGuard DNS** gelir, ki bu DNS'in reklam engelleme özelliği olduğu için ben varsayılan ayarı değiştirmeyip **AdGuard**'ı kullanıyorum. Tabii, isterseniz kendi tercihinize göre farklı bir DNS sunucusu da seçebilirsiniz.
B
sıkıştırma isteyip istemediğinizi soracaktır. Hayır seçeneğini tercih ediyorum çünkü sıkıştırma, güvenlik açıklarına sebep olabilir. Bu nedenle sıkıştırmayı devre dışı bırakmak daha güvenlidir.
şifreleme ayarlarını özelleştirmek isteyip istemediğinizi soracaktır. Hayır seçeneğini tercih ediyorum, çünkü varsayılan şifreleme ayarları genellikle yeterince güvenli ve stabildir. İsteğe bağlı olarak siz de aynı şekilde devam edebilirsiniz.
Script, işlemlere başladıktan sonra kurulum tamamlanınca sizden dosyanın ismini girmenizi isteyecektir. Ben "test" adını verdim. Siz de istediğiniz herhangi bir ismi seçebilirsiniz. Bu isim, OpenVPN yapılandırma dosyası için kullanılacaktır.
Yapılandırma dosyasını parola ile kullanmak isteyip istemediğinizi soruyor. Bu durumda "Hayır" diyorum.
Bulunduğumuz klasörde test.ovpn adında bir dosya oluşturduk. Bu dosyanın içinde VPN ayarlarımız bulunuyor. Dosyayı kullanmak istediğimiz cihaza indiriyoruz.
Not: Eğer dosyayı nasıl indireceğinizi bilmiyorsanız, Linux sunucudan FTP ile dosya nasıl çekilir diye küçük bir arama yaparak öğrenebilirsiniz.
OpenVPN'in resmi sitesine giderek kullandığınız işletim sistemine özel istemciyi indiriyorsunuz. Buradan Windows sürümünü indirebilirsiniz.[/url]
OpenVPN'i açıyoruz.
[url=https://resimlink.com/cVGqO3]
Oluşturduğumuz dosyayı buraya sürükleyip bırakıyoruz.
Connect basıp bağlanıyoruz
Google anahtar kelimeler:
OpenVPN kurulumu
Linux sunucuda OpenVPN nasıl kurulur
OpenVPN istemci indirme
OpenVPN yapılandırma dosyası oluşturma
OpenVPN ile VPN bağlantısı kurma
OpenVPN port ayarları
OpenVPN DNS ayarları
OpenVPN sıkıştırma ayarları
OpenVPN şifreleme ayarları
OpenVPN ile bağlantı sorunları
OpenVPN dosya transferi (FTP)
OpenVPN ile IPv6 desteği
OpenVPN bağlantı hızı (UDP vs TCP)
Ücretsiz VPS sunucu sağlayıcıları
OpenVPN yapılandırma dosyasını kullanma
[b]Kendi VPN nasıl kurulur[/b]
[b]OpenVPN ile kendi VPN sunucusu oluşturma[/b]
[b]VPN sunucusu kurmak için gerekli özellikler[/b]
[b]Linux üzerinde VPN kurulumu[/b]
[b]OpenVPN yapılandırma dosyası oluşturma[/b]
[b]Kendi VPN sunucusu ile bağlanma[/b]
[b]VPN port ayarları[/b]
[b]Kendi VPN'iniz için DNS ayarları[/b]
[b]VPN kurarken dikkat edilmesi gerekenler[/b]
[b]OpenVPN ile güvenli bağlantı[/b]
[b]Kendi VPN sunucusunu yönetme[/b]
[b]VPN sunucusu için en iyi barındırma hizmetleri[/b]
[b]Kendi VPN kurulumu ve yönetimi[/b]
[b]OpenVPN istemcisi indirme ve yapılandırma[/b]
[b]Kendi VPN sunucusunu test etme[/b]
- Amazon Web Services (AWS): AWS, yeni kullanıcılar için 12 ay boyunca kullanabileceğiniz ücretsiz bir katman sunar. Ayrıca, bazı hizmetlerde 300$'lık ücretsiz kredi sağlanır.
- Microsoft Azure: Azure, yeni kullanıcılar için 12 aylık ücretsiz hizmet ve ayrıca belirli hizmetlerde kullanabileceğiniz 200$'lık bir kredi sunar.
- Oracle Cloud: Oracle Cloud, 2 adet her zaman ücretsiz sanal makine (VM) sağlar ve ayrıca 300$'lık ücretsiz krediyle kullanabileceğiniz hizmetleri sunar.
SSH ile sunucumuza bağlanıyoruz
Kod:
curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh
chmod +x openvpn-install.sh
bu kodu çalıştırıyoruz
Bulunduğumuz dizinde bir bash script dosyası oluşturulmuş. Bu dosyayı çalıştırmak için şu adımları izleyebilirsiniz:
- Terminalde script dosyasını çalıştırın:
./openvpn-install.sh
sizden IPv6 desteği isteyip istemediğinizi soracaktır. Bu tamamen tercihinize bağlı bir seçimdir. Ben "Evet(y)" seçeneğini tercih ediyorum, ancak isterseniz siz de tercihinizi yapabilirsiniz.
IPv6 desteği, yeni nesil internet protokolüyle uyumluluk sağlar, ancak gereksinimlerinize göre karar verebilirsiniz.
sizden **hangi portu kullanmak istediğinizi** soracaktır. Varsayılan olarak **1194** portu gelir. **1** yazarak bu varsayılan portu onaylayabilirsiniz. Tabii isterseniz, tercih ettiğiniz farklı bir port numarasını da girebilirsiniz.
**UDP mi yoksa TCP mi kullanmak istediğinizi** soracaktır. Ben **UDP**'yi tercih ediyorum çünkü daha hızlı bir bağlantı sağlar. Ancak, ihtiyaçlarınıza göre siz de tercihinizi yapabilirsiniz. Eğer güvenlik ve kararlılık sizin için daha önemliyse, **TCP** kullanmayı da düşünebilirsiniz.
Script, bu aşamada sizden **hangi DNS'i kullanmak istediğinizi** soracaktır. Varsayılan olarak **AdGuard DNS** gelir, ki bu DNS'in reklam engelleme özelliği olduğu için ben varsayılan ayarı değiştirmeyip **AdGuard**'ı kullanıyorum. Tabii, isterseniz kendi tercihinize göre farklı bir DNS sunucusu da seçebilirsiniz.
B
sıkıştırma isteyip istemediğinizi soracaktır. Hayır seçeneğini tercih ediyorum çünkü sıkıştırma, güvenlik açıklarına sebep olabilir. Bu nedenle sıkıştırmayı devre dışı bırakmak daha güvenlidir.
şifreleme ayarlarını özelleştirmek isteyip istemediğinizi soracaktır. Hayır seçeneğini tercih ediyorum, çünkü varsayılan şifreleme ayarları genellikle yeterince güvenli ve stabildir. İsteğe bağlı olarak siz de aynı şekilde devam edebilirsiniz.
Script, işlemlere başladıktan sonra kurulum tamamlanınca sizden dosyanın ismini girmenizi isteyecektir. Ben "test" adını verdim. Siz de istediğiniz herhangi bir ismi seçebilirsiniz. Bu isim, OpenVPN yapılandırma dosyası için kullanılacaktır.
Yapılandırma dosyasını parola ile kullanmak isteyip istemediğinizi soruyor. Bu durumda "Hayır" diyorum.
Bulunduğumuz klasörde test.ovpn adında bir dosya oluşturduk. Bu dosyanın içinde VPN ayarlarımız bulunuyor. Dosyayı kullanmak istediğimiz cihaza indiriyoruz.
Not: Eğer dosyayı nasıl indireceğinizi bilmiyorsanız, Linux sunucudan FTP ile dosya nasıl çekilir diye küçük bir arama yaparak öğrenebilirsiniz.
OpenVPN'in resmi sitesine giderek kullandığınız işletim sistemine özel istemciyi indiriyorsunuz. Buradan Windows sürümünü indirebilirsiniz.[/url]
OpenVPN'i açıyoruz.
[url=https://resimlink.com/cVGqO3]
Oluşturduğumuz dosyayı buraya sürükleyip bırakıyoruz.
Connect basıp bağlanıyoruz
Google anahtar kelimeler:
OpenVPN kurulumu
Linux sunucuda OpenVPN nasıl kurulur
OpenVPN istemci indirme
OpenVPN yapılandırma dosyası oluşturma
OpenVPN ile VPN bağlantısı kurma
OpenVPN port ayarları
OpenVPN DNS ayarları
OpenVPN sıkıştırma ayarları
OpenVPN şifreleme ayarları
OpenVPN ile bağlantı sorunları
OpenVPN dosya transferi (FTP)
OpenVPN ile IPv6 desteği
OpenVPN bağlantı hızı (UDP vs TCP)
Ücretsiz VPS sunucu sağlayıcıları
OpenVPN yapılandırma dosyasını kullanma
[b]Kendi VPN nasıl kurulur[/b]
[b]OpenVPN ile kendi VPN sunucusu oluşturma[/b]
[b]VPN sunucusu kurmak için gerekli özellikler[/b]
[b]Linux üzerinde VPN kurulumu[/b]
[b]OpenVPN yapılandırma dosyası oluşturma[/b]
[b]Kendi VPN sunucusu ile bağlanma[/b]
[b]VPN port ayarları[/b]
[b]Kendi VPN'iniz için DNS ayarları[/b]
[b]VPN kurarken dikkat edilmesi gerekenler[/b]
[b]OpenVPN ile güvenli bağlantı[/b]
[b]Kendi VPN sunucusunu yönetme[/b]
[b]VPN sunucusu için en iyi barındırma hizmetleri[/b]
[b]Kendi VPN kurulumu ve yönetimi[/b]
[b]OpenVPN istemcisi indirme ve yapılandırma[/b]
[b]Kendi VPN sunucusunu test etme[/b]
by wolfgang at 09-13-2024, 01:24 PM
0 comments
Algoritma: Belirli bir problemi çözmek veya bir görevi yerine getirmek için tasarlanmış adım adım talimatlar bütünüdür.
UI (Kullanıcı Arayüzü) ve UX (Kullanıcı Deneyimi), dijital ürünler ve hizmetler tasarımında sıkça kullanılan terimlerdir:
Değişken (variable): Programlama dillerinde verileri depolamak ve bu verilere daha sonra erişmek için kullanılan isimlendirilmiş bir bellek alanıdır. Değişkenler, programın çalışması sırasında farklı değerler alabilir ve bu değerler üzerinde işlemler yapılabilir.
Örneğin, bir değişken, bir sayıyı, metni, bir listeyi veya başka bir veri türünü tutabilir. Değişkenler, programın akışına göre dinamik olarak değişebilir, bu yüzden "değişken" adı verilir.
Özellikleri:
Python'da bir değişken tanımlaması şu şekilde olabilir:
Burada x ve isim değişkenleri, sırasıyla bir sayı ve bir metin değerini saklamaktadır.
Döngü (loop): programlamada belirli bir kod bloğunun birden çok kez çalıştırılmasını sağlayan yapıdır. Döngüler, bir işlemi tekrar etmek gerektiğinde kullanılır. Genellikle belirli bir koşul sağlandığı sürece çalışmaya devam ederler ve bu koşul bozulduğunda döngü sona erer.
Yaygın Döngü Türleri:
Bu örnekte, i değişkeni 0'dan başlayarak 5'e kadar (5 dahil değil) her değeri alır ve her adımda print(i) çalıştırılır.
while döngüsü: Belirli bir koşul sağlandığı sürece devam eden döngüdür. Koşul bozulduğunda döngü sona erer.
Örnek (Python):
Bu örnekte,x
değişkeni 5'ten küçük olduğu sürece döngü devam eder ve her adımda x değeri bir artırılır.
Döngüler Nerede Kullanılır?
Fonksiyon
Fonksiyon, programlamada belirli bir görevi gerçekleştiren, tekrar kullanılabilir bir kod bloğudur. Fonksiyonlar, karmaşık işlemleri daha küçük, yönetilebilir parçalara ayırarak kodun daha okunabilir ve bakımı kolay olmasını sağlar. Ayrıca aynı işlemi farklı yerlerde tekrarlamadan kullanma imkanı sunar.
Fonksiyonun Temel Bileşenleri:
Farklı programlama dillerinde fonksiyonlar farklı şekillerde tanımlanabilir. Aşağıda Python’da bir fonksiyon örneği verilmiştir:
Bu örnekte:
Fonksiyon tanımlandıktan sonra, çağrılarak kullanılabilir:
Fonksiyonların Avantajları:
Sınıf (Class) :
Sınıf (class), nesne yönelimli programlamada (OOP) bir nesnenin özelliklerini ve davranışlarını tanımlayan bir yapıdır. Bir sınıf, nesnelerin şablonu veya kalıbı olarak düşünülebilir. Sınıflar, aynı türdeki nesnelerin sahip olabileceği ortak özellikler ve fonksiyonlar için bir yapı sağlar. Nesneler ise sınıfın bir örneğidir (instance).
Sınıfın Özellikleri:
Python’da sınıf tanımlamak oldukça basittir. İşte bir sınıf örneği:
Açıklamalar:
Hata ayıklama (Debugging):
Hata ayıklama (debugging), bir programda yanlış çalışan veya hata veren kısımları bulup düzeltme işlemidir. Program yazarken bazen beklenmeyen hatalar oluşabilir. Hata ayıklama, bu hataların neden olduğunu bulup, onları düzeltme sürecidir.
Hata Ayıklama Adımları:
Bir programda bir toplama işlemi doğru sonuç vermiyorsa, önce hatanın nerede olduğunu bulur, sonra o kısmı düzeltiriz. Düzeltmeden sonra programı tekrar çalıştırarak hatanın çözülüp çözülmediğini kontrol ederiz.
Derleyici (Compiler):
Derleyici (compiler), bir programlama dilinde yazılmış kodu, bilgisayarın anlayabileceği makine diline çeviren bir yazılımdır. Programcıların yazdığı kaynak kod genellikle insan tarafından anlaşılabilen bir dildedir (örneğin C, C++, Java gibi). Ancak, bilgisayarlar bu kodları doğrudan anlayamazlar. İşte bu noktada derleyici devreye girer.
Derleyicinin Çalışma Aşamaları:
Bir C programı yazdığınızda, derleyici bu kodu bilgisayarın çalıştırabileceği bir hale getirir. Programcı kodu yazar, derleyici onu alır, hataları bulur ve son olarak bilgisayarın anlayabileceği bir dilde dosya üretir.
Özetle, derleyici yazılımı bilgisayarın anlayacağı dile dönüştüren bir araçtır.
UI (Kullanıcı Arayüzü) ve UX (Kullanıcı Deneyimi), dijital ürünler ve hizmetler tasarımında sıkça kullanılan terimlerdir:
- UI (User Interface - Kullanıcı Arayüzü): Bir kullanıcının bir yazılım, web sitesi veya mobil uygulama ile etkileşimde bulunduğu görsel tasarım unsurlarıdır. Butonlar, menüler, simgeler, renkler, tipografi ve düzen gibi öğeler UI tasarımının parçasıdır. UI, görsel olarak estetik ve kullanıcı dostu arayüzler oluşturmayı hedefler.
- UX (User Experience - Kullanıcı Deneyimi): Bir kullanıcının bir ürün veya hizmeti kullanırken yaşadığı genel deneyimi ifade eder. UX tasarımı, kullanıcının ürünü kolay ve memnuniyet verici bir şekilde kullanmasını sağlamaya odaklanır. Bu süreç, ürünün kullanılabilirliği, erişilebilirliği, işlevselliği ve kullanıcıyla kurduğu duygusal bağları kapsar.
Değişken (variable): Programlama dillerinde verileri depolamak ve bu verilere daha sonra erişmek için kullanılan isimlendirilmiş bir bellek alanıdır. Değişkenler, programın çalışması sırasında farklı değerler alabilir ve bu değerler üzerinde işlemler yapılabilir.
Örneğin, bir değişken, bir sayıyı, metni, bir listeyi veya başka bir veri türünü tutabilir. Değişkenler, programın akışına göre dinamik olarak değişebilir, bu yüzden "değişken" adı verilir.
Özellikleri:
- İsimlendirilmiş bellek alanlarıdır: Her değişken bir isim ile tanımlanır ve bu isim aracılığıyla değişkene ulaşılır.
- Değer tutarlar: Değişkenler belirli bir türde veri tutar (örneğin, sayılar, metinler, boolean ifadeler).
- Program boyunca değişebilirler: Değişkenin içindeki değer program çalışırken değiştirilebilir.
Python'da bir değişken tanımlaması şu şekilde olabilir:
Kod:
x = 5 # x adlı değişken 5 değerini tutar
isim = "Ahmet" # isim adlı değişken "Ahmet" metnini tutar
Döngü (loop): programlamada belirli bir kod bloğunun birden çok kez çalıştırılmasını sağlayan yapıdır. Döngüler, bir işlemi tekrar etmek gerektiğinde kullanılır. Genellikle belirli bir koşul sağlandığı sürece çalışmaya devam ederler ve bu koşul bozulduğunda döngü sona erer.
Yaygın Döngü Türleri:
- for döngüsü: Genellikle belirli bir sayı aralığında veya bir liste, dizi gibi yinelenebilir bir veri yapısı üzerinde döngü oluşturmak için kullanılır.
Örnek (Python):
Kod:
for i in range(5):
print(i)
Bu örnekte, i değişkeni 0'dan başlayarak 5'e kadar (5 dahil değil) her değeri alır ve her adımda print(i) çalıştırılır.
while döngüsü: Belirli bir koşul sağlandığı sürece devam eden döngüdür. Koşul bozulduğunda döngü sona erer.
Örnek (Python):
Kod:
x = 0
while x < 5:
print(x)
x += 1
Bu örnekte,x
değişkeni 5'ten küçük olduğu sürece döngü devam eder ve her adımda x değeri bir artırılır.
Döngüler Nerede Kullanılır?
- Belirli bir işlemi tekrar tekrar yapmak gerektiğinde.
- Bir liste, dizi, sözlük gibi veri yapılarını dolaşmak için.
- Koşullar sağlandığında bir işlemi sürekli yürütmek için.
Fonksiyon
Fonksiyon, programlamada belirli bir görevi gerçekleştiren, tekrar kullanılabilir bir kod bloğudur. Fonksiyonlar, karmaşık işlemleri daha küçük, yönetilebilir parçalara ayırarak kodun daha okunabilir ve bakımı kolay olmasını sağlar. Ayrıca aynı işlemi farklı yerlerde tekrarlamadan kullanma imkanı sunar.
Fonksiyonun Temel Bileşenleri:
- Fonksiyon adı: Fonksiyonu çağırmak için kullanılan isim.
- Parametreler (Opsiyonel): Fonksiyonun çalışması için gerekli olan giriş değerleridir.
- Fonksiyon gövdesi: Fonksiyonun gerçekleştirdiği işlemleri içeren kod bloğudur.
- Dönüş değeri (Opsiyonel): Fonksiyonun sonucunda döndürdüğü veri.
Farklı programlama dillerinde fonksiyonlar farklı şekillerde tanımlanabilir. Aşağıda Python’da bir fonksiyon örneği verilmiştir:
Kod:
def topla(a, b): # "topla" adlı fonksiyon, iki parametre alır
return a + b # a ve b'yi toplayıp sonucu döndürür
Bu örnekte:
- toplafonksiyonunun adı.
- a ve b, fonksiyona verilen iki parametre.
- return a + b fonksiyonun sonucunu döndürür.
Fonksiyon tanımlandıktan sonra, çağrılarak kullanılabilir:
Kod:
sonuc = topla(3, 5) # topla fonksiyonu 3 ve 5 değerlerini alır ve sonucu döndürür
print(sonuc) # 8 çıktısı verir
Fonksiyonların Avantajları:
- Tekrar kullanılabilirlik: Bir kez tanımlandıktan sonra, aynı kodu birden fazla yerde tekrar yazmadan kullanabilirsiniz.
- Modülerlik: Fonksiyonlar, karmaşık işlemleri daha küçük ve anlamlı parçalara bölmenizi sağlar.
- Okunabilirlik: Kodun daha düzenli ve anlaşılır olmasına katkı sağlar.
- Bakım kolaylığı: Bir fonksiyonda değişiklik yapıldığında, onu kullanan tüm yerlerde bu değişiklikler otomatik olarak uygulanır.
Sınıf (Class) :
Sınıf (class), nesne yönelimli programlamada (OOP) bir nesnenin özelliklerini ve davranışlarını tanımlayan bir yapıdır. Bir sınıf, nesnelerin şablonu veya kalıbı olarak düşünülebilir. Sınıflar, aynı türdeki nesnelerin sahip olabileceği ortak özellikler ve fonksiyonlar için bir yapı sağlar. Nesneler ise sınıfın bir örneğidir (instance).
Sınıfın Özellikleri:
- Nitelikler (Attributes): Sınıfın özelliklerini tanımlayan veri alanlarıdır. Bu nitelikler, sınıf içinde değişkenler olarak tanımlanır ve nesnenin durumunu ifade eder.
- Metotlar (Methods): Sınıfın içindeki fonksiyonlardır ve sınıfa ait nesneler üzerinde işlem yapar. Metotlar, sınıfın davranışlarını tanımlar.
- Kapsülleme (Encapsulation): Sınıfın içinde tanımlanan nitelik ve metotların dışarıdan gizlenmesini sağlayarak veri güvenliği sunar.
Python’da sınıf tanımlamak oldukça basittir. İşte bir sınıf örneği:
Kod:
class Araba:
def __init__(self, marka, model, yil): # Yapıcı metod (constructor)
self.marka = marka # Nitelikler (attributes)
self.model = model
self.yil = yil
def calistir(self): # Metot (method)
print(f"{self.marka} {self.model} çalıştırıldı.")
# Sınıfın bir örneği (instance) oluşturulur:
arac1 = Araba("Toyota", "Corolla", 2020)
arac1.calistir() # Çıktı: Toyota Corolla çalıştırıldı.
Açıklamalar:
- Sınıf Tanımı:
- class Araba ifadesi ile Araba adlı bir sınıf tanımlanmıştır.
- Yapıcı Metot ( __init__): Bir sınıftan yeni bir nesne oluşturulduğunda çağrılan özel bir metottur. Parametre olarak marka , model ve yıl alır ve bunlar nesnenin nitelikleri olarak saklanır.
- Nitelikler: self.marka , self.model , ve self.yil o nesnenin özelliklerini saklar.
- Metot: calistirmetodu, sınıfa ait nesnelerin belirli bir işlevi yerine getirmesini sağlar. Bu örnekte, aracın çalıştırıldığını belirten bir mesaj yazdırılır.
- Kapsülleme: Veriler ve bu verilere erişim metotları tek bir yapı içinde toplanır, bu da veri güvenliği sağlar.
- Modülerlik: Programın bölümlerini daha yönetilebilir parçalara ayırmanıza olanak tanır.
- Kalıtım (Inheritance): Bir sınıf başka bir sınıftan türetilip, özelliklerini ve metotlarını miras alabilir. Böylece kod tekrarını azaltır.
- Polimorfizm (Polymorphism): Farklı sınıfların aynı isimdeki metotları farklı şekillerde uygulayabilmesi anlamına gelir.
Hata ayıklama (Debugging):
Hata ayıklama (debugging), bir programda yanlış çalışan veya hata veren kısımları bulup düzeltme işlemidir. Program yazarken bazen beklenmeyen hatalar oluşabilir. Hata ayıklama, bu hataların neden olduğunu bulup, onları düzeltme sürecidir.
Hata Ayıklama Adımları:
- Hatanın fark edilmesi: Programın beklenmedik bir şekilde çalışması veya hata mesajı göstermesi.
- Hatanın nerede olduğunu bulma: Kodun hangi kısmında hata olduğunu araştırmak.
- Hatanın düzeltilmesi: Hatanın olduğu kodu düzeltmek.
- Test etme: Düzeltilen kodun doğru çalışıp çalışmadığını kontrol etmek.
Bir programda bir toplama işlemi doğru sonuç vermiyorsa, önce hatanın nerede olduğunu bulur, sonra o kısmı düzeltiriz. Düzeltmeden sonra programı tekrar çalıştırarak hatanın çözülüp çözülmediğini kontrol ederiz.
Derleyici (Compiler):
Derleyici (compiler), bir programlama dilinde yazılmış kodu, bilgisayarın anlayabileceği makine diline çeviren bir yazılımdır. Programcıların yazdığı kaynak kod genellikle insan tarafından anlaşılabilen bir dildedir (örneğin C, C++, Java gibi). Ancak, bilgisayarlar bu kodları doğrudan anlayamazlar. İşte bu noktada derleyici devreye girer.
Derleyicinin Çalışma Aşamaları:
- Kaynak kodu analiz eder: Programcı tarafından yazılmış kodu okur ve hataları kontrol eder.
- Kodun çevirisi: Bu kodu makine diline (binary yani 0'lar ve 1'lerden oluşan dil) çevirir.
- Çıktı oluşturma: Derlenen kodun sonucunda çalıştırılabilir bir program dosyası (örneğin, .exe) oluşturur.
Bir C programı yazdığınızda, derleyici bu kodu bilgisayarın çalıştırabileceği bir hale getirir. Programcı kodu yazar, derleyici onu alır, hataları bulur ve son olarak bilgisayarın anlayabileceği bir dilde dosya üretir.
Özetle, derleyici yazılımı bilgisayarın anlayacağı dile dönüştüren bir araçtır.
by wolfgang at 09-13-2024, 12:56 PM
0 comments
Windows işletim sistemi kullanırken, uygulamaların aniden yanıt vermemesi veya donması oldukça can sıkıcı olabilir. Bu gibi durumlarda genellikle uygulamayı kapatmak için pencerenin sağ üst köşesindeki "X" simgesine tıklarız ya da Alt + F4 kısayolunu kullanırız. Ancak, bu yöntemler işe yaramadığında çoğumuz Görev Yöneticisi'ni açarak uygulamayı manuel olarak sonlandırmayı deneriz.
Microsoft, bu süreci daha da kolaylaştırmak adına, bir uygulamanın görev çubuğundaki simgesine sağ tıklanarak doğrudan "Görevi Sonlandır" seçeneğini kullanmayı sağlayacak yeni bir özellik üzerinde çalışıyor. Bu özellik, ilk olarak 25290 numaralı test sürümlerinde gizli olarak yer alıyordu, ancak şimdi bazı Windows Insider erken erişim derlemelerinde aktif hale getirildi.
Özellikle Dev Channel kullanıcılarına sunulan Build 23430 sürümü ile birlikte, bu yeni "Görevi Sonlandır" seçeneğini etkinleştirmek mümkün hale geldi. Bu işlevi aktif hale getirmek için Ayarlar > Güncelleştirme ve Güvenlik > Geliştiriciler için menüsüne gidip "Görevi Sonlandır (End Task)" seçeneğini açmanız yeterli. Ancak, şu an için bu işlevin her zaman sorunsuz çalışmadığını belirtmekte fayda var.
Bu özellik tam olarak kullanıma sunulduğunda, donmuş uygulamaları kapatmak çok daha pratik hale gelecek. Artık Görev Yöneticisi'ni açıp uygulamayı aramak yerine, görev çubuğundaki simgeye sağ tıklayarak uygulamayı kapatabileceğiz.
Forum: Ağ Bağlantıları
by wolfgang at 09-10-2024, 04:44 PM
0 comments
Classless Inter-Domain Routing (CIDR), IP adreslerini ve yönlendirme tablolarını daha verimli bir şekilde yönetmek için kullanılan bir yöntemdir. CIDR, IP adreslerini "sınıfsız" bir şekilde organize ederek IP adres alanlarının daha esnek kullanılmasını sağlar. Bu sistem, 1993 yılında geleneksel IP adres sınıflandırma yöntemlerinin (A, B, C sınıfları) yerini almak üzere tanıtıldı.
CIDR Nasıl Çalışır?
CIDR, IP adreslerini bloklar halinde gruplar ve bu blokları yönlendirme amacıyla kullanır. Bu bloklar, "IP adresi/bitsayısı" formatında ifade edilir. Örneğin, 192.168.1.0/24 ifadesi, ilk 24 bitin ağ kısmını temsil ettiği bir IP adres bloğunu belirtir. Geri kalan bitler, bu ağ içindeki bireysel cihazlara atanır.
CIDR'in Avantajları
CIDR Nasıl Çalışır?
CIDR, IP adreslerini bloklar halinde gruplar ve bu blokları yönlendirme amacıyla kullanır. Bu bloklar, "IP adresi/bitsayısı" formatında ifade edilir. Örneğin, 192.168.1.0/24 ifadesi, ilk 24 bitin ağ kısmını temsil ettiği bir IP adres bloğunu belirtir. Geri kalan bitler, bu ağ içindeki bireysel cihazlara atanır.
CIDR'in Avantajları
- Daha Verimli IP Kullanımı: CIDR, ağ yöneticilerinin IP adreslerini ihtiyaçlarına göre daha esnek bir şekilde ayarlamalarını sağlar. Bu, IP adreslerinin israfını önler.
- Yönlendirme Tablosu Boyutunun Azalması: CIDR, yönlendirme tablolarındaki giriş sayısını azaltarak yönlendiricilerin daha verimli çalışmasına yardımcı olur.
- Ağların Daha Kolay Bölünmesi: CIDR, büyük ağların daha küçük alt ağlara bölünmesini kolaylaştırır.
by wolfgang at 09-10-2024, 04:32 PM
0 comments
Windows lisansınız orijinal değilse veya bilgisayarınızda uyumlu olmayan bir Windows sürümü yüklüyse, etkinleştirme hatırlatması sürekli karşınıza çıkabilir. Örneğin, PC’nizi ilk aldığınızda Windows 10 Home ile birlikte geldiğini varsayalım. Windows 10 Pro’ya yükseltme oldu ise veya bazı güncelleştirmeler yapıldı ise, “Windows lisansınızın süresi yakında dolacak” gibi etkinleştirme sorunu yaşayabilirsiniz.
Bazı durumlarda, Windows PC’nizi yeniden başlatmak sorunu çözebilir. Hatırlatıcı açılmaya devam ederse, cihazınıza yeniden bir kurulum yapılması veya aşağıdaki sorun giderme yöntemlerinin denenmesi gereklidir.
Windows’u yeniden etkinleştirin;
# Başlat ‘cmd‘ yazın komut istemcisine” sağ tıklayın ve “Yönetici” olarak başlatın.
# Ardından ilk satıra “slmgr -rearm” şeklinde komutu yazın.
# Enter tuşuna bastıktan sonra biraz bekleyin bir satır aşağı inecek.
# Bilgisayarınızı yeniden başlatın, bu işlem sonrasında aktivasyon büyük bir ihitmalle olmuş olacaktır.
Bazı durumlarda, Windows PC’nizi yeniden başlatmak sorunu çözebilir. Hatırlatıcı açılmaya devam ederse, cihazınıza yeniden bir kurulum yapılması veya aşağıdaki sorun giderme yöntemlerinin denenmesi gereklidir.
Windows’u yeniden etkinleştirin;
# Başlat ‘cmd‘ yazın komut istemcisine” sağ tıklayın ve “Yönetici” olarak başlatın.
# Ardından ilk satıra “slmgr -rearm” şeklinde komutu yazın.
# Enter tuşuna bastıktan sonra biraz bekleyin bir satır aşağı inecek.
# Bilgisayarınızı yeniden başlatın, bu işlem sonrasında aktivasyon büyük bir ihitmalle olmuş olacaktır.
Hoşgeldin, Ziyaretçi
Sitemizden yararlanabilmek için kayıt olmalısınız. |
Forumda Ara
|
Forum İstatistikleri
Toplam Üyeler 145 Son Üye crypto7leply Toplam Konular 1,035 Toplam Yorumlar 1,041 |
Kimler Çevrimiçi
Şu anda 94 aktif kullanıcı var. (1 Üye - 93 Ziyaretçi) Rhetajadly |
Son Yazılanlar
Ugikido
Last
by Rhetajadly 0 Replies |
Evifuqa
Last
by Rhetajadly 0 Replies |
Xutudoj
Last
by Rhetajadly 0 Replies |
Vegibus
Last
by Rhetajadly 0 Replies |
Furejod
Last
by Rhetajadly 0 Replies |
Laxuruk
Last
by Rhetajadly 0 Replies |
Esoyura
Last
by Rhetajadly 0 Replies |
Ipuwaji
Last
by Rhetajadly 0 Replies |
Hadizam
Last
by Rhetajadly 0 Replies |
Ifuzebu
Last
by Rhetajadly 0 Replies |