Jump to content

BrainDamage ' in Programcılık Rehberi


Recommended Posts

Arkadaşlar , uzun süredir kafamda tasarladığım bir projeyi hayata geçiriyorum . Beni tetikleyen şey ise artık kendimi yeni başlayacak arkadaşlara yardımcı olacak seviyede görmem oldu . Bu işe başlamak için uygun zaman mı değil mi bilemiyorum , çünkü hem lise zamanı çok uzun , hem de kendime ayıracağım zaman çok kısıtlı . Fakat yine de başlayacağım , beni takip eden , etmeyen , herkesin yorumlarını bekliyorum . Bu benim için oldukça önemli bir şey . Bu başlığın altında asla ve asla dini tartışmaların yapılmasın lütfen . Ayrıca takıldığınız yer varsa mutlaka sorun . Sormazsanız yanlış öğrenirsiniz , ileride başınıza dert açar. Öğreneceğimiz dil C++

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Ders 1 -
Programcılığa Başlamadan Önce

Programlama Dillerinin Ortaya Çıkış Sebebi

Programlama dillerinin neden olduğunu anlamak için , bilgisayarı bir elektronik alet olarak düşünmemiz gerekiyor . Bilgisayarın saklama birimlerinde (Harddisk , RAM ) yalnızca 1 ve 0 lar vardır . Bunlara bit denir . Bir bit yalnızca 1 ve 0 olabilir . Bayt dediğimiz şeyler ise 8 tane bitin birleşimidir ( İleride bu konu üzerinde uzunca konuşacağız ) . Yaptığımız programlar da 1 ve 0 lardan oluşur . Peki , biz bu bilgiyi nasıl anlayacağız ? İnsan 1 ve 0 lar ile bir programı nasıl yazar ? Boyutu 6 GB olan programlar var . İnsanlar bu programları bit bit mi yazdı ? Hayır , kesinlikle öyle bir şey yok . Çünkü insanlar , anlayabildikleri programlama dilleriyle programları yazıyorlar , bir program ise bunu makine diline (binary ) çeviriyor . İlk programlama dili , assembly ' dir . Oldukça zor bir dildir . Fakat biz o kadar uğraşmayacağız . Neyse ki C++ var ! Bu sayede , hem temelden kod yazacağız , hem yaptığımız program daha yüksek seviyeli dillere nazaran daha hızlı olacak , hem de nesne yönelimli programlamadan faydalanacağız . Kelimeler yabancı gelebilir , pek önemli değil . Zaten nesne yönelimli programlamayı şu an değil , ileride göreceğiz ...

Bu günlük bu kadar.Yarın daha uzun bir yazı ile karşınızdayım .

Link to post
Sitelerde Paylaş

Şimdi programlama yapmaya başlayacağız . Fakat önce birkaç şeyin anlamını bilmemiz gerekiyor . Şu an bir şey indirmeyin lütfen , size anlatacağım ne indirmeniz gerektiğini ...

Compiler ( Derleyici )

Bir program yazdık diyelim . Fakat bunu henüz binary dosyaya çevirmedik. Yani kaynak kod öylece duruyor . Bu kaynak kodu programa çeviren programa da derleyici diyoruz .

IDE

IDE dediğimiz program türü işimizi oldukça kolaylaştıracak arkadaşlar . Biz IDE olmadan programı yazarız , fakat kütüphaneleri bağlamak , parametreler vesaire çok uzun sürer . IDE dediğimiz şeyin içinde programımı yazıyoruz . Sonra da derliyoruz . Biz programımızı yazıyoruz , tek tuşla derleyebiliyoruz . IDE arkaplanda ne yapılacaksa yapıyor . Hatalarımızı gösteriyor , önerilerde bulunuyor , yazılarımızı renklendiriyor ... Ücretli(Visual Studio vb. ) ve ücretsiz( Codeblocks , Dev-c++ gibi ) ideler var . Ben size CodeBlocks ' u öneriyorum . Buradan indirebilirsiniz . Biraz ingilizce bildiğinizi varsayıyorum . Problem çıkarsa buradan sorun ben cevaplayayım . Programda girdiğinizde , sol üstte file sekmesi olacak . File -> New -> Project yolunu takip edin . Project ' e bastığınız zaman yeni bir pencere açılacak . Orada Console Application ' un üstüne tıklıyoruz ve "Go" tuşuna basıyoruz (Go tuşu sağda ) . Oradaki seçme yerinden C++ ya basıyoruz ve next ' e tıklıyoruz . Project title denilen şey projenin başlığı ( adı ) . Oraya bir ad girin . İkinci yerde de projenin nerede açılacağını seçiyoruz . Next ' basalım . Şimdi önemli bir yere geldik . "Compiler :" yazısından sonra "GNU GCC Compiler " yazması gerekiyor . Eğer yazmıyorsa siz seçin . Oradaki yerlerin ikisine de tik atın ve finish ' e tıklayalım . Ekranda kodlar çıkmadıysa , sol tarafta bir yerde main.cpp ' yi bulun ve ona çift tıklayın . Şimdi ekranda şöyle bir kod çıkmış olması gerekiyor :

#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
return 0;
}

Şimdi sol üst taraflarda bir yerlerde ( o kadar üstte değil . ) bir dişli simgesi göreceksiniz . Onun yanında bir yeşil bir başlatma simgesi , onun da yanında ise hem dişli hem ok simgesi göreceksiniz . Dişliye bastığınız zaman programınız derlenir , başlatma düğmesine bastığınız zaman programınız çalıştırılır , ikisinin de olduğu ( Dişli + çark ) düğmeye basınca da programınız önce derlenir , sonra da çalıştırılır . Şimdi derle & çalıştır düğmesine basalım . Çıktı şu olacaktır :

Hello world!

Process returned 0 (0x0) execution time : 0.004 s

Press any key to continue.

Eğer bir hata varsa ( Bir şey değiştirdiyseniz ) altta gözükecek ve programınız çalışmayacaktır . Evet arkadaşlar , benim için zorlu olan kısmı bitirdim . Gerçekten IDE ' yi size kurdurtmadan anlatmam çok zordu . Bir dahaki derste , program yazmaya başlayacağız . Hepinize iyi günler ... Ayrıca o gördüğünüz kodda oynamalar yapabilirsiniz . Mesela şu satırı :

cout << "Hello world!" << endl;

değiştirip

cout << "dasdasdasdasd" << endl;

böyle yapabilirsiniz. Biraz eğlenebilirsiniz . Birkaç ipucu daha verdikten sonra yazımı bitireceğim . endl ifadesi , bir alt satıra geçiriyor bizi . Yani ,

cout << "Bu satır birinci " << endl<< "Bu da ikinci . " ;

Bu kodu çalıştırdığınız zaman o iki cümleyi alt alta yazacaktır . Birkaç deneme yapabilirsiniz . Şu an c++ ile ilgili bir şey anlatmak istemiyorum , bir dahaki derste anlatacağım uzun uzun . Gerek * syntax ' ına gerek mantığına ileride alışacaksınız .

İyi Günler...

Syntax : Bir programlama dilinin yazım şeklidir . Mesela c++ ' nın syntax ' ı ile delphi'nin syntax'ı farklıdır .

tarihinde BrainDamage tarafından düzenlendi
Link to post
Sitelerde Paylaş

Kardeşim ben ingilizce seti aldım 2 adet cd var çok önemli ancak malesef bilgisayara kopyalanmıyor, oradan mp3 atacaktım, şimdi ne yapacağım bu cd leri ben ? hep bilgisayara takıp mı dinlemek zorundayım....hoparlörün sesini açıp cep telime kaydedeyim dedim sesler berbat oluyor..

Bilgin varsa yardımcı olurmusunuz çok üzüldüm bu duruma ya :(

Link to post
Sitelerde Paylaş

Durr!!

Madem böyle bir işe bulaştın C++ olmaz!! C++ kurallı bir programlama dilidir. C kadar güçlü değildir, C'nin bir üstü olarak görüldüğü gibi gösterilip güçlü olduğu yansıtılır ama bu iş hiçte öyle değildir.. Buradan kullanıcıların en çok tercih ettiği yazılım dillerinin tablosunu görebilirsin ;)

Programlama dillerine hevesim 14 yaşındayken başladı ve Assembly'e merak sarmıştım ki yarı yolda bıraktım, daha sonra 17 yaşıma geldim ve halende 17 yaşımdayım ama bir-kaç ay sonra 17'ye veda edeceğim :( Python programlama dilini öğrendim, yada öğrendiğimi sandım :)Buradan python programlama dilini öğrenmek isterseniz öğrenebilirsiniz. Python kabuk sistemli bir programlama dilidir ve diğer programlama dilleri gibi farklı işletim sistemleri için farklı komutlar yazmak zorunda kalmazsınız. Tüm kodlar, tüm işletim sistemleri ile uyumludur.. Böyle bir avantajınız var python programlama dilinde ama size python'u öğrenin demiyorum, öğrenmek isterseniz yapamadığımız bir problem olursa soru sormaktan çekinmeyin..

C,C++ ve C#

Öncelikle bir hedefin olmalı C++ dilini seçme nedenin nedir? Hayalindeki yazılımı mı geliştirmek yoksa iyi bir iş imkanı mı?

Yabancı dilin yoksa C# öğrenerek işe başlayabilirsin, Türkiye'de geliri 1,5 dan başlıyor.. C++, C diline göre daha kolay ve kullanıcıya daha gelişmiş gibi gösterildiği için C veya C++ dilleri ile aklına gelebilecek her şeyi yazabilrisin, işletim sisteminden tut bir bilgisayar oyununa.. Ama bu söylediklerim söylediğim kadar kolay değill :)

C# ve Linux

Ben windows işletim sisteminden uzak biri ve bilgisayar güvenliğimi(en azından lamer'lar ve kendini hacker sanan liseliler için) Ubuntu işletim sistemini kullanıyorum, dandik bir laptobum var ama güzel bir bilgisayarda bu işletim sisteminin ne kadar hızla çalışacağını merak ediyorum..

Linux işletim sistemi bilgisyarın nasıl çalıştığına dair size bir sürü materyal verir, kolay değildir. Ama iyi bir linux kullanıcısı iyi bir programcıdır. Windows işletim sistemlerini genelde Photoshop, Flash, After Effect, 3D Studio Max, Maya, ZBrush gibi programlara para vermeye kıyamayanlar yaygın crack kullanımı nedeniyle daha çok windows işletim sistemini kullanıyorlar.

C# microsoft'un geliştirdiği type-safe bir programlama dilidir. C'nin gücü ve Visual Basic'in basitliği ile ün salmış .NET tabanlı güçlü bir programlama dilidir. Linux üzerinde MonoDevelop yazılımı ile yazılımlarını geliştirebilirsiniz.. Aynı zamanda ben bu yazılımı windows kullanıcıları içinde destekliyorum. DevC++,NetBeans,Eclipse IDLE(GUI) geliştirme araçlarından kat ve kat daha hızlıdır. Code:Blocks'ta iyidir ;) Ama son zamanlarda MonoDevelop dananın kuyuruğunu koparmış durumda ;) C# öğrenmek istersende burası iyi ben ref ve out özelliklerini anlayamadığım için caymıştım C#'tan..

Python ile modül çevirileri yapıyorum, sanırım bunları kitap haline getireceğim çünkü hiç Türkçe kaynak yok ama kimliğimin açığa çıkmasını istemediğimden dolayı, bu linkleri paylaşamıyorum kusura bakmayın. Ama verdiğim python ile ilgili sitede çevirdiğim modüllere ulaşabilirsiniz.

C++ dilini en güzel anlatan site burası bence, C dili için Türkçe bir kaynak istiyorsanız burayı tavsiye ederim.

HOOOOPP!

Algoritmayı hatılayalım, program elbet bir yerde açık oluşturacak ve yazdığınız yazılımın güvenliği sarsılacak, bu da adınızı kirletecek.. Tabi bununda bir çözümü var :) Türkçe algoritma dersleri için burayı ziyaret edebilrisin.

Yazılımda bir sorununuz olursa çekinmeyin, bilgisayar başında ne yapacağımı şaşıyorum çoğu zaman..

İyi çalışmalar..

Ekleme: Açıksız sistem olmaz, buna alışın. Mükemmeli asla yakalayamayacaksınız.. Ama NLP yapabilirsiniz tabiki de.. İnanırsanız başarmanız kaçınılmazdır..

tarihinde QQyL tarafından düzenlendi
Link to post
Sitelerde Paylaş

Herhangi bir IDLE GUI kullanmadan da programlamları derleyebilirsiniz. Bu IDLE GUI programları şimdi anlatacağım yöntemi kendi içlerinde döndürürler ve kullanıcıya kolaylık sağlarlar. Windows işletim sistemide böyledir.

Önce C++ derleyicisini bilgisayarımıza yüklememiz gerekiyor..

Linux ve MacOS işletim sisteminde;

CTRL + ALT + T : terminali açar

sudo -s : yönetici olarak hükmetmenizi sağlar, parolanızı girersiniz ama girdiğiniz görünmez [ENTER] tuşuna bastığınızda parolanızı kontrol eder, doğruysa root olursunuz, yani sistemin admin'i..

bu işlemleri başarıyla atlattıktan sonra, C++ derleyicisini kurmaya geldi sıra..

apt-get install g++ ifadesini yazarak, kullandığınız işletim sisteminin paket kaynaklarında paket adı g++ olan pakete install ifadesini uygulamasını söylediniz.. Install biliyorsunuz ki yüklemek.. Size evet/hayır diye soru soracak kullandığınız dil paketine göre yes/no, ja/nein etc. olumlu cevap vermeniz hayrınıza olacaktır..

Bu paket listesine yeni paketler eklemek isterseniz bu dizindeki dosya üzerine eklemeler yapmanız gerekecektir. /etc/apt/sources.list

Masaüstüne bir klasör oluşturacağım ve bu klasörün içerisine ilk.cpp adında bir c++ dosyası oluşturacağımız ve bunu düzenleyeceğim.. Bunu terminalden yapıyorum, bilmeyenler öğrensinler..

mkdir deneme : deneme adında directory oluşturdum yani klasör

touch ilk.cpp : ilk.cpp adında ise bir c++ dosyası

şimdi GNOME masaüstü arayüzünü kullanıyorsanız genelde windows'ta bulunan notepad yazılımı gedit'tir. KDE masaüstünde ise kate'dir. MacOs işletim sisteminde ise textedit'tir. Ben GNOME arayüzüne sahip bir linux işletim sistemine sahip olduğum için,, gedit ilk.cpp diyerek geditte ilk.cpp dosyamı açmış olacağım..

g++ ilk.cpp -o ilk şeklindeki bir parametre .cpp dosyamı nesneye çevirdi yani bir objeye, bu objemi çalıştırmak istersemde, ./ilk komutunu kullanacağım.. Ve çıktımızı rahatlıkla görüyor olacağız..

iyi çalışmalar..

Link to post
Sitelerde Paylaş
  • 3 weeks later...

Ya arkadaslar bilen varsa care soyleyin bana, dort gun once hatti yeni eve tasidik ama bilgisaya adls kullanici adi yada adls sifreniz yanlis diyip durdu, kardesim bayagi ugrasti olmadi ama durduk yere internet geldi ne alakaysa, iki gundur yine ayni nedenle internet yok ve ben butun yazdigim sifreleri tekrar tekrar girdim olmuyor, modemin lan isigi hic yanmiyor, diger isiklarida sifrelerken bir iptal oluyor bir geliyor ve tekrar tekrar basa sarmak zorunda kaliyorum, ne bu ya biktim ugrasmaktan yardim edin bana lutfeeen..

Link to post
Sitelerde Paylaş

Ya arkadaslar bilen varsa care soyleyin bana, dort gun once hatti yeni eve tasidik ama bilgisaya adls kullanici adi yada adls sifreniz yanlis diyip durdu, kardesim bayagi ugrasti olmadi ama durduk yere internet geldi ne alakaysa, iki gundur yine ayni nedenle internet yok ve ben butun yazdigim sifreleri tekrar tekrar girdim olmuyor, modemin lan isigi hic yanmiyor, diger isiklarida sifrelerken bir iptal oluyor bir geliyor ve tekrar tekrar basa sarmak zorunda kaliyorum, ne bu ya biktim ugrasmaktan yardim edin bana lutfeeen..

Not:Brain basligina yazdim umarim kizmazsin, sende anliyorsun bu gibi konulardan o yuzden..

Link to post
Sitelerde Paylaş
  • Konuyu Görüntüleyenler   0 kullanıcı

    Sayfayı görüntüleyen kayıtlı kullanıcı bulunmuyor.

×
×
  • Yeni Oluştur...