Merhaba,
Yazılıma başlamak çok heyecanlı bir şeydir. İlk adım olarak, algoritma kavramını anlamak gerçekten önemlidir. Algoritma, adım adım bir problemi çözmek için kullanılan bir plan veya yönergeler kümesidir. Bir nevi, bir yemeğin tarifi gibi düşünebilirsin. Yemeği yaparken belirli adımları takip edersin ve sonunda lezzetli bir yemek elde edersin. Algoritma da tam olarak böyle işler.
Algoritmanın temel amacı, belirli bir problemi çözmek için bir yol haritası sağlamaktır. Örneğin, bir sıralama algoritması bir dizi elemanı belirli bir düzene göre sıralamak için kullanılır. Bu düzenleme işlemi, algoritmanın adımlarını takip ederek gerçekleştirilir.
Algoritma oluştururken bazı temel prensiplere dikkat etmek önemlidir. Bunlar arasında anlaşılır ve basit olması, adımların mantıklı ve tutarlı olması, her adımın açık ve belirgin olması gibi özellikler bulunur.
Örneğin, bir sayıyı bulma algoritması düşünelim:
Başla
Aranacak sayıyı belirle
Dizinin ilk elemanından başlayarak her bir elemanı kontrol et
Eğer aranan sayı bulunursa, konumunu kaydet ve işlemi bitir
Eğer dizinin sonuna gelinirse, sayıyı bulunamadığını belirt ve işlemi bitir
Sonuçları göster ve işlemi sonlandır
Bu adımları izleyerek, herhangi bir sayıyı bulabilirsin. Bu sadece basit bir örnek tabii ki, algoritmalar çok daha karmaşık problemleri çözmek için kullanılabilir.
Algoritma kavramını anlamak, yazılım geliştirme sürecinde temel bir taş gibidir. İlerledikçe, daha karmaşık algoritmaları anlayacak ve yazılım dünyasında başarılı olmak için gereken temeli sağlamlaştıracaksın.
Ben kesinlikle yeni başlayan birisine direkt olarak bir dilden başlamak yerine algoritma öğrenmesi gerektiği taraftarıyım.
Yazılım dünyasına adım atarken, algoritma konusunu öğrenmek sana çok yardımcı olacak. Başlangıçta basit algoritmalarla başlayıp, zamanla karmaşık problemleri çözebilecek seviyeye ulaşacaksın. Pratik yapmak her zaman önemlidir. İyi şanslar!
Yeni başlangıçların keyifli olsun!
Merhaba arkadaşlar, öncelikle şunu belirteyim böyle "yazılıma başlayacağım ne/nasıl yapayım" minvalde soru sormayacağım. Ben geçen sene mezun olmuş bir psikologum. Ama bu süreçte anladım ki ben bu mesleği yapmayı düşünmüyorum. İlgimin de olduğu önceden baktığım yazılım alanına yönelmek istiyorum. Üniversite sürecimde zaten yazılım alanında biraz bir şeyler öğrenmiştim ama mezun olunca sıfır odak kaldım. Çevremde veri analizcisi ve mobile developerda var. Onlara da danıştım. Şu an kafaya koydum, ben bu alanda gideceğim. Ama aklımda birkaç soru var.
İlk sorum hangi alana yönelmek, dediğim gibi bu sektörde büyük şirketlerde çalışan tanıdıklarım var. Ama hangi alana yöneleceğime karar veremedim. Zaten şunu da biliyorum ilerledikten sonra diğer dilleri öğrenip kendini geliştirmek gerekiyor ve bu sayede diğer alanlara kayılabiliyor ama ben ilk aşamada hangi alana yönelme konusunda sıkıntı yaşıyorum. Bu konuda işe yeni başlamış ya da işin içinde bulunan arkadaşların tavsiyesini merak ediyorum. İlerleme konusunda daha rahat, iş konusunda da kısa sürede sıkıntı çekilmeyecek bir alan istiyorum. Dediğim gibi ilerleyen zamanlarda kişi kendini geliştirdikçe diğer alanlara geçilebilir.
İkinci sorum ise çevremde alaylı olarak girmiş insanlar açık kaynak ve eğitimlerden yararlandı. Çoğu mühendis çıkışlı olduğu için rahattı. Oradan öğrenerek ilerlediler. Ama ben bu kısmı daha iyi şekilde ve düzenli geçirmek istiyorum. İnternette birçok eğitim var ve bazıları iş garantili (evet biliyorum kesin olarak iş garantisi hiç kimse veremez ama eğitim ücretini işe girince ödeme tarzı durumlar var). Bu eğitim konusunda hem düzen hem de kalite bakımından hangi eğitimleri önerebilirsiniz? Zaman sorunum olmadığı için full time olarak kendimi adayacağım öğrenmeye. Bu yüzden disiplin açısından eğitimlere bakıyorum.
Cevaplarsanız sevinirim, iyi forumlar.
İkinci olarak ise, İngilizcen ne düzeyde? İyi bir düzeydeyse harika, çünkü en iyi kaynaklar her zaman yabancı kaynaklar oluyor.
Ayrıca sana bir alan önermek isterim, ancak yazılıma yeni başlayacaksan bence önce basitinden HTML CSS gibi yazılım dili olmayan ancak işaretleyen bir çalışma mekanizmasına sahip olan göreceli basit şeylerle algoritma mantığını ve sektöre olan yabancılığını gidermen daha iyi olur.