Kodlamaya Ne ile Başlanmalı?

friizy

Yeni üye
7 Mar 2021
12
9
Merhaba, yazılıma bir yerden başlamak istiyorum. C# Java arasında kaldım. Çevremdeki kişiler Python ile başla dediler. Buraya da bir konu açayım dedim. Fikirlerinizi paylaşır mısınız?
 

projex

Üye
10 Ara 2021
208
135
25
Türkiye
İlk önce alanını seçmen lazım, ondan sonra ingilizce ve algortima sonra alanına göre programlama dili seçip öğrenmeni tavsiye ederim.
 

7as

Uzman üye
15 May 2021
1,708
1,163
En el universo
Merhaba, yazılıma bir yerden başlamak istiyorum. C# Java arasında kaldım. Çevremdeki kişiler Python ile başla dediler. Buraya da bir konu açayım dedim. Fikirlerinizi paylaşır mısınız?

Yazılım Öğrenme Kaynakları

Daha önce ki bir kaç yazıda da belirttiğim gibi yazılımı farklı kaynaklardan öğrenebilirsiniz. Bu kaynakları başlıca okul, kurs, kitap, görsel eğitim setleri ve internet siteleri olarak sıralayabiliriz.

Bu kaynaklara daha sonra ki yazılarımızda daha ayrıntılı bir şekilde gireriz fakat kendi kendine yazılım öğrenmek isteyenler için yazılıma başlama noktası çok büyük sıkıntı olduğunu belirtmekte fayda var. "Yani başlasam devamı gelecek kesin ama nereden başlayacağımı bilmiyorum" durumu söz konusu.

Önce Seçiminizi Yapın

Bir yazılımı öğrenmeye nereden başlamanız gerektiğini bulmaktan önce karar vermeniz gereken en önemli nokta Web sitesi mi, Windows için program mı yoksa mobil platformlar için uygulamalar yapmak mı istiyorsunuz buna karar verin.

Son yıllarda mobilde ciddi bir sıçrama var, herkes mobil uygulama geliştirip paranın dibine vurmak istiyor. Hele ki o Flappy Bird oyununu yapan eleman yüzünden mobil uygulama yapıp, gecede 50 bin dolar kazanmayı düşünüp, uygulama yaptıktan sonra "bir zamanlar fakir ama gururlu bir genç vardı ... İşte o mobil uygulama yaptı ve b.k gibi para kazandı" sahnesinin hayalini kuranlar baya bir arttı. Böyle bir sahneyi yaşama ihtimalinin çok büyük oranda şans olduğunu, bu nedenle yazılımı kesin çok para kazanacağınızı düşünerek değil sevdiğiniz için yapın diye defalarca dile getirdim.

Kendinizi Test Edin

İzlediğim bir konferansta seyircilerden biri konuşmacıya soru sorarken şunu söylemişti "Ben grafikerim. Yazılım öğrenmeye çok çabaladım, çok uğraştım fakat öyle bir yeteneğim olmadığını sonunda anladım". Bu sözü duyana kadar yazılımın yetenek gerektiren bir şey olduğunu hiç düşünmemiştim. Çünkü bir şeyi başarmak için tek yapılması gerekenin başarana kadar çalışmak olduğuna inanan biriyim. Dolayısıyla söz konusu yetenek o şeyi başarmak için gösterdiğiniz çabadır. Fakat herkesin başarana kadar çaba göstereceği şeylerde farklıdır. Yani bir kişi yazılımcı olmak için gerektiği kadar çaba göstermeyip, grafiker olmak için gösterebilir.

Bu nedenle sizde "acaba ben yazılımcı olabilir miyim? Bende o yetenek yada gerekli çabayı gösterebilecek azim var mı?" sorularını soruyorsanız kendinizi en kolay kodlama dilleri olan HTML ve CSS 'yi öğrenerek test edebilirsiniz. HTML ve CSS 'in yazılım dilleri olmadığını belirtmekte fayda var. Bu iki dil dinamik değil statik dillerdir, dolayısıyla HTML ve CSS vesilesi ile bir butona tıklandığında bir işlem yaptıramazsınız. Sadece görsel işlemler yapabilirsiniz. Bu sayede "Fatal Error", "Error Code: 1359" gibi hatalar almaz, kafanız karışmaz, siniriniz bozulmaz.

Yazılıma Geçiş Aşaması

yazilim-ogrenmeye-nereden-baslamak-gerek-250x155.jpg
HTML ve CSS, Matematiğin çarpım tablosu gibidir. Eğer HTML ve CSS 'yi uğraşmanıza rağmen anlamıyorsanız Kosinüs, Sinüs gibi konuları da anlamanız çok zor demektir. Eğer HTML ve CSS 'i severek, merakla, azimle, zevk alarak ve sıfırdan basit bir web sayfası yapabiliyorsanız yazılıma geçebilirsiniz.

"Yok ben HTML ve CSS ile uğraşmayayım, direk yazılıma geçeyim" derseniz de yazılımcı olabilirsiniz. Fakat Web Yazılımcı olamazsınız. Çünkü ASP.Net yada PHP öğrenip web yazılım yapmak istemeniz durumunda kesinlikle HTML ve CSS 'te bilmek zorundasınız. Windows ve Mobil uygulama yapmak için HTML ve CSS bilmek hayati önem taşımıyor fakat dediğim gibi bu durumda yazılım öğrenmeye çalışmanız en azından yazılım mantığını daha zor anlamanıza neden olabilir.

Kesinlikle Proje Üretin

Bir yazılımı öğrenmenin en ideal yolu proje üretmektir. Sıfırdan, tek başınıza basit bir proje üreterek yazılımı çok daha verimli bir şekilde öğrenirsiniz. Örneğin Web yazılım için sıfırdan blog sitesi yazmaya çalışın, mobil için matematik testi hazırlayın, Windows için ajanda programı yapın. Bunların para kazandırıp kazandırmayacağını yada işinize yarayıp yaramayacağını düşünmeyin. Sadece yazılımı öğrenmek ve kendiniz geliştirmek için yapın.

Çünkü yapmaya çalıştığınız o küçük proje sayesinde bir amacınız olur ve
o amaca ulaşmaya çalışarak öğrenirsiniz. Örneğin blog sitesi yapacaksınız diyelim. Direk aklınıza şunun gelmesi lazım; "bir yazı yazıcam ve bunu veri tabanına kayıt etmem gerekicek. Bunu nasıl yaparım?" sonra gireceksiniz Google 'a, öğrenmeye çalıştığınız kodlama dili ile ilgili "veri kayıt işlemi" tarzında arama yapacaksınız. Çıkan sonuçlardan size hitap eden bağlantılardaki anlatımları inceleyecek ve anlayarak uygulayacaksınız.

Bu anlatımlarda adam size "if metodunu kullanıyoruz" diyecek, sizin bu durumda "if metodu nedir?" diye merak etmeniz gerekecek ve tekrar Google 'a girip "if metodu nedir?" diye arama yapacaksınız. Orada çıkan bağlantılardaki anlatımlarda "String" kelimesini kullanacak bu sefer gidip "String nedir?" diye araştıracaksınız. Bu yüzden Bir Yazılımcı Nasıl Düşünür? başlıklı makalemde yazılımcı meraklı bir düşünce yapısına sahiptir dedim.
 

Kodomarso

Uzman üye
3 Tem 2020
1,041
797
Macintosh
Merhaba, yazılıma bir yerden başlamak istiyorum. C# Java arasında kaldım. Çevremdeki kişiler Python ile başla dediler. Buraya da bir konu açayım dedim. Fikirlerinizi paylaşır mısınız?
C# başlayabilirsin bu dili öğrendikten sonra python ve java öğrenmek çok kolay olacaktır. BTK Akademi üzerinden bu eğtimileri alabilirsin ücretsiz olarak.

Bir kaç oyun platformunda hile kodlamak istiyorum. Seçimim ne olmalı?
C++ öğrenebilirsin bunun için.

Bu arada konuyu THT Yardım Merkezine taşırsan daha iyi olacaktır çünkü konu yeri yanlış.
 
Ü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.