Peki Java öğrenmek ne kadar sürer? On yıl mı, on hafta mı, yoksa bir gün mü? Belki de tüm hayatın? Bazı çevrimiçi forumlarda bu soruya çok tuhaf cevaplar bulabilirsiniz. En baştan netleştirelim. Bu yazıda “Java bilmek”, “Merhaba dünya programı” yazabileceğiniz anlamına gelmez. İlk işinizi bulmak için Java'yı yeterince iyi bilmekle ilgilidir. Buzz Lightyear'ın başlıktaki sloganı tam olarak bir şaka değil. Gerçekten hayatınızın geri kalanında Java veya başka bir dil öğrenmeye devam edebilirsiniz. Nedeni ise dilin sürekli gelişmesi, kapsamının değişmesi ve… Müjde arkadaşlar!Panik yapmak için bir sebep yok! Java misyonunun öğrenilmesi kesinlikle 3 ila 12 ay arasında tamamlanabilir, ancak bu makalede ele alacağımız birçok nüans var. Burada “Java hızlı nasıl öğrenilir” sorusuna da cevap vermeye çalışacağız.
Yuliya Deinega , Kendi kendini yetiştirmiş yazılım geliştiricisi. Yulia, LinkedIn'de REACH Çırak Mühendisi olarak çalışmaktadır. Ayrıca bilgisayar programlama öğrenme ve Silikon Vadisi'nde iş bulma konusundaki deneyimlerini paylaşmak için YouTube kanalı oluşturmuştur.
Java öğrenmeye başlayanları üç ana kategoriye ayırabiliriz:
PS: Peki ya sen? Şimdilik Java'yı ne kadar sürede öğreniyorsunuz? Bu süreç zor mu? Veya belki de Java ile ilgili ilk işinizi zaten bulmuşsunuzdur? Zor muydu? Ya da belki onu aramaya yeni başladınız? Deneyiminizi burada paylaşın!
cevabı nasıl arayacağız"Java öğrenmek ne kadar sürer" sorusu biraz aldatıcıdır. Bunu daha spesifik alt sorulara ayırdık ve burada cevapladık. Daha kesin olmak gerekirse, CodeGym öğrencileriyle yapılan röportajları, açık kaynakları ve Anketten elde edilen istatistikleri kullandık. Bu Anket, Java öğrenme süreçleri ve o ilk işi aramakla ilgiliydi. Yerel CodeGym birimlerinden biri tarafından yürütüldü. Anket katılımcıları, Java ile ilgili ilk işi bulan veya bir Java Stajına katılan, seviye 30 ve üzeri CodeGym öğrencileriydi.
"Java'yı bilmek" ne anlama geliyor?Bu sorunun çok genel de olsa en doğru yanıtı “Java kullanarak sorunu çözebilmek” olacaktır. Böyle bir sorun, “sınavı geçmek” veya “iş bulmak” hedefi olabilir. Veya teknik bir görev olabilir, örneğin "Play Market için yeterince iyi kendi projemi oluşturmak" gibi büyük bir görev veya "ihtiyacınız olan şeyi yapan kodun nasıl yazılacağını anlamak" gibi küçük bir görev olabilir. Elbette sorunlarınız zamanla değişecektir. İlk işinizi aldıktan sonra, pozisyonlarda büyümeniz gerekecek (örneğin, Java Junior Developer'dan Java Middle/Senior Developer'a). İlk kodlama görevini ikincisi takip eder. Ayrıca, bunu yaptığınızda bazı yeni hedefler görünecektir. Sorumuza geri dönelim. Özgeçmişinize “Java'yı tanıyorum” yazmak için hangi temaları bilmelisiniz? Java öğrencileri genellikle aşağıdaki konuları öğrenir:
- Çekirdek Java veya
- Çekirdek Java + JUnit veya
- Çekirdek Java + Veri Tabanları veya
- Çekirdek Java + Araçları veya
- Çekirdek Java + Kitaplıkları veya
- Core Java + Spring + SpringBoot + Hibernate veya
- Çekirdek Java + Android SDK veya
- …ve yukarıdaki tüm kombinasyonlar.
- Temel tipler ve nesneler
- Temel yapılar (Özel Operatörler, Döngüler, Şubeler)
- OOP Kavramları
- Sarmalayıcı Sınıfları
- Koleksiyonlar
- çoklu iş parçacığı
- G/Ç Akışları
- İstisna işleme
Sizin kişisel yolunuz. Java'yı ne için öğreniyorsunuz?Bu yazıda “Java'yı sadece eğlence için öğreniyorum” veya “Gelecekte Java öğretmek istiyorum” gibi seçenekleri dikkate almıyoruz. Burada Java'nın BT'de profesyonel kullanımından bahsediyoruz. Şu anda, Java çoğu zaman üç yoldan biriyle gitmek için öğretilmektedir:
- Stajyer/Genç Geliştiriciden Kıdemli Geliştiriciye kadar Java Geliştiricisi
- Android Geliştiricisi, bağımsız veya bir şirkette (Junior'dan Senior'a)
- KG Otomasyonu (Java ile)
Java geliştiriciJava Developer'ın havuzu çok geniştir ve Java bilgisi için gereksinimler, büyük ölçüde değişebilen ilk işinizi almanızdır. CodeGym Anketine göre, ilk Java Junior işini yalnızca Java Core'u bilen ve başka bir şey bilmeyen bazı insanlar var. Şirketler onları iş süreçlerinde eğitmeye hazırdı. Ancak, bu oldukça nadir bir olaydır. Çoğu zaman, böyle bir kişi bir stajyerliğe katılabilir veya bazı sınavları geçtikten sonra bir Java stajyeri olabilir. Genellikle Java Junior adaylarının ilk işlerini alabilmeleri için Java Core'dan daha fazlasını bilmeleri gerekir. Java Geliştiricilerinin bilmesi gereken ilgili teknolojilerin bir listesi.
- Çekirdek Java
- JDK API'si
- Java 8 (lambdalar), Java 11
- Test Kitaplıkları (JUnit)
- Bahar Çerçevesi
- Spring Boot ve Spring MVC
- hazırda bekletme
- JDBC
Android geliştiricisiAndroid geliştiricileri bir şirket için çalışabilir veya kendi projelerine sahip olabilir. Java Core ve diğer bazı teknolojileri mutlaka bilmeleri gerekir. Burada Android Developer'ın bir yolunu gösteren bir infografik var. Listede pek çok nokta var, ancak bunların çoğu doğrudan Java ile ilgili değil (yalnızca test araçları ve aslında Core Java). Genellikle geliştiriciler, Android programlamayı kendi başınıza öğrenmenin Enterprise geliştirmeden biraz daha kolay ve hızlı olduğu konusunda hemfikirdir. Yine de Java Junior pozisyonuna talip olanlar için bile programlama becerilerinizi geliştirmek için Android projeleri oluşturmak faydalı olacaktır.
KG Otomasyonuİyi bir QA Otomasyonu programlama dilini oldukça iyi bilmelidir, bu meslek için en önemli becerilerden biridir. Java'ya bağlı
- Core Java (özellikle OOP, Collection, FileOperations)
- Test Kitaplıkları (JUnit)
- IntelliJ FİKİR
- Selenium RC/WebDriver çerçevesi
- Sayfa Nesne Modeli
- HTML/CSS
- SQL
Kim soruyor? Potansiyel Java öğrencilerinin portreleri“Bence bu, geçmişinize ve ders çalışmak için harcayabileceğiniz süreye bağlı. Bir yazılım geliştiricisi olarak yolculuğuma başladığımda, haftada en az 40 saat ders çalışarak geçirirdim. 6 aylık tam zamanlı eğitimden sonra, herhangi bir yeni teknolojide kendi başıma ustalaşabileceğime yeterince güvendim. Bir yazılım mühendisi olarak ilk işinize girmek için yalnızca Java öğrenmeniz değil, aynı zamanda bilgisayar biliminin temellerini, nesne yönelimli programlamayı anlamanız ve çalışmalarınızı sergileyebilecek birkaç proje yazmanız gerekecek. Bence bu dokuz ila on iki ay arasında bir zaman alabilir. Kulağa çok iş gibi geldiğini biliyorum ama cesaretiniz kırılmasın! Kodlamanın hangi yönünün size keyif verdiğini keşfederseniz ve kendinize oyun oynama izni verirseniz, bu yolculuk gerçekten eğlenceli olabilir."
- "Çaylaklar". Sıfır deneyim. Pekala, burada programlama hakkında hiçbir şey bilmeyen insanlar var.
- "Ortalar". Minimum veya kaotik programlama deneyimi olan öğrenciler. Bu insanlar okulda, üniversitede veya kurslarda programlama öğreniyorlar ama bu ciddi bir öğrenme değildi.
- "Artıları". Diğer programlama dillerini (1 veya daha fazla) bilen yazılım geliştiricileri.
- %33,3'ü kesinlikle yeni başlayanlardı
- %17,6'sı en az bir programlama dili biliyordu