Programlama Dili Anlatımı Yapılan Video Tavsiyesinde Bulunur Musunuz?

Bu konuyu okuyanlar

Halktan Biri

Dekan
Emektar
Katılım
30 Ekim 2016
Mesajlar
9,401
Reaksiyon puanı
9,163
Puanları
113
Merhaba. Bana anlaşılır ve kolay programlama dili anlatımı yapılan video tavsiyesinde bulunur musunuzu? Mümkünse Türkçe olsun. Ama yabancı kaynaklar da olabilir.
@Ben Kenobi
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Merhaba,

hangi programlama dili olduğuna karar verin ilk başta. Ardından hedef platform. Birçok programlama dili var, tarih okumayla geçirmeyin vaktinizi. Seçmeden işe başlamak istiyorsanız internet üzerinde bir çok site var açıklama yapan.

İlk olarak sistem programlama, web programlama ve telefon programlama dallarından birini hedefleyin. Ardından üye arkadaşlar da tavsiyelerini sunarlar.

Saygılarımla
 

Halktan Biri

Dekan
Emektar
Katılım
30 Ekim 2016
Mesajlar
9,401
Reaksiyon puanı
9,163
Puanları
113
Merhaba,

hangi programlama dili olduğuna karar verin ilk başta. Ardından hedef platform. Birçok programlama dili var, tarih okumayla geçirmeyin vaktinizi. Seçmeden işe başlamak istiyorsanız internet üzerinde bir çok site var açıklama yapan.

İlk olarak sistem programlama, web programlama ve telefon programlama dallarından birini hedefleyin. Ardından üye arkadaşlar da tavsiyelerini sunarlar.

Saygılarımla
Sistem programlama tarzı ve kolaysa C++. Sizce başlangıç için en kolay programlama dili hangisidir?
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Merhaba,

işin zorluğu, bu işe kendini adamış veya adayacak kişinin gayretine, sabırına, devamlılığına, disiplinine ve düzenine bakar. 1 yıl sonra sıkılacaksanız veya en ufak bir sorunda yılmak gibi bi düşünceniz varsa başlamamanızı tavsiye ederim. Programcıların en güçlü yönü araştırmadır. Herkes kod yazar, plan yapar, ama bir işin peşini bırakmadan ve sürekli araştırmada olan programcılar gözdedir.

Eğer programlama mantığına uzaksanız size ilk adımınızı C/C++ olarak tavsiye etmem. Zor demeyeceğim çünkü bu kişiden kişiye değişir. Dedim ya kişinin gayretine ve kapasitesine bakar.

Kişisel görüşüm; C# ile başlamanız. Bunun nedenlerini çok fazla saymak istemiyorum ama genel olarak;

1) Sistem programlamayı güçlü bir şekilde yapabilirsiniz (C/C++ ile kıyasladığınızda tabii ki güçlü olan C/C++ ve assembler olarak cevaplayabilirim)

2) Web programlama alanında da kullanabileceğinizden, ileride web programlama konusuna geçiş yapıp ve deneyim kazanmanız uzun sürmez.

Bu örneği kısaca açmak istiyorum. Şöyleki;
Bir projeniz var ve C# programlama dili kullanarak ASP.NET web tasarımını yapıyorsunuz. İçerisinde Php, Ruby veya uygun bir başka bir dil ile destekleyip çalışabilirsiniz.

3) Şimdilerde Xamarin komponenti ile Android yazılımları da geliştiebiliyorsunuz (Henüz %100 stabil olmamasına rağmen yine de geliştirme yazılımları yapabilirsiniz). Windows Phone'lar için de yapabilirsiniz. (Xaml programlama teknolojisi ile)

4) Ayrıca bir programlama dilinin arkasındaki destek her zaman önemlidir. Microsoft'un bu dili çıkarttığı yıldan itibaren yaptığı değişiklikler, eklediği özellikler ve beraber kullanımını sağladığı yeni teknolojiler. (Örnek Wpf/Xaml ve C# üçlüsü)

5) Lisans desteği, kendinizi Microsoft sertifikalarıyla kanıtlamanız ve bu lisansların dünya çapında geçerli olması. Microsoft adının emin olun her yerde desteği ve alıcısı (işe alım konusu) var.

6) Microsoft tarafından teknik destek, karşınızda sürekli ve ilgili muhattapların olması. MSDN gibi programcılar arasında "kutsal kitabımız" dediği eşsiz bir dünya.

7) Abonelik yapılması ile istediğiniz Microsoft ürününü istediğiniz kadar kullanım hakkı (Lisans key ile) ve en yenilerin size özel sunulması. (Abonelik tipi önemlidir)

8) Bütün internet ortamında yerli ve yabancı ileri düzey destek bulabilmeniz. (Diğer programlama dillerininde kesinlikle vardır, ancak popülaritesi günümüzde yüksek olmasından dolayı daha fazla yelpazesi vardır)

9) Genel programlama mantığını anladıktan sonra (ezberledikten sora değil), C/C++ ile aynı Microsoft yelpazesini kullanarak adım atıp daha kolay bir gçiş yapma imkanınız olur.

Bu ve bunun gibi konular genişletilebilir daha. Bu tamamen size bağlı.

Saygılarımla
 

errno

Doçent
Katılım
17 Temmuz 2016
Mesajlar
694
Reaksiyon puanı
567
Puanları
93
Merhaba,

@arsenik çok teşekkür ediyorum değerli görüşleriniz için. Keşke iyi olabilsem bu konularda. Çabalıyorum sadece.

Saygılarımla
 

Ben Kenobi

Dekan
Katılım
6 Kasım 2011
Mesajlar
7,336
Reaksiyon puanı
3,155
Puanları
113
İngilizce şart, başka çıkış yolu yok.

errno'ya bazı kısımlarda katılmak ile birlikte(yarısından fazlasına) C# önermiyorum.
C# iş alanında size büyük bir avantaj sağlamıyor, gittiğim bir iş görüşmesinde oradaki mühendis C#'ın dahil olduğu koskoca .NET platformu için tarih öğretmeni iş başvurusu yapsa ona da öğretirim, benim için .NET bilip bilmemenin bir artısı yok demişti.
C# genel olarak kolay bir dil ve aslında başlangıç dili olarak tercih edilebilir, burada sorun yok.
.NET platformu ile Java platformu arasındaki rekabeti bizim siyasi partiler arasındaki rekabete benzetirim, ikisi de bana göre vasat ama mecburen biri seçiliyor.
Yani misal Java'da liderlik vasfı yok bir kere, .NET gidince kim gelecek, Java mı ?
Bu arada Java demişken bizim ülkemizde .NET daha yoğun kullanılıyor ama yabancı ülkelerde Java.

Toolchain denilen bir olay var, Microsoft bu kısmı çok fazla kendi lehine çevirmek için çabalamakta.
Diğer birçok dil veya platform arasında az ya da çok bir uyum var, çünkü herkes haddini biliyor ve standartlara uyuyor.
Yani misal bugün C++ projesi içerisine rahatlıkla Python'u entegre edebilirsin, niye böyle birşey yapmak isteyesin ?
Büyük projeler kendi scriptlerini içerir, bu gibi durumlarda sıfırdan kendi programlama dilini oluşturmak hem çok zahmetli, hem çok masraflı hem de sürekli bakım isteyen bir durumdur, misal böyle bir durumda koskoca Autodesk firması bile C++ ile hazırladığı programa script altyapısı olarak Python'u tercih eder.

Microsoft'a ise parmağını veren kolu kaptırır(maalesef), o zincire girdiğin vakit oradaki bir düğüm yani bir sorunun ancak başka bir Microsoft çözümüyle mümkün olur.
Database mi lazım, MsSql kullanman gerekir, script mi lazım, ne var bilmiyorum ama Microsoft ürünü kullanmalısın, XML mi lazım, Microsoft'un XAML'ini kullanmalısın, kütüphane mi lazım, Microsoft'un sadece Windows'ta çalışan(hatta bazen sadece Windows'un en son sürümünde çalışıp diğerlerinde aslında çalışabilir olmasına rağmen kısıtlanıp çalışmasına izin verilmeyen, Örnek : DirectX) kütüphaneler kullanabilirsin, grafik işlem mi lazım sadece DirectX.
Yahu pdf'ye bile doğrudan destek vermiyor kütüphaneler, misal WPF'de ekran görüntüsüne ait pdf'yi çıkaramıyorsun(aslında mümkün) ama Microsoft'un pdf yerine kullandığı kendi standardı olan xps'ye destek veriliyor. (İsmini duyan var mı) Daha sonra bu xps'den başka bir kütüphane yardımıyla pdf'ye çevriliyor (o da hatalı, sırf pdf kullanmasınlar diye bilerek konulmuş dahi olabilir)
Büyük firmaların böyle şımarıklıkları çok olur, misal Clang ile Gcc arasında C++ kodu yazarken bir sıkıntı olmaz ama VC++ kodu bazen ne Gcc'de ne Clang'da ne de başka bir derleyicide çalışmaz çünkü misal Microsoft tüm dünyaca kabul edilen C++ standartlarında long long diye geçen bir değişken türünü __int64 diye tanımlamıştır, bunun gibi yüzlerce şey. Bu da yetmez native olması gereken kodlara kendi memory management modüllerini koyup performansı düşürür, bu da yetmez VC++ 2015 kodlara gizlice telemetry koyuyor. (Allah'tan hacker'ın biri Assembly incelerken farketmiş, böyle bir skandal olabilir mi)
Reviewing Microsoft's Automatic Insertion of Telemetry into C++ Binaries

Şimdi bunun avantajı da var. Microsoft büyük bir firma olması sebebiyle hemen her alanda iyi kötü çözümleri var ve bu çözümler birbirine entegre, eyvallah.
Ama bu çözümlerin hemen hepsi vasat kalitede çözümler bu bir, sürekli ek lisans parası çıkıyor bu iki, DirectX örneğinde olduğu gibi bazen çok kısıtlıyor bu üç, devlet kurumlarında güvenlik riski oluşturuyor bu dört.
Saysam daha sayarım ama benim görüşlerim bunlar.
Herkese selamlar...

Ekleme: .NET'e python eklemek, MsSql hariç databaseler ile çalışmak vs vs vs teoride mümkün ama pratikte genelde bir yerlerde sıkıntı çıkarıyorlar ve sürekli ek taklalar atmak gerekiyor, pratikte kimse kullanamıyor. (hadi çoğu kişi diyelim)
 
Son düzenleme:
Üst