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.

YAZILIM DİLLERİ: JAVA

Java Nedir?

Java, 1991 yılında Sun şirketi çatısı altında kurulan ‘Green Team’ adlı on üç kişilik bir ekip tarafından hazırlandı. Green Team, bilişim teknolojileri üzerinde araştırma geliştirme yapmayı hedefleyen bir ekipti. Bu ekip geleceğin teknolojisinin ev elektroniği cihazlarda ve kişisel elektronik cihazlarda olduğuna inanıyordu. İlk çalışmaları ‘Star Seven’ adlı bir kontrol cihazıydı. Bu elektronik aygıt birçok cihazı kontrol edebiliyordu ve kontrol edebilmesinin temelinde herhangi bir platforma bağlı olmayan Oak dili vardı. Hemen her yeni buluş gibi bu buluş da ilk başlarda pek kabul görmedi. Bu başarısızlık Green Team’in ilk başarısızlığıydı fakat onlar yeni bir bakış açısıyla çalışmalarına devam ettiler. Uzun çalışmalar sonucunda ortaya daha sonra adı Hot Java olarak değişecek olan WebRunner adlı internet tarayıcısı çıktı. Java’nın kurucu ekibinde bulunan James Gosling geliştirdikleri bu teknolojiyi “Web ile aynı zamanda geliştirilen, Web’in içeriğini ulaşılabilir hale getiren bir iç çamaşır” olarak tanımladı. Java kelime anlamı; bir tür kahvedir. Peki Java programlama dili nedir? 1996 yılında geliştirilmeye başlanan açık kodlu, nesneye yönelik, tüm platformlardan bağımsız, çok işlevli, yüksek seviye, yüksek performanslı, adım adım işletilen bir dildir. Java, artık tüm bilgisayarlar ve mobilde bulunan bir programlama dilidir.

Java Programlama Ne İşe Yarar?

Java platformdan bağımsız çalışan, yüksek hızlı, basit tasarımlı, güvenli, nesne tabanlı ve dinamik bir programlama dilidir. Java; Windows sürümleri, Mac OS, HP-Unix, Sun Solaris, Redhat Linux, Ubuntu, CentOS gibi platformlarda çalışabilir. Java kullanım alanları oldukça geniştir. Herhangi bir platformda yazılan bir yazılımı diğer sanal platformda çalıştırmak için Java programlama dili kullanılır. Web tarayıcısı ve erişilebilir web hizmetleriyle çalışacak programlar oluşturmak için Java kullanılır. Online forumlar, anketler, HTML formları ve mağazaları işleme ve daha fazla sunucu tarafı uygulamaları geliştirmek için Java kullanılır. Üst düzey özelleştirilmiş uygulama ve hizmetler oluşturmak adına Java dili kullanılarak uygulamalar ve hizmetleri birleştirmek için Java kullanılır. Son olarak uzak işlemciler, cep telefonları, kablosuz modüller, ağ geçitleri, tüketici ürünleri, sensörler, mikro denetçiler ve tüm elektronik aygıtlar için güçlü ve verimli uygulamalar yazmak adına Java kullanılır.

Java’nın Özellikleri Nelerdir?

java ne işe yarar

Java, nesne tabanlı bir programlama dili olduğu için Java’da her şey bir nesnedir. Java, tüm platformlardan bağımsız olarak çalışabilir. Bu program bir kez derlendikten sonra tüm platformlarda çalışabilir. Oldukça basit bir programlama dili olduğu için öğrenilmesi kolaydır. Güvenli bir programlama dili olduğundan dolayı virüs bulaşmayan ve başka kişilerin giremeyeceği programlar yazılmasına izin verir. Java kodu derlendikten sonra doğal mimariye sahip bir şekle girer. Derlenmiş Java kodu her platformda ve ortamda çok rahat bir şekilde çalışabilir. Java ile birden fazla görev yapabilecek düzeyde programlar yazmak olanaklıdır. Java’nın byte kodları yerel makine talimatlarına dönüşür ve hiçbir yerde depolanmaz, yani adım adım yorumlanan bir yapıya sahiptir. Java’nın just-in-time compiler adı verilen tam zamanında derleme özelliği yüksek performanslı ve yüksek hızlı çalışmasına imkan tanır. Java; C ve C++ gibi dillere oranla çok daha dinamik bir programlama dilidir.

Java’da yazabilmek adına aşağıdaki bağlantıdan en son sürümünü indirebilirsiniz. 🙂

https://www.java.com/tr/

 

YAZILIM DİLLERİ: ASP.NET

ASP .NET, .NET Framework ile birlikte gelen çok güçlü bir web geliştirme platformudur. ASP.NET ile sadece HTML tabanlı statik sayfalar değil, kullanıcı etkileşimli ve sürekli yenilenebilen dinamik sayfalar yapabilmek söz konusudur. Örneğin günümüzde e-ticaret siteleri, bir takım haber portalları, çeşitli kurumsal uygulamalar, forum siteleri ASP.NET ile yazılabilir ve yönetilebilir.                                                                                 ASP.NETi öncelikle tanımlamak gerekir ise, ASP.NET server tabanlı bir web geliştirme platformudur ve Microsoft .NET Framework temellidir. ASP.NET server tabanlıdır ne demektir, bunu biraz açalım. Server tabanlı diyerek aslında şunu demek istiyorum, ASP. NET bir web server üzerinde çalışır. Oysaki HTML, JavaScript, CSS tabanlı siteler istemci tabanlı yani kullanıcı tarafında işlem gören yapılardadırlar. Bu yapılarda kullanıcı bir servere istek yollar, ilgili sayfa kullanıcının ekranına karşı serverdan yüklenir ve kullanıcı ise bunu görüntüler. Server tabanlı sistem temel olarak aslında 3 rolü barındırır.

Kullanıcı : Kullanıcı ile işlemler başlar ve kullanıcı ile son bulur.

Web İstemci : Kullanıcı internete bir yazılım vasıtası ile bağlanır, bu bildiğimiz tarayıcılardır aslında, firefox, ie, chrome gibi.

Web Sunucu : Server tarafında yüklü olan programdır. Web istemci tarafından gelen istekler buranın üzerinde yürütülür.

ASP. NET; WEB uygulamarı geliştirmek için kullanılan bir teknolojidir. Genellikle çoğu WEB uygulaması, çoğu WEB sitesi bir database kullanmaktadırlar.WEB uygulamaları geliştirebilmek için bir çok teknoloji mevcuttur, bunlar içinde PHP, JSP, Ruby On Rails, CGI, ColdFusion gibi teknoloilerde bulunmaktadır. ASP.NETte bu teknolojilerden birisidir ve oldukçta dinamik bir yapısı bulunmaktadır ve çoğu kurumsal projede tercih edilmektedir.

ASP. NET uygulamaları geliştirmek için, Microsoft .NET Framework kullanmaktayız. .NET tüm teknolojileri bir arada toplayan bir platformdur aslında, bu platform altında WEB uygulamaları geliştirebilir, WEB servisleri kullanabilir, Desktop uygulamaları geliştirebilirebiliriz. 40?dan fazla programlama dilini desteklemektedir.
Asp.NET gibi bir çok teknoloji aslında bize server tabanlı programlama imkanı vermektedir. Her birinin de kendine göre avantajları ve dezavantajları mevcuttur.

ASP.NETin özelliklerini kısaca ele alacak olursak ,

  • ASP.NET bize bildiğimiz programlama dili ile kodlama imkanını verir. Örneğin .NET Framework yapısı 40?tan fazla programlama dilini desteklemektedir. Örneğin, biz istersek C# ile istersek VB ile ASP.NET sayfalarını kodlayabiliriz.
  •  Asp.NET teknolojisi oldukça hızlıdır, eski ASP?ye göre her seferinde sayfaların tekrar tekrar okunarak her istekte bir request olmasını engelleyerek, daha hızlı ve daha performanslı çalışmasını sağlar.
  • ASP.NET bir çok tekonoloji tarafından desteklenir. XML, Web Servisleri, Veri tabanı etkileşimi, email etkileşimi gibi bir çok teknoloji tarafından desteklenir ve bir çok teknolojiyi destekler.
  • ASP.NET ile projeler hazırlanırken projenin dizayn tarafından bağımsız olarak rahatlıkla çalışabilirsiniz.
  • ASP.NET kullanıcıları için bir çok arayüze sahiptir. Email formları, veritabanı listeleyicileri gibi bir çok komponent bulunmaktadır.

ASP.NET ile ilgili bazı kurslara aşağıya bıraktığım linkten ulaşabilirsiniz.

https://www.asp.net/freecourses <—

MOBİL PROGRAMLAMA DİLLERİ

Mobil teknolojisi günden güne gelişiyor ve 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. Dışarıdan bakıldığında mobil uygulama geliştirmek kolay gibi görünebilir ancak mobil uygulama geliştirme sırasında yapılan programlamalar pek çok incelik gerektiriyor.

Mobil uygulamaları tasarlarken belki de en önemli nokta dil konusudur. Bu noktada bildiğimiz anlamdaki dilden değil, programlama dillerinden söz ediyoruz. Uygulama süreçlerinde programlama dilleri konusu genelde basitmiş gibi algılanır, oysa programlama dillerine hakim olmayan bir girişimcinin başarılı olma şansı yoktur. İyi bir mobil uygulama yaratmak için ilk koşullardan bir tanesi kesinlikle budur. Bu anlamda karşımıza pek çok seçenek çıkabiliyor. Kimi programa dilleri popüler olduğu için öncelikli olarak tercih ediliyor. Uygulamanız için en ideal, en doğru programa dilini tercih etmeniz oldukça önemlidir.

Peki mobil uygulama dilleri nelerdir? Detaylarıyla birlikte aşağıdaki başlıkta cevabını bulalım. 🙂

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. Nesne tabanlı programlamaların kolaylığını sağlayan C++ sayesinde geliştirilen mobil uygulamalar, gerekli iyileştirmeler sonucunda oldukça hızlı bir şekilde çalışırlar.

Objective-C Dilinde Mobil Programlama

Mobil uygulama dillerinden olan Objective-C iPhone ve iPad’lerde kullanılabilecek mobil uygulamaların geliştirilmesini sağlar. C programlama diline benzeyen yapısıyla iOS işletim sistemi için pek çok uygulama geliştirebilirsiniz. Öğrenmesi oldukça kolay olan bu dil, aynı C++ gibi nesne tabanlı bir yapıya sahiptir.

Java Dilinde Mobil Programlama

Mobil uygulama dilleri‘nden olan Java; uygulama geliştiricileri tarafından “taşınabilir programlama dili” olarak adlandırılır. Çünkü bu programlama diliyle yazdığınız kodlar hangi platformda gerekliyse oraya entegre edilebilir. 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. Mobil dünyanın en fazla kullanılan programlama dili Java’ydı ancak akıllı telefonların gelişerek iOS ve Android işletim sistemine sahip cihazların kullanımının artmasıyla eski gücünü kaybetti. Tüm bunlara rağmen Java, hala en fazla kullanılan programlama dillerinin arasında yerini alıyor.

HTML Dilinde Mobil Programlama

Aslında işaretleme dili olarak bilinen HTML, günümüzde kullanılan en yaygın metin tabanlı dildir. En son sürümüne HTML5 ismi verilir. Aslında bir programlama dili olarak tanımlanamaz çünkü tek başına bir uygulamanın geliştirilmesinde rol oynamaz. 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. C ve C++’daki tutarsızlıkları ortadan kaldırmak amacıyla geliştirilen bu dil, nesne tabanlı dillerin arasından en gelişmiş olanıdır. Java ile pek çok benzerliği bulunur. Gelişmiş bir derleyiciye sahiptir ve bu sayede hata oranını en aza indirir. Geliştirilen uygulama çalıştırıldıktan sonra derleyici tarafından belirlenen hatalar geliştiricinin önüne farklı bir ekranda sunulur ve geliştirici bu hataları kolaylıkla düzeltebilir.

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. Açık kaynaklı bir dil olan Swift’in kullanımı oldukça kolaydır.

CSS Dilinde Mobil Programlama

Aslında bir programlama dili olmayan CSS, mobil uygulamadaki HTML elementlerinin nasıl bir görselliğe kavuşacağını düzenleyen bir markup dilidir. Mobil uygulamaya ait olan ögeleri, renkleri, boyutları, konumları vb. özellikleri düzenlemeye yarar.

JavaScript Dilinde Mobil Programlama

Netscape firması tarafından geliştirilen JavaScript etkileşimli ve dinamik bir dildir. Java’nın bir başka sürümü sanılsa da aslında birbirinden oldukça farklı teknolojilerdir. Genellikle oyun geliştirmede kullanılır.