SlideShare ist ein Scribd-Unternehmen logo
1 von 65
Downloaden Sie, um offline zu lesen
Özcan Acar © 2010   Kurumsal Java Akademisi.com
Nasıl Uzman Yazılımcı
       Olunur?

           Özcan Acar
          acar@unitedinter.net
      http://www.ozcanacar.com
     http://www.kurumsaljava.com

                                         K          JK
                                                     K          J
                                                                J
                        Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                                    Özcan urumsal
                                               © 2009    urumsal ava.com
                                                         Akademisi.com
Özcan Acar Hakkında
 1974 Đzmir doğumlu
 Bilgisayar Mühendisi
 Sun Certified Enterprise Architect (SCEA 5)
 Sun Java Champion
 KurumsalJava.com ve JugTR.org kurucusu




                                          K          JK
                                                      K          J
                                                                 J
                         Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                                     Özcan urumsal
                                                © 2009    urumsal ava.com
                                                          Akademisi.com
Özcan Acar Đletişim

http://www.twitter.com/oezcanacar
http://www.friendfeed.com/oezcanacar
acar@unitedinter.net




                                        K          JK
                                                    K          J
                                                               J
                       Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                                   Özcan urumsal
                                              © 2009    urumsal ava.com
                                                        Akademisi.com
Özcan Acar Hakkında




                            K          JK
                                        K          J
                                                   J
           Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                       Özcan urumsal
                                  © 2009    urumsal ava.com
                                            Akademisi.com
Java Tasarım Şablonları ve Yazılım Mimarileri
                     Tasarım şablonu nedir?
                     Interface / Abstract sınıf nedir?
                     Oluşturucu Tasarım Şablonları
                              Factory, Abstract Factory,
                              Builder, Prototype,
                              Singleton
                     Yapısal Tasarım Şablonları
                              Adapter, Bridge, Facade,
                              Decorator, Composite,
                              Flyweight, Proxy
                     Davranışsal Tasarım Şablonları
                              Command, Memento,
                              Strategy, Iterator, State,
                              Observer, Visitor
                                              K          JK
                                                          K          J
                                                                     J
                             Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                                         Özcan urumsal
                                                    © 2009    urumsal ava.com
                                                              Akademisi.com
Extreme Programming
        Çevik süreç nedir?
        Çevik manifesto
        Extreme Programming nedir?
        XP değerleri ve prensipleri
        Çevik proje planlaması
        Çevik süreçlerde iletişim
        Çevik tasarım
        Sürekli entegrasyon
        Test güdümlü yazılım
        Yazılım metrikleri



                                  K          JK
                                              K          J
                                                         J
                 Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                             Özcan urumsal
                                        © 2009    urumsal ava.com
                                                  Akademisi.com
www.BilgeProgramci.com




                              K          JK
                                          K          J
                                                     J
             Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                         Özcan urumsal
                                    © 2009    urumsal ava.com
                                              Akademisi.com
Bilge Programcı
nedir?



                          K          JK
                                      K          J
                                                 J
         Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                     Özcan urumsal
                                © 2009    urumsal ava.com
                                          Akademisi.com
Karateci ve
Yazılımcının Ortak
Yönleri Nelerdir?




                                  K          JK
                                              K          J
                                                         J
                 Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                             Özcan urumsal
                                        © 2009    urumsal ava.com
                                                  Akademisi.com
Karate-Do Sporu
Karate-Do‘da kuşaklar
olgunlaşma ve
mükemmelleşmenin
sembolüdür. Bu mükemmellik
sadece Karate-Do
tekniklerinde değil,
büyüklerine sevgi, saygı,
toplum kurallarına uymak ve
sahip çıkmak , hocalara sonsuz
itaat, zayıfları korumak,
hoşgörü, inanç, camiayı
sahiplenme ve tüm manevi
değerler diye devam eder.

                                                  K          JK
                                                              K          J
                                                                         J
                                 Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                                             Özcan urumsal
                                                        © 2009    urumsal ava.com
                                                                  Akademisi.com
Karate-Do Sporu
Karate-Do da kullanılan kuşaklar
hakkındaki bu kısa açıklamadan, Karate-
Do'nun sahip olduğu prensip, pratik ve ve
değer sistemi hakkında fikir sahibi olmak
mümkündür. Her bir üst kuşak öğrencinin
takip ettiği yolda olgunlaşma seviyesinin
göstergesidir. Öğrenci, geldiği seviyenin
ihtiva ettiği prensip, pratik ve değer
sistemini benimseyerek olgunlaşma
sürecinde emin adımlarla ilerler.



                                                  K          JK
                                                              K          J
                                                                         J
                                 Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                                             Özcan urumsal
                                                        © 2009    urumsal ava.com
                                                                  Akademisi.com
K          JK
                             K          J
                                        J
Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
            Özcan urumsal
                       © 2009    urumsal ava.com
                                 Akademisi.com
Karate-Do‘dan yola çıkarak Bilge
 Programcı için bir değer sistemi ve
uzmanlaşma metodolojisi formalize
          edebilir miyiz?




                                     K          JK
                                                 K          J
                                                            J
                    Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com
                                Özcan urumsal
                                           © 2009    urumsal ava.com
                                                     Akademisi.com
Bilge Programcılığın Reçetesi
         Değer Sistemi
         Prensipler
         Pratikler
         Olgunlaşma Simgesi




                         Özcan Acar © 2009
                                    © 2009   Kurumsal Java.com
                                             Kurumsal Java.com
Bilge Programcı Kuşakları
Prensip & Pratikler   1. Kuşak: Beyaz
Prensip & Pratikler   2. Kuşak: Sarı
Prensip & Pratikler   3. Kuşak: Turuncu
Prensip & Pratikler   4. Kuşak: Yeşil            BP Değer Sistemi
Prensip & Pratikler   5. Kuşak: Mavi
Prensip & Pratikler   6. Kuşak: Kahverengi
Prensip & Pratikler   7. Kuşak: Siyah



                                             Özcan Acar © 2009
                                                        © 2009   Kurumsal Java.com
                                                                 Kurumsal Java.com
Bilge Programcı Bilekliği




                  Özcan Acar © 2009
                             © 2009   Kurumsal Java.com
                                      Kurumsal Java.com
Beyaz Kuşak
Prensipler
  1. Kendi kendini yetiştirme prensibi
  2. Kırık cam prensibi
  3. DRY prensibi


Pratikler
  1. Đzci kuralı
  2. Kodun ifade gücünü artırmak
  3. Her gün tefekkür etmek


                                         Özcan Acar © 2009
                                                    © 2009   Kurumsal Java.com
                                                             Kurumsal Java.com
30 gün sonra…

   Beyaz Kuşak

    Sarı Kuşak
         Özcan Acar © 2009
                    © 2009   Kurumsal Java.com
                             Kurumsal Java.com
Sarı Kuşak
Prensipler
  1.   KISS prensibi
  2.   Yazılım araçlarına hakim olma prensibi
  3.   Nesneye yönelik programlama
  4.   Yazılımda test konseptlerinden haberdar olmak
Pratikler
  1.   Interface ve Abstract sınıfları tasarımda kullanmak
  2.   JUnit Testleri oluşturmak
  3.   Kalıtım yerine kompozisyon kullanmak
  4.   Kitap okumak, kitap okumak, kitap okumak
  5.   Kodu gözden geçirmek
                                           Özcan Acar © 2009
                                                      © 2009   Kurumsal Java.com
                                                               Kurumsal Java.com
Kitaplar




Özcan Acar © 2009
           © 2009   Kurumsal Java.com
                    Kurumsal Java.com
30 gün sonra…

    Sarı Kuşak


   Turuncu Kuşak
          Özcan Acar © 2009
                     © 2009   Kurumsal Java.com
                              Kurumsal Java.com
Turuncu Kuşak
Prensipler
  1. Arayüz ayırma prensibi
  2. Bağımlılıkların tersine çevrilmesi prensibi
  3. Liskov'un yerine geçme prensibi
Pratikler
  1.   Sektörün öncülerini takip etmek
  2.   Yazılımla ilgili konferans ve seminerlere katılmak
  3.   Versiyon kontrol sistemi kullanmak
  4.   Test güdümlü yazılım yapmak
  5.   Bir logging framewörkü kullanmak

                                            Özcan Acar © 2009
                                                       © 2009   Kurumsal Java.com
                                                                Kurumsal Java.com
Arayüz Ayırma Prensibi
Interface Segregation Principle (ISP)




                         Özcan Acar © 2009
                                    © 2009   Kurumsal Java.com
                                             Kurumsal Java.com
Arayüz Ayırma Prensibi
Interface Segregation Principle (ISP)

public class RMIConnector implements Connector
{

      public void commit()
      {
             throw new RuntimeException("not implemented");
      }

      public void rollback()
      {
             throw new RuntimeException("not implemented");
      }
}



                                          Özcan Acar © 2009
                                                     © 2009   Kurumsal Java.com
                                                              Kurumsal Java.com
Arayüz Ayırma Prensibi
Interface Segregation Principle (ISP)




                         Özcan Acar © 2009
                                    © 2009   Kurumsal Java.com
                                             Kurumsal Java.com
Bağımlılıkların Tersine Çevrilmesi Prensibi
  Dependency Inversion Principle (DIP)




                             Özcan Acar © 2009
                                        © 2009   Kurumsal Java.com
                                                 Kurumsal Java.com
Bağımlılıkların Tersine Çevrilmesi Prensibi
  Dependency Inversion Principle (DIP)




                             Özcan Acar © 2009
                                        © 2009   Kurumsal Java.com
                                                 Kurumsal Java.com
Liskov Yerine Geçme Prensibi
Liskov Substitution Principle (LSP)
Alt sınıflardan oluşturulan nesneler üst sınıfların
nesneleriyle yer değiştirdiklerinde aynı davranışı göstermek
zorundadırlar.




                                            Özcan Acar © 2009
                                                       © 2009   Kurumsal Java.com
                                                                Kurumsal Java.com
Liskov Yerine Geçme Prensibi
Liskov Substitution Principle (LSP)

 public void print(A a)
 {
        if(a instanceof B)
        {
               ((B)a).printB();
        }
        else if(a instanceof C)
        {
               ((C)a).printC();
        }
 }




                                  Özcan Acar © 2009
                                             © 2009   Kurumsal Java.com
                                                      Kurumsal Java.com
Turuncu Kuşak
Prensipler
  1. Arayüz ayırma prensibi
  2. Bağımlılıkların tersine çevrilmesi prensibi
  3. Liskov'un yerine geçme prensibi
Pratikler
  1.   Sektörün öncülerini takip etmek
  2.   Yazılımla ilgili konferans ve seminerlere katılmak
  3.   Versiyon kontrol sistemi kullanmak
  4.   Test güdümlü yazılım yapmak
  5.   Bir logging framewörkü kullanmak

                                            Özcan Acar © 2009
                                                       © 2009   Kurumsal Java.com
                                                                Kurumsal Java.com
60 gün sonra…

    Turuncu Kuşak


    Yeşil Kuşak
          Özcan Acar © 2009
                     © 2009   Kurumsal Java.com
                              Kurumsal Java.com
Yeşil Kuşak
Prensipler
  1. Tek sorumluluk prensibi
  2. Açık-Kapalı prensibi
  3. Esnek bağ prensibi
Pratikler
  1.   Basit refactoring işlemleri yapmak
  2.   Tasarım şablonlarını kullanmak
  3.   Sürekli entegre etmek
  4.   MVC framewörklerle haşır, neşir olmak


                                         Özcan Acar © 2009
                                                    © 2009   Kurumsal Java.com
                                                             Kurumsal Java.com
Tek Sorumluk Prensibi
Single Responsibility Principle (SRP)




                         Özcan Acar © 2009
                                    © 2009   Kurumsal Java.com
                                             Kurumsal Java.com
Tek Sorumluk Prensibi
Single Responsibility Principle (SRP)




                         Özcan Acar © 2009
                                    © 2009   Kurumsal Java.com
                                             Kurumsal Java.com
Açık Kapalı Prensibi
   Open Closed Principle (OCP)
Programlar geliştirilmeye açık ama değiştirilmeye kapalı
olmalıdır.




                                           Özcan Acar © 2009
                                                      © 2009   Kurumsal Java.com
                                                               Kurumsal Java.com
Açık Kapalı Prensibi
  Open Closed Principle (OCP)

public void on(Object obj)
{
       if(obj instanceof TV)
       {
              ((TV)obj).tvOn();
       }
       else if(obj instanceof CDPlayer)
       {
              ((CDPlayer)obj).cdOn();
       }
}




                                          Özcan Acar © 2009
                                                     © 2009   Kurumsal Java.com
                                                              Kurumsal Java.com
Açık Kapalı Prensibi
Open Closed Principle (OCP)




                   Özcan Acar © 2009
                              © 2009   Kurumsal Java.com
                                       Kurumsal Java.com
Açık Kapalı Prensibi
  Open Closed Principle (OCP)
private RemoteControlInterface remote;

public RemoteControl(RemoteControlInterface _remote)
{
       this.remote = _remote;
}

public void on()
{
       remote.on();
}

public void off()
{
       remote.off();
}

                                         Özcan Acar © 2009
                                                    © 2009   Kurumsal Java.com
                                                             Kurumsal Java.com
Stratejik Kapama
Eğer kapama tam sağlanamıyorsa, kapamanın stratejik olarak
implemente edilmesi gerekir.
Programcı implementasyon öncesi meydana gelebilecek
değişiklikleri kestirerek, implemente ettiği metotların kapalılık
oranını yükseltmelidir. Bu tecrübe gerektiren stratejik bir
karardır.
Programcı her zaman ne gibi değişikliklerin olabileceğini
kestiremeyebilir. Bu durumda konu hakkında araştırma
yaparak, oluşabilecek değişiklikleri tespit edebilir. Eğer
olabilecek değişikliklerin tespiti mümkün değilse, beklenen
değişiklikler meydana gelene kadar beklenir ve
implementasyon yeni değişiklikleri de yansıtacak şekilde OCP
uyumlu hale getirilir.
                                              Özcan Acar © 2009
                                                         © 2009   Kurumsal Java.com
                                                                  Kurumsal Java.com
Esnek Bağ
Loose Coupling (LC)




               Özcan Acar © 2009
                          © 2009   Kurumsal Java.com
                                   Kurumsal Java.com
Esnek Bağ
Loose Coupling (LC)




               Özcan Acar © 2009
                          © 2009   Kurumsal Java.com
                                   Kurumsal Java.com
Yeşil Kuşak
Prensipler
  1. Tek sorumluluk prensibi
  2. Açık-Kapalı prensibi
  3. Esnek bağ prensibi
Pratikler
  1.   Basit refactoring işlemleri yapmak
  2.   Tasarım şablonlarını kullanmak
  3.   Sürekli entegre etmek
  4.   MVC framewörklerle hasır, neşir olmak


                                         Özcan Acar © 2009
                                                    © 2009   Kurumsal Java.com
                                                             Kurumsal Java.com
60 gün sonra…

    Yeşil Kuşak


    Mavi Kuşak
         Özcan Acar © 2009
                    © 2009   Kurumsal Java.com
                             Kurumsal Java.com
Mavi Kuşak
Prensipler
  1.   Paket bazındakı tasarım prensipleri
  2.   Komponent tabanlı yazılım prensibi
  3.   Kod konvensiyonları
  4.   Kök neden analizi
Pratikler
  1.   Code coverage (kod kapsama alanı) analizi yapmak
  2.   Bilgiyi paylaşmak
  3.   Bugtracking ve wiki kullanmak
  4.   Katmanlı mimarileri oluşturmak
  5.   Bulunan her bug için bir Unit test oluşturmak
                                             Özcan Acar © 2009
                                                        © 2009   Kurumsal Java.com
                                                                 Kurumsal Java.com
Paket Bazında Tasarım Prensipleri
 • Reuse-Release Equivalence Principle (REP)
 • Common Reuse Principle (CRP)
 • Common Closure Principle (CCP)
 • Acyclic Dependency Principle (ADP)
 • Stable Dependencies Principle (SDP)
 • Stable Abstractions Principle (SAP)



                                  Özcan Acar © 2009
                                             © 2009   Kurumsal Java.com
                                                      Kurumsal Java.com
Tekrar Kullanım ve Sürüm Eşitliği
Reuse-Release Equivalence Principle (REP)




                            Özcan Acar © 2009
                                       © 2009   Kurumsal Java.com
                                                Kurumsal Java.com
Yeniden Ortak Kullanım Prensibi
 Common Reuse Principle (CRP)




                     Özcan Acar © 2009
                                © 2009   Kurumsal Java.com
                                         Kurumsal Java.com
Ortak Kapama Prensibi
Common Closure Principle (CCP)

 Aynı sebepten dolayı değişikliğe uğrayabilecek sınıfların aynı paket
 içinde yer alması gerekir.

 CCP daha önce incelediğimiz, sınıflar için uygulanan Single
 Responsibility (SRP) prensibinin paketler için uygulanan halidir.


 Her paketin değişmek için sadece bir sebebi olmalıdır.


 CCP uygulandığı taktirde sistemin bakılabilirliği artırılır ve test ve yeni
 sürüm için harcanan zaman ve emek azaltılır.



                                                     Özcan Acar © 2009
                                                                © 2009   Kurumsal Java.com
                                                                         Kurumsal Java.com
Çevrimsiz Bağımlılık Prensibi
Acyclic Dependency Principle (ADP)




                       Özcan Acar © 2009
                                  © 2009   Kurumsal Java.com
                                           Kurumsal Java.com
Çevrimsiz Bağımlılık Prensibi
Acyclic Dependency Principle (ADP)




                       Özcan Acar © 2009
                                  © 2009   Kurumsal Java.com
                                           Kurumsal Java.com
Çevrimsiz Bağımlılık Prensibi
Acyclic Dependency Principle (ADP)




                       Özcan Acar © 2009
                                  © 2009   Kurumsal Java.com
                                           Kurumsal Java.com
Mavi Kuşak
Prensipler
  1.   Paket bazındaki tasarım prensipleri
  2.   Komponent tabanlı yazılım prensibi
  3.   Kod konvensiyonları
  4.   Kök neden analizi
Pratikler
  1.   Code coverage (kod kapsama alanı) analizi yapmak
  2.   Bilgiyi paylaşmak
  3.   Bugtracking ve wiki kullanmak
  4.   Katmanlı mimariler oluşturmak
  5.   Bulunan her bug için bir Unit test oluşturmak
                                             Özcan Acar © 2009
                                                        © 2009   Kurumsal Java.com
                                                                 Kurumsal Java.com
90 gün sonra…

    Mavi Kuşak

   Kahregengi Kuşak
           Özcan Acar © 2009
                      © 2009   Kurumsal Java.com
                               Kurumsal Java.com
Kahregengi
Prensipler               Kuşak
  1. Kişiselleştirmeme prensibi
  2. Anlayana kadar sorma prensibi
  3. Kodu kırmama prensibi
Pratikler
  1.   Inversion of Control
  2.   Mockup nesne kullanmak
  3.   Sürüm yönetimi yapmak
  4.   Kompleks refactoring işlemleri yapmak
  5.   Oluşan tüm hataları raporlamak

                                         Özcan Acar © 2009
                                                    © 2009   Kurumsal Java.com
                                                             Kurumsal Java.com
90 gün sonra…

    Kahregengi Kuşak



    1. Dan Siyah
        Kuşak
           Özcan Acar © 2009
                      © 2009   Kurumsal Java.com
                               Kurumsal Java.com
1. Dan Siyah
                             Kuşak
Prensipler
  1.   YAGNI prensibi
  2.   Müşteriye kulak verme prensibi
  3.   Hafif bavulla yola cıkma prensibi
  4.   Tell, don't ask prensibi
Pratikler
  1.   Sertifikasyon
  2.   Çevik süreç kullanmak
  3.   Yeni yazılım dilleri ögrenmek
  4.   Davranış güdümlü yazılım yapmak
  5.   Soft skilleri gelistirmek
                                           Özcan Acar © 2009
                                                      © 2009   Kurumsal Java.com
                                                               Kurumsal Java.com
1. Dan Siyah
                             Kuşak
Soft Skill
  1.   Takım oyunculuğu
  2.   Đletişim becerisi
  3.   Sorumluluk üstlenebilme
  4.   Yönetim kompetansı
  5.   Kreatiflik
  6.   Zor şartlarda çalışabilme




                                   Özcan Acar © 2009
                                              © 2009   Kurumsal Java.com
                                                       Kurumsal Java.com
1 yıl sonra…
    1. Dan Siyah
        Kuşak

    2. Dan Siyah
        Kuşak
          Özcan Acar © 2009
                     © 2009   Kurumsal Java.com
                              Kurumsal Java.com
2. Dan Siyah
                            Kuşak
Prensipler
  1. Kendi prensiplerini geliştirme prensibi


Pratikler
  1. Konferanslara sunucu olarak katılmak
  2. Açık kaynaklı bir projeye katkıda bulunmak
  3. Açık kaynaklı bir proje geliştirmek




                                          Özcan Acar © 2009
                                                     © 2009   Kurumsal Java.com
                                                              Kurumsal Java.com
Bilge Programcı
Prensip & Pratikler   1. Kuşak: Beyaz (30 gün)
Prensip & Pratikler   2. Kuşak: Sarı (30 gün)
Prensip & Pratikler   3. Kuşak: Turuncu (60 gün)
Prensip & Pratikler   4. Kuşak: Yeşil (60 gün)                 Toplam:

Prensip & Pratikler   5. Kuşak: Mavi (90 gün)
                                                               720 iş
                                                               günü
Prensip & Pratikler   6. Kuşak: Kahverengi (90 gün)
Prensip & Pratikler   1. Dan: Siyah
Prensip & Pratikler   2. Dan: Siyah (360 gün)

                                                   Özcan Acar © 2009
                                                              © 2009   Kurumsal Java.com
                                                                       Kurumsal Java.com
Detaylar için bakınız:



BilgeProgramci.com


                              Özcan Acar © 2009   Kurumsal Java.com
Son
Đlginiz için teşekkür ederim.




                       Özcan Acar © 2009   Kurumsal Java.com
Özcan Acar © 2009   Kurumsal Java.com
JugTR.org




       Özcan Acar © 2009   Kurumsal Java.com

Weitere ähnliche Inhalte

Empfohlen

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Empfohlen (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Bilge Programcı - Nasıl uzman yazılımcı olunur?

  • 1. Özcan Acar © 2010 Kurumsal Java Akademisi.com
  • 2. Nasıl Uzman Yazılımcı Olunur? Özcan Acar acar@unitedinter.net http://www.ozcanacar.com http://www.kurumsaljava.com K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 3. Özcan Acar Hakkında 1974 Đzmir doğumlu Bilgisayar Mühendisi Sun Certified Enterprise Architect (SCEA 5) Sun Java Champion KurumsalJava.com ve JugTR.org kurucusu K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 4. Özcan Acar Đletişim http://www.twitter.com/oezcanacar http://www.friendfeed.com/oezcanacar acar@unitedinter.net K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 5. Özcan Acar Hakkında K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 6. Java Tasarım Şablonları ve Yazılım Mimarileri Tasarım şablonu nedir? Interface / Abstract sınıf nedir? Oluşturucu Tasarım Şablonları Factory, Abstract Factory, Builder, Prototype, Singleton Yapısal Tasarım Şablonları Adapter, Bridge, Facade, Decorator, Composite, Flyweight, Proxy Davranışsal Tasarım Şablonları Command, Memento, Strategy, Iterator, State, Observer, Visitor K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 7. Extreme Programming Çevik süreç nedir? Çevik manifesto Extreme Programming nedir? XP değerleri ve prensipleri Çevik proje planlaması Çevik süreçlerde iletişim Çevik tasarım Sürekli entegrasyon Test güdümlü yazılım Yazılım metrikleri K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 8. www.BilgeProgramci.com K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 9. Bilge Programcı nedir? K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 10. Karateci ve Yazılımcının Ortak Yönleri Nelerdir? K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 11. Karate-Do Sporu Karate-Do‘da kuşaklar olgunlaşma ve mükemmelleşmenin sembolüdür. Bu mükemmellik sadece Karate-Do tekniklerinde değil, büyüklerine sevgi, saygı, toplum kurallarına uymak ve sahip çıkmak , hocalara sonsuz itaat, zayıfları korumak, hoşgörü, inanç, camiayı sahiplenme ve tüm manevi değerler diye devam eder. K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 12. Karate-Do Sporu Karate-Do da kullanılan kuşaklar hakkındaki bu kısa açıklamadan, Karate- Do'nun sahip olduğu prensip, pratik ve ve değer sistemi hakkında fikir sahibi olmak mümkündür. Her bir üst kuşak öğrencinin takip ettiği yolda olgunlaşma seviyesinin göstergesidir. Öğrenci, geldiği seviyenin ihtiva ettiği prensip, pratik ve değer sistemini benimseyerek olgunlaşma sürecinde emin adımlarla ilerler. K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 13. K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 14. Karate-Do‘dan yola çıkarak Bilge Programcı için bir değer sistemi ve uzmanlaşma metodolojisi formalize edebilir miyiz? K JK K J J Özcan Acar © 2010 Acar © 2009 avaurumsal ava.com Özcan urumsal © 2009 urumsal ava.com Akademisi.com
  • 15. Bilge Programcılığın Reçetesi Değer Sistemi Prensipler Pratikler Olgunlaşma Simgesi Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 16. Bilge Programcı Kuşakları Prensip & Pratikler 1. Kuşak: Beyaz Prensip & Pratikler 2. Kuşak: Sarı Prensip & Pratikler 3. Kuşak: Turuncu Prensip & Pratikler 4. Kuşak: Yeşil BP Değer Sistemi Prensip & Pratikler 5. Kuşak: Mavi Prensip & Pratikler 6. Kuşak: Kahverengi Prensip & Pratikler 7. Kuşak: Siyah Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 17. Bilge Programcı Bilekliği Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 18. Beyaz Kuşak Prensipler 1. Kendi kendini yetiştirme prensibi 2. Kırık cam prensibi 3. DRY prensibi Pratikler 1. Đzci kuralı 2. Kodun ifade gücünü artırmak 3. Her gün tefekkür etmek Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 19. 30 gün sonra… Beyaz Kuşak Sarı Kuşak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 20. Sarı Kuşak Prensipler 1. KISS prensibi 2. Yazılım araçlarına hakim olma prensibi 3. Nesneye yönelik programlama 4. Yazılımda test konseptlerinden haberdar olmak Pratikler 1. Interface ve Abstract sınıfları tasarımda kullanmak 2. JUnit Testleri oluşturmak 3. Kalıtım yerine kompozisyon kullanmak 4. Kitap okumak, kitap okumak, kitap okumak 5. Kodu gözden geçirmek Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 21. Kitaplar Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 22. 30 gün sonra… Sarı Kuşak Turuncu Kuşak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 23. Turuncu Kuşak Prensipler 1. Arayüz ayırma prensibi 2. Bağımlılıkların tersine çevrilmesi prensibi 3. Liskov'un yerine geçme prensibi Pratikler 1. Sektörün öncülerini takip etmek 2. Yazılımla ilgili konferans ve seminerlere katılmak 3. Versiyon kontrol sistemi kullanmak 4. Test güdümlü yazılım yapmak 5. Bir logging framewörkü kullanmak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 24. Arayüz Ayırma Prensibi Interface Segregation Principle (ISP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 25. Arayüz Ayırma Prensibi Interface Segregation Principle (ISP) public class RMIConnector implements Connector { public void commit() { throw new RuntimeException("not implemented"); } public void rollback() { throw new RuntimeException("not implemented"); } } Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 26. Arayüz Ayırma Prensibi Interface Segregation Principle (ISP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 27. Bağımlılıkların Tersine Çevrilmesi Prensibi Dependency Inversion Principle (DIP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 28. Bağımlılıkların Tersine Çevrilmesi Prensibi Dependency Inversion Principle (DIP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 29. Liskov Yerine Geçme Prensibi Liskov Substitution Principle (LSP) Alt sınıflardan oluşturulan nesneler üst sınıfların nesneleriyle yer değiştirdiklerinde aynı davranışı göstermek zorundadırlar. Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 30. Liskov Yerine Geçme Prensibi Liskov Substitution Principle (LSP) public void print(A a) { if(a instanceof B) { ((B)a).printB(); } else if(a instanceof C) { ((C)a).printC(); } } Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 31. Turuncu Kuşak Prensipler 1. Arayüz ayırma prensibi 2. Bağımlılıkların tersine çevrilmesi prensibi 3. Liskov'un yerine geçme prensibi Pratikler 1. Sektörün öncülerini takip etmek 2. Yazılımla ilgili konferans ve seminerlere katılmak 3. Versiyon kontrol sistemi kullanmak 4. Test güdümlü yazılım yapmak 5. Bir logging framewörkü kullanmak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 32. 60 gün sonra… Turuncu Kuşak Yeşil Kuşak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 33. Yeşil Kuşak Prensipler 1. Tek sorumluluk prensibi 2. Açık-Kapalı prensibi 3. Esnek bağ prensibi Pratikler 1. Basit refactoring işlemleri yapmak 2. Tasarım şablonlarını kullanmak 3. Sürekli entegre etmek 4. MVC framewörklerle haşır, neşir olmak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 34. Tek Sorumluk Prensibi Single Responsibility Principle (SRP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 35. Tek Sorumluk Prensibi Single Responsibility Principle (SRP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 36. Açık Kapalı Prensibi Open Closed Principle (OCP) Programlar geliştirilmeye açık ama değiştirilmeye kapalı olmalıdır. Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 37. Açık Kapalı Prensibi Open Closed Principle (OCP) public void on(Object obj) { if(obj instanceof TV) { ((TV)obj).tvOn(); } else if(obj instanceof CDPlayer) { ((CDPlayer)obj).cdOn(); } } Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 38. Açık Kapalı Prensibi Open Closed Principle (OCP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 39. Açık Kapalı Prensibi Open Closed Principle (OCP) private RemoteControlInterface remote; public RemoteControl(RemoteControlInterface _remote) { this.remote = _remote; } public void on() { remote.on(); } public void off() { remote.off(); } Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 40. Stratejik Kapama Eğer kapama tam sağlanamıyorsa, kapamanın stratejik olarak implemente edilmesi gerekir. Programcı implementasyon öncesi meydana gelebilecek değişiklikleri kestirerek, implemente ettiği metotların kapalılık oranını yükseltmelidir. Bu tecrübe gerektiren stratejik bir karardır. Programcı her zaman ne gibi değişikliklerin olabileceğini kestiremeyebilir. Bu durumda konu hakkında araştırma yaparak, oluşabilecek değişiklikleri tespit edebilir. Eğer olabilecek değişikliklerin tespiti mümkün değilse, beklenen değişiklikler meydana gelene kadar beklenir ve implementasyon yeni değişiklikleri de yansıtacak şekilde OCP uyumlu hale getirilir. Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 41. Esnek Bağ Loose Coupling (LC) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 42. Esnek Bağ Loose Coupling (LC) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 43. Yeşil Kuşak Prensipler 1. Tek sorumluluk prensibi 2. Açık-Kapalı prensibi 3. Esnek bağ prensibi Pratikler 1. Basit refactoring işlemleri yapmak 2. Tasarım şablonlarını kullanmak 3. Sürekli entegre etmek 4. MVC framewörklerle hasır, neşir olmak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 44. 60 gün sonra… Yeşil Kuşak Mavi Kuşak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 45. Mavi Kuşak Prensipler 1. Paket bazındakı tasarım prensipleri 2. Komponent tabanlı yazılım prensibi 3. Kod konvensiyonları 4. Kök neden analizi Pratikler 1. Code coverage (kod kapsama alanı) analizi yapmak 2. Bilgiyi paylaşmak 3. Bugtracking ve wiki kullanmak 4. Katmanlı mimarileri oluşturmak 5. Bulunan her bug için bir Unit test oluşturmak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 46. Paket Bazında Tasarım Prensipleri • Reuse-Release Equivalence Principle (REP) • Common Reuse Principle (CRP) • Common Closure Principle (CCP) • Acyclic Dependency Principle (ADP) • Stable Dependencies Principle (SDP) • Stable Abstractions Principle (SAP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 47. Tekrar Kullanım ve Sürüm Eşitliği Reuse-Release Equivalence Principle (REP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 48. Yeniden Ortak Kullanım Prensibi Common Reuse Principle (CRP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 49. Ortak Kapama Prensibi Common Closure Principle (CCP) Aynı sebepten dolayı değişikliğe uğrayabilecek sınıfların aynı paket içinde yer alması gerekir. CCP daha önce incelediğimiz, sınıflar için uygulanan Single Responsibility (SRP) prensibinin paketler için uygulanan halidir. Her paketin değişmek için sadece bir sebebi olmalıdır. CCP uygulandığı taktirde sistemin bakılabilirliği artırılır ve test ve yeni sürüm için harcanan zaman ve emek azaltılır. Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 50. Çevrimsiz Bağımlılık Prensibi Acyclic Dependency Principle (ADP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 51. Çevrimsiz Bağımlılık Prensibi Acyclic Dependency Principle (ADP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 52. Çevrimsiz Bağımlılık Prensibi Acyclic Dependency Principle (ADP) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 53. Mavi Kuşak Prensipler 1. Paket bazındaki tasarım prensipleri 2. Komponent tabanlı yazılım prensibi 3. Kod konvensiyonları 4. Kök neden analizi Pratikler 1. Code coverage (kod kapsama alanı) analizi yapmak 2. Bilgiyi paylaşmak 3. Bugtracking ve wiki kullanmak 4. Katmanlı mimariler oluşturmak 5. Bulunan her bug için bir Unit test oluşturmak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 54. 90 gün sonra… Mavi Kuşak Kahregengi Kuşak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 55. Kahregengi Prensipler Kuşak 1. Kişiselleştirmeme prensibi 2. Anlayana kadar sorma prensibi 3. Kodu kırmama prensibi Pratikler 1. Inversion of Control 2. Mockup nesne kullanmak 3. Sürüm yönetimi yapmak 4. Kompleks refactoring işlemleri yapmak 5. Oluşan tüm hataları raporlamak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 56. 90 gün sonra… Kahregengi Kuşak 1. Dan Siyah Kuşak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 57. 1. Dan Siyah Kuşak Prensipler 1. YAGNI prensibi 2. Müşteriye kulak verme prensibi 3. Hafif bavulla yola cıkma prensibi 4. Tell, don't ask prensibi Pratikler 1. Sertifikasyon 2. Çevik süreç kullanmak 3. Yeni yazılım dilleri ögrenmek 4. Davranış güdümlü yazılım yapmak 5. Soft skilleri gelistirmek Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 58. 1. Dan Siyah Kuşak Soft Skill 1. Takım oyunculuğu 2. Đletişim becerisi 3. Sorumluluk üstlenebilme 4. Yönetim kompetansı 5. Kreatiflik 6. Zor şartlarda çalışabilme Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 59. 1 yıl sonra… 1. Dan Siyah Kuşak 2. Dan Siyah Kuşak Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 60. 2. Dan Siyah Kuşak Prensipler 1. Kendi prensiplerini geliştirme prensibi Pratikler 1. Konferanslara sunucu olarak katılmak 2. Açık kaynaklı bir projeye katkıda bulunmak 3. Açık kaynaklı bir proje geliştirmek Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 61. Bilge Programcı Prensip & Pratikler 1. Kuşak: Beyaz (30 gün) Prensip & Pratikler 2. Kuşak: Sarı (30 gün) Prensip & Pratikler 3. Kuşak: Turuncu (60 gün) Prensip & Pratikler 4. Kuşak: Yeşil (60 gün) Toplam: Prensip & Pratikler 5. Kuşak: Mavi (90 gün) 720 iş günü Prensip & Pratikler 6. Kuşak: Kahverengi (90 gün) Prensip & Pratikler 1. Dan: Siyah Prensip & Pratikler 2. Dan: Siyah (360 gün) Özcan Acar © 2009 © 2009 Kurumsal Java.com Kurumsal Java.com
  • 62. Detaylar için bakınız: BilgeProgramci.com Özcan Acar © 2009 Kurumsal Java.com
  • 63. Son Đlginiz için teşekkür ederim. Özcan Acar © 2009 Kurumsal Java.com
  • 64. Özcan Acar © 2009 Kurumsal Java.com
  • 65. JugTR.org Özcan Acar © 2009 Kurumsal Java.com