Python öğrenme tavsiyeleri

Selamlar python’da yazbel kaynağında standart kütüphanelere kadar tüm gördüklerimi anlayarak ve kendim de benzer uygulamalar yaparak geldim. Düzenli ifadelere giriş yapmadım.

Bundan sonraki süreçte sizce nasıl yol izlemeliyim?

Örnek proje ve uygulamalara bakarak denemeli miyim?

Tavsiyelerinizi bekliyorum. Çalışmalarımda ilk 1.Ayım sonra erdi.

Yolun nereye gittiğine bağlı.

Asıl istediğim bir fps tarzı oyun yapmak. Unreal Engine ile yapılanlar gibi birde Windows üzerinde programlar yapmak. ancak c++ gibi dillerin başlangıçta çok ağır gelebileceğini düşündüğüm için Python’a başlamıştım.

Python’unda veri analizi konusundaki faydası ilgimi çekmişti.

Biraz araştırınca da hızlı ve kolay olması açısından bir yandan da bunu bilsem ne olur diye düşünüyorum.

Kafam karışık bayağı sizce ne yapmalıyım ?

Aslında hiçbir programlama dili ağır değildir. Sadece bazılarının syntax’i bazı insanlara daha sade ve anlaşılır gelebilir. Ama bu bile belirli bir noktada değişken bir durumdur.
Oyun yazma ile ilgili en temel iki paket(bana göre diyeyim) pygame ve pyglettir.

Aslında C daha eski olduğu için bugün gördüğün pek çok oyun, C++'ın OpenGL kütüphanesinin baskınlığı ile yazılmıştır. Pyglet de OpenGL kütüphanesinin Python diline çevrilmiş halidir(Tamamen olmasa da, önemli ölçekte). Pygame de zaten temel oyun algoritmaları üzerine kurgulanmıştır. Ama C++ bile oyunu daha kapsamlı hale getirmek için 3.Parti Paketlerin yanında, 3 ya da daha yüksek boyutlu tasarımlar için kullanılan Yardımcı Programlar vardır. Yani C++'da da her şey onla yapılmıyor. Mesela C++'ta oyun yazanlar Blender kullanıp, Blender’da çizdikleri modelleri(şekiller, çok boyutlu yapılar) C++'de kullanıyorlarlar, render alarak. Aynısını Python için, Blender gibi, Panda 3D’de yapabilirsin. Gerçi benim bildiğim kadarıyla bazı noktalarda hala Blender ve C++'ın OpenGL’i bu konuda üstün. Yani bence öyle. Ama yine de bu üstünlük aşırı detay ve kapsamlı konular.

Eğer oyun gibi bir amacın varsa, Python’un syntax ini iyice öğrendikten sonra Pyglet ve Pygame kütüphanelerine bakman gerekir. Sonra da Panda3d gibi modellemeler yapacağın yardımcı programlara…

2 Beğeni

Bu soruyu bu şekilde sorman gayet normal. Senin suçun değil. Yıllarca üniversitelerde amaca yönelik programlar(Kimya ile ilgili, Matematikle ilgili, İstatistikle ilgili, Elektrikle ilgili vs.) hep dışarıda yazıldığı için hazır paket programları alıp, çevire çevire öğrenip kendi alanları ile ilgili bile kapsamlı çalışma yapamaz hale geldiği için üniversitelerimizin hocaları, programlamanın önemini anca 90’lardan sonra anladılar. 50’lerde, 60’larda Hacker, Phreaker grupları vardı ABD’de, Rusya’da. Bizde internet 90’da geldi. Öğrencilerin yazılım dünyası ile alakası nasıl olsun ki. Daha ben mezun olmadan önce Üniversitenin Bilgisayar Mühendisliği fakültesinde hocalarımdan Python ile ilgili bilgi almak istedim 3 yıl önce felan, Python bilen bir tane prof. dr. asistan yoktu. Dünyanın en popüler programlama dillerinden birini bilen hoca yoktu…

İzmir’in en köklü üniversitelerinden biri bu.

Senin bu yüzden nasıl bir yol izlemenle ilgili soru sorman gayet normal komutanım, endişelenme.

Teşekkür ederim. Pythonda biraz daha emek verip dediğiniz kütüphanelere bakacağım. Python’un yanında C# ı hafiften yürütmek de doğru olur mu? (Okulda verecekler ama bir ön hazırlık olması için bir de okulun vereceğinin çok yetersiz olması vs.)

Valla beni anlamanıza çok sevindim. Çekinerek soruyordum soruyu sorarken… Yani çok çalışıp emek verip çok güzel yerlere gelmek istiyorum ama bazen çalışırken acaba yanlış şeye mi çalışıyorum diye takılı kalıyorum. Türk kaynakları zaten ayrı bir sınırlı içim içimi yiyor bu konuda.

Değil programlama dilleri, hiçbirşeyi öğrenmekten çekinme, bütün bu bilgiler, senin gibi beyin lobları olan, senin gibi akson ve dentritleri arasında bir sinirden diğerine sinir impulsları aktararak düşünen insanlar tarafından üretildi. Senin onları anlayamama gibi bir durumun olamaz. Her şey, ama her şey analışılabilir. Yeter ki, anlama metotlarını üretmekten ve programlı çalışma disiplinini korumaktan vazgeçme.

İstersen Java öğren fark etmez. Ama önce bir dilin syntax’ini iyice öğren. Ama nasıl, normal dilinle düşünürken hayal edebildiklerini, o programlama dilinde, en azından çok kısa sürede algoritmasını(programlama adımlarını) yazabilecek şekilde öğren.

Birden fazla dilde de yapılabilir her şey. Şahsen ben C’de notlarıma baktım mı, pek çok alanda python ile yapabildiklerimi yapabiliyorum.

Önemli olan disiplin ve programlı çalışmaktır.

2 Beğeni

yakın gelecekte pythonun popüler pek çok modülünü içeren bir kanal açacağım. Parametrelerinden özniteliklerine, metotlarına bütün önemli kütüphaneleri türkçeye çevirerek anlatacağım. PyQt5, Pyglet, Pygame de bunlara dahil. Hatta farklı bilim alanlarını da karıştıracağım(biopython, chemlib vs.)

Ama ingilizce de öğren. İngilizce öğrenmen bir sürü güzel kaynakla tanışmanı sağlar. Benden tavsiye.

2 Beğeni

Yazdıklarınızla gerçekten motive oldum , iyi hissettim. Size ne kadar teşekkür etsem azdır. Disiplinli bir şekilde çalışmaya devam edeceğim.

Kanalınızı heyecanla bekliyorum. Olur da size ulaşırsam tecrübelerinizden de faydalanmak isterim.

1 Beğeni

Tecrübe diye bir şey yok kanka. Emek var, emek. Fark ettim de seni motive ederken çok resmi konuşmuşum. Halbuki ben biraz yavşak bir adamım. Çok argo konuşurum normalde. Böyle bir dünyada çok fazla etik ve İstanbul Beyefendisi gibi takılmak pek hoşuma gitmiyor(ha sorsan bunu doğru bulmuyorum, önermiyorum, ama durumum bu halihazırda)

Son derece entelektüel biri olarak mütevazi olsam da, içimde bir yavşak olduğunu söylemek zorundayım. Linki paylaşırım kanka. Endişelenme, buralardayım.

Öyle çok da motivasyon ihtiyacı hissetme, sen de herkes gibi akıllısın, hayatta her zaman tıpkı bir çocuk gibi, en skimsonik bir ayrıntı için bile meraklı, ortalık yerde altına işeyebilecek kadar rahat ol.

Yakarsa bu dünyayı garipler yakar, yaparsa da, çocuklar yapar.
O yüzden içindeki çocuğu öldürme, kimseyi de gözünde büyütme.
Öpüyorum.

11 Beğeni

sen kimsin güneş gibi parlıyorsun

1 Beğeni

Dertli gönüllere giren işte benim Zeki Müren…

4 Beğeni

Konu bayağı eski ama Youtube kanalı açabildiniz mi?

Parçalarını söküp çöpten topladıklarımla ekleyerek yaşattığım bir laptopun lcd ile anakart arasındaki kabloda ya da lcd de problem var, %80’ini bitti sayfa için hazırladığım içeriğin. Harddiskimde.

Diğer laptop da aynı şekilde yaşıyor.

İkisi de 10-15 yıllık.

Garibanın yüzü gulür mü?

2 Beğeni

Sizi bilmem ama benim gibi bir garibanın yüzü ancak sizin gibi kişilerin değerleri bilgileri izleyip görünce güler :slight_smile:
Bu arada pytq5 veri ekle sil ara kullanıcı girişi admin yetkileri gibi bir ders videosu olsa tadından yenmez…

QT5 web arayüzü için değil gömülü arayüz için kullanılıyor. Yani her ortama derlenen programların arayüzü için.

Tabi kendi tarayıcınızı da yapabilirsiniz. Ama admin yetkisi biraz BackEnd lik bir konu. QT paketi buna özel modülleri içermez. Onu daha çok django gibi paketler ile yaparsınız.

Tabi kastettiğiniz zaten sadece panel olarak yazmaksa o başka.

Dediğim gibi, sayfayı yayınladığımda buradan paylaşırım.

See u later honey…

1 Beğeni

masaüstü yazılımlar için qt5 öğrenmek istiyorum. Masaüstü yazılınlar için bahsettiğim özellikler uygun değil midir?

Masaüstü yazılımlar derken, python muhtemelen yakında windowsla, hatta PowershellISE ile uyumlu hale gelecek gibi duruyor. Ama kastettiğin Windows ya da işletim sistemleri ile bütünleşik bir şekilde kullanmaksa böyle bir yolu ben net bir şekilde bilmiyorum.

Fakat her işletim sistemine derlenebilecek(yani windows, linux vs. işletim sistemlerinde normal oyun çalıştırır gibi çalıştırabileceğin) programlar yazabilirsin.

Masaüstü programı da yazabilirsin aslında bunu söylemek istemiyorum bu tartışma doğru bulunmadığı için, ama gerçekten böyle eşlenik şekilde işletim sistemine uyumlu olmaz tam olarak. Ama öyleyleymiş gibi çalıştırabileceğin bazı ufak tefek ama kullanışlı şeyler yapabilirsin.

1 Beğeni

Cevaplar için teşekkürler.
Bu işlere yeni başladığım için belkide ben kendimi ifade edemiyor yada demek istediklerinizi anlamıyor olabilirim.
Benim yapmak istediğim kısımlar aslında net aşağıdaki fotodaki gibi programlar.

Tam olarak yapılabilir mi yapılamaz mı o konudada emin değilim. Ama python öğrenmek yeni başladığım için şimdilik eğlenceli geliyor ilerde ne olur bilemem.
Benim ilk etapta yapmak istediğim
stok ekle
stok sil
stok güncelle
stok değiştir
tarzında programlar…