Java Günlüğüm
Yazılım, Java, BT, azıcık felsefe, biraz mizah...
  • Udemy Eğitimleri
  • Temiz Kod
  • Tasarım Kalıpları
  • Hakkımda
  • Arşiv
RSS
06 Haziran 2011

2010 Oracle Java Yaz Kampı

Akin Java

Geçen yaz, İnomera’dan Kaan Bingöl’ün girişimine Oracle’ın destek vermesiyle, İstanbul Çamlıca’daki Oracle Partner Hub’ın güzel eğitim ortamlarında üç grup olarak P.tesi-C.tesi arası, haftada 6 günden 3 hafta, yani toplam 18 gün Java eğitimi yaptık. Aslında eğitimden çok sanki bir kamptı, çünkü çok eğlenceliydi.

Üniversitelerde öğrenci olan arkadaşların katıldığı eğitimlerde önce temel Java, yani Java SE, sonra Java EE’nin web bileşenleri, yani Servlet-JSP-JSF teknolojileri ve çok kısa, farkındalık kazandıracak seviyede de JPA, XML gibi teknolojileri ele aldık. 3 haftalık eğitimin ilk iki haftasında pratik uygulamalarla desteklenmiş teorik eğitim yaparken, son haftasını bir ATM uygulamasını, öğrendiğimiz teknolojilerle gerçekleştirecek şekilde proje üzerine çalışarak geçirdik. Kafayı kırıp, uykusuz gecelerde kod yazanlardan projesinde JSF ve/veya JPA kullananlar olduğu gibi daha mütevazi davranıp, servlet, JSP ya da servlet-JSP ile veri katmanında JDBC kullanan arkadaşlarımız da vardı.

Öncelikle ben çok eğlendim. Katılanların da eğlendiğini biliyorum. Her eğitimde olduğu gibi bu eğitimde de çok şey öğrendim. Hem Java hakkında hem de “insan-Java” ilişkisi hakkında çok şey gözlemledim. Dahası, hayatlarının baharında olan bu enerjik gençlerin, bir programama dilini, nesne-merkezli yapıları nasıl ele aldıklarını yakından görme fırsatım oldu. Oracle’ın Partner Hub’ının gölgelikli bahçesinde öğle yemeği yerken sohbet etmek, sohbet ederken de pek tabi olarak, 2 Türk’ün biraraya geldiğinde daldığı, hararetli “ne olacak bu ülkenin hali” tartışmalarından “Java, .NET’i nasıl döver” tartışmalarına kadar pek çok şeyi de ele aldık :).

Gençlerin, “hocam üniversiteyi bitirince master yapalım mı” sorularına, master yapmanın şahsi gelişim açısından çok güzel birşey olduğunu belirttikten sonra, “Türkiye’de yapıldığı şekliyle, bir programcı olarak kariyer sahibi olmak istiyorsanız”, okuduğunuz üniversite ya da üniversiteye girerken, ÖSS’de (artık ÖSS’de kalmadı ya, benim zamanımda ÖSS ve ÖYS idi ve ben orada kaldım 🙁 ) elde ettiğiniz “ilk yüze girmek girmek” gibi başarıların pek önemli olmadığını,  ülkemiz BT piyasasında bir programcı olarak çalışırken, bırakın masterı, lisans eğitiminde görülen bilgilerin bile hemen hiçbirinin kullanılmadığını, yapılan yazılımların pek çok zaman, aslında, “akıllı bir lise mezunu”nun yapacağı seviyede olduğunu, onları hayal kırıklığına uğratmak pahasına anlattım. Tabi aynı enerjik gençlerin bu enerjilerinin, üniversitelerimizde nasıl boşa harcandığını da gözlemledim. Zihinleri keskin olan bu gençlerin enerjilerinin, ıvır zıvır detaylarla nasıl boşa akıtıldığını, doğru konumlanmış hedeflere sahip olmadan, kafalarının, nasıl, envay çeşit ve birbirinden kopuk ve henüz bilgi seviyesine çıkmamış malumatlarla doldurulduğunu,  üniversiteden mezun olma durumuna geldiklerinde, programcı olmayı arzulayarak girdikleri bölümlerinden nasıl kaçar hale geldiklerini de gözlemledim. Bu da geçen yazın acı tarafıydı. Bu gençlerin bazılarının ufuklarını belirlemede biraz yardımcı olabildiysem ne mutlu bana.

Sonrasında, bu çalışma ile ilgili, İnomera’dan Kaan Bingöl bey, Oracle’dan Pınar Rua Aksu hanım ile benim katıldığım bir söyleşi, LinkPlus’ın Ocak-Şubat-Mart 2011 sayısında yayınlandı. Dergiye buradan ulaşabileceğiniz gibi sadece söyleşiye de buradan ve buradan ulaşabilirsiniz. Ayrıca katılımcılardan İsmail Demirbilek de, blogunda iki yazıyla, burada ve burada bu eğitimden bahsetmiş ve arada beni de “Java dersini eğlenceli hale getirebilen ilginç birisi” cümlesiyle anlatmış 🙂 Java zaten eğlenceli olduğu için çok da zor olmadı aslında İsmail :).

İnomera, böyle Java kamplarını zaten bir süredir, mütevazi imkanlarıyla düzenlemekte. Esasen İnomera bunu, hem BT piyasasına bir hizmet hem de kendine, enerjik ve temel bilgi donanımı tam olan insan kaynağı bulmak amacıyla yapıyor. Bu çok güzel bir uygulama. Etrafta fellik fellik “Javacı” arayanlar da keşke böyle faaliyetler yapsalar, destek verseler de yetişmiş insan açığımız kapansa. Oracle’ın yaptığı da benzer şekilde çok güzel. 2000’li yılların başında, Türkiye’ye döndüğümde, Java’nın yaratıcısı olan Sun ile ilgili algının ne durumda olduğunu görünce çok şaşırmıştım.  Oracle, uzun süreden beri, bir  “veri tabanı” şirketi olmaktan çıkmakta. Sun’ı satın alıp Java’nın hamisi olması da bu sürecin bir parçası. Dolayısıyla ülkemizde gerekli Java bilgi ve becerisinin oluşmasında kendisine büyük sorumluluk düşmekte. Bu vesile ile hem İnomera’ya hem de Oracle’a kocaman bir teşekkür ediyorum.

Şimdi, bu yaz hem Oracle hem de İnomera, benzer içerikli bir programı tekrarlayacaklar. Ve ben yine gençlerle buluşacağım, yine çekingen ve meraklı sorularla başlayan, sonrasında her türlü espri ve kahkahayla devam eden sohbetlerin içinde olacağım :).

Toplam görüntülenme sayısı: 1372

27 Bunu beğendim 🙂
Tweet
Follow me
Tweet to @kaldiroglu
12 Mayıs 2011

Java Tuzakları – IV: Java bizimle dalga mı geçiyor?

Akin Java

Birisi size gelip, aşağıdaki kodun “0” bastığını söylese, gözlerinizi ovalayıp koda bir kaç defa daha bakmaktan ve inanmayıp, gidip aynısını yazıp çalıştırmaktan başka ne yapardınız?

...
int i = 0;
i = i++;
System.out.println(i);
...

Aynı kodu aşağıdaki gibi yazarsanız, beklediğiniz olur ve “0” yerine “1” basılır. Siz de derin bir ohh çekersiniz 🙂

...
int i = 0;
int j = i++;
System.out.println(i);
...

Ama kodda “j” yerine “i” koyarsanız, kabus yine başlar.

Aslında problem Java’da değil. Eminim bu kodu aynı şekilde çalıştıran başka diller ya da derleyiciler de vardır. C/C++’ta bu durumun derleyiciye bağlı olduğunu biliyorum örneğin.

Ben bu kodu görünce, hemen “javap”ı kullanarak üretilen bytecodea baktım ve ne olup bittiğini anlamaya çalıştım. “javac”ın ürettiği bytecode şöyle:

Code:
0: iconst_0
1: istore_0
2: iload_0
3: iinc 0, 1
6: istore_0

Malum JVM bir stack makinası. Değerler bu stackte tutuluyor. Yerel değikenler ise bir dizide tutuluyor. Yukarıdaki kod parçası main metottan çağrılan ve başka bir yerel değişkene sahip olmayan bir metotta olduğundan, yerel değişken olarak sadece int “i” var ve onun değeri de, yerel değişken dizisinin “0” nolu odacığında tutuluyor. Ve olan biten şu: 0. satırda stacke “0” yükleniyor. Sonra bu değer 1. satırla “i”ye atanıyor. 2. satırda ise “i”nin değeri stacke kopyalanıyor ve 3. satırla “i”nin değeri 1 arttırılıyor. Buraya kadar iyi. Fakat bakın 6. satırda, az önce stacke kopyaladığımız “i”nin ilk değeri yani “0”, “i”ye tekrar atanıyor. Dolayısıyla, “i”ye yapılan artım kayboluyor. Olup biteni biraz daha anlaşılır yazarsak aslında 2. satırda yapılan şey “i”nin değerinin bir geçici değişkene atanması ve 6. satırda yapılan da bu geçici değişkendeki değerin “i”ye geri atanması. Yani yukarıdaki kodun şundan farkı yok aslında:

...
int i = 0;
int temp = i;
i++;
i = temp;
System.out.println(i);
...


Dolayısıyla “i”nin değerinin “0”da kalması normal. Yukarıda verdiğim ve arttırılan “i”nin “j”ye atandığı kodun bytecodeuna da bakarsanız farkı görürsünüz.

Ben bu durumla daha yeni karşılaştım. Çünkü hiç bir zaman basit bir şekilde “i++” ya da “i+=1” ile yapacağım şeyi böyle yapmaya kalkışmamıştım. Ama güzel olan, bir şey daha öğrenmiş olmamız.

C#’ta da durum aynı mıdır acaba?

Toplam görüntülenme sayısı: 1190

20 Bunu beğendim 🙂
Tweet
Follow me
Tweet to @kaldiroglu
03 Mayıs 2011

İnomera Java Yazılım Akademisi

Akin Java

Inomera Java Yazılım Akademisi – Yaz 2011

Üniversite öğrencileri için profesyonellerden üniversite öğrencilerine ücretsiz Java & Bulut Bilişim eğitimi ve staj fırsatı. Profesyonellerden, genç mezunlara bilgi ve deneyim aktarmak amacıyla, bu yaz Java Yazılım Akademisi programımızı 6. kez düzenliyoruz. Akademi süresince mezun adaylarına Avea ve Turkcell’in yenilikçi servislerini sizlere sunan, Migros’un iPhone ve diğer mobil uygulamalarını geliştiren ve daha bir çok web 2.0 ve mobil projelere imza atmış profesyonellerden yazılım tasarımı ve geliştirmeyi öğrenme şansı sunuyoruz.

Eğitim Kapsamı

Akademi’nin bu yıl ki teması Bulut Bilişim Uygulamaları. Bulut Bilişim kavramının giderek tüm BT dünyasını etkilemesi ile 6. Java yaz akademisini Bulut Bilişim uygulamalarını kapsayacak şekilde düzenledik.
*Java yazılım geliştirme süreci ve araçları, Java Enterprise (J2EE), konusunda deneyimli profesyonel eğitmen tarafından verilen 2 haftalık ücretsiz Java yazılım eğitimi,
*Başta Amazon EC2 ve Google App Engine olmak üzere bulut bilişim altyapıları üzerinde yazılım geliştirmeye ilişkin workshoplar,
*Katılımcılara, öğrendiklerini deneyimli uzmanların yardımları ile ticari projeler üzerinde çalışarak geliştirme şansı sağlayacak 2 aylık bir staj süresi,
*Başarılı katılımcılara, Inomera ve diğer partner şirketlerde yarı veya tam zamanlı iş fırsatları.

Eğitim Takvimi

  • 27 Haziran – 09 Temmuz 2011 : Java, J2EE Eğitimi, Bulut Bilişim workshopları
  • Temmuz – Ağustos : Inomera Ar-Ge’de (Boğaziçi Üniversitesi, Teknopark) 8 Haftalık Staj

Kimler Katılabilir?

Inomera Java Yazılım Akademisi – Yaz 2011’e katılım ücretsizdir. 2 veya 4 yıllık üniversitelerin 3 ve 4. sınıflarında olan herkes başvurabilir. Aşağıdaki kriterler başvurularınızda size yardımcı olabilir;

  • Bilgisayar Mühendisliği, Bilgisayar Bilimleri, MIS, Bilgisayar Programcılığı ve bilişimle ilgili bölümlerde okuyanlar öncelikli tercihlerimiz olacaktır.
  • Başka mühendislik bölümlerinde okumakta olan adayların, bizi, gerçekten yazılım geliştirmeye ilgisi olduğuna inandırmalılar (örneğin daha önceki projelerinizle)
  • Deneyim aramıyoruz, ama kod yazmayı gerçekten sevdiğinize bizi inandırmalısınız!
  • Bir takımın parçası olabilecek, insan ilişkileri iyi, bilgilerini paylaşmayı önemseyen, kod yazmayı seven ve yazılım geliştirme üzerine kariyer yapmak isteyen herkese açığız.

Şimdi Başvurun!
Başvuru formunu doldurup, CV’nizi, neden bu akademiye katılmak istediğinizi anlattığınız bir yazı ile bize gönderin! Son başvuru tarihi: 20/05/2011
Email: yakup.yuce@inomera.com
Başvuru formu için tıklayın.

Toplam görüntülenme sayısı: 1538

16 Bunu beğendim 🙂
Tweet
Follow me
Tweet to @kaldiroglu
26 Mart 2011

Java Tuzakları – III: İfade mi Cümle mi?

Akin Java, Java Dersleri cümle, expression, ifade, Java, statement

Hiç aşağıdaki durumlardan biriyle karşılaştınız mı?

if(true)
int u = 7;

//ya da

for (int j = 0; j < 10; j++) int k = j; //ya da if(true) int z = 7; //ya da do int r = 7; while(true);

okumaya devam ...

Toplam görüntülenme sayısı: 1027

24 Bunu beğendim :)
Tweet
Follow me
Tweet to @kaldiroglu
«< 59 60 61 62 63 >»

Günlüğüme Hoşgeldiniz

Bu günlükte, Yazılım Mühendisliği, Bilgi Teknolojileri, Java, kişisel gelişim ve zaman zaman da diğer konulardaki düşüncelerimi sizlerle paylaşacağım. Umarım beğenir ve hoşça vakit geçirirsiniz.

Her türlü düşüncenizi, yorum olsun, beğeni ya da eleştiri olsun, bana iletmenizi rica ediyorum sizden. Ayrıca bana akin@javaturk.org adresinden ya da Twitter'dan ulaşabilirsiniz. Videolarıma da buradan ulaşabilirsiniz.

Teşekkür ederim.

Akın Kaldıroğlu

Rahat Okumak İçin

A Decrease font size. A Reset font size. A Increase font size.

Sosyal Medya

  • Twitter
  • Facebook
  • LinkedIn
  • Youtube

Son Twitlerim

→ Takip Etmek İçin

Abone Olun

Emalinizi girerek yazılardan haberdar olun.
Loading

Son Yazılarım

  • Udemy Eğitimlerim Üzerine
  • (başlıksız)
  • Clean Code / Temiz Kod Eğitimi Udemy’de
  • Java ile Nesne-Merkezli Programlamaya Giriş Eğitimi Udemy’de
  • Selsoft Video Eğitimleri
  • Spring ile Kurumsal Yazılım Geliştirme
  • Corona Günlerinde Design Patterns
  • Corona Günlerinde Java
  • JDK 10 ve “var” Özelliği
  • Onur Özcan
  • Analist ve İş Bilgisi
  • Farklı Dillerin Bakış Açısıyla Nesne-Merkezli Programlama
  • Java Nedir?
  • Bilgi Teknolojilerinde Yetenek Yönetimi – II: Tanımlar ve Eleştiriler – I
  • Alelade Hikayeler – II: Bir Başka Performans Problemi

Popüler Yazılar ve Sayfalar

  • Java’ya Nasıl Başlarım? Java’yı Nasıl Öğrenirim? – I
  • Nasıl Yazılımcı Olalım? – II: Hangi Bölümü Okuyalım?
  • Oracle’ın Java SE Sertifikaları: OCA, OCP ve OCM
  • Java Kurulumu ve İlk Programımız
  • İş Analisti İş Tanımı
  • Java Tutorial ya da Kendi Kendine Java Öğren
  • Nasıl Yazılımcı Olalım? – I: Üniversiteli mi Alaylı mı?
  • Tasarım Kalıpları
  • Java’ya Nasıl Başlarım? Java’yı Nasıl Öğrenirim?
  • UML Nedir?

Yazı Kategorileri

Yazı Takvimi

Haziran 2025
P S Ç P C C P
 1
2345678
9101112131415
16171819202122
23242526272829
30  
« May    

Yazı Arşivi

Blogroll

  • Binnur Kurt'un Günlüğü
  • Ender'in Java Blogu
  • Erdem Seherler
  • Kızımın Günlüğü
  • Kurumsal Java
  • Levent Karagöl
  • Levent'in Java Blogu
  • Mert Can Akkan’s java tips,options, news…
  • Yaşar Safkan
  • Yasin Saygılı
  • Yazı Dünyası

Yazı Etiketleri

analiz Bilmek C Desen design pattern EJB Eğitim Fortran Hibernate Java Java'ya nasil baslarim Java dersleri Java EE Java Persistence API Java SE Java Sertifika Java Öğren Java öğreniyorum Java öğrenmek JPA Kalıp Kurumsal Java nesne nesne-merkezli No Silver Bullet object object-oriented Oracle Java Certifications pattern performans programlama programlama dilleri programlama nedir sertifika singleton tasarım tasarım deseni tasarım desenleri tasarım şablonu yazılım yazılım geliştirme Yazılım Mühendisliği yazılımın doğası yazılımın zorlukları Şablon

↑

© Java Günlüğüm 2025
Powered by WordPress • Themify WordPress Themes
 

Yorumlar Yükleniyor...