En son yayınlanan PHP versiyonu 8.0’dır. PHP versiyonunuzu mutlaka en son sürümde tutmalısınız. PHP geliştiricileri her yeni versiyonda, bir önceki versiyondaki olan güvenlik açıklarını kapatmak ve yeni özellikler geliştirmek için kod yazarlar. En güncel PHP versiyonunu https://www.php.net/supported-versions.php adresinden kontrol edebilirsiniz. Bu adreste PHP versiyonlarının hangi tarihe kadar güvenlik desteği alabileceğini görebilirsiniz.
Cross site scripting yani siteler arası komut dosyası çalıştırma, web sitenin koduna veya çıktısına harici bir komut dosyasının yerleştirildiği bir tür kötü amaçlı web saldırısıdır. Cross-Site Scripting (XSS), yazılımcının kullanıcıdan aldığı girdileri gerekli HTML ve JavaScript filtrelerinden geçirmediği takdirde oluşan bir zafiyettir. Girdiler gerekli filtrelerden geçmediği taktirde, eğer kullanıcı aynı zamanda bir saldırgan ise; diğer kullanıcılara veya doğrudan sisteme zarar verebilecek zararlı kodları çalıştırabilir. HTML, CSS ve JavaScript tarayıcı tarafından yorumlanan diller olduğundan dolayı, yazılan zararlı kod doğrudan diğer kullanıcıları da etkileyebiliyor. 3 tipi vardır:
PHP programlama dilinde en yaygın atak türlerinden biri SQL injection’dur. Tek bir sorgu tüm uygulamayı tehlikeye atabilir. SQL injection saldırılarında saldırganlar sorgular üzerinden verilerinizi değiştirmeye çalışabilir veya verilenizin tümüne erişebilir. Uygulamanızda bir kullanıcı verisini çekmek için doğrudan SQL kodunda kullanıcında alınan girdiyi kullandığınızı varsayalım. SQL kodunuz aşağıdaki gibi olduğunu kabul edelim:
$sql = "SELECT * FROM users WHERE username = '" . $username . "';
İşte buradaki $username değişkeni tüm veritabanını silmek de dahil olmak üzere veritabanına zarar verebilecek sql komutları içerebilir. Peki sql injections atakları nasıl önlenir?
PHP’de PDO yapısını kullanarak bu tarz ataklardan kurtulabilirsiniz. PDO güvenli SQL sorguları yazmanıza imkan verecektir. PDO ile input’a girilen özel karakter sorguyu değiştiremez.
Aşağıdaki kod bloğunda SQL koduna injection yapılabilir.
1. $sql = "SELECT username, email FROM users WHERE id = ".$id." ;
2.
3. foreach ($dbh->query($sql) as $row) {
4.
5. printf ("%s (%s)\n", $row['username'], $row['email']);
Burada PHP PDO yapısını kullanırsak kodumuz şu şekilde olmalıdır:
1. $sql = "SELECT username, email FROM users WHERE id = :id";
2.
3. $sth = $dbh->prepare($sql, [PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY]);
4.
5. $sth->execute([':id' => $id]);
6.
7. $users = $sth->fetchAll();
Türkçe açılımı “Siteler Arası İstek Sahtekârlığı” şeklinde olan CSRF zafiyeti; web uygulamasını kullanmakta olan kullanıcıların istekleri dışında işlemler yürütülmesidir. Uygulamaya giden isteklerin hangi kaynaktan ve nasıl gönderildiği kontrol edilmeyen sistemlerde ortaya çıkan bu zafiyet, aslında uygulamayı kodlayan yazılımcıların gözünden kaçan bir ayrıntıdır diyebiliriz. Genelde CSRF veya XSRF şeklinde kısaltılan bu güvenlik açığı “Session Riding” olarak da bilinmektedir. CSRF, istek verilerini okuyamaz ve çoğunlukla HTML etiketlerinde herhangi bir bağlantı veya değiştirilmiş veri göndererek durum değiştirme isteğini hedefler.
Bu durumu daha iyi anlayabilmek için örnek bir senaryo üzerinde inceleyelim:
Kurban, tarayıcısının bir sekmesinde banka hesabında oturum açmış halde işlemlerini yaparken, bir diğer sekmesinde ise e-posta hesabında gelen kutusunu incelemektedir.
Bu esnada kullanmış olduğu banka uygulamasında dışarıdan gelen veya dışarıya giden istekler engellenmemiştir.
Saldırgan bu durumu fark ettikten sonra, banka uygulamasında bulunan para gönderme formundaki html form elemanlarını, parayı kendine gönderecek şekilde, kendi oluşturmuş olduğu html sayfasına yazıp bu banka uygulamasına gönderim yapmasını sağlar.
Saldırgan, hazırlamış olduğu html sayfasını kullanıcıya e-posta yoluyla gönderdikten sonra, kullanıcı yan sekmesinde bulunan gelen kutusunu incelemeye koyulur.
Kullanıcı ilgili e-postada bulunan html sayfasına gittiği takdirde, saldırgan ilgili havale işleminde gönderilmiş olan parayı kendine yönlendirmiş olacaktır.
XSRF/CSRF saldırısını token kullanarak çözebilirsiniz. Sitenizde formlarda aşağıdaki gibi bir token yapısı kullanıp, bu token’ı kullanıcı için kontrol ederek ataklardan korunabilirsiniz.
<input type=”hidden” name=”token” value=”R6B7hoBQd0wfG5Y6qOXHPNm4b9WKsTq6Vy6Jssxb”/>
İki bilgisayar arasındaki geçerli TCP iletimini ele geçirme saldırısıdır. Çoğu doğrulama (authentication) TCP oturumu başlangıcında olduğundan bu, saldırganın makineye erişmesini sağlar. Saldırganlar kurulmuş TCP oturumlarındaki tüm trafiğini dinleyip kimlik, bilgi hırsızlığı, dolandırıcılığı vb. yaparlar.
Session hijacking, kurbanların cookie veya session bilgilerini bir şekilde elde ederek bu cookie veya session bilgisinin saldırganın tarayıcısına enjekte edilmesi sonucu, kurbanın hesabına giriş yapabilmesi olayıdır.
Session Hijacking önlemek için oturumları her zaman IP adresine bağlamalısınız.
1. $IP = getenv ( "REMOTE_ADDR" );
Gelen kullanıcı istekleri farklı bir ip adresi üzerinden geliyorsa, hızlı bir şekilde tüm oturumları sonladırmalı, session bilgisini ve çerezleri silmelisiniz.
Çerezli silmenin en güvenli yolu aşağıdaki gibidir:
1. setcookie ($name, "", 1);
2.
3. setcookie ($name, false);
4.
5. unset($_COOKIE[$name]);
1. satır çerezin süresinin dolmasını sağlar. 3. Satırda cookiye false ataması yapılır. 5. Satırda ise bu cookie tamamen ortadan kaldırılır, yok edilir.
Dosya yükleme, herhangi bir kullanıcı veri işleme uygulamasının gerekli bir parçasıdır. Ancak bazı noktalarda, makalede daha önce açıkladığımız gibi dosyalar XSS saldırıları için de kullanıldığını unutmayın. Temel bilgilere dönersek, her zaman formdaki POST isteğini kullanın ve <form> etiketinde enctype = “multipart / form-data” özelliğini bildirin. Daha sonra dosya türünü finfo sınıfını kullanarak şu şekilde doğrulayın:
1. $finfo = new finfo(FILEINFO_MIME_TYPE);
2. $fileContents = file_get_contents($_FILES['some_name']['tmp_name']);
Uygulamaların güvenliğini güçlendirmek için dosya boyutu, dosya yeniden adlandırma ve yüklenen dosyaları özel konumda saklama gibi birkaç başka doğrulama da gereklidir.
Google Chrome, Opera, Firefox ve diğerleri gibi tüm modern tarayıcılar, web uygulamaları için HTTPS protokolünü kullanmanızı önerir. HTTPs, güvenilmeyen siteler için güvenli ve şifreli bir erişim kanalı sağlar. Web sitenize SSL sertifikası yükleyerek HTTPS’yi eklemelisiniz. Ayrıca web uygulamalarınızı XSS saldırılarına karşı güçlendirir ve bilgisayar korsanlarının kod kullanarak taşınan verileri okumasını engeller.
Her türlü web sitesi ve uygulama için hızlı, güvenli ve güvenlidirler. Web uygulamaları için oldukça zararlı olan DDOS, Brute force ve phishing saldırılarını önlemek için her zaman güvenli bir katman sağlarlar. DigitalOcean, Linode, AWS gibi bulut yapılarını kullanabilirsiniz.
Kullanıcının girdiği verileri istediğiniz formata uygun olup olmadığını kontrol etmelisiniz. Genellikle geliştiriciler, doğum tarihi veya telefon numarası gibi veri biçimlerini doğrulamak için düzenli ifadeler (regex) kullanır. Burada en önemli şey, sizin istediğiniz formata olan uygunluğunu kontrol etmektir.
Open_basedir işlevi, PHP’nin dosya sisteminizde erişebileceği dosyaları sınırlamanıza izin verir. Open_basedir işlevini projenizin köküne ayarlarsanız, bu, yalnızca projenizin kök dizinindeki ve aşağıya doğru dosyalara erişebileceği anlamına gelir.
Kötü niyetli bir kullanıcının PHP aracılığıyla sunucunuza erişmesi ve / etc / passwd gibi hassas dosyalara erişmeye çalışması durumunda, open_basedir işlevi bunu önleyecektir.
PHP, geliştiricilere güvenli bir şekilde geçerli URL’ler oluşturmaları için urlencode işlevi verir. PHP belgelerine göre, işlev bir URL’nin sorgu bölümünde kullanılacak bir dizeyi kodlarken kullanışlıdır.
Kullanıcı girdisinin bir URL oluşturmak için kullanıldığını hayal edin. Bu durumda, güvenli bir URL oluşturmak için urlencode işlevini kullanabilirsiniz.
<?php echo '<a href="mylink?user=', urlencode($userID), '">';?>
The post PHP Güvenlik Açıkları – PHP Güvenliği için Yöntemler – PHP Güvenlik Açıklarını Kapatmak first appeared on Kampüs Kod.]]>Herhangi bir text editörünü açalım. Ben Sublime text kullanıyorum. Kampüs Kod yazarlarımızdan @cihankoc41 ‘da sublime text kullanıyor. Aşağıda onun anlatımıyla sublime text’in nasıl kullanacağınızı görebilirsiniz.
1- Text editörünüzü veya not defterinizi açın. Aşağıdaki kodu boş belgenizin içine yapıştırın.
<?php phpinfo(); ?>
2- Belgenizin adını myphpinfo.php olarak isimlendirin ve masaüstüne kayıt edin.
3- Xampp’in kurulu olduğu yolu açın eğer bilmiyorsanız XAMPP uygulamasını açtıktan sonra sağ menüden Explorer alanına tıklayın.
4- Xampp’in kurulu olduğu yolu açın eğer bilmiyorsanız XAMPP uygulamasını açtıktan sonra sağ menüden Explorer alanına tıklayın.
5- Açılan klasörde htdocs klasörünü bulun ve içini açın.
6- Masaüstüne kayıt ettiğimiz myphpinfo.php dosyasını htdocs içerisine kopyalayıp, yapıştırın.
7- Xampp uygulamasında Apache ve Mysql modül servislerini çalıştırın.
8- Tarayıcınızı açın ve adres çubuğuna http://localhost/myphpinfo.php yazın. Açılacak olan ekranda karşınıza direk php versiyonunuz çıkacak. İşte her şey bu kadar basit.
1- Text editörünüzü veya not defterinizi açın. Aşağıdaki kodu boş belgenizin içine yapıştırın.
<?php phpinfo(); ?>
2- Belgenizin adını myphpinfo.php olarak isimlendirin ve masaüstüne kayıt edin.
3- FTP ile sunucuza bağlanın. Kök dizine, oluşturduğumuz bu php dosyasını yükleyin.
4- sitenizinurladresi/myphpinfo.php adresine giderek php versiyonunuzu öğrenebilirsiniz.
Namespace kavramı PHP’de iki problemi çözer:
Namespace anahtar kelimesi bir dosyanın en üstünde tanımlanmalıdır.
namespace Student;
Önemli Not: Namespace, PHP dosyasında ilk tanımlanmalıdır. Aşağıdaki koddaki gibi tanımlama yaparsanız geçersiz olacaktır.
<?php
echo "Hello World!";
namespace Student;
...
?>
Örneğin 2 adet PHP dosyamız olsun. Birisi student.php diğeri personal.php. Her ikisininde içerisinde Model isimli sınıf (class) lar olsun.
student.php
<?php
class Model{
public $studentId = 200;
//kodlar..
}
?>
personal.php
<?php
class Model{
public $personalId = 100;
//kodlar..
}
?>
Şimdi bu iki sınıfı index.php isimli bir php dosyasına dahil edelim.
<?php
include 'student.php';
include 'personal.php';
?>
index.php’yi çalıştırdığımızda PHP bizlere aşağıdaki gibi bir hata verecektir. Çünkü iki tane Model class’i çağırdık. Aynı dosya içerisinde benzer isimlere sahip class yapısı olamaz.
Fatal error: Cannot declare class Model, because the name is already in use in E:\xampp\htdocs\kampuskod\personal.php on line 3
İşte bu durumu çözmek için hem student.php hem de personal.php dosyalarının en başına namespace kavramı eklemeliyiz.
<?php
namespace Student;
class Model{
public $studentId = 200;
//kodlar..
}
?>
<?php
namespace Personal;
class Model{
public $personalId = 100;
//kodlar
}
?>
Yaptığımız bu değişiklikten sonra index.php’yi tekrar çalıştırdığımızda herhangi bir hata almayacağız. Şimdi bu sınıflardan namespace kavramını kullanarak bir nesne oluşturalım.
<?php
include 'student.php';
include 'personal.php';
$studentModel = new Student\Model();
$personalModel = new Personal\Model();
echo $studentModel->studentId;
echo "<br>";
echo $personalModel->personalId;
?>
Yukarıdaki kodun çıktısı aşağıdaki gibi olacaktır.
200
100
PHP’de Namespace kavramını use ifadesi ile kullanabiliriz. Örndek index.php kodu aşağıdaki gibidir:
<?php
include 'student.php';
use Student\Model;
$studentModel = new Model();
echo $studentModel->studentId;
echo "<br>";
?>
PHP’de namespace kullanırken as ifadesi kullanarak dahil edeceğimiz sınıflara farklı isimlendirmeler verebiliriz.
Alias: Takma ad.
use Student\Model as StudentModel;
<?php
include 'student.php';
use Student\Model as StudentModel;
$studentModel = new StudentModel();
echo $studentModel->studentId;
echo "<br>";
?>
Bir uygulama ile çalışırken, onu açarsınız, bazı değişiklikler yaparsınız ve daha sonra onu kapatırsınız. Bu bir session (oturum) gibidir. Bilgisayar sizin kim olduğunuz bilir. Uygulamayı açtığınızda ve kapattığınızda bilir. Fakat, internet üzerinde bir problem vardır: web sunucuları sizin kim olduğunuzu veya ne yaptığınızı bilemez çünkü, HTTP adresi durum/hal/konum (state) sağlayamaz.
Session değişkenleri, birden çok sayfada kullanılan kullanıcı bilgilerini (kullanıcı adı, mail, kullanıcı konumu vb.) depolayarak bu sorunu çözer. Varsayılan olarak, Session değişkenleri kullanıcı tarayıcıyı kapatana kadar sürer.
Böylece, Session değişkenleri bir tekil kullanıcı hakkındaki bilgiyi tutar ve bir uygulamadaki tüm sayfalar tarafından kullanılabilir.
Bir Session session_start() fonksiyonu ile başlatılır.
Session değişkenleri PHP genel değişkeni olan $_SESSION ile belirlenir.
Aşağıda “demo_kampuskod1.php” isimli bir php sayfası oluşturduk. Bu sayfa üzerinde yeni bir PHP Session başlattık ve bazı session değişkenleri belirledik.
<?php
//Session başlatıldı.
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
// Session değişkenleri belirlendi.
$_SESSION["siteAdi"] = "Kampüs Kod";
$_SESSION["siteTitle"] = "Kampuskod Türkiye'nin Teknoloji ve Sosyal İçerik Haber Sitesi";
echo "Session değişkenleri belirlendi.";
?>
</body>
</html>
Önemli Not: session_start() fonksiyonu, dokümanlarınızda birinci şey olmalıdır. Yani herhangi bir HTML tagından önce yazılmalıdır.
Şimdi, “demo_kampuskod2.php” isimli başka bir sayfa oluşturalım. Bu sayfa üzerinden, “demo_kampuskod1.php” sayfasında oluşturduğumuz session bilgilerine erişeceğiz.
Oturum değişkenlerinin her yeni sayfaya ayrı ayrı aktarılmadığına, bunu yerine her sayfanın başında açtığımız oturumdan alındığına dikkat edin. ( session_start() )
Ayrıca, tüm session değişken değerleri, genel $_SESSION değişkeninde saklanır/tutulur.
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
// Önceki sayfada belirlenen session değişkenleri echo metotu ile ekrana yazılır.
echo "Site Adı: " . $_SESSION["siteAdi"] . ".<br>";
echo "Site Başlığı " . $_SESSION["siteTitle"] . ".";
?>
</body>
</html>
Bir kullanıcı oturumu için tüm session değişkenlerini göstermenin başka bir yolu ise aşağıdaki gibidir:
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
print_r($_SESSION);
?>
</body>
</html>
Bir Session değişkenini değiştirmek için, onu ezmelisiniz/yeniden değer atamalısınız.
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
// Değiştirmek için yeniden değer ataması yapıyoruz.
$_SESSION["siteAdi"] = "Kampüs Kod - Herkes için bir şey";
print_r($_SESSION);
?>
</body>
</html>
Tüm genel session değişkenleri silmek ve session öldürmek için, session_unset() ve session_destroy() kullanılır.
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>
<?php
// Tüm Session değişkenleri silinir
session_unset();
// Session öldürülür/yok edilir :)
session_destroy();
?>
</body>
</html>
The post PHP Session (Oturum) Nedir? – PHP Dersleri first appeared on Kampüs Kod.]]>include() ve require() fonksiyonlar verdikleri hata dışında, aynı özelliklere sahiptir.
Daha basit ifadelerle anlatmamız gerekirse, bir dosyayı require() fonksiyonu kullanarak çağırdığımızda bu dosyaya kesin olarak ihtiyacımız vardır. Bu dosya projemiz için olmazsa olmazdır. Bu yüzden projemiz ölümcül hata atar ve çalışmaz. Ancak dosyayı include() edersek, dosya belirtilen yolda yok ise PHP kodlarımız çalışmaya devam edebilir. include() fonksiyonu sadece bir uyarı oluşturur. Yani include() ve require() fonksiyonlarımızın çalışma mantıkları aynıdır.
PHP include() fonksiyonu, bir PHP programı içine dış dosya ekler. Dış dosya yolunu kabul eder ve dosyanın var olup olmadığını kontrol eder. Belirtilen dosya yolunda dosya yok ise, include() fonksiyonu PHP warning uyarısı döndürür.
Warning: failed to open stream: No such file or directory...
Warning: Failed opening ... for inclusion...
include() fonksiyonu içerisine yazılan dosya yolundaki dosyanın içinde tanımlanan değişkenler, fonksiyonlar ve sınıflar , dosyayı include() ettiğimiz php dosyasında kullanılabilir.
<?php
include("../file_name.php"); // relative path //bağıntılı yol
//veya
include("/xampp/hddocs/file_name.php"); // absolute path //kesin yol
?>
PHP require() fonksiyonu, include() fonksiyonu gibidir. Yani dışarıdan eklemek istediğimiz dosyayı PHP programına içine ekler. Fakat bir fark vardır. Belirtilen dosya yolunda dosyayı bulamaz ise, require() fonksiyonu ölümcül bir hata döndürür ve programın çalışmasını durdurur.
Warning: failed to open stream: No such file or directory...
Fatal error: Failed opening required...
<?php
require("../file_name.php"); // relative path //bağıntılı yol
//veya
require("/xampp/hddocs/file_name.php"); // absolute path //kesin yol
?>
Programlama Dili Nedir?
Bir programlama dili, talimatları bir makine veya bilgisayara bağlamak için tasarlanmış bir formüldür. Programlama dilleri esas olarak bir makinenin performansını kontrol etmek veya algoritmaları ifade etmek için kullanılır. Şimdiye kadar, yaklaşık bin programlama dili oluşturulmuştur. Program sözdizimi(syntax) ve anlambilim(semantics) gibi iki forma ayrılabilir. Bazı diller, C dili gibi bir SO standardıyla tanımlanır.
Programlama Dillerinin Türleri
Prosedürel Programlama Dili (Procedural)
Prosedürel programlama dili, sonuca yol açan bir dizi ifadeyi yürütmek için kullanılır. Bu tip programlama dilleri çoklu değişkenleri, ağır döngüleri ve fonksiyonel programlama dillerinden ayıran bazı elementleri kullanır. Prosedürel dillerde fonksiyonların değerini döndürmek yerine değişkenleri kontrol edilebilir. Örneğin, bilgileri yazdırmak.
Fonksiyonel Programlama Dili (Functional)
Fonksiyonel programlama dili, genellikle tekrarlanan işlevlerin lehine döngülerden kaçınarak,sıklıkla saklanan verileri kullanır.Fonksiyonel programlamanın ana odağı, işlevlerin geri dönüş değerleridir; yan etkiler ve saklama durumundaki farklı önerilerin şiddetle tavsiye edilmediğini gösterir. Örneğin, son derece saf kullanışlı bir dilde, bir işlev adlandırılırsa, işlevin herhangi bir o/p değiştirmemesi veya gerçekleştirmemesi beklenir. Bununla birlikte, algoritmik çağrılar oluşturabilir ve bu çağrıların parametrelerini değiştirebilir. Fonksiyonel diller genellikle daha kolaydır ve soyut konularda anlamaya daha kolay hale getirir, ancak programlama modelleri tam olarak bilmeyi zorlaştırır, ancak kod makine dilinde çözülür (genellikle sistem programlama için sorunludur).
Nesneye Yönelik Programlama Dili(Object-oriented)
Bu programlama dili, dünyayı iç verilere ve bu verilerin harici erişim bölümlerine sahip bir grup nesne olarak görür. Bu programlama dilinin amacı, belirli bir sorunu çözmek için kullanılabilecek hizmetleri sunan bir nesne koleksiyonuna ayırarak hatayı düşünmektir. Nesne yönelimli programlama dilinin temel ilkelerinden biri, bir nesnenin ihtiyaç duyacağı her şeyin nesnenin içinde olması gerektiğidir. Bu dil aynı zamanda kalıtım(inheritance) yoluyla yeniden kullanılabilirliği ve polimorfizm(polymorphism) kullanarak büyük bir kod değiştirmek zorunda kalmadan mevcut uygulamaları yayma kapasitesini de vurgular.
Script Programlama Dili(Scripting)
Bu programlama dilleri genellikle prosedüreldir ve nesne yönelimli dil öğeleri içerebilir, ancak normalde büyük sistemlerin geliştirilmesini destekleyen tam teşekküllü programlama dilleri olmadıkları için kendi kategorilerine girerler. Örneğin, derleme zamanı tür denetimi olmayabilir. Genellikle, bu dillerin başlaması için küçük sözdizimler(syntax) gerekir.
Mantık Programlama Dili(Logic)
Bu tür diller, programcıların bildirimsel ifadeler oluşturmasına ve daha sonra makinenin bu ifadelerin sonuçları hakkında mantıklı olmasına izin verir. Bir anlamda, bu dil bilgisayara nasıl bir şey yapacağını söylemiyor, ancak ne yapmayı düşünmesi gerektiğine dair kısıtlamalar getiriyor.
Bu grupları ” dil türleri ” olarak adlandırmak gerçekten biraz kafa karıştırıcıdır. C dilinde nesne yönelimli bir tarzda program yazmak kolaydır. Gerçekte, dillerin çoğu, bu tür dillerin kullanışlılığını artırmaya yardımcı olan çeşitli alanlardan fikir ve özellikler içerir. Bununla birlikte, programlama dillerinin çoğu, tüm programlama stillerinde en iyi değildir.
Programlama Dilleri Arasındaki Farklar
C ++ Dili
C++ dili, büyük projelerde kullanılan nesne yönelimli bir yapıya sahiptir. Programcılar, bir programı farklı parçalara veya programın her bir bölümünde bile tek tek çalışmayla işbirliği yapabilir. Nesne yönelimli yapısı da kodun birçok kez yeniden kullanılmasına izin verir. Bu dil verimli bir dildir. Ancak, birçok programcı aynı fikirde değildir.
C Dili
C dili temel bir programlama dilidir ve özellikle oyun programlamasında kullanılan çok popüler bir dildir, çünkü C dili C++ ‘ nın ek paketlenmesini içerir, her programcı bu dili kullanır, çünkü programları daha hızlı yapar. Bununla birlikte, bu dilin değeri, C dili ile performansta hafif bir artış elde etmek için C++ ‘ nın yeniden kullanılabilirliğini verir.
Pascal Dili
Pascal dili çoğunlukla bir öğretim dilidir ve sadece birkaç firma programları yazmak için bu dili kullanır. Bu dil, C dilinde semboller ve parantezler yerine anahtar kelimeler kullanma eğilimindedir. Yani bu dille başlayanlar için C, C++ gibi bir programlama dilini anlamak çok kolaydır. Borland, Delphi programlama dilini endüstriyel güç için kullanan bir derleyici yazılım şirketidir. Delphi Pascal’ın nesne yönelimli bir dilidir ve halen sadece Borland derleyicileri kullanır.
Fortran Dili
Fortran dili bir dizi çatırdayan dildir ama yine de bilim adamları tarafından kullanılır. Bu dil, makinedeki bellek sınırına kadar farklı değişken boyutlarına izin verir. Bu dil, değerleri yüksek hassasiyetle hesaplamak zorunda olan Mühendisler için uygundur. Fortran’daki Program esnek değildir ve bazen okumayı zorlaştırır.
Java Dili
Java dili özellikle ağ yararlı çoklu platform dilidir. Tabii ki, çoğunlukla bu dil Java uygulamaları ile web üzerinde kullanılır. Bununla birlikte, bu dil çapraz platform programlarını tasarlamak için kullanılır, çünkü yapı ve sözdizimi c++ ‘ a benzer. C ++ programcıları için, Java dilini öğrenmek çok kolaydır ve nesne yönelimli programlama tarafından sağlanan bazı avantajlar sunar; yeniden kullanılabilirlik gibi. Java’da verimli kod yazmak zor olabilir. Ancak, günümüzde Java dilinin hızı arttı ve 1.5 sürümü kolay program yapımı için bazı iyi özellikler sunuyor.
Perl Dili
Perl dili UNİX için bir dosya yönetimi dilidir. Ancak ortak ağ geçidi arabirimi programlama (CGI) için daha popülerdir. Web sunucularının web sayfalarının ek yeteneklerine izin vermek için gerçekleştirebileceği programlar için bir terimdir. Perl dili metin arama için bir yöntemdir ve yararlı sunucu fonksiyonları ve diğer veritabanları için kullanılır ve herhangi bir dilde herhangi bir deneyime sahip bir kişi için perl dilinde temelleri öğrenmek çok kolaydır.
PHP Dili
PHP dili web sayfalarını tasarlamak için kullanılır ve bazen de betik dili (scripting language) olarak kullanılır. Bu dil hızlı bir web sitesi geliştirmek için tasarlanmıştır ve sonuç olarak kolay http başlıkları oluşturma ve veritabanlarına bağlantı yapma gibi özellikleri içerir. Bir komut dosyası dili olarak, programcının hıza kolayca ulaşmasına izin veren bir dizi bileşen içerir. Ancak, daha sofistike nesne yönelimli özelliklere sahiptir.
LİSP Dili
LİSP dili çoğunlukla bilgisayar bilimi araştırmalarında kullanılır ve tüm verileri diziler gibi listelerde saklar. Listenin sözdizimi çok basittir ve geliştiriciler için yapıları uygulamak kolaydır.
Scheme Dili
Scheme dili, LİSP dilinin bir alternatifidir ve daha basit bir sözdizimi ve özelliklere sahiptir. Scheme dili altındaki herhangi bir proje, LİSP dilinin çoğunun yeniden uygulanmasına neden olacaktır. Ancak, bu, MIT’nin bilgisayar bilimi bölümünde çok popüler bir tanıtım dilidir. Bu dil, programlama dilinin sözdizimi (syntax) sorunlarını endişe etmek yerine kolayca çözer.
Bu, programlama dilleri ile birkaç büyük programlama dili arasındaki farklarla ilgilidir. Ve TCL, Python, Smalltalk, COBOL, C# ve Prolog gibi kalan diller tartışılan yukarıdaki dillere benzer. Ancak bir program veya uygulama geliştirmek için uygun dili seçmek çok önemlidir.
The post Programlama Dilleri Arasındaki Farklar Nelerdir? first appeared on Kampüs Kod.]]>Yaz?l?m?n ve yaz?l?mc?lar?n günümüzün üretim teknolojilerine yapt?klar? katk? ise çok daha can al?c? etkiler yarat?yor. Öncelikle küresel olarak üretim için kullan?lan bütün ekipmanlar?n daha verimli çal??mas?, veri üretmeye ba?lamas?, optimize olmalar? ve olas? sorunlar? ya?anmadan Casinomaxi öngörebilmeleri mümkün ve bunu sa?layanlar yaz?l?mc?lar. Yaz?l?mc?lara bu sistemleri üzerine kuracaklar? temeli sa?layanlar ise GE’nin dijital dönemin liderlerinden biri olmas?n? sa?layan bir kavram ve bir ürün: Endüstriyel ?nternet ve Predix. Endüstriyel ?nternet kullan?c? internetinin insan a??na sa?lad???n?n bir benzerini makinalara sunarken, Predix’te yaz?l?mc?lara standardizasyon ve üretmek istedikleri yaz?l?m için bir temel sa?l?yor.
Predix ?imdiden 19.000 uygulama geli?tiriciyi, yaz?l?mc?y? kendi çevresinde toplayarak Dijital Sanayi için tek ba??na bir ekosistem yaratt? bile. Bunun yan? s?ra GE’nin i? birlikleri ile birlikte bu ekosistem çok daha geni? bir hale geliyor. Dijital Sanayi uygulamalar? ve çözümlerinde GE; Accenture, AT&T, Capgemini, Cisco, Deloitte Digital, Infosys, Intel, Genpact, SoftBank, Softtek, TCS, Vodafone ve Wipro gibi dünya devleri ile partnerlik yap?yor. Bu sayede Predix için her geçti?imiz gün endüstrileri daha da verimli hale getirecek uygulamalar üretilmesi sa?lan?yor ve yeni dünyada art?k endüstriyel partnerler art?k neredeyse tamamen yaz?l?m odakl? ?irketlere dönü?üyor.
The post Dünya Yazılımcılar Günü – 13.09.2018 first appeared on Kampüs Kod.]]>2018’in en popüler programlama dilleri listesi TIOBE’ye göre ;
Mobil Proglama Dilleri
Mobil teknolojisi günden güne gelişiyor ve maltepe escort değişiyor. Bu değişime ayak uydurmak için mobil uygulama geliştirme alanında hizmet vermek oldukça değerli bir hale gelmiştir.
C Dilinde Mobil Programlama
Dünyada en çok kullanılan programlama dillerinden biri olan C, 30 yıldan uzun bir geçmişe sahip. Bugüne kadar üretilmiş birçok işletim sistemi ve mobil uygulamalar C dili ile üretilmiştir. C dilini bilmenin maltepe escort en büyük artılarından biri, C++ ve Java gibi C’ye benzeyen dillere daha sonra kolayca geçiş yapabilmenizdir.
Mobil Uygulama Dilleri Nelerdir?
C++ Dilinde Mobil Programlama
Düşük seviye mobil uygulama dillerinden en popüleri C++’dır. C’nin nesne tabanlı türü olarak tanımlanabilen C++, pek çok mobil uygulamada ve işletim sisteminde kullanılmaktadır.
Objective-C Dilinde Mobil Programlama
Mobil uygulama dillerinden olan Objective-C iPhone ve iPad’lerde kullanılabilecek mobil uygulamaların geliştirilmesini sağlar.
iPhone ve iPad gibi cihazlar için uygulama üretmek istiyorsanız Objective-C size en uygun çözüm. C programlama diline benzeyen bir yapıda olan bu dille istediğiniz gibi iOS mobil uygulamaları geliştirebilirsiniz.
Java Dilinde Mobil Programlama
Mobil uygulama dilleri‘nden olan Java; uygulama geliştiricileri tarafından “taşınabilir programlama dili” olarak adlandırılır.
Java ile yazılan kodlar; iOS, Linux, Mac OS, Windows, Android işletim sistemlerinde pek fazla bir değişikliğe uğraşmadan çalıştırılabilir.
HTML Dilinde Mobil Programlama
Aslında işaretleme dili olarak bilinen HTML, günümüzde kullanılan en yaygın metin tabanlı dildir. Asıl görevi; metin, görüntü ve video gibi farklı verileri ve bu verilerin bulunduğu sayfaları birbirine bağlamaya yarar.
C# Dilinde Mobil Programlama
Mobil uygulama dillerinden olan C Sharp, Microsoft’un geliştirmiş olduğu bir programlama dilidir.
Swift Dilinde Mobil Programlama
iOS işletim sistemiyle uyumlu mobil uygulamalar geliştirebilmeniz için, Apple tarafından oluşturulan, güçlü ve kullanıcı dostu mobil uygulama dilleri‘nden biridir.
CSS Dilinde Mobil Programlama
CSS, mobil uygulamadaki HTML elementlerinin nasıl bir görselliğe kavuşacağını düzenleyen bir markup dilidir.
JavaScript Dilinde Mobil Programlama
Netscape firması tarafından geliştirilen JavaScript etkileşimli ve dinamik bir dildir.
The post 2018’in en popüler programlama dilleri listesi first appeared on Kampüs Kod.]]>