Programlama Dili Nasıl Öğrenilir Nasıl Yazılır (Detaylı Anlatım)

ATABÖRÜ

Kıdemli Üye
30 Tem 2017
3,359
7
Ötüken
jy7Jzm.jpg

Herhangi bir programlama dili öğrenmeyi düşünüyorsanız ve bu konuda azimli iseniz kısa zamanda (ortalama bir kaç ay içinde) rahatlıkla öğrenebilirsiniz. Yazılım konusu sanıldığı kadar zor bir konu değil. Ancak bu konu kesinlikle sabırlı olmanızda fayda var. Çünkü sürekli deneyerek doğru sonuca ulaşmaya çalışırsınız. Ve bu denemelerde gerçekten saç-baş yoldurtan anlara tanık olacaksınız. Öyle ki bir nokta işaretinin eksik olması saatlerinizi alabiliyor.

Hangi programlama dilinden başlarsanız başlayın temelde birbirine benzeyen kavramlarla karşılaşacaksınız. Hemen hemen bir çok programlama dili aynı mantığa dayanarak yazılmaktadır. Burada önemli olan şu; yapacağınız işlemin temel mantığını kavramak. Yani bir yazılım geliştirmeyi planlıyorsanız ne yaptığınızı tam olarak bilmeniz gerekiyor. Bu nedenle bilgisayar konusunda gerçekten iyi bir bilgiye sahip olmanız –biraz- şart gibi. Program yazma %25 ise geri kalan %75 bilgisayarın temel fonksiyonlarını bilmekte geçiyor.

Programlama dili kavramını basitçe tanımlarsak yazılımcının bir algoritmayı ifade etmek amacıyla, bir bilgisayara ne yapmasını istediğini anlatmasının tek-tipleştirilmiş yoludur. Programlama dilleri, yazılımcının bir bilgisayara hangi veri üzerinde işlem yapacağını, verinin nasıl depolanıp iletileceğini, hangi koşullarda hangi işlemlerin yapılacağını tam olarak anlatmasını sağlar.

Şimdiye kadar kadar 150’den fazla programlama dili geliştirilmiştir. Bunlardan bazılarına örnek verecek olursak –daha çok kullanılan- Pascal, Basic, C, C#, C++, Java, JavaScript, Python, Ada, Fortran, Delphi, Cobol, Perl, PHP ve Swift’tir.

Programlama dili uygulamasında teoride iki tür yaklaşım vardır: Derleme ve yorumlama. Herhangi bir tekniği kullanarak bir programlama dili uygulamak mümkündür. Genellikle donanım üzerinde çalışanlar yazılım üzerinde yorumlananlardan daha hızlıdır. Yorumlanan programların performansını geliştirmek için anında derleme programları kullanılır. Derleyiciden gelen çıktı ya donanım tarafından ya da yorumlayıcı diye adlandırılan programlar tarafından çalıştırılır.

Şu anda hemen hemen tüm yazılım dilleri İngilizcedir. Bazı uygulamaların dili ise İspanyolca olarak kullanılmaya başlanmıştır.

Basitçe izah ederek daha rahat anlamanızı sağlayalım.

Örneğin C# ile Web Programlama (web sitesi yapmak) öğrenmek istiyorsunuz. Sıfırdan başlayacaksınız. Öncelikle bilmeniz gerekenler HTML ve CSS kodlarını öğrenmektir. Bu ikisi bir programlama dili değildir. Ancak birbirinden farklı olarak tümleşik çalışan (bir arada) kodlar serisidir. Bir binanın iskeleti –kolonlar, tuğlalar, demirler, kapılar, pencereler- HTML olarak düşünürsek CSS binanın dış görünümü yani boyası, badanası, rengi vs. olarak düşünebilir. Bir web sitesine ilk girdiğiniz gördüğünüz renkler, çizgiler –kısacası- genel görünümü CSS ile yapılır. Kullanılan CSS, HTML üzerine inşa edilir. Özetlersek HTML ve CSS bir web sitenin temel görünümünü yapmak için kullanılır. Resimlerin, yazıların konumu, renkleri, şekli gibi aklınıza gelebilecek tüm görsel içeriklerin hemen hemen hepsi bu iki kodlama ile gerçekleştirilir.

HTML ve CSS’i öğrendikten sonra bilmeniz gereken dil SQL dilidir. SQL verileri yönetmek ve tasarlamak için kullanılan bir veritabanı yönetim sistemidir. SQL, kendisi bir programlama dili olmamasına rağmen birçok kişi tarafından programlama dili olarak bilinir. SQL herhangi bir veri tabanı ortamında kullanılan bir alt dildir. SQL ile yalnızca veri tabanı üzerinde işlem yapılabilir. SQL’e özgü cümleler kullanarak veri tabanına kayıt eklenebilir, olan kayıtlar değiştirilebilir, silinebilir ve bu kayıtlardan listeler oluşturulabilir. Örnek vermek gerekirse öğrencilerin sınav sonuçlarını öğrendiği bir web sitesi düşünelim. Öğrenci TC Kimlik Numarasını ve Şifresini girdiğinde sonucu ekranına gelsin. Bunu yapabilmesi için veritabanında tüm öğrencileri ait TC Kimlik, Şifre, Kişisel Bilgiler ve Sınav Sonuçlarının olması gerekiyor. Öğrenci doğru bir şekilde şifresini girdiğinde veri tabanından kendisine ait sonucu çekecektir. Bunu biz SQL ile yapıyoruz. SQL çok kolay bir dildir. Temel olarak silme, düzeltme, ekleme gibi komutları öğrendiğinizde artık bir adım daha ilerdesiniz demektir.

Bu işlemde tamamsa C# öğrenmeye geçebiliriz demektir. C# (si şarp şeklinde okunur), Microsoft’un geliştirmiş olduğu yeni nesil programlama dilidir. Yine Microsoft tarafından geliştirilmiş .NET Teknolojisi için geliştirilmiş dillerden biridir. C#, .NET orta seviyeli programlama dillerindendir. Yani hem makine diline hem de insan algısına eşit seviyededir. Buradaki orta ifadesi dilin gücünü değil makine dili ile günlük konuşma diline olan mesafesini göstermektedir. C# basit, modern, genel-amaçlı, nesneye yönelik programlama dili olarak tasarlanmıştır. Bu dil ile kısaca verilen komutların çalıştırılması kullanılır. Örneğin çok basit bir şekilde anlatacak olursak; yukarıda bahsettiğimiz öğrenci kimlik numarasını ve şifresini textbox’a girdiğinde ve ENTER yaptığında çalıştırdığı komut C# olacaktır. C# ile beraber çalışan SQL kodları sayesinde veritabanından sonuçları çağıracaktır.

Biraz karışık gelebilir. Ama olabilecek en basit şekilde anlatmaya çalıştım.

Peki bunların programları neler? Nasıl öğrenebilirim sorusuna gelince. Öncelikle –bahsettiğim C#/Web Programlama/Uygulama” için bilgisayarınıza kurmanız gereken program Visual Studio olacaktır. Microsoft Visual Studio, Microsoft tarafından geliştirilen bir tümleşik geliştirme ortamıdır (IDE). Microsoft Windows, Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework ve Microsoft Silverlight tarafından desteklenen tüm platformlar için yönetilen kod ile birlikte yerel kod ve Windows Forms uygulamaları, web siteleri, web uygulamaları ve web servisleri ile birlikte konsol ve grafiksel kullanıcı arayüzü uygulamaları geliştirmek için kullanılır. Visual Studio, değişik programlama dillerini destekler, bu da kod editörü ve hata ayıklayıcısının neredeyse tüm programlama dillerini desteklemesini sağlamaktadır. Dahili diller C/C++ (Görsel yoluyla C++), VB.NET (Visual Basic .NET üzerinden), C# (Visual C# ile), ve F# (Visual Studio 2010 itibarıyla) içermektedir.

Microsoft Visual Studio bilgisayarınıza kurduktan sonra (ücretsiz olanıda vardır) veritabanı işlemleri için Microsoft SQL Server programı kurmanız gerekiyor. Bu programıda kurduktan sonra CSS, HTML, SQL ve istediğiniz programlama dilini (C/C++, Visual Basic, C#, F#) öğrenmeye başlayabilirsiniz.

Emekleme Sürecinde Keyif Alabilen Erken Yürür
Hesap makinesi yapabiliyor olmak size zevk veriyorsa programlama dili öğrenmeye yatkınsınız demektir. Emekleme sürecinde olabildiğince gereksiz programlar üretmekten kaçınmayın. Mesela şu tarz şeyler yapmaya çalışın;

Yazdığınız kelimenin sessiz harflerini silen program
52 iskambil kağıdını 4 oyuncuya rasgele dağıtan program
Girilen metinde kaç kelime olduğunu hesaplayan program
Bilgisayarın rasgele ürettiği sayıyı tahmin etme oyunu
Ben programlama öğrenirken (emekleme aşamasında) eşim için bir program yazmıştım. İsim girme yerine kendi ismini yazdığında ekranda “Kadir Ece’yi Çok Seviyor” yazacaktı. Başka birinin ismini yazdığında “Kadir Ayşe’yi Sevmiyor” yazacaktı. Ancak çalıştırınca eşim Ece yerine eCe yazdı, eCE yazdı; dolayısıyla program orada patladı. Bir hafta sonra aynı programın kusursuz çalışan versiyonuyla karşısına çıkmak paha biçilemezdi. Sizin de böyle ufak çılgınlıklarınız olsun.

Işığı Görmeden Yürüyemezsiniz, Bir İdealiniz Olmalı
Emekleme sürecinden sonra gelen yürüme sürecinde programlamayı hakkını vererek öğrenmek istiyorsanız, onu bir hobi olarak öğrenme fikrinden vazgeçmelisiniz. Önce ayakları yere basacak bir proje bulmalısınız ve hiç tereddüt etmeden geliştirmeye çalışmalısınız. Yüzlerce noktada takılacaksınız, ancak bunları ne kadar atlatırsanız o kadar geliştiğinizi göreceksiniz. Korkmadan, üşenmeden üreteceksiniz. Burada kilit soru şu; “iyi de, ne üreteceğimizi nasıl bulacağız?”. Bu konuya da farklı bir yazımda açıklık getirmeyi düşünüyorum. (Güncelleme: Getirdim, şuradan okuyabilirsiniz)

Her Şeyi Bilmek Zorunda Olmadığınızı Fark Edin
En büyük hatalardan biri olan ancak kimsenin dile getirmediği bir konu da şu; programlayabilmek için her şeyi ezberlemek, her şeyi bilmek ve her şeyi okumak zorunda değilsiniz. Aklınıza takılan konuyu araştırıp uygulayabildiğiniz sürece programlamaya hakimsiniz demektir. Hiçbir yerden yardım almadan bütün işlerini halledebilen programcı yoktur. En baba tarihçi bile olsanız, bir deniz savaşının tarihinden emin olamayabilirsiniz. Dolayısıyla programlama dili öğrenmenin önemli bir adımı da, aradığını bulabilmektir.

Kalın Kitaplar Gözünüzü Korkutmasın
Kalın kitaplarda yazan şeylerin çoğunu programlama maceranız boyunca hiç kullanmayacaksınız bile. Dolayısıyla okurken veya göz gezdirirken sadece neler yapılabildiğini görmüş olun, ezberlemeye çalışmayın. Genel bir fikir versin, çok detaya takılmayın.

Öğrendiğiniz Dilin Fanatiği Olmayın
İlk etapta büyük ihtimal “bu dil bana yeter, zaten zor öğrendik” düşüncesine sahip olacaksınız. Sakın, sakın, sakın böyle bir hataya düşmeyin. Zaten bir dili hakkını vererek öğrendiğinizde diğerini öğrenmeniz bir hafta falan sürecek. Gerisi tamamen gör-uyarla mantığı. Bu arada kesinlikle hepsini birden çok iyi bilmek zorunda değilsiniz. Zaten genelde bir veya iki dilde ustalaşacaksınız. Rahat takılın.

İngilizce’nin Kilit Rolü
Bir noktada takıldığınızda Türkçe kaynakların yetersiz olduğunu göreceksiniz. Kafanıza takılan şeyi İngilizce sorabilmekte sıkıntı yaşamamalısınız. Mesela “öğrencileri sınıfın not ortalamasına ne kadar yakın not aldığına göre nasıl sıralayabilirim?” sorusunu İngilizce’de en doğru kelimelerle nasıl sorardınız?

Programlama problem çözme sanatıdır. Bir problemi çözme konusunda ne kadar istekliyseniz programlama dilini de o kadar iyi öğrenirsiniz.

Eğer söz konusu web programlama ise deneme amaçlı bir hosting alabilir veya doğrudan bilgisayarınızdan ISS kurarak tasarladığınız bir web sitesini çalıştırabilirsiniz.​
 
Moderatör tarafında düzenlendi:

ATABÖRÜ

Kıdemli Üye
30 Tem 2017
3,359
7
Ötüken
hocam bana bir hedef verin lütfen
cunku herkes sunu ogren bunu ogren dıyor ama kımse al buna bak bunu ogren suna bak sunu ogren tarzı yol gostermıyor sonra sıkıyor

Proglama. İşine Çok Yarayacaktır Yazılım İle Daha Sonra... C# Ve C++ İle Çok Güzel Şeyler Yazabilirsin Ama Gereksiz Sonuna Kadarda Öğrenme.
 

Mapzilla

Adanmış Üye
23 Eyl 2016
7,205
13
hocam bana bir hedef verin lütfen
cunku herkes sunu ogren bunu ogren dıyor ama kımse al buna bak bunu ogren suna bak sunu ogren tarzı yol gostermıyor sonra sıkıyor

Seçeceğin language sana bağlıdır.
O languagein frameworklerini , IDE'lerini , syntaxını ve kullanım alanlarını araştır.
Sana hangisi uygunsa onu seç. Lakin o languagei tam öğren , tam öğren ki diğer languageleri öğrenme fırsatın olsun.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.