SQL İnjection Nedir?

SQL injection; veritabanına dayalı uygulamalara veya sitelere saldırmak için kullanılan bir saldırı tekniğidir. Burada saldırgan, standart uygulama ekranındaki ilgili alanlara yeni SQL ifadeleri eklemek için SQL dil özelliklerini kullanır. Sistem içerisinde erişilmek istenilen herhangi bir veri içerisine SQL sorguları gömülür ve bu gömülen sorgular çalışmayı devam ettirebilirse sisteme sızılmış olur ve SQL injection açığı bulunur. Örneğin kendisini de uygulamanın içerisindeki bir kullanıcı olarak gösterip sisteme sızabilir. SQL injection uygulamalardaki güvenlik açıklarından beslenir. Çoğunlukla web sitelerini ele geçirmek için kullanılsa da SQL injection ile SQL veritabanlarına da saldırı gerçekleştirilebilir.

SQL injection saldırıları, kullanıcı bilgilerini ele geçirip üzerinden işlemler yapmaya, mevcut verilere ulaşıp üzerinde değişiklikler yapmaya, verileri ifşa etmeye , verileri yok etmeye, sunucu üzerinde sistem yöneticisi olmaya olanak sağlayan bir saldırı biçimidir.

SQL injection temelde 2 sınıfa ayrılarak ele alınmaktadır. Bunlar;

  • Hata Tabanlı SQL İnjection

Hata tabanlı SQL injectionın temelinde siteyi hataya zorlayıp açık aramak vardır. Bu açıklığın kendi arasında 2 alt sınıfı bulunmaktadır bunlar; Union ve Double dır. Site hataya zorlanır ve hata bulunursa  SQL injection açıklığı bulunmuş olur.

  • Blind SQL İnjection

Blind SQL injection, kör atış SQL saldırılarıdır. Veritabanına direk olarak ulaşılıp üzerinde işlem yapılamaz fakat alınmak istenen veriye göre harf harf işlem yaparak doğru sonuçlara ulaşır. Manuel olarak yapılması epey uğraştırıcıdır. Blind SQL injection da 2 alt başlığa ayrılmaktadır bunlar; Boolean ve Zaman tabanlıdır.

Boolean SQL injection içerisinde mantıksal ifadenin sonucuna göre True veya False olarak döner. Zaman tabanlı SQL injection da ise, sisteme gönderilen sorgunun çalışıp çalışmadığı soru yöntemiyle tespit edilemediğinden sorgu içerisine sleep() ve benzeri fonksiyonlar eklenerek sistemin vereceği cevabın gecikip gecikmediğine odaklanarak saldırı işlemini gerçekleştirir.

SQL Sorgusu Nedir?

SQL sorguları ile her kullanıcıya özel veri görünümleri oluşturmak üzere veritabanları oluşturup bunları yönetmek için kullanılan standartlaşmış bir dildir. SQL sorguları ile, kayıtlar yapabilir, kayıt silebilir, kayıt güncelleyebilir, veriler alabilirsiniz.

SQL İnjection Nasıl Yapılır?

Sql injection pek çok güvenlik açığından faydalanarak sistemi ele geçirebilir. Örneğin, bir siteye giriş yapıyoruz. Kullanıcı adımız “kullanici” şifremiz ise “123” olsun. Giriş butonuna tıkladığımızda yapılan yazılım veritabanına şöyle bir sorgu gönderecektir:

SELECT*FROM kullanicilar Where ad=’kullanici’ AND sifre=’123’

Bu sorgu sonucunda böyle bir kullanıcı bulunursa sistem girişinize izin verecektir, yanlış ise de izin vermeyecektir. Bir de kullanıcı ve şifre alanlarını ‘OR 1=1 ifadesi yazdığımızda ortaya çıkan sorguyu inceleyelim.

SELECT*FROM kullanicilar Where ad=’ ’OR 1=1 – – ‘  AND sifre=’ ’OR 1=1 – -‘  gibi bir sorgu çalışacaktır.

Eğer sitede yapılan yazılım SQL injectionu algılayıp filtreleyebilir bir yazılım ise girişinizi engelleyecektir, filtrelemiyor ise güvenlik açığı bulunmakta ve bundan dolayı da girişinize izin verecektir.

 OR 1=1 – – ifadesi SQL dilinde  her zaman true döndüren bir ifadedir. Bu yüzden giriş doğru yapıldı zannedip girişe izin verecektir.

Başka bir örnek daha verecek olursak; makale sitemiz olsun ve bu makaleler id’lerine göre listelensin. Örneğin, makale.php?id=2 . Burada saldırgan ilk olarak id’ye göre hareket edecek ve id kısmına yani bizim 2 olarak yazdığımız kısma tek tırnak işareti (‘) koyarak işe başlayacaktır. SQL açığı var ise burada veritabanı hata verecektir. Bu hata ile de istediğimiz veriye ulaşmamız mümkün. Bu gibi saldırıları engellemek için sitemiz yazılımında EROR-404 sayfası oluşturarak webconfig  ayarlarında tanımlamamız hataları saldırgana ve kullanıcıya göstermeyecektir.

SQL İnjection Saldırısından Nasıl Korunur?

Veritabanlarımızı oluştururken kullanıcıdan alacağımız her bilgiye tek tırnak (‘) ve çift tırnak (“) karakterleri getirilerek saldırıdan korunabiliriz. Bu karakterleri ister karakter koduna çevirerek yapmalıyız ister karakterin başına kaçırma karakteri (\) ekleyerek kullanmalıyız. Bu durumda SQL girilen karakterleri komut olarak algılamayacaktır.

Bir başka korunma yöntemi ise kesinlikle SQL sorgularınızı basite indirgememeniz olacaktır. Store Procedure ve Parametreler kullanarak yapmanız sizi daha güvenli tutacaktır.

SQL injection saldırılarına karşı kod yazarak da potansiyel saldırılara karşı korunabilmek mümkün. Sitenizde yapılan her işlemi kontrol altında tutacak, tehlikeli gördüğü karakterleri kontrol altına alıp işlem yapılmasını engelleyen bir kod ile de korunabilirsiniz.

CMD Komutları Nedir? CMD Komutları Nasıl Çalışır?

CMD komutları, Windows işletim sistemi ile çalışan cihazlarda MS-Dos tabanlı olarak bir kod yazma konsoludur. CMD komutları ile Windows işletim sisteminizde birçok kod ile birçok bilgiye veya uygulamaya erişebilirsiniz. CMD komutları ile bilgisayarınızdaki hataları da görebilir ve bu hataları yine CMD komutları ile onarabilirsiniz.

CMD ekranına ulaşabilmek için iki seçeneğiniz bulunmaktadır. İlk yöntem Windows + R tuş kombinasyonudur. Windows + R tuş kombinasyonuna bastıktan hemen sonra ekrana gelen pencereye “CMD” yazıp Tamam’a basmanız yeterli karşınıza CMD ekranı açılacaktır. CMD ekranına ulaşabilmek için ikinci yöntem ise, Windows arama çubuğunuza CMD veya komut istemi olarak yazmanız. Bu yöntem ile de CMD ekranınıza ulaşabilirsiniz. CMD ekranına ulaştıktan sonra ihtiyacınız olan kod ile istediğiniz işlemleri yapabilirsiniz.

CMD Komutları Ne İşe Yarar?

CMD komutları, CMD ekranınıza yazdığınız komut satırına pek çok kısayol kodları yazarak bilgilere daha kolay ulaşmanızı sağlayan kod parçacıklarıdır. CMD ekranında en çok kullanılan komut “ping” komutudur. Ping komutu ile komut satırında belirtilen web sitesine veya TCP/IP adresine erişim olup olmadığı ya da kaç saniyede erişim sağlandığı gibi bilgiler elde edilebilir.

CMD Kodları Nelerdir?

Komut istemcisi olarak bilinen CMD içerisinde çok fazla sayıda komut bulunmaktadır. İşte o komutlar ve o komutların ne işe yaradığına dair bilgiler;

calc.exe komutu – Hesap makinesini açar.

diskmgmt.msc komutu – Disk yönetimini açar.

devmgmt.msc komutu – Aygıt yöneticisini açar.

dfrg.msc komutu – Disk birleştiriciyi açar.

eudcedit.exe komutu – Karakter imal edebilirsiniz.

appwiz.cpl komutu – Program ekle kaldırı açar.

access.cpl komutu – Erişebilirlik seçeneklerini açar.

accwiz.exe komutu – Erişebilirlik sihirbazını açar.

desk.cpl komutu – Görüntü özelliklerini açar.

eventvwr.exe komutu – Olay görüntüleyicisini açar.

freecell.exe komutu – İskambil oyununu açar.

fsmgmt.msc komutu – Paylaşılan klasörler menüsünü açar.

hdwwiz.cpl komutu – Donanım ekleme sihirbazını açar.

iexpress.exe komutu – Setup programını açar.

intl.cpl komutu – Bölge ve dil ayarlarını açar.

joy.cpl komutu – Oyun kontrollerini açar.

magnify.exe komutu – Büyüteci açar.

main.cpl komutu – Fare özelliklerini açar.

mmsys.cpl komutu – Ses ayarlarını açar.

mspaint.exe komutu – Paint programını açar.

narrator.exe komutu – İngilizce ekran okuyucusunu açar.

ntbackup.exe komutu – Yedekleme sihirbazını açar.

nusrmgr.cpl komutu – Kullanıcı hesaplarını açar.

osk.exe komutu – Ekran klavyesi açar.

telnet.exe komutu – Telnet’i açar.

spider.exe komutu – Kağıt oyununu açar.

gpedit.msc komutu – Grup poliçesi açar.

msconfig.exe komutu – Sistem ayarlarını açar.

verifier.exe komutu – Sürücü monitörünü açar.

drwtsn32.exe komutu – Sorun tanıma aracını açar.

dxdiag.exe komutu – DirectX sürümünüzü öğrenmenizi sağlar.

mobsync.exe komutu – Senkronizasyon sağlar.

mplay32.exe komutu – Media Player’ın çok basit bir halini açar.

odbcad32.exe komutu – Database işleme sağlar.

packager.exe komutu – Obje paketleyiciyi açar.

perfmon.exe komutu – Sistem monitörünü açar.

progman.exe komutu – Masaüstü yöneticisini açar.

rasphone.exe komutu – Erişim defterini açar.

shrpubw.exe komutu – Network paylaşımı bilgisini açar.

sigverif.exe komutu – İmza denetleyicisini açar.

sysedit.exe komutu – Sistem yöneticisini açar.

syskey.exe komutu – Şifre database’i açar.

sndrec32.exe komutu – Ses kaydedicisini açar.

timedate.cpl komutu – Tarih ayarlama penceresini açar.

tourstart.exe komutu – Windows XP turu başlatır.

winchat.exe komutu – Windows içinde bulunan chat programını açar.

winmine.exe komutu – Mayın Tarlası oyununu açar.

write.exe komutu – WordPad’i açar.

wupdmgr.exe komutu – Windows güncelleştirme penceresini açar.

explorer.exe komutu – Windows Gezginini açar.

powercfg.cpl komutu – Güç seçeneklerini açar.

rasphone.exe komutu – Ağ bağlantılarını açar.

regedt32.exe komutu – Windows Kayıt Düzenleyicisi’ni açar.

regedit.exe komutu – Windows Kayıt Düzenleyicisi’ni açar.

sndvol32.exe komutu – Ses ayarlarını yapmanızı sağlar.

notepad.exe komutu – Not defterini açar.

taskmgr.exe komutu – Görev yöneticisini açar

compmgmt.msc komutu – Bilgisayar yönetimini açar.

clipbrd.exe komutu – Pano işlemcisini açar.

cleanmgr.exe komutu – Disk temizleyiciyi açar.

ciadv.msc komutu – Dizin yöneticisini açar.

charmap.exe komutu – Karakterleri ayarlamanızı sağlar

hdwwiz.cpl komutu – Donanım kontrol panelini açar.

inetcpl.cpl komutu – İnternet kontrol panelini açar.

sysdm.cpl komutu – Sistem özelliklerini görüntüler.

wuaucpl.cpl komutu – Otomatik güncelleme ayarlarını açar.

Dosya Adına Göre Çalışan CMD Komutları;

wscui.cpl komutu – Windows XP Güvenlik Duvarını açar.

comexp.msc komutu – Bileşen Hizmetlerini açar

regedit.exe komutu – Kayıt Defteri Düzenleyicisini açar.

cleanmgr.exe komutu – Disk Temizlemeyi açar.

compmgmt.msc komutu – Bilgisayar Yönetimini açar.

certmgr.msc komutu – Sertifikaları görüntüler.

devmgmt.msc komutu – Aygıt Yöneticisini açar.

eventvwr.msc komutu – Olay Görüntüleyicisini açar.

gpedit.msc komutu – Grup ilkesini açar.

ntmsmgr.msc komutu – Çıkarılabilir Depolama Birimlerini gösterir.

services.msc komutu – Hizmetleri açar.

CMD.exe komutu – Dos Komut Satırını açar.

taskmgr.exe komutu – Windows Görev Yöneticisini açar.

dxdiag.exe komutu – DirectX Tanı Aracını açar.

diskmgmt.msc komutu – Disk Yönetimine ulaşır.

ciadv.msc komutu – Dizin Oluşturma Hizmetini açar.

dfrg.msc komutu – Disk Birleştiricisini açar.

fsmgmt.msc komutu – Paylaşılan Klasörleri gösterir.

lusrmgr.msc komutu – Yerel Kullanıcılar ve Grupları görüntüler.

perfmon.msc komutu – Performansı gösterir.

secpol.msc komutu – Yerel Güvenlik ilkesini açar.

Sistem Araçları İçin Kullanılan CMD Komutları;

narrator.exe komutu – Sesli okuyucuyu açar.

logon.exe komutu – Windows’u kısa süreli olarak kapatıp açmaya yarar.

eudcedit.exe komutu – Yazı karakteri oluşturucusudur.

nslookup.exe komutu – Gerçek bağlantı kurduğunuz yerin IP adresini bulabilmeniz için kullanılır.

shrpubw.exe komutu – Paylaşılan klasörü oluşturmak için kullanılır.

syskey.exe komutu – Windows şifrelemesi yapar. (Bu komutta şifreyi bir kez girerseniz bir daha devre dışı bırakamazsınız.)

C:\\WINDOWS\\system32\\tsshutdn.exe komutu – Sistemi 60 saniyede kapatmak için kullanılır.

C:\\WINDOWS\\system32\\webfldrs komutu – Sistemdeki diyalogları siler kurar.

C:\\WINDOWS\\system32\\attrib.exe komutu – Sistemdeki .dll .exe .inf vs. uzantılı dosyaları listeler.

compmgmt.msc komutu – Bilgisayar Yöneticisini açar.

control appwiz.cpl komutu – Program Ekle Kaldır’a girer.

control timedate.cpl komutu – Tarih Saat özelliklerine erişir.

control desk.cpl komutu – Ekran özelliklerine girer.

control findfast.cpl komutu – Hızlı bul fonksiyonunu açar.

control fonts komutu – Fontları görüntüler.

control inetcpl.cpl komutu – İnternet Özelliklerini görüntüler.

control main.cpl keyboard komutu – Klavye özelliklerini görüntüler.

control main.cpl komutu – Mouse Özelliklerini görüntüler.

control mmsys.cpl komutu – Multimedya Özelliklerini görüntüler

control netcpl.cpl komutu – Ağ Özelliklerini görüntüler

control password.cpl komutu – Şifre özelliklerini görüntüler.

control printers komutu – Printer işlemlerini  açar.

control mmsys.cpl sounds komutu – Ses Özelliklerini açar.

control sysdm.cpl komutu – Sistem Özelliklerini açar.

GitHub Nedir? Github’a Nasıl Proje Gönderilir?

GitHub nedir diye başlamadan önce ilk olarak ‘git’ kavramını ele almalıyız. Peki nedir bu git? Git geliştirmiş olduğumuz projeleri veya uygulamaları internet üzerinde tutabilmemizi sağlayan bir versiyon kontrol sistemidir. GitHub ise git yazılımı ile entegre edilen bir depolama sistemidir. GitHub sayesinde projelerinizi depolayabilir ve takım çalışmaları yapabilirsiniz bunun yanında GitHub üzerinden projelerinizi dünya ile paylaşabilir, paylaşılan kodları inceleyerek kendinizi de geliştirebilirsiniz. Kısacası her yazılımla uğraşan kişinin hem projelerini depolaması hem de başka insanların kodlarından gelişebilmesi için kullanması gereken mutlak depolama sistemidir.

GitHub Nedir? Öncelikle GitHub’ı kullanabilmek için github.com adresi üzerinden bir hesap açmanız gerekmekte. Kayıt işlemlerinizi tamamladıktan sonra projelerinizi GitHub üzerinden paylaşmaya başlayabilirsiniz. GitHub’ın kullanıcılara sunduğu Windows ve Mac işletim sistemleri için geliştirmiş olduğu bir uygulama da bulunmakta, bu uygulama sürükle bırak mantığıyla çalışır ve bu şekilde projelerinizi GitHub adresinizde depolayabilirsiniz. Bu uygulamayı da github.com adresinizden edinebilmektesiniz. Bir başka seçenek de komut sistemi üzerinden projeleri GitHub adresine göndermektir. Burada sizlere komut üzerinden projeleri göndermeyi anlatacağım.

Github Nedir Github’a Proje Nasıl Gönderilir?

GitHub Nedir? GitHub’a proje gönderme işleminde yapacağımız ilk şey GitHub hesabımıza girip yeni bir repo oluşturmamız. Bunun için sol kısımda bulunan Repositories alanında ‘New’ butonuna tıklamanız yeterli. Açılan pencerede Repository Name kısmına projenizin adını eklemelisiniz. Description kısmına ise projenizin açıklamasını ekleyebilmektesiniz. Daha sonrasında GitHub bize Public veya Private olarak 2 seçenek sunmakta. Public seçeneği ile projenizi herkese açık olarak yükleyebilmektesiniz, Private seçeneği ile de yükleyeceğiniz projeyi yalnızca siz görebilmektesiniz.

Git Komutları Nedir Nasıl Kullanılır?

Git komutları geliştirdiğiniz uygulamaları veya projeleri GitHub adresinizde depo etmeye yarayan komutlardır. İlk olarak bilgisayarımıza git versiyon sistemini indirmeliyiz. Git versiyon sistemini https://git-scm.com/downloads linkinden indirebiliriz. Git indirme işlemimiz bittikten sonra kurulumumuzu da yapıp işlemimizi tamamlıyoruz.

Daha sonra projemizi veya uygulamamızı yazdığımız proje dosyamızın olduğu kısma geliyoruz. Proje klasörümüzün içerisinde boş bir alana Mouse ile sağ tık yaparak açılan pencerede “Git Bash Here” seçeneğine tıklıyoruz ve komut istemine “git init” komutunu ekliyoruz. Bu komut projemizin GitHub reposuna gönderilmesi arasındaki bağı sağlayacak ve proje klasörünüzün içerisinde .git uzantılı bir klasör oluşturacak.

Projelerimizi durumunu görüntüleyebilmek için ise bir sonraki kullancağımız komut “git status” komutudur. GitHub’a yüklenen dosyalar yeşil renk ile yüklenmeyen dosyalar ise kırmızı renkte gözükür. Şu an hepsi kırmızı gözükür. Projelerimizi listeledik ve bu proje klasöründeki her dosyayı GitHub’a yüklemek istiyor isek “git add . “ komutunu kullanırız. Klasörün hepsini değil de sadece içerisinden birkaç dosyayı GitHub’a göndermek istersek de, “github add göndermek istediğimiz dosyanın adı” şeklindeki komutu kullanırız. Daha sonrasında projelerimizin durumunu tekrar görüntülemek için “git status” komutunu tekrar komut istemine yazabiliriz.

Projelerimizi yükledikten sonra projemize bir commit yani proje içerisinde yaptığımız bir işlemin açıklamasını ekliyoruz. Bu komut ise “git commit -m açıklama” şeklindedir.

Projelerimize commit ekledikten sonra sıra geldi artık projemizi göndermeye. Bu işlemi repo oluşturduğumuz kısımda GitHub’ın bize verdiği kod parçacıkları ile yapıyoruz. İlk olarak git “remote add origin https://github.com/kullaniciadiniz/projeadiniz.git” kodunu komut istemimize kopyalayıp yapıştırıyoruz ve enter tuşuna basıyoruz.

Bu işlem tamamlandıktan sonra geriye son bir adımımız kalıyor. GitHub üzerindeki son kod satırını da komut istemcimize ekleyerek işlemimize devam ediyoruz. Eklememiz gerek kod satırı ; “git push -u origin master” yazan kod satırıdır. Bu satırı da bir önceki eklediğimiz kod satırı gibi kopyalayıp komut istemcimiz üzerine yapıştırıyoruz ve enter tuşuna basıyoruz. Bu işlem diğer yaptığımız işlemlerden biraz daha uzun sürebilir çünkü bu kod satırı ile projemizi GitHub reposuna eklemiş oluyoruz. Komut istemindeki çalışan kısımın 100% olması size işleminizin tamamlandığını gösterir. Bu işlemden sonra komut isteminizi kapatabilirsiniz. GitHub’ı internet tarayıcınız üzerinden yenilediğinizde projenizin Github reposuna yüklendiğini göreceksiniz.

Gitignore Nedir?

Gitignore .gitignore uzantılı bir dosyadır. Bu dosya git reposundan hariç tutulan dosyaların bilgisini tutan, repo ana dizininde bulunan bir ayar dosyasıdır. Git bu dosyayı okuyup hariç tutulan dosyaların bilgisini alıp bu dosyaları işlemeyecektir. Bu dosya komutlarla yazılır.  Örneğin belirli bir dosyayı hariç tutmak için “config.php”, belirli bir dizini hariç tutmak için “logs/”, belirli uzantılı dosyaları hariç tutmak için “*.styl”  gibi komutlar kullanılır.

GitHub’dan Proje Nasıl Silinir?

GitHub Proje Silme, GitHub üzerinden projenizin görüntülenmesini istemiyorsanız veya yanlış bir projeyi GitHub’ a aktardıysanız projeyi silmeniz gerekebilir. Peki proje GitHub üzerinden nasıl silinir?

GitHub projenizi silmek için ilk olarak internet tarayıcınız üzerinden github.com adresinden giriş yapınız. Giriş yaptıktan sonra sağ üst köşeden profilinize giriniz. Repositories kısmına gelip silmek istediğiniz repoya tıklayınız. Settings kısmından en alt kısma ininiz ve oradaki “delete this repositories” butonuna tıklayınız. Karşınıza gelen ekranda sizden reponuzun adınız yazmanızı isteyecektir. Yazdıktan sonra alttaki buton aktif hale gelecek ve tıkladığınızda reponuz GitHub adresinizden silinmiş olacaktır.

Sorularınızı bağlantılı hesaplarımdan veya iletişim bölümünden sorabilirsiniz. Bir sonraki yazımda görüşmek üzere!

WordPress’te Mutlaka Olması Gereken 5 Eklenti

WordPress Nedir? WordPress Eklentileri Nedir?

WordPress; herhangi bir kodlama bilgisi olmadan tek bir tıklama ile çeşitli içerik oluşturmanıza, yayınlamanıza ve yönetmenize izin veren bir içerik yönetim sistemidir. PHP ile programla dili ve MySQL kullanılarak  yazılmış açık kaynak kodlu bir web sitesi oluşturma aracıdır. WordPress, mevcut içerik yönetim sistemindeki en basit, en güçlü ve en popüler araçtır, web sitesinin içeriğini internet bağlantısı olan bir bilgisayardan, tabletten veya cep telefonundan düzenlemenizi ve yeni yayınlar ve sayfalar oluşturmanızı sağlar.

İnternette gördüğünüz her dört web sitesinden biri WordPress kullanılarak oluşturulmuştur. WordPress en büyük internet devrimlerinden biridir. WordPress’te ücretsiz olarak tüm kodlara erişim sağlayıp üzerinde düzenlemeler yapabilir ve WordPress Eklentileri ile de sitenize ihtiyacının olanları kolaylıkla ekleyebilme imkanı sunar.

WordPress Eklentisi siteye eklenilmesi istenen fonksiyonlar veya kod parçacıklarıdır. WordPress Eklentileri sitenizde gereksinim duyduğunuz ihtiyaçlara yönelik paket programlardan oluşmaktadır. WordPress Eklentilerini web sitenize kolayca entegre edebilir ve ardından kullanmaya başlayabilirsiniz. WordPress Eklentileri birçok kategoriye ayrılmıştır. Bunlar; Güvenlik, Hız, E-Ticaret, Seo gibi kategorilerdir. Eklentilerin bir kısmı ücretsiz bir kısmı ise ücretli olarak bizlere sunulmuştur. Bunların arasından sitenizin ihtiyacına yönelik alımı gerçekleştirebilirsiniz.

Jetpack;

Bu WordPress Eklentisi web sitesi için gerekli olan Jetpack eklentisidir. Jetpack eklentisi ile web sitenizi koruyabilir, istatistikleri koruyabilir ve bunların yanında 50’den fazla farklı işlev ekleyebilirsiniz.

All in One SEO Pack;

Bu WordPress Eklentisi sitenin çok fazla ziyaret edilebilmesi için arama motorlarının bazı gereksinimleri karşılaması gerekir. Eklenti arama motorlarının ihtiyaçlarını karşılar ve web sitesini arama motorlarının sevdiği bir yapıya sokar.

Google XML Site Haritaları;

Bu WordPress Eklentisi bir web sitesini bir arama motoruna kaydettiğinizde, web sitenize yeni içerik eklenince arama motoru size bildireceği için sizden bir site haritası isteyecektir. Bu eklenti şu anda çalışacak ve site haritanızı oluşturacaktır.

Smush Image Compression and Optimization;

Bu WordPress Eklentisi sitenizin kalitesinden ödün vermeden gözle görülür bir hız kazandırır.

UpdraftPlus;

UpdraftPlus  WordPress Eklentisi ise belli aralıklarla sitenizin yedeğini alarak sitenizi garanti altında tutar. Bu WordPress Eklentisi ile isterseniz manuel olarak isterseniz de sistemin otomatik olarak yedeğinizi almasını sağlayabilirsiniz.

WordPress Eklentileri WordPress Filtreleme Eklentileri

WooCommerce Ürün Filtresi: Bu WordPress eklentisi cep telefonu özellikleri ekler. Çevrimiçi mağaza, sizin ve müşterilerinizin seveceği gelişmiş filtreler ekleyin. İşletmenizi daha yüksek bir seviyeye taşıyın.

Reactive Pro: Bu eklenti arama, filtreleme ve ızgaraları biçimlendirme için güçlü bir WordPress eklentisidir. 

WooCommerce: Bu eklenti ürün filtresidir. Ürün filtresi sınırsız seçenek sunar, böylece müşterileriniz her koşulda filtre uygulayabilir ve tam olarak istediklerini bulabilirler. Yapılandırmak basit ve hızlıdır.

WooCommerce Grid: Bu eklenti ürünleri tüm cihazlara otomatik olarak adapte olan düzen yöneticisidir.

WooCommerce Sipariş Kuralları: Bu eklenti WordPress WooCommerce sipariş kurallarına başvurmanıza izin verir ve filtreleri ve kuralları kullanarak komutlarda filtreleri kolayca kullanabilirsiniz.

WordPress Eklentileri WordPress’de Plugin Nedir?

 WP Plugin Türkçe karşılığı “eklenti” olan bir WordPress eklentisidir. WordPress Eklentileri web sitenizi değiştirebilecek ve WordPress’in ana özelliklerini geliştirebilecek bir uzantıdır.

WordPress’le Ne Tür Siteler Yapılabilir?

WordPress ile istediğiniz türde bir siteyi saniyeler içerisinde kolaylıkla oluşturabilir ve yayına alabilirsiniz. Örnek olarak yapılabilecek siteler; Kurumsal web sitesi, online satış sitesi, blog, portfolyo- CV sitesi, online kurs sitesi, forumlar, sosyal ağlar, galeri, üyelik gerektiren siteler gibi birçok farklı tür de site oluşturabilirsiniz.

WordPress Ücretli mi?

WordPress ücretsiz olarak kullanılmasının yanı sıra bizlere daha da olanak sağlayabilecek çeşitli ücretli planlar da sunar.

WordPress planları aşağıdaki gibidir;

Ücretsiz plan,

Blogger,

Kişisel,

Premium,

Business,

E-Ticaret.

WordPress Ücretsiz Plan İncelemesi

İlk WordPress.com planı ücretsizdir.

Hosting – WordPress.com hostinginizle sizin yerinize ilgilenir.

Domain – Ücretsiz planla ücretsiz bir domain (ornek.wordpress.com) verir. Eğer farklı bir domain istiyorsanız, ücretli planlardan birine yükseltilmesi gerekir.

Kod Erişimi Yoktur – Web sitenizin koduna erişiminiz olmayacaktır. Yani web siteniz üzerinde değişiklik yapamazsınız.

Sınırlı Tema Olanağı – Ücretsiz plan size birçok tema sağlar. Fakat daha fazlasına ulaşmak için paketinizi ücretli plana yükseltmelisiniz.

WordPress Eklentileri – Tıpkı temalar gibi, web sitenize daha fazla eklenti eklemek için ücretli bir plana yükseltmeniz gerekmektedir.

Web Sitenize dair sınırlı kontrol – Verileriniz ve içeriğiniz üzerinde tam kontrolünüz yoktur.

Parasallaşma – Eğer siteniz üzerinden para kazanmak istiyorsanız yine ücretli bir plana geçiş yapmalısınız.

WordPress Nasıl İndirilir?

WordPress’i kullanabilmek için wordpress.org adresinden veya bu linkten https://tr.wordpress.org/download/ indirip kurulumunu sağlayabilirsiniz. Kurulumdan sonra eklemek istenilen WordPress Eklentileri de sitenize ekleyebilirsiniz.

WordPress Özellikleri

WordPress’ in en önemli özellikleri açık kaynak kodlu bir proje olması ve WordPress Eklentileri ile sitenizin daha güçlü hale getirilebilir olmasıdır. WordPress GPL tarafından lisanslanmıştır. Yani, herkese açık lisansa sahiptir. WordPressPHP ve MySQL programlarını gerektirir.Bunun yanı sıra WordPress’in sahip olduğu başlıca temel özellikler ise şu şekilde sıralanabilir;.

Yerel Sunucuda Çalışma İmkânı, Taşınabilir Çekirdek, UTC Kolaylığı, Kullanıcı Yönetimi, Makinelerin ve İnsanların Anlayacağı Dilden Konuşur, Dinamik Sayfalama ve Çok Dilli Yayın, İçerik Yönetimi, Kullanıcı Deneyimi ve Tasarım ve İçeri/Dışarı Aktar gibi özellikleri mevcuttur.

PROGRAMLAMA NEDİR? PROGRAMLAMA DİLLERİ NELERDİR?

Programlama ya da diğer adıyla yazılımlama, bilgisayarın donanıma nasıl davranacağını anlatan, bilgisayara yön veren komutlar, kelimeler, aritmetik işlemlerdir.Diğer bir tanım verecek olursak programlama, bilgisayar programlarının yazılması, test edilmesi ve bakımının yapılması sürecine verilen isimdir.

Tüm programlarda, amaca ulaşmak için belirlenmiş algoritmalar bulunur. Programlar bu algoritmaları işleyerek çalışır. Algoritmaları sanal ortamda bilgisayarın anlayacağı şekilde aktarabilmek için de programlama dilleri kullanılır.

Algoritma Nedir?

Bir sorunu çözmek veya belirlenmiş bir amaca ulaşmak için tasarlanan yola, takip edilen işlem basamaklarına algoritma denir. Tüm programlama dillerinin temelinde algoritma vardır. Algoritmalar, programlama dillerinin vasıtasıyla uygulanabilirler. Programda kullanılan dil ve kullanım alanı ne olursa olsun algoritması olmayan bir program yoktur.

Programlama Dilleri Nelerdir?

  1. Alt Seviye Programlama Dilleri
  2. Orta Seviye Programlama Dilleri
  3. Yüksek Seviye Programlama Dilleri

Programlama dili, yazılımda işlenmesi istenen algoritmayı ifade etme yoludur. Tüm elektronik cihazlar ve bilgisayarlar sadece “1” ve “0” rakamlarının bulunduğu makine dilinde işlem yaparlar. Bu sebeple yazılım hangi dilde yazılırsa yazılsın bir derleyici tarafından makine diline çevirilerek işler.

Makine dilinde program yazmak meşakkatli bir iştir. Bu sebeple programlama dilleri insan diline yakınlığına bakılarak alt, orta ve üst seviye olarak sınıflandırılmıştır.

Alt seviye programlama dilleri makine dillerine oldukça yakın dillerdir. Yani bir programlama dilinin alt seviye olması, donanıma yakın programlama dili olarak da belirtilebilir. Alt seviye programlama dilleri genellikle makine diline çevrilmesi için bir derleyiciye ihtiyaç duymadan işlemciler vasıtasıyla çalıştırılabilirler. Assembly, bunlara örnek olarak verilebilir.

Orta seviye programlama dilleri, alt seviye programlama dillerine göre daha anlaşılırdır. Oldukça esnek olan bu diller hem alt hem üst seviye programlama yapabilirler. Yani orta seviye programlama dilleri ile hem bilgisayar programlama hem de donanım programlama yapılabilir. C programlama dili, orta seviye dillere örnek olarak verilebilir.

Yüksek seviye programlama dillerine gelecek olursak en hızlı ve en etkili programlama dilleridir. Üst seviye programlama dilleri donanım programcılığına en uzak dillerdir. Bir diğer deyişle bilgisayar programcılığına hitap eder. BASIC programlama dili bu kategoriye örnek olarak gösterilebilir.

En Çok Kullanılan Programlama Dilleri (*)

Elektrik ve Elektronik Mühendisleri Enstitüsü (IEEE), en popüler programlama dillerini sıraladığı IEEE Spectrum listesinin 2017 sonuçlarını açıkladı. IEEE bu çalışmasında GitHub’da bulunan 300 programlama dilini esas aldığını belirtiyor. Tüm programlama dillerinin baz alınarak en popülerlerinin belirtildiği genel listede bu diller sıralanıyor.

İşte en çok kullanılan programlama dilleri:

Bu diller web, mobil ve elektronik gibi uygulamalarda kullanılan programlama dilleri olarak da ayrıca sınıflandırılmaktadır.

Web Programlama Dilleri

Web programlama, web sunucular içerisinde yer alan sitelerin arayüzlerinde çalışan tüm fonksiyonların programlanmasıdır. Örneğin bir web sitesinin tasarımı da dahil olmak üzere içerisindeki tüm yazılım, web programlama dilleri ile yazılır.

 

 

Listede yer alan popüler web programlama dillerinin sırası aşağıdaki gibidir.

1. Python
2. Java
3. C#
4. PHP
5. Go
6. Ruby
7. Scala
8. Perl
9. Lua
10. Rust
11. Processing
12. D
13. Clojure
14. Ocaml

Elektronik için Programlama Dilleri

  1. C
  2. C++
  3. C#
  4. Python
  5. Java 

Mobil Programlama Dilleri

Günümüzün en popüler mobil programlama dilleri:

  1. Java
  2. C++
  3. Objective-C
  4. C#
  5. HTML5
  6. Swift

mobil programlama dilleri ile ilgili daha geniş bilgi için tıklayınız. 🙂

YAZILIM DİLLERİ: ABAP

ABAP (Advanced Business Application Programming) Türkçe karşılığı Gelişmiş İş Uygulama Programlaması olarak adlandırılan nesne tabanlı programlama dilidir. ABAP, SAP tarafından geliştirilmiştir, Java, C# gibi yüksek seviye programlama dilleri arasına girer.

ABAP’ın temel kullanım amacı SAP üzerinde müşteri istekleri doğrultusunda geliştirmeler yapılabilmesidir. Örnek olarak SAP yazılımında bir müşterinin istediği herhangi bir değişiklik yada eklenti istemesi durumunda ABAP kullanılabilir.

Bir diğer amaç ise SAP üzerindeki verilerin istekler doğrultusunda raporlanarak sunulmasıdır. Örnek olarak bir fabrika sahibisiniz ve ürettiniz malın günlük, aylık veya yıllık olarak ne kadar satıldığını raporlamak istiyorsunuz, bu noktada ABAP devreye girer ve sizin bu raporu alabilmenizi sağlayacak eklenti yazılır.

Genel olarak ABAP ile, gerekli bilgileri veritabanından okuyan ve ekrana sunan rapor programları, sisteme kayıt eklenebilmesi için gerekli alanlar, ve SAP sistemler arası veri alışverişini sağlayan kullanıcı arayüzleri yazılabilir. Ayrıca önemli bir diğer özelliği olan çoklu dil desteğini unutmamak gerekir.

ABAP Open-Sql, Mssql ve Oracle gibi veritabanlarını destekler.

Abap Nasıl Geliştirilir?  Çalışma Mantığı Nedir?

Abap kodu yazmak için ihtiyacınız olan şey sap gui programıdır. Tüm abap programları sap sunucusunda bulunur. Abap programları gerçek anlamda derlenmez sadece sözdizimsel olarak kontrol edilip aktif hale getirilir. program çalıştırılacağı zaman abap kodları ABAP LOAD denen ara bir yapıya alınır daha sonra bu ABAP LOAD yapısı abap virtual machine tarafından yorumlanır.

YAZILIM DİLLERİ: PHP

PHP Web Tabanlı, nesne yönelimli bir programlama dilidir. Eskiden Personal Home Page (PHP) yani ‘Kişisel Anasayfa’ iken şimdilerde PHP: Hypertext Preprocessor olarak kullanıma devam edilmektedir. PHP, dinamik, kendi kendine yönetilebilir web siteleri yapılmasını sağlar. İlk olarak 1995te aslen Danimarkalı ancak Kanadada yaşayan bir yazılımcı Rasmus Lerdorf tarafından yaratılan PHP’nin geliştirilmesi bugün PHP topluluğu tarafından sürdürülmektedir.

PHP ile Neler Yapılır ve Kullanım Alanları ?

PHP gibi bir web tabanlı programlama dili ile ve hızla geliştirilen web browser(tarayıcı,google chrome, internet explorer, mozilla firefox, opera vb..) sayesinde artık hayal edebildiğimiz herşeyi yapabiliriz. PHP ile basit bir blog sitesinden tutun da, Arama motoru, Facebook, Twitter, WordPress, Joomla ve online oyunlar gibi geliştirilen ve sürekli gelişime devam edebilen web siteleri yapabilmek mümkündür.

PHP Veritabanları ve Veritabanları İlişkileri

PHP’nin en güçlü ve en çok üstünde durulan özelliklerinden biri, sahip olduğu geniş ve gelişmiş veritabanı desteğidir. Veritabanlarına özgü eklentilerden birini (örn. mysql) kullanarak veya PDO gibi bir soyutlama katmanı kullanarak PHP ile veritabanı bağlantılı site sayfaları oluşturmak ya da ODBC eklentisi üzerinden bu standardı destekleyen bir bağlantı açmak son derece basittir. Diğer veritabanları için cURL eklentisi veya soketler (CouchDB gibi) kullanılabilir.Ufak yönetilebilir web siteleri için ise en sağlıklısı ‘MYSQL’ veritabanıdır. Bir kaç php komutu ve fonksiyonları ile hızlı bağlantı sağlanılabilir. Database kurgusu ve yapısı doğru hazırlandığı sürece gayet hızlı, verimli sonuçlar verir. MySQL’de temel (ve genel) olarak yaptığımız işlemler bir tabloya veri eklemek, bu verileri çekmek, güncellemek ve silmektir.

PHP’nin Faydaları ve Avantajları Nelerdir ?

Php açık kaynak kodlu bir programlama dili olduğu için gelişimine herkes katkıda bulunur ve sürekli gelişirilir.

PHP aslında linux tabanlıdır. Ancak sanal sunucu sayesinde tüm sunucularda sorunsuz çalışır.

Herkes tarafından geliştirilip ve destek verildiği için kaynak sıkıntısı cekmezsiniz.

Facebook, google, instagram, twitter gibi ünlü internet şirketlerinin API destekleri sayesinde kendi bilgileniri kullanmana olanak sağlar.

Yardımcı sınıflar sayesinde bir çok dosya formatlarını okuma ve üzerinde işlemler yapılabilmesine güçlü imkanlar.

Github sayesinde bir çok geliştirici ile birlikte yeni ve büyük projeler geliştirebilir. Geliştirmek istediğiniz projeye örnek projeler bulup yeni fikirler edinilebilinir.

Composer, php için bağımlılık yönetim araçıdır. Projeleriniz de ihtiyaç duyduğunuz kütüphaneleri ve sınıfları sizin için kurmanızı sağlar. Composerda veriler json olarak saklanır ve paketleri oluşturulması json olarak sağlanır. Composer sayesin tüm paketler ve sınıflar kolayca otomatik yüklenir.

YAZILIM DİLLERİ: VİSUAL BASİC

Visual Basic Programlama

VB’nin çıkış noktası esasen başlangıç aşamasındaki programcılara yardımcı olabilecek ve kolayca program hazırlamaya yardımcı olacak bir programlama dili olmasıydı. VB’yi kullanan ne kadar çok insan olursa Microsoft’un işletim sistemleri için o kadar çok yazılım geliştirilecek ve Microsoft’un Windows sürümleri diğer işletim sistemlerinden daha önde olacaktı. Nitekim Windows, VB yardımıyla bu gayesine de büyük ölçüde ulaşmıştır.

Visual Basic ile kullanıcılar daha rahat programlama özelliklerine kavuştu ve bugünün en önemli yazılımcılarının birçoğu ilk yazılım programlama macerasına muhtemelen kolay yapısı nedeniyle VB yardımıyla başladı.

VB şuan için programlamaya başlamak isteyen öğrencilere ilk gösterilen temel yazılım dillerinden biri olarak işlev görüyor. Çünkü bu programlama dilinin mantığını kavramak hem çok kolay, hem de VB yardımıyla istediğiniz yazılımları meydana getirmek oldukça basittir.

VB’in yayınlandığı ilk tarihten sonra VB için geliştirilmiş farklı sürümlere yer verildi.  VB’nin ilk sürümü 6 farklı alt sürüm ile yayınlandıktan sonra  Visual Basic 6.0 sürümü 1998 Yılında yayınlandı. VB’nin 6.0 sürümünden sonra Microsoft VB’yi .NET platformuna taşıma kararı aldı. Bu aşamadan sonra Visual Basic, Visual Basic .NET olarak isimlendirildi. 2002 Yılına geçiş yapıldığındaysa Visual Basic 2002 çıkış yaptı. NET platformuna geçiş yaptıktan sonra NET, Visual Basic .NET 2003, Visual Basic 2005, Visual Basic 2008, Visual Basic 2010, and Visual Basic 2012 sürümleri geliştirilerek VB dili gelişmiş ve kapsamlı bir dil haline getirilmiştir.

Visual Basic Dersleri

Programlamaya başlamak için birçok kişinin giriş noktalarından olan Visual Basic, hem en basit programlama dillerinden biridir hem de VB konusunda internet ve basılı kaynak olarak sayısız yapım bulunmaktadır.

 

Visual Basic

YAZILIM DİLLERİ: PYTHON

Python, ilk sürümü Guido van Rossum tarafından 1991’de ortaya konulmuş genel amaçlı bir programlama dilidir. Yorumlanan ve dinamik bir dil olan Python, esas olarak nesne tabanlı programlama yaklaşımlarını ve belli bir oranda da fonksiyonel programlamayı desteklemektedir.

Python Yazılım Vakfı, Python’ın ana gerçekleşimi olan C dili gerçekleşimini özgür ve açık kaynak kod mantığı altında yürütmekte ve Python’ın fikirsel haklarını korumaktadır. Günümüzde Python, görece kolaylığı ve sahip olduğu geniş standart kütüphane sayesinde oldukça popülerleşmiş ve büyük kurumların da arasında olduğu yaygın bir kullanıcı kitlesine ulaşmıştır.

Python Nerelerde Kullanılır?

Python, mühendislikten-finansa kadar birçok alanda kullanılmaktadır. 2000’li yıllardan itibaren bilimsel veya mühendislikle ilgili hesaplamalı çalışmalarda da çokça kullanılmaya başlamıştır. Bunda hem donanımsal hem de yazılımsal gelişmelerin etkisi olmuştur:

Donanımsal açıdan, işlem gücü ve bellek/ depolama kapasitesinin herkesin kolayca ulaşabileceği şekilde artıp yaygınlaşması ile, Python gibi yorumlanan dillerin bazı işlemlerde epeyce yavaş olmaları ve yüksek düzeyli veri yapılarının kullanılmasının hafızada çok yer tutması gibi olumsuzluklar birçok durumda göz ardı edilebilecek seviyeye gerilemiştir.

Yazılımsal açıdan ise, İnternet ve onunla beraber açık kaynak kod veya özgür yazılım akımının yaygınlık kazanması, bu yaklaşımı benimseyen bilimcilerin İnternet üzerinden ve geliştirilen verimli araçlar sayesinde eşgüdümlü bir şekilde çalışmalarını beraberinde getirmiştir.

Python Bilimsel Hesaplama Kütüphaneleri

Python ile temel bilimsel hesaplama için üç ana kütüphane kullanılmaktadır: Hızlı dizi yapıları ve matris işlemleri gibi bazı temel işlevler için Numpy; Numpy veri yapılarının üzerinde sayısal entegrasyon, diferansiyel denklem çözümü, optimizasyon ve istatistik gibi herkesçe ihtiyaç duyulabilecek işlevler için SciPy ve iki boyutlu ve belli bir düzeyde üç boyutlu görselleştirme için Matplotlib .

Yukarıda sayılan kütüphanelerin dışında, bilimsel çalışmalarda sıkça yapılan veri tabanı ve İnternet sayfalarının manipülasyonu gibi işlemler için gelişmiş ve kararlı standart kütüphane bileşenleri vardır. Ayrıca belli bilim dallarına özgül, örneğin biyoloji için BioPython gibi, kapsamlı kütüphaneler geliştirilmiştir.

Özgül çalışma alanları için mevcut kütüphaneler konusunda okuyucu SciPy gibi sitelere başvurabilir. Bunların dışında bilimsel hesaplamada çokça kullanılan Fortran, C, R gibi dillerin Python içinden çağrılabilmesi için Pratik arayüzler, GNU bilimsel kütüphanesi (‘GNU scientific library’) gibi kütüphaneler için bağlama kütüphaneleri ve paralel hesaplamalar için çeşitli kütüphaneler mevcuttur.

Python ile bilimsel hesaplama yaparken kullanılabilecek geliştirme ortamları seçenekleri de oldukça zengindir: Öncelikle, elbette, IDLE veya Eclipse gibi genel (Python) geliştirme araçları kullanılabilir. Bilimsel geliştiriciler için bunlardan daha pratik olarak MATLAB ortamına çok benzer bir ortam sağlayan üç farklı seçenek vardır. Bu tür ortamların, MATLAB kullanıcılarının aşina olduğu ve değişkenleri yerinde değiştirme gibi olanaklar sağlayan “variable explorer” ve dili yeni öğrenmekte olanlar için çok faydalı olabilecek “object explorer”, kod analizcisi “Pylint” gibi özellikler vardır.

Python Ne İşe Yarar?

• Birincisi, dilin yeni özelliklerinin veyahut yeni kütüphanelerin öğrenilmesi sırasında hızlı ve etkileşimli bir şekilde ‘keşif’ yapmaya olanak sağlamasıdır.

• İkincisi, yeni bir program yazılırken hızlı bir şekilde deneme yapılmasının kolaylaşmasıdır.

• Bilimsel hesaplamaya özgü olan üçüncü fayda ise, hesaplamaların sonuçlarını adım adım görmeye ve eldeki problemin şekillenişini verimli bir şekilde takip etmeye yardımcı olmasıdır.

YAZILIM DİLLERİ: C++

C++ programlama dilinde C tarzında veya nesne yönelimli tarzda kesin senaryolarla kodlamalar yapılabilmektedir. Bu açıdan C++ en önemli ve işlevsel hibrit programlama dillerinden biri olma niteliğine de sahiptir.

C++

C++ Ne İşe Yarar

C++ geliştirilmesinden sonra tüm dünyada en yaygın kullanılan programlama dillerinden biri olmuştur. Özellikle söz konusu performans olduğunda C++ daima ilk seçim olmaktadır zira diğer programlama dilleriyle kıyaslandığında C++ çok daha fazla güncellenen bir yazılım dilidir. Son olarak C++ 11 sürümü 2011 yılında yayınlanmıştır.

C++ yazılım dili kullanılarak geliştiriciler tarafından sistem yazılımları, özel yazılımlar, uygulamalar, sürücü yazılımları, kullanıcı taraflı yazılımlar ve gömülü firmware yazılımlar üretilmektedir.  Bugün bilgisayarınızda kullanmakta olduğunuz birçok donanımın dahi sürücüsü C++ programlama dili sayesinde hazırlanmış ve son kullanıcıların kullanımına tahsis edilmiştir.

Neden C++ Öğrenmeliyim?

C++ programlama dilini tercih etmenizin birçok sebebi olabilir ancak ben burada önemli gördüğüm avantajlarını sizlerle paylaşacağım.

C++ dili genel amaçlı bir programlama dilidir. İsterseniz düşük seviyede kodlar isterseniz de yüksek seviye kodlar kullanarak programlama yapabilirsiniz.

C++, doğrusalyapısal aynı zamanda da nesne tabanlı bir programlama tekniklerine imkân tanır.

Günümüzde ki güncel işletim sistemi olan WindowsLinuxMac OS gibi işletim sistemleri C++ ile yazılmıştır. Sürücüler veya donanımlarla ilgili iletişim kuran programlar yapılacaksa en iyi tercih C++ dili olacaktır.

C++, en karmaşık ve zorlu algoritmaların altından kolaylıkla kalkabilir. Tamamen nesne tabanlı ve modern bir programlama dilidir.

C++ dili ile isterseniz düşük seviyede kod isterseniz de yüksek seviyede kodlar yazabilirsiniz. Yani isterseniz sadece donanım seviyesinde işlemler dahi yapabilirsiniz. Buda size hem kolaylık hem de büyük bir esneklik sağlayacaktır.

C++ günümüzdeki teknolojiye çok iyi bir şekilde ayak uydurmayı başarmıştır ve C++ dilini kullanarak, hem donanım tabanlı mikro kontrolör uy hem de .NET teknolojisini kullanarak masaüstüweb ve mobil uygulamalar geliştirebilirsiniz.

C++ dilini kullanan büyük bir kitle vardır. Buda sizlere hem çalışma ve öğrenme kaynağı açısından yeterli doküman bulmayı hem de bir sorun yaşadığınızda kolay bir şekilde yardım bulabileceğinizi göstermektedir.

YAZILIM DİLLERİ: C

C programlama dili orta seviye bir dildir. Yani düşük seviye diller makine diline yakın olan çok kod yazma gerektiren diller, yüksek seviye diller ise az kod yazma işlemi gerektiren ama arka planda çok kod çalıştıran dillerdir. C programlama dili bu iki seviye arasındadır.

Windows, Linux ve Unix için C programlama dili kullanılarak program yazılabilir. Ayrıca C programlama dili Assembly dili ile geliştirilmiştir.

C Programlama Dili Standartları

  • C89/C90 standardı -> ANSI tarafından geliştirilmiştir. 1989 yılı C89 ve C90 standarlarını referans almıştır.
  • C99 standardı -> 1999 yılında düzenlenerek tekrar yayınlanmıştır. Bu düzenleme ile birçok veri tipi eklenmiş ve yeni özellik eklenmiştir.

C Programlama Dilinin Özellikleri

  • C programlama dili esnek bir yapıya sahiptir.
  • C programlama dili birçok dile göre oldukça güvenilir
  • Birçok platformda çalışabildiği için taşınabilir bir dildir.
  • İnteraktif bir dildir.
  • Verimli ve modüler

C Programlama Dilinin Kullanıldığı Yerler

  • Kelime işlemciler,
  • Veri tabanı sistemleri,
  • Grafik paketleri,
  • İşletim sistemleri
  • Ağ sürücüleri
  • Tablolama yazılımları

 

Örnek verecek olursak C programlama dili PHP gibi web tarayıcısında çalışmaz. Çalışan bir web tarayıcısı yapımında kullanılır.

YAZILIM DİLLERİ: C#

C# Nedir?

C#, yazılım sektörü içerisinde en sık kullanılan iki yazılım dili olan C ve C++ etkileşimi ile türetilmiştir. Ayrıca C#, ortak platformlarda taşınabilir bir (portable language) programlama  dili olan Java ile pek çok açıdan benzerlik taşımaktadır . En büyük özelliği ise .Net Framework platformu için hazırlanmış tamamen nesne yönelimli bir yazılım dilidir. Yani nesneler önceden sınıflar halinde yazılıdır. Programcıya sadece o nesneyi sürüklemek ve sonrasında nesneyi amaca uygun çalıştıracak kod satırlarını yazmak kalır.

Microsoft tarafından geliştirilen C#, C++ ve Visual Basic dillerinde yer alan tutarsızlıkları kaldırmak için geliştirilmiş bir dil olmasına rağmen kısa süre içerisinde nesne yönelimli dillerin içinde en gelişmiş programlama dillerinden biri olmayı başarmıştır.

Ayrıca gelişmiş derleyicisi (debugger) ile hata olasılığını ortadan kaldırmaktadır. Yazılan program çalıştırıldıktan sonra derleyici tarafından algılanan Sınıf (Class) ve söz dizimi (syntax) hataları yazılımcıya ayrı bir ekranda ayrıntısı ile gösterilir ve yazılımcı bu hata penceresinden hataları tespit ederek kolayca düzeltebilir.

Ayrıca pek çok programcı tarafından kullanılan bir dil olmasından ötürü  takıldığımız noktalarda uzman programcılardan yardım almak oldukça kolaydır.

.NET Framework Nedir?

C# ve .Net Framework bazı kişiler tarafından tek bir kavram olarak algılanmaktadır. Fakat bu iki kavram birbirlerinden tamamen farklı amaçlar için geliştirilmiştir. C#, nesne yönelimli bir programlama diliyken .Net Framework ise C# için geliştirilmiş bir çalıştırma ortamıdır. Aslında C# dili, Microsoft tarafından .Net platformu için kod geliştirmek amaçlı tasarlanmış ve C# içerisindeki tüm kütüphaneler .Net platformu içinde tanımlanmış kütüphanelerdir.

Java’dan önce, geliştirilen yazılımlar makine koduna çevrilerek çalıştırılırdı. Java ise program kodlarını önce byte sayı sistemine çevirir. Sonrasında Java Sanal Makinesi (JVM – Java Virtual Machine) bu kodları işletim sisteminin istediği koda çevirerek programın çalışmasına sağlar.

.Net Platformu da Java diline benzer bir çalışma mantığı izleyerek kodları çalışabilir hale getirmektedir.

.Net platformunda kod ilk önce Microsoft Intermediate Language (Microsoft Ara Dili) olarak isimlendirilmiş dosya haline dönüştürülür bu dosya içerisinde derlenen kodların Microsoft’un standart haline getirdiği bir assembly dili haline dönüştürür. Bu ara dil de saklanan dosyalar çalıştırılmak istendiğinde ise CLR adı verilen sistem MSIL kodlarını çalıştırır.

Ortak dil çalışma zamanı ( CLR – Common Language Runtime ) sisteminin temel görevi ise C# dilini taşınabilir kılmak ve diğer diller ile güvenli bir şekilde çalışmayı sağlayan sistemdir. CLR, .Net platformuna ait bir kod çalıştığı zaman JIT (Just in Time – Tam Zamanında ) derleyiciyi aktif hale getirir. Aktif hale gelen JIT derleyici, MSIL kodlarını yerel kod yapısına göre çalıştırarak ortak platform yapısı sağlanmış olur.

C# ile Neler Yapılabilir

Bu kısımda ise sizlere C# ile proje geliştirme hakkında basit ipuçları ve giriş yapılacaktır. Aşağıda Visual C# kullanarak ne tür uygulamalar geliştirebileceğimizi anlatmaya çalıştım.

Konsol Uygulamaları (Console Applications)

Grafiksel kullanıcı arayüzünden çok, komut satırı penceresinde programcı tarafından yazılan uygulama çalışmalarına verilen isimdir. Konsol uygulamaları MS- DOS olarak ifade edilen nesne yönelimli programlamanın yaygınlaşmadığı dönemlerde kullanılan bir arayüz olmuştur. Bu uygulama modelini kullanıcının etkileşim kurması gerekmeyen uygulamalarda basit bir arayüz oluşturmak için kullanılabilir.

Windows Form Uygulamaları (Ado.Net)

Grafiksel kullanıcı arayüzü (GUI – Graphical User Interface) olarak tanımlanır. Windows form uygulamalarını, konsol uygulamalarından ayıran en önemli özelliği de budur. Windows Form uygulaması oluşturmak için Toolbox adı verilen araç kutusundan nesnel araçlar sürükle bırak yöntemi ile kolayca oluşturulabilir.

Windows Form uygulamaları, bilgisayar programları geliştirmek amacıyla kullanılmaktadır. Windows Forms Application seçeneği ile yeni bir windows uygulama penceresi açılarak program geliştirmeye başlanabilir. Ayrıca Windows Form uygulaması içinde grafiksel olarak daha gelişmiş çalışmalar yapmak da mümkün hale getirilmiştir. Daha güçlü grafiksel arayüzler için WPF ile uygulama geliştirmek gerekmektedir.

Windows form uygulamaları için veritabanı bağlantısı kurabilmek için kullanılan .Net kütüphanesinin adı Ado.Net olarak tanımlanmıştır. Bu konu üzerinde çalışmak isteyenlerin internet üzerinde Ado.Net olarak arama yapmaları gerekmektedir.

Web Form Uygulaması (Asp.Net)

Web form uygulamaları ise Ado.Net yerine ASP.Net sayfa yapısı ile çalışmaktadır. Web form uygulamaları temel olarak Windows Form Uygulaması gibi düşünülebilir. Fakat aralarında temel faklılıklar vardır. Web Form uygulamaları internet üzerinden erişilebilen form uygulamalarıdır. Bundan dolayı uygulamalar kişisel bilgisayar yerine web tarayıcısı ile çalışmaktadır.

ASP.Net kullanılarak oluşturulan bir web uygulaması içerisinde bir yada birden daha çok ASP.Net sayfası olabilir. Web formları, .Net kütüphanesinde özel etiketler içeren bir HTML sayfalarıdır.  Web Formları, uzantısı .aspx olarak işlenir. Ayrıca her web form uygulamasında Web.config ile belirtilen bir yapılandırma dosyası vardır. Bu dosya XML biçimindedir ve web uygulamasının güvenlik, önbellek yönetimi gibi ilgili işlerin bilgilerini içerir.

Mobil Programlama

Windows Phone işletim sistemleri için uygulama geliştirme kısmıdır. Eğer Windows Phone için uygulama geliştirmek istiyorsanız bu kısmı kullananız gerekmektedir.

Web Servisleri

Kısaca veri iletimi için kullanılan sistemlerdir diyebiliriz. Biraz daha açacak olursam ise Evrensel veri transer metodu sayılan XML ve HTTP kuralları ile internet ağı ile dünyanın her hangi bir yerine veri taşıyan sistemlerdir.  Web servisi işlemlerinde veriler bir başka kullanıcıya gönderildiği için güvenlik ve adresleme gibi konular oldukca önemlidir. Microsoft, C#’ta web servisleri kullanımını güvenli kılan pek çok işlemler yapmaktadır.

DLL yazma

İlk olarak DLL nedir? diye soranlara DLL hakkında bilgi vereceğim. Sonrasında ise DLL’i açıklayacağım. DLL: Dinamic Link Library ifadesinin kısaltılmasıdır. yani dinamik kütüphaneler oluşturmak için kullandığımız yapıdır. Örnek verecek olursam C#’ta bir yapıyı sürekli kullanıyorsunuz böyle bir durumda hem kod sayfasında bir karmaşa olacak hem de sürekli aynı kodları yazmak zorunda kalacaksınız. İşte bu iki sorunu ortadan kaldırmak için DLL yazarsınız. DLL yazdıktan sonra uygulama sayfasında sürekli aynı kodları yazmak yerine yazılan DLL’i çağırarak ilgili kodları çalıştırırız.

C#’ın C, C++ ve Java İle Bağlantısı Var mıdır?

Her ne kadar isim benzerliği olsa da C ile pek benzer yanlarının olduğu söylenemez. Aralarındaki en büyük fark nesne yönelimli programlamadır.

C# nesne yönelimli programlamayı desteklerken, C nesne yönelimli programlamayı desteklememektedir. Ortak yanlarından belki de en önemlisi benzer sözdizimine sahip olmalarıdır. Ana yapıları itibariyle C# programlama C ile programlamaya göre daha farklıdır.

C++ dili ile ise nesne yönelim programlama özellikleri aynıdır. Ayrıca sözdizimleri de benzerlik göstermektedir.

C# daha çok Java ve C++ programlama dillerinden esinlenerek oluşturulmuştur. Birebir aynı olmasa da çoğu özellikleri benzerlik taşımaktadır.