• aglama duvari yapmis burayi php severler.

    yeni baslayan dostum, sozum sana. java'nin biyere gidecegi yok. canavar gibi updateler geliyor, piyasadaki en guclu altyapi seceneklerinden biri java. uzerine ogrenebilecegin, ihtiyacina gore, cok guclu frameworkler mevcut. yazilimi ogreniceksen, java cok iyi bir secenek. cunku neyi ne yaptigini takir takir goreceksin onunde. ılk basta biraz fazla kod yaziyor olucaksin evet, ama merak ettikce onlari da arastirip ne ise yaradigini goruceksin zaten.

    cok klasik bir geyiktir, hello world yazmak 123812 satir suruyor diye. yalan diyemem. ama sebepleri var. :d

    yeni baslarken bunlari ogrenmek senin icin ileride daha avantajli olabilir.

    kolay gelsin kankam, parmaklarina saglik.

    tanim : bir programlama dilidir. java boklayanlara aduket.

    ---
    debe editi : yemin ediyorum su javaya verdigim emegin 1/10' unu hicbir egitimime vermedim. roi 'i en yuksek yatirimim java oldu sanirim.

    madem debe'ye girdik. yeni baslayan arkadaslara cok ufak 2 tavsiye daha yazayim :

    1 -> blog.

    acin haci pasalar gibi bir blog sitesi. blogspot bile olsa olur. ne ogreniyorsaniz oraya yazin. cok basit olsa bile yazin anlatin. bunlar ileride cok isinize yarayacak. kimse girmese bile siz cv nizde ahanda bu blogum ahanda buweb sitem dediginiz anda her yerde +1 dir bu.

    temettu emekliligi basliginda amator olarak yatirim yapan insanlar bile bireysel blog sitesi acip yaziyor yorumluyor, usenmeyin. siz yazilimcisiniz daha cok lazim size.

    hatta maillasmalarinizda @gmail yerinde kendi mail sunucunuzu olusturup oradan atarsaniz sukella. kendi mail sunucunuzu olusturmaniz icin cok guzel bir kaynak da benden gelsin : https://www.linuxbabe.com/…ostfix-mail-sever-ubuntu

    cv nizi mi istediler, soyle bir linkten cv verebilirsiniz : https://www.benimnickimneyseo.com/cv/cv.pdf . tabi bu klasorun indexlenmemesi icin biseyler de yaparsiniz. bunlar ileriki mevzular.

    2 -> github.

    ayni mantikla, ne calisiyorsaniz, atin github'a. duzgunce bir readme.md de yapin. gercekten cok onemli. hatta o kadar onemli ki, ileride mulakatlara girmeden once sizin githubiniza bakip puaniniz verilecek. cok isinize yarayacak.

    github uzerinde de blog yazabiliyorsunuz, googlelayip nasil oldugunu ogrenebilirsiniz.

    burada size yukardan yukardan tecrubeli abi gibi mesaj vermek benim haddim degil, herkesin bilgisi tecrubesi kendine. ama 10 yila yakin bir programlama gecmisim var, bu tavsiyelerime uymaniz isinize yarayacaktir.

    tecrubeli arkadaslara bi tavsiyem yok, herkes kendi yaginda kavrulur. selametle.
  • arkadas hani tutayim kendimi, yazmayayim diyorum. banane diyorum. sonra bir de elit diye, ukala diye adimizi cikariyorsunuz da ama cahil cesaretine tahammulum az, elimde degil. insanda biraz had olacak. hani bu biraz da tam olarak bugunun konusu degil, biraz birikimin de getirdigi bir yazi olacak.

    gunumuzde cesitli amaclarla kullanilan onlarca farkli programlama dili var. herbirinin digerine gore avantaji, dezavantaji var. kisisel olarak bunlardan bazilarini gormeye dahi tahammul edememekle beraber, birden fazlasini bilmek ve kullanmak durumundayim. java da bunlardan biri ve baslicasi.

    java mukemmel bir dil mi? hayir diyecek yuzlerce adam bulabilirsiniz. kendisinden sonra gelistirilen bazi yazilim gelistirme kavramlarina dair eksiklikleri var, her versiyonda bunlari ekleyip eksiklikleri gideriyor. ote yandan bu eksikliklerle dahi java bir cok yonden, bir cok programlama dilinin onunde yer aliyor. eger bilisim kulturunuz pcnet gibi dergilerden ibaret degilse, nette biraz arastirma yaparak "java nedir? nerelerde kullanilir ?" ogrenmeniz mumkun, tabii istiyorsaniz. yoksa derdiniz "gelecek göremiyorum, çok da vakit harcanmaması gerekli" filan diye sayiklamaksa ve java gibi bir dili python, ruby gibi esdegeri olamayacak dillerle karsilastirmaksa siz bilirsiniz, facepalm disinda bir etki yaratamazsiniz.

    python, ruby ..vs.. gibi dilleri asagilamaya calismiyorum. ruby'den ozellikle tiksinmekle beraber bir operations engineer olarak kullanmaktan kacinma sansim yok. cunku bu dilin iyi oldugu alanlardan biri bu oldugu icin kullanmam kacinilmaz olan chef/puppet gibi yazilimlarin scripting dili ruby. onun disinda python da yine scripting icin, ozellikle de multithreading bir is yapacaksam tercih ettigim dillerden biri.

    ama, el insaf. biz insanlara "bakin mutlaka kamyon soforu olmak zorunda degilsiniz, formula pilotu olabilirsiniz" diyorken cikip "formula pilotlugunda gelecek goremiyorum ya, ilerde formula pilotlari hep kamyonculardan secilecek, kamyoncular simdi her yerde" diye sayiklamayin... lutfen, bunu cidden yapmayin. allah askina, python ve java'nin ligleri ayni mi ki es tutuyorsunuz ? siz hic python ya da ruby ile yazilmis ciddi bir dbms gordunuz mu ? ya da ruby on rails ile j2ee'yi bir tutabilir misiniz ?

    yanlis anlasilmasin, demeye calistigim sey "kamyon soforu olmayin, gereksiz, herkes formula 1 pilotu olsun" da degil, tabii ki ruby yazilimcisi da, python yazilimcisi da gerekli. eger koydugunuz hedef, turkiye'de ufak ve orta buyuklukte yazilim gelistirmek, ufak tefek web projeleri yapmaksa ki bu gercekten de gercekci ve gayet basarili bir kariyer de saglayabilir, buyrun python ogrenin, ogretin. de, hedef olarak onune daha buyugunu koyan adama "ya siktir et java'yi c++'i" derseniz komik olmadan once ayip olur. zira devler liginde python'u ruby'yi ancak cogunlukla operations gibi asil isi yazilim gelistirme olmayan departmanlar kullanir, ciddi isler icin java ve c++ gibi diller tercih edilir. [cogunlukla dedim, hic yok demedim ama burada genelgecer trendden bahsediyoruz]
  • c++ bilen birinin ogrenmekte neredeyse hic zorlanmayacagi programlama dili.. guzel tasarlanmi$.. sadece api reference'a ali$mak icin vakit gerekli.. ayrica her yeni version'inda eskisindeki kavramlarin yarisini kaldirip atmalari iyi bir ali$kanlik degil..
  • yahu kaynak düşmanı olsa ne olur? bu dil aşırı düşük gitti geldi hızları isteyen projelerde, saniyede milyonlarca isteğe ölçeklenmesi gereken yazılımlarda kullanılıyor. netflix'in, google'ın, amazon'un yükünü çekiyor. twitter'ın bir kısmı, apple'ın çoğu web servisi bir başka jvm dili scala'da koşuyor. wall street'ten, londra'sına, frankfurt'una bir dünya borsa yazılımı bu dille geliştiriliyor. jetbrains java ve kotlin ile yazdıkları desktop uygulamasını neredeyse her bilgisayarcının geliştirme ortamının gediklisi yaptı yahu. demek ki ne öyle denildiği gibi yavaş ne de az ölçeklenebilir bir dil ki bir dünya ciddi hali vakti yerinde şirket hala kullanıyor. yerine önerilen dil de php, çemişgezek webmaster'larının favori dili.

    bu arada docker'ın vs envai çeşit çözüm sunduğu, herkesin harıl harıl prod'u da aynı sistem üzerinde çalıştıralım diye cloud'a ekstra kamyonla para döktüğü bir sektörde "projeyi ayağa kaldırmak"ta zorlanıyorsanız yapmayın abi bu mesleği. mimari bilmeden butona basıp geliştirme hiçbir zaman yapılmadı zaten.
  • java'nın bir dil olarak c#'a göre en büyük artisi, uzerinde calistigi virtual machine yani jvm'in "birinci elden unix desteği" diye dort kelimeye indirgenmis olan isletim sistemi destegi'dir.

    neticede hepimizin yazdigi programlar, bir hedef isletim sisteminde calisiyor (ya da daha teknik detaylandirmak gerekirse, bazi durumlarda bir virtual machine uzerinde) ve jvm, c#'in virtual machine'i dlr gibi microsoft isletim sistemlerinde kisitlanmis degil. bu yuzden de yuz milyonlarca device uzerinde java calisiyorken, c# microsoft dunyasi ile kisitli.

    c# icin bundan daha buyuk bir dezavantaj dusunemiyorum. dil ne kolaylik getirirse getirsin, hangi feature'a sahip olursa olsun bunun otesi yok.
  • java birden fazla açıdan problemli geliyor bana. yaklaşık 10 yıldır java dünyasını çok yakından takip etmiyorum ama gözlemlerim şunlar:

    dil eski, özellikle oracle sonrası yavaş gelişiyor, yanlışlarında ısrar ediyor (checked exceptions, property'lerin olmaması, dandik generics). açıkçası c# auto-properties, linq, async, falan diye koşar adımlarla giderken java bir hayli geriden geliyor gibi geliyor bana. scala bu açıdan daha ümit vaadedici mesela.

    framework (java class library) eski, yetersiz, pratik değil. (.net'teki file.readalltext gibi günlük kullanımda büyük rahatlık olan şeyler yoktu son baktigimda. bu da java'yla rapid prototyping'i, proof of concept geliştirmeyi vs zorlaştırıyor)

    eclipse 2003'te visual studio'dan çok daha üstündü ama bugün vs2012 o kadar iyi ki, eclipse'e bakmamış olmama rağmen, gerek performans gerek kullanışlılık açısından halen yarışta olmasına ihtimal vermiyorum.

    oracle tek başına problem. java'yı vizyonuna herhangi bir yerden dahil etmediğinden java'yı cash cow gibi kullanmaktan başka bir şey yapmıyor. ask toolbar kurdurmaya çalışması java'ya "evrensel platform" muamelesi yapan firmanın yapacağı iş değil. inovasyon konusunda microsoft kadar committed değil. installer'ın 1998 yılından kalma görünmesi bile bu zihniyetin eseri.

    bu sebeplerden java'ya karşı gelişmiş bir antipatim var malesef.
  • bir değişken tanımlanırken tipi belirtilen dil.

    bunu mallık olarak gören, dili geliştiren kafaca üst düzey manyak adamların hata yaptığını söyleyen birini okudum hafif üstte. type safe dil nedir, avantajı nedir neler getirir neler götürür bunu bilmeyen oturup araştırsın. ya da boşver araştırmasın, yazılım sana göre değil.
  • java'nın gelişmişinin javascript olduğunu sananlarca eleştirilir. java'nın gelişmişi json'dur. yani java's son, yani java'nın oğlu. boynuz kulağa geçer misali babasını geçmiştir. javascript ise java yazısı demektir ve java'nın yazılı halidir. yani java ile yazarken sadece yazarsanız javascript, okursanız javaread, hem yazar hem okursanız javascriptread olur.
  • (bkz: yine butun cahiller toplanmis)

    java'yi mobil ve oyun sektoru disinda kullanan yok diyor adam. ne diyeyim bilemedim. ya da demiyorum banane? cehaletinizde bogulun.
  • kullanim amaci belirli bir islevi az satirla yerine getirmek degildir.
hesabın var mı? giriş yap