[]

Yazılımda kendimi geliştirmek

Selamlar; Ağustos ayında Bilgisayar Mühendisliği eğitimimi bitirmiş bulunmaktayım. Üniversitede kendimi çok fazla geliştiremedim. Yazılım alanında çalışmak istiyorum bunun üzerine çalışmalarım devam ediyor.Ancak teorik bilgileri pratiğe dökerken sıkıntılar çıkıyor ve kodlama işlemini düzgün yapamıyorum. Önerisi olanlar, böyle yaptım şu an bu durumdayım diyenlerin tavsiyelerini bekliyorum. Teşekkürler.




 
hackerrank.com'daki alıştırmalara bakabilirsin, özellikle algoritma konusunda çok yardımı olur diye düşünüyorum.


  • 111111  (08.09.17 13:44:33) 
Iyi temeli saglam bir yazlimci olmak ve yazilim gelistirmeyi pratige dokebilmek icin buyuk kucuk sirketlerde gozlemledigim, ozellikle ABD ve Avupada calisan yazilimcilarda gordugum ve benim de tavsiye edebilecegin surecler sunlar:

Temel iyi olmasi acisindan:
1. Temel algoritmalar ogrenilmeli klasik algoritma sorulari cozulebilmeli. Search, Sort, Graph vs.
2. Veri yapilari ogrenilmeli. List, Map, Tree vs.

Algoritmalarla beraber Programlama dili ogrenilmeli
3. Programa dilinin degisken yapilari
4. Karar yapilari , if, if-else, switch vs.
5. Donguler For, while, do-while vs.

Daha sonra ogrenilenleri pratige dokmedeki ilk gecis asamasi mimari, programlama anlayisi
6. UML diagramlar
7. Fonksiyonel programlama nedir
8. Object Oriented Programlama nedir
9. Encapsulation, Inheritance, Polymorphsm, interface, abstract siniflar vs.
10. Design Patterns

Daha sonra tum bunlarin pratige dokulmesi icin gerekli araclar
11. O dile ait kutuphaneler, siniflar. Ornegin dosyadan veri okuma yazma. Json veya XML data olusturma
12. O dile ait gelistirme pratikleri. Ornegin database CRUD (Create-Read-Update-Delete) yani database veri olusturma, yazma, duzenleme, ve silme islemleri.
Internet uzerinden XML veya JSON veri aktarma ve web servisleri vs.
13. Frameworkler

Yazilim gelistirme pratikleri ogrenilmeli
- Agile, Scrum nedir, bir is yerinde yazilim gelistiricini gunu nasil gecer, hangi toplantilara katilir.
- Scrum Master, Project manager, Product Owner, QA nedir ne is yapar
- Bir gelistiriciye bir gorev nasil verilir. hangi araclar kullanilir. istekler nasil belirtilir.
- Test Case nedir
- Teset Driven Development nedir
- Bir yazilimci isi bitirince kendi isini nasil test eder. Unit Test nedir?
- Bir yazilimcinin yazdigi kodu kim nasil test eder. Code Review nedir?
- Bir yazilimcinin yaptigi is nasil test edilir. Integration test, Regression test, Smoke test nedir vs.

Bu adimlar elbette en basta en son asamasina kadar sira ile ogrenilmez, hatta bazi asamalari atlayabilirsin. Ama bu konularin butununde ne kadar derinlesirsen o kadar iyi yazilmci olursun. ogrenme surecinde yuzeysel ogrenilir bir sonraki asamaya gelinir. Biraz ogrendikce bir sonraki asamaya gecilir. Hepsi bitince tekrar en basa donulur daha derin ogrenilir, yanlis anlasilmis ogrenilen seyler duzeltilir. Tam idrak edilememis seyler idrak edilmeye calisilir. Yazilmci olmak icin ogrenme sureci "Linear" yani bastan sonra dogru dumduz ogrenip gitmek ile olmaz. Yazilim ogrenmek "iteration" yani tekrar tekrar basa donup tekrar etmek ile olur, yillar gectikce basa donup tekrar ettikce o konuda derinlesip uzman yazilimci olunur.

Ogrenmek icin giris seviyesi kitaplari, pratik seviye kitaplari (cookbook), referans kitaplari (index kitaplar) kullanilir. Bol bol video izlemek iyidir anlamak icin ama kendi seviyene gore video ve kitap bulmak onemli. Pratigi ogrenmenin en hizli yolu bir yerde calismaktir. Diger yazilimcilarla kendini karsilastirmanin ve iyi yolda mi oldgunun anlamannin yoluda seminerlere, Hackathlon gibi kod gelistirme aktivitelerine katilmaktir. Bunun yaninda bol bol pratik yapmak her bir konuda mutlaka birseyler gelistirmeye calismak, guzel bir fikrin var ise ozellikle ogrenmek icin o ise girismek iyi olur.

guzel kaynaklar hackerrank.com www.geeksforgeeks.org, projecteuler.net , "head first" serisinin kitaplari, ve video siteri (udemy, udacity, coursera)
  • emrahday  (08.09.17 13:59:39 ~ 14:12:14) 
1
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler angelus, Artibir, aychovsky, baba jo, basond, compumaster, deckard, duyulmasi gerektigi kadar, fader, fraise, groove salad, kahvegibi, kaymaktutmayansicaksut, kibritsuyu, monstro, pandispanya, robin, ron dennis
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır. Skimlinks ile linkler üzerinden yönlendirme payı alınmaktadır.