C# Mı Python mu?

Dostlar web backend alanında kendimi geliştirmek istiyorum ve ilk başlayacağım dil konusunda, C# ve Python arasında kaldım. Sizce ilk dil olarak hangisini öğrenmeliyim?

Birçok sitede django,asp.net framework’undan daha önce.
O yüzden python.

Amac kendini gelistirmekse hangisinden basladigin onemli degil. Hatta beraber ogren bence, hem farklari hem de benzerlikleri gorursun. Biri digerinden daha hizli veya daha faydali olursa ona odaklanabilirsin.

1 Beğeni

@aib in dediği gibi amaç kendini geliştirmekse herhangi birisini öğren. Ama bir proje filan düşünüyorsan Python çünkü ben hiç C# ile yazılmış bir web çatısı göremedim internette filan. Hem Flask, Django gibi web çatıları var. Üstelik gördüğüm bir çok site Django veya Flask ile yazılmış. En azından öyle söyleniyor. Ha bu arada python veya C# arasında kalmışsın ama ruby on rails hakkındaki düşüncen nedir. onu da bir araştır araştırmadıysan.

1 Beğeni

Ruby’e de bakmıştım basit bir dil gibi görünüyordu.

Ama günümüzde çok kullanılıp kullanılmadığı konusunda kararsız kaldığımdan kararlarım arasına dahil etmedim.

şimdi dostum, Ruby dili şuanki ününün çoğunu Ruby on Rails sayesinde almıştır. Ruby on Rails olmasa bir çok kişi bu dilin adını duymayacaktı. Evet Ruby ’ den nefret eden de var bayılan da. Ve aslında sevenlerin sayısı da hiç azımsanmayacak bir seviyede.

e bu iyi bir şey değil mi daha hızlı kod yazarsın işte. Zaten bu nedenle seviliyor.

Yok onu kötü anlamda söylemedin, ruby’deki duyumumu söylemek amacıyla söyledim. Python da hem basit hem de Ruby’e nazaran daha popüler gibi. Ama birgün Rubyi de öğrenmek neden hedeflerim arasında olmasın ki değil mi?

1 Beğeni

Şimdi senin amacın gelişmek mi? Yoksa bir proje yapmak filan mı? Çünkü ona göre tavsiye vereceğim.

Dostum daha yazılım dillerinden hiçbirini bilmiyorum. Bu doğrultuda tabiki de amacım gelişmek.

O zaman sana tavsiyem C dili ile başlaman. Evet bu dili gelecekte kullanma ihtiyacın olmayacak. Ama programlamanın mantığını öğreneceksin. Yani çok derinlemesine öğrenme ama işte veri tiplerini, fonksiyonlar, döngüler, diziler, pointerler(türkçesini bilmiyorum) gibi temel bilgileri öğren. Çünkü şuanda kullanılan bir çok dil C ile yazıldı. Ve her dilde C dilinden bir sürü syntax kuralı almış. Yani bence C dili ile başla. böylece programlama temellerini öğrenmiş olursun. Ki zaten temeli öğrenmek çok zor değildir. bir saatini almaz. işte şu kaynaklara bir bak kolayca öğrenirsin :

C Öğretici - Tutorialspoint
C Programlama Eğitimleri ve Kaynakları - W3schools

Evet sonra da istediğin bir dili öğrenirsin. Fakat eğer seçimin Python olursa senin için en iyi kaynak bu forum olabilir. Çünkü burada ağırlıklı olarak Python soruları sorulup cevaplanıyor.

Konuştuğum başka bir arkadaşta, her ne kadar Programlama mantığını öğrenmek amacıyla da olsa, C dili ile backend alanı birbirinden bağımsız demişti. Yani bu durumda hem programlama mantığını kolay şekilde öğrenmek hem de en azından hedeflediğim alan ile daha bağlantıli olan Python’u öğrenmek daha mantıklı gibi geliyor bana. Bu arada programlama mantığını kolay bir şekilde öğrenmek diye birşey dedim Python için, sizce programlama mantığı Pythonda da öğrenilebilir mi? Ya gerçi C’deki temel için 1 saat zaman ayırman yeter diyorsun o da güzel bir seçenek. Çok kararsız kaldım ya şimdi :confused:

evet öyle dedim ama bu her dil için geçerli(makine dili veya assembly dışında xd). Mesela C dilinde de temeli bir saatte öğrenirsin. Python dilinde de ikisi de aynı

Evet öğrenebilirsin mesela ben python ile başlamıştım. Çünkü ilk başladığımda bu forumda bir üyeliğim yoktu. Ve programlama dilleri hakkında da bir bilgim yoktu seçme şansım olsa C ile başlardım. Ama evet python ile de olur.

Evet zaten C dilinin hiç bir konuda olmadığı gibi backendde de bir modülü yok doğru düzgün. Ben de zaten programlama dillerinin mantığı için diyorum. mesela şimdi python öğrenirsen C öğrenmek senin için pek de zor olmayacak. Çünkü mantığını kavramış olacaksın. Mesela python django modülü için önce python öğrenmen gerek direk django öğrenemezsin.

Anladım. Sanırım Python’dan başlayacağım umarım pişman olmam :D. Merak ettim de Sen hangi yazlım alanı ile uğraşıyorsun ?

Masaüstü programlama hakkında diller öğrenmeye çalışıyorum.

1 Beğeni

Anladım. Kolay gelsin, kariyerinde başarılar dilerim dostum. Bu güzel ve benim için bilgilendirici olan soru-cevap için çok teşekkür ederim.

Programlama mantığı her dilde öğrenilebilir. Ancak en önemli programlama yaklaşımı olan Nesne Tabanlı Programlamayı öğrenmek için her ne kadar python desteklese de pythonun yeteceğini sanmıyorum.

Eğer amacın gelişmek ise tek bir programlama diline bağlı kalmanı önermem. Bir çok dille uğraşma şansı buldum ve herbirinin kendine özgü güzelliği var. Birini bırakırsam unuturum ya da birini zar zor öğrendim ikinciyi nasıl öğrenecem diye korkma, başlangıçlar her zaman zor olur ancak bir dili kullanmayı mantığıyla öğrendin mi diğer dillleri de çok kısa süre içerisinde kullanabilirsin.

Eğer tamamıyla yeniysen öncelikle algoritma mantığını öğrenmeni tavsiye ederim ki algoritmayı günümüzde farkında olmasakta hepimiz kullanıyoruz ancak en kısa yoldan en verimli şekilde sıralı ve mantıksal olarak bir sonuca nasıl ulaşılır, sorusunun cevabını farkında olarak iyi şekilde öğrenmeli ve mantığını anlamalısın. Daha sonra ise bir süre python çalıştıktan sonra (programlama mantığını kavradıktan sonra) C# ile birlikte python çalışmanı öneririm. Bu sayede hem iki farklı nesne tabanlı dili kullanmayı öğrenirsin hem de ortak konuların hepsinin amacı aynı olduğu için programlamaya daha aşina olursun.
Tabi yukarda yazdıklarımı daha önce de duymuşsundur, öneriden çok bilgi paylaşmak oldu. Ancak eğer öneri istiyorsan verebileceğim en iyi öneri ŞU AN başlamandır. Her ne kadar planlı başlamak önemli olsa da küçük hatalar (ya da hata demeyelim ona tatlı kazalar diyelim) yaparak daha fazla öğreneceğinin kanaatindeyim.

1 Beğeni

Öncelikle bu yazın için çok teşekkür ederim, gayet net anlatmışsın olayı.

Bu yetersizliğin sebebi nedir, bunu ayrıntısına iner misiniz?

Yok zaten algoritma ile ilgili derslere baktım. Programlama dilleri konusunda 0’ım desem daha doğru olurdu aslında ama neyse.

Aslında python Nesne Tabanlı Yaklaşımda yeterli ancak seni bunu kullanmaya zorlamıyor. Bu yüzden sadece öğrenip geçme ihtimalin yüksek ki yeni başladığın için sana karmaşık ve gereksiz gelecektir. Sende Nesne Yöneliml yaklaşıma girmeden işlerini halletmeye çalışacaksın. Bu noktada Sınıf yapılarından uzaklaşmış olacaksın. Ancak C# olabildiğince seni zorlar. Sadece zorlamakla kalmaz; kalıtım, kapsülleme gibi şu an bir anlam veremediğin ama öğrenince çok işine yarayacak bilgilerle daha kapsamlı uğraştırarak geliştirir seni.
Kendi düşüncem ise, pythonun basitliğinden ötürü bazı konuların yazar tarafından tam olarak anlaşılmasını engelliyor. Aslında engellemek değil de bize kolaylık sağlıyor ve bu kolaylık bazı konular uzerinde daha ayrıntılı bakmamamıza neden oluyor .Tabi tembel olduğum için hazır şeyleri sevdiğimden kaynaklı olarak sadece bana bu şekilde etkimiş olabilir.
Hem iyi yanından bak. Olurda iki dili de kullanmayı öğrenirsen ve web backend alanında vazgeçersen hem pythonla yapay zeka, veri analizi, görüntü işleme, web programlama… C# ile de dll yazma, web uygulamaları, mobil uygulamalar… yapabilirsin.

Anladım, bu daha açıklayıcı oldu teşekkür ederim. Bugün Python’a giriş yaptım, gayet anlaşılır ve kolay görünüyor. Umarım bu kolaylığa alışmam, bana şans dile :D.