Veri Bilimi Bülteni — 24

Her cuma yayın­ladığım ‘Veri Bil­imi Bül­teni’ ile son 1 haf­tada veri ve veri bil­imi konusuyla ilgili okuduk­larım­dan dikka­timi çeken­leri paylaşıyorum. İyi Oku­malar. Machine learning konusunda bir Google mühendisinin eğitmen olarak görev aldığı bir online kurs - Deep Learning — Taking machine learning to the next level Paylaşacağım bu blog yazısı veri analizi konusunda çalışıyorum diyenlerin dikkat etmesi gereken bir kaç maddeyi listelemiş Devamını Oku […]

29 Ocak 2016

Posted In: Linux Gezegeni'nde Gözüken Yazılar, Veri Bilimi Bülteni

Libreoffice Çalışmalarım 3

Herkese merhaba,
"LibreOffice Çalışmalarım 2" yazımdan sonra Akademik Bilişim'e kadar hedefimde 2 iyileştirme daha tamamlamak vardı. Bugün ikinci yamamın da kabul edildiğinin mailini alınca, sizlerle bu iyileştirmeleri paylaşmak istedim.

Bunlardan ilki, arayüzden aktif edilebilen "kullanıcı bilgi toplayıcı" seçeneğini konsolda da bir çevresel değişken ile aktif edebilme özelliğiydi.

(Tools->Options->Advenced-> Expert Configuration ->CollectUsageInformation true/false

Konsolda "export LO_COLLECT_USAGE=1" diye çevresel değişken tanımlandığında bilgi toplayıcı seçeneği artık aktif oluyor. (yama linki)

Bir diğer iyileştirme de  kabul edilen bu yamam ile ilgiliydi. Önceki yamada "kullanıcı bilgi toplayıcı" seçeneği aktif olduğunda bilgiler "usage.txt" dosyasına yazılıyordu. Şimdi dosya içeriğini .csv biçimine çevirdim ve tüm dosyaları yeni oluşturulan usage dizini içinde topladım. Oluşturulan dosya isimleri sistem zamanını içeriyor. (yama linki)

Örnek: $cat usage-2016-01-28T00_46_09.csv

Document Type,Command,Count
StartModule;.uno:OptionsTreeDialog;1
TextDocument;.uno:Bold(KeyModifier);2
TextDocument;.uno:CharBackgroundExt(BackColor);1
TextDocument;.uno:Italic(KeyModifier);1
TextDocument;.uno:Save(KeyModifier);1
TextDocument;.uno:SelectAll;1
TextDocument;.uno:Strikeout(KeyModifier);1
Akademik Bilişim kurslarından, LibreOffice Geliştirme Atölyesi'nde dolu dolu 4 gün geçireceğiz. Umarım daha güzel haberler veririm :)


28 Ocak 2016

Posted In: ab, bug, dump usage, env, Gezegen, hunting, libreoffice

Packathon Nasıl Geçti?

Packathon 23 Ocak'ta Bahçeşehir Üniversitesi'nde gerçekleşti. Biz de Kripton'dan kalabalık bir ekiple oradaydık :)

Etkinlik süresince takım olarak ya da tek kişi herkes ortaya bir ürün koymaya çalıştı. Gün sonunda kısaca bu ürünler tanıtıldı ve oylama yapıldı. İlk üçe giren takımlar aşırılı hediyeler kazandı. (bknz)

Çanakkale ekibi olarak biz de projelerimiz için, aramızda paylaştırdığımız  görevleri bitirmeye çalıştık. Fotoğraftaki arkadaşlarla çalışıp ortaya birşeyler koymaya çalışmanın keyfi çok çok büyük. Uzun bir süreçten bahsetmiyorum belki, birkaç saat sadece ama benim için birsürü şey öğrendiğim, bolca eğlendiğim bir gün oldu.  
Etkinlikten sonra sohbeti pek güzel arkadaşlarla vakit geçirmek de ayrı güzeldi. Kayıtlara aşırı güzel bir gün olarak geçsin. Emeği geçen herkese teşekkür ederim, devamını bekleriz :) 

25 Ocak 2016

Posted In: etkinlik, istanbul, packathon

Veri Bilimi Bülteni — 22

Her cuma yayın­ladığım ‘Veri Bil­imi Bül­teni’ ile son 1 haf­tada veri ve veri bil­imi konusuyla ilgili okuduk­larım­dan dikka­timi çeken­leri paylaşıyorum. İyi Oku­malar. Veri bilimi konusunda farklı başlıkları altında onlarca ipython notebook bulunduran bir depo - data-science-ipython-notebooks 7 Steps to Understanding Deep Learning Veri görselleştirme araçlarını güzel bir şekilde listeleyen bir site — Data Visualization Tools & Books End-to-End Devamını Oku […]

15 Ocak 2016

Posted In: Linux Gezegeni'nde Gözüken Yazılar, Veri Bilimi Bülteni

Nasıl daha iyi hata raporu hazırlayabilirsiniz?

Bir özgür yazılımı kullanıyorsunuz, geliştiricisi onu size özgürce kullanma, dağıtma, değiştirip dağıtma haklarını vermiş ama yolunda gitmeyen bir şeyler var. Yazılım böyle bir şey zaten; mutlaka daha iyisi, daha az hatalısı yazılabilir. Belki bir hatayla karşılaşmadınız da yazılımda şu da olsa dediğiniz bir şey var. Bu durumda başka bir yazılımı kullanmayı deneyebileceğiniz gibi kullandığınız yazılımın hatasının giderilmesine veya ihtiyacınız olan özelliğin eklenmesine yardımcı olabilirsiniz. Özgür yazılım projelerinin çoğunun birer hata takip sistemi oluyor, olmayanların geliştirici listeleri var, o da yoksa geliştiricisine doğrudan yazabilirsiniz. Bunlardan birine bir hata kaydı göndermek sizin çok az zamanınızı alacak ama karşılığında istediğinize daha yakın bir programı kullanabileceksiniz.

Geliştiriciler de sizin gibi insanlar olduklarından ne kadar iyi hata raporlarsanız hatanın düzeltilme süresini o kadar kısaltırsınız. Öncelikle hata raporlamanın geliştiriciler tarafından memnuniyetle karşılanacağını aklımızda tutalım. Hata raporunu alan geliştirici yazdığı yazılımın birileri tarafından kullanıldığını ve geliştirilmesi için istekte bulunulduğunu görmekten memnun olacaktır. Şimdi birlikte hata raporunu nasıl daha iyi hale getirebileceğimize bakalım.

Gerçekten bir hata var mı?

İlk bakışta size hata gibi görünen şey bir özellik olabilir ;) ya da belki siz ilk denemenizde istediğiniz şeyi yaptıramadınız programa. Kullandığınız program ne kadar çok iş yapıyorsa o kadar çok menüsü, ayar dosyası olacaktır, onların arasında istediğiniz şeyi bir bakışta görememiş olabilirsiniz. Kullandığınız programın varsa wiki sayfasına, kullanıcı listesi yazışmalarına, yardım dosyalarına bakmak bazen yapamadığınız/yaptıramadığınız şeyin kolay bir yolunu bulmanıza yardımcı olabilir. 'Şu işlem nasıl yapılıyor' şeklindeki ifadeler bir hata kaydı olarak kabul edilmeyecek ve istediğiniz sonuca ulaşamayacaksınız.

Sisteminiz güncel mi?

Yazılımlar çoğunlukla yaşayan birer varlık gibi gelişim halindedirler. Sizin kullandığınız sürümde sorunlu olan bir durum yazılımın son sürümünde güncellenmiş olabilir. Veya sorun yazılımdan değil de işletim sisteminden kaynaklanıyor olabilir. Bu güncellemeleri yaptıktan sonra sorun hala devam ediyorsa bir defa da yazılımın web adresine bakarak oradaki son sürümün size işletim sisteminiz tarafından sağlanan sürüm olup olmadığını kontrol etmek iyi olabilir. Uzun dönem desteği  (LTS) sunan dağıtımların yazılımların sürümlerinde radikal değişiklikleri dağıtma dahil ettiğini bilerek kullanıyor olduğunuzdan karşılaştığınız hatayı yazılımın geliştiricilerin değil de dağıtıma raporlamanız gerekebilir.

Her durumda yazılımlarınızı güncel tutmak iyi bir fikir olacaktır.

Hata kullandığınız yazılımdan mı kaynaklanıyor?

Örneğin ayağa kaldırmaya çalıştığınız sunucu servisine dışarıdan bağlanmaya çalışanlara engel olan olan bir güvenlik duvarı kuralınız olabilir. Kullanıcı izinleriniz o programı çalıştırmanıza yetmiyor olabilir. Bir programı kullanarak yazıcıdan çıktı alamıyorsanız denemeniz gereken şeyler şunlar olabilir: a) Bilgisayarınızdaki başka bir programla o yazıcıdan çıktı alabiliyor musunuz? b) (eğer varsa) başka bir yazıcıyla da aynı sorunu yaşıyor musunuz? c) (eğer varsa) aynı yazılımın başka bir işletim sistemindeki sürümüyle aynı sorunu yaşıyor musunuz? Bütün bu sorulara yanıtınız evetse (ya da deneyemiyorsanız) onu raporlamalısınız.

Hata raporlarken neler dikkat etmek gerekir?


Unutmayın hatanın düzeltilmesini isteyen sizsiniz. Ne kadar iyi bir hata raporu gönderirseniz onun düzeltilmesi olasılığı o kadar yüksek olur. Şimdi basit ama faydalı birkaç noktaya değinelim.

  • Hatayı doğru kanaldan bildirin

Önce hatasını bildirmek istediğiniz projenin bir hata takip sistemi var mı diye kontrol etmek en doğrusu olacaktır. Eğer projenin bir bugzilla, redmine veya benzeri bir hata takip sistemi varsa burasını kullanın. Bazı projeler bu işlem için e-posta listesi kullanıyor olabilir. Bu projenin web sayfasında belirtilmişse elbette buraya yazmalısınız. Eğer projenin böyle bir kanalı yoksa geliştiricisine eposta gönderebilirsiniz. Uzun zamandır, yıllardır, yeni sürüm çıkarmamış bir projeye bir hata raporlandığında (hatta bir çeviri dosyası gönderildiğinde bile) projenin canlandığını görmek mutluluk verici bir şey olacaktır.

  • Önceden girilmiş hataları tekrarlamayın

İster bir hata takip sistemine, isterse eposta listesine yazacak olun öncesinde bir arama yapmak çok yerinde bir hareket olacaktır. Eğer karşılaştığınız hata daha önce raporlanmışsa duruma göre kendinizi hatayı takip edenler listesine ekleyebilirsiniz. Hata raporu yazılımın eski bir sürümüne aitse ve siz yeni sürümde de karşılaşıyorsanız hatayı tekrarlayabildiğinizi yorum olarak girmek de faydalı olacaktır. Kesinlikle mevcut bir hata raporunu tekrarlayan yeni bir kayıt açmayın.

  • Hata bildirim kurallarına uyun

Eğer bir hata takip sistemi varsa yazılımın uygun bileşenine gönderin hata raporunuzu. Geliştiriciler hatalar arasından seçsin diye beklemeyin. Hatanın düzeltilmesini isteyenin siz olduğunuzu aklınızdan çıkarmayın. Örneğin; kullandığınız yazılımın Türkçeye özgü karakterlerle ilgili bir sorunu varsa geliştiricisi muhtemelen bundan hiç haberdar olmadan ömrünü geçirebilir. Siz hata raporunu doğru yapabilirseniz işinizi görecek bir yazılımı kullanabiliyor olursunuz.

  • Gerektiği kadar ayrıntı verin

Bir hatayı raporlarken en öncelikli hedefiniz geliştiricilere nasıl bir hatayla karşılaştığınızı göstermek olmalıdır. Bunun için programı çalıştırdıktan sonra karşılaştığınız hatanın nasıl tekrarlanacağını adım adım yazmalısınız. Burada olayı hikaye etmeyin. Basit ve kısa adımlarla tarif edin. Bir işin birden çok yapılma yöntemi olacağını düşünerek siz nasıl yapıp hatayla karşılaşmışsanız onu yazın. Örneğin "servisi başlattıktan sonra" demek yerine "servisi /etc/init.d/bestserviceever start diyerek başlattıktan sonra" diye yazın. Programın bir kısayolunu kullanarak dosya açıyorsanız bunu belirtin. "Yeni dosyayı CTRL+O ile açmaya çalışırken" diye yazmak geliştiriciyi hatayı bulmaya zorlamaktan iyi olacaktır.

Kullandığınız işletim sisteminin adını ve sürüm numarasını, en son ne zaman güncellediğinizi mutlaka hata raporunda belirtin. Yazılımın sürüm numarası ve paket yöneticisinden mi kaynak koddan mı kurduğunuz bilgisi de çok önemlidir.

  • Gerekmeyen ayrıntıları hata raporuna yazmayın

Bu hatanın sizin için ne kadar önemli olduğunu, onu düzeltmezlerse başka bir yazılımı kullanmak zorunda kalacağınızı filan yazmayın hata raporuna. Hata raporu sadece gerektiği kadar ayrıntı içermeli ama gereken bütün ayrıntıları da içermelidir.

  • Her hata raporunda tek bir hatayı bildirin

Projelerin farklı bileşenlerinin farklı kişiler, hatta ekipler, tarafından geliştirilebildiğini düşünerek karşılaştığınız her hata için ayrı hata kaydı açın. Size çok yakın, ilişkili gibi görünen hataları bile bir raporda sakın birleştirmeyin.

  • Ne bekliyordunuz, ne oluyor?

Hata raporunuzda (eğer imkanı varsa elbette) bir ekran görüntüsü koymak çoğu zaman işleri çok hızlandıracaktır. Bu görüntü yazılımdan ne bekliyordunuz, neyle karşılaşıyorsunuz sorusuna cevap verecek nitelikte olmalıdır. Ekran görüntüsü alırken lütfen ilgisiz veya mahremiyetinizi tehlikeye atacak şeyleri göndermemeye çok dikkat edin. Tarayıcıda açık bulunan diğer sekmeler veya masaüstünüzde bulunan ve kimseye göstermediğiniz dosyaların ekran görüntüsü gibi şeyleri kamuya açık yerlere göndermeyin.

  • Hata raporuna eklediğiniz dosyaları temizleyin

Hatanın anlaşılması ve çözülmesi için eklemeniz gereken dosyalar varsa onları temizleyerek göndermek de dikkat edilmesi gereken konuların başında gelir. 50 sayfalık bir yapılandırma dosyasının tamamını göndermek yerine varsayılan halinden neyi değiştirmişseniz sadece o kısmı göndermek hatanın tekrarlanabilmesine imkan sağlayacaktır. Hatasını raporlayacağınız program sadece bazı dosyaları açarken, kayderderken (veya başka bir biçimde) hataya neden oluyorsa bu tipte bir dosya göndermek elbette iyi olur ama çok sayfalı bir belge diye doktora tezinizi veya yüksek çözünürlüklü bir imaj dosyası diye halka açık olmasını istemeyeceğiniz bir fotografı hata raporuna eklemeyin. İlla çok sayfalı bir metin gerekiyorsa elinizdeki dosyadaki bütün karakterleri x (veya uğurlu harfiniz varsa onunla) ile değiştirip farklı kaydedip onu göndermelisiniz.

Ek olarak göndereceğiniz dosyalardaki başlık bilgilerinin, varsa sürüm değişikliği bilgilerinin de temizlenmesi gerektiğini unutmayın. Bu bilgiler hata raporunuza eklendiğinde artık herkes tarafından kullanılabilir durumda olacaktır. Bir hatayı raporlayacağım derken kendinizi mağdur etmemeye büyük dikkat gösterin.

Açtığınız hata kaydını takip edin

Oluşturduğunuz hata kaydına geliştiriciler bir yorum yazıp sizden bilgi isteyebilirler. Bunlara mutlaka geri dönüş yapmalısınız.

Karşılaştığınız bir hatayı geliştiricilerine raporlayıp düzeltilmesine katkı verdiğiniz için kendinizle gurur duyabilirsiniz artık!

13 Ocak 2016

Posted In: belge, bug, Gezegen, Özgür yazılım

Balıkesir Özgür Yazılım Özgür Toplum Semineri

2 hafta önce +Necdet Yücel , +yeliz taneroğlu  ve +Gülşah Köse  ile birlikte Baubit'in (Balıkesir Üniversitesi Bilişim Topluluğu) misafiri olduk. 

Seminer 2 kısımdı. İlk kısımda Necdet hoca, özgür yazılımın ne olduğunu, özgür olmayan yazılımları kullanarak hangi yolu tercih ettiğimizi, neden  özgür yazılımın kullanılması gerektiği anlattı. Defalarca dinlememe rağmen yine ilk kez dinlediğim zamanki gibi keyifle dinledim bu sunumu :)

 İkinci kısımda da Yeliz ve Gülşah ile birlikte, bu yıl 14 kişilik çalıştığımız ekiple Libreoffice üzerine neler yaptığımızı anlattık. Okul haricinde özgür yazılım üzerine çalışmanın, iş hayatına atıldığında mezun öğrenciye nasıl yararları olacağından bahsettik.

Yeni arkadaşlar edindiğim, keyif aldığım bir seminer oldu. Bizi misafir eden Baubit ekibine teşekkür ederim. Görüşmek üzere..

11 Ocak 2016

Posted In: Baubit, etkinlik, özgür toplum, Özgür yazılım, seminer

LibreOffice Çalışmalarım 2

Herkese merhaba,

14 kişilik bir ekiple LibreOffice ile ilgilendiğimizden ve neler yaptığımdan burada bahsetmiştim. Zaman ilerledikçe üzerine birşeyler ekleyebiliyor olmak mutluluk veriyor :)

O yazımdan sonra LibreOffice için eklediğim iki iyileştirmeyi paylaşayım istiyorum.

İlki açılan bir bileşende "CollectUsageInformation" özelliğinin çıktısının kayıt işleminden sonra bir dosyada tutulmasıydı.  

CollectUsageInformation özelliği bir bileşendeki yapılan tüm uno kullanımlarının bilgisini tutuyor. Bu özelliği aktif etmek için de soffice'i çalıştırıp Tools->Options->Advenced kısmından Expert Configuration bölümündeki "CollectUsageInformation" seçeneği true yapılmalı. Ayrıca "Enable experimental features" kısmı aktif edilmeli. Daha sonra bir bileşende işlemler yapılıp kaydedildikten sonra konsol çıktısı şöyle oluyordu:

Usage information:
StartModule;.uno:OptionsTreeDialog;1
TextDocument;.uno:Bold(KeyModifier);3
TextDocument;.uno:CenterPara(KeyModifier);2
TextDocument;.uno:Italic(KeyModifier);2
TextDocument;.uno:LeftPara(KeyModifier);1
TextDocument;.uno:RightPara(KeyModifier);1
TextDocument;.uno:Save(KeyModifier);1
TextDocument;.uno:SelectAll;1
TextDocument;.uno:Underline(KeyModifier);2
Usage information end

İstenen, bu işin bir dosya oluşturulup çıktının bu dosyada tutulmasıydı. 5.2.0'da artık "~/.config/libreofficedev/4/user/" dizini altında usage.txt dosyasında bu bilgileriniz tutuluyor olacak. Yolladığım yama da burada.

İkincisi de Calc bileşeni üzerindeki “Tools->Options->Application Colors” kısmındaki varsayılan renklerin kullanıcı tarafından daha net farkedilmesi işiydi. "Grid lines" ve "Automatic pages breaks"  renklerini istenilen şekilde değiştirdim. Yama da burada.

Önce:
 Sonra:


Daha güzel haberler vermek dileğiyle.

11 Ocak 2016

Posted In: bug, dump usage, hunting, libreoffice

Stow ile yapılandırma paketleri

GNU/Stow bir süredir bildiğim fakat bir türlü deneme fırsatı bulamadığım çok basit bir paket veya sembolik link yöneticisi. Her ne kadar /usr/local içerisindeki linkleri yönetmek için düşünülmüş olsa da, esnek yapısı nedeniyle kullanım alanlarından biri de ev dizininde bulunan yapılandırma dosyalarını (yani nokta dosyaları ya da dotfiles) yönetmek.

Örneğin ~/dotfiles içerisinde x ve zsh adında iki dizininiz var. Bu dizinler stow için aslında birer paket ve diyelim bu paketlerin yapısı şu şekilde:

~/dotfiles
├── x
│   ├── .i3
│   │   └── config
│   ├── .Xdefaults
│   ├── .xsession
│   └── ...
└── zsh
    ├── .zlogin -> .zprezto/runcoms/zlogin
    ├── .zlogout -> .zprezto/runcoms/zlogout
    ├── .zprezto
    │   └── ...
    ├── .zpreztorc -> .zprezto/runcoms/zpreztorc
    ├── .zprofile -> .zprezto/runcoms/zprofile
    ├── .zshenv -> .zprezto/runcoms/zshenv
    └── .zshrc -> .zprezto/runcoms/zshrc

Eğer kullandığınız ve herhangi bir x ortamı bulunmayan bir sunucuda, sadece zsh ayarlarınızı kullanmak isterseniz stow zsh dediğinizde, stow sizin için sadece zsh dizini altında bulunan dosyalar ve dizinlerin ev dizininde yer alan gerekli linklerini oluşturacaktır. Bu şekilde yapılandırma dosyalarınızı paketlere bölerek, istediğiniz yapılandırmayı istediğiniz makinada rahatça kullanmanızı sağlıyor.

Bir başka örnek kullandığım yapılandırma dosyalarım verilebilir. gitin sağladığı dağıtık model ile her zaman tüm makineler arası senkronize olan bu dosyalar, stow ile de sadece gerekli makinede gerekli uygulamaları yapılandırmak için kullanılabiliyor.

8 Ocak 2016

Posted In: Gezegen

LibreOffice Online için hata avcılığı

Geçen hafta düzenlediğimiz LibreOffice Android görüntüleyici için hata avcılığı etkinliğinde mevcut hata kaydı sayısını ikiye katladıktan sonra şimdi de henüz geliştirme aşamasında olan LibreOffice Online için 10 Ocak tarihinde benzer bir etkinlik düzenleyelim istiyoruz.


LibreOffice Online sunucu tarafında LibreOffice çalıştırmayı ve tarayıcı ile ona bağlanarak kullanmayı hedefleyen bir ürün. İsteyen burada tarif edildiği gibi sunucu sürümünü kurup deneyebilir. Android için bir apk dosyası hazırlamış olmamıza rağmen tanımadığımız neredeyse kimse hata avcılığına katılmadığı için sunucu sürümünü denemeniz için oldukça uzun sayılabilecek adımları takip etmenizi beklemeyeceğiz. Bu etkinlik için bir sunucu kurup denemek isteyenlere birer hesap açacağız.

LibreOffice'in bu heyecan verici ürününü deneyerek karşılaştığınız hataları ve iyileştirme isteklerinizi bugzilla'ya girmek isterseniz bana eposta göndermeniz yeterli olacak.

2 Ocak 2016

Posted In: bug hunting, etkinlik, Gezegen, libreoffice

AB 16 Temiz Kod Kursu

Merhabalar

Bu yıl Sadık Çetin ile beraber, 30 Ocak – 2 Şubat arasında Aydın’da düzenlenecek Akademik Bilişim konferans öncesi kurslar kapsamında Temiz Kod kursu vereceğiz. Kurs tamamen ücretsiz olup herkese açıktır. Katılımcılar dilerlerse KYK yurtlarında da konaklayabilirler. Kurs genel olarak clean code, refactoring ve test driven development konularını içermektedir.

Kayıt için: https://kayit.ab.org.tr

Kurs hakkında detaylı bilgiyi yazının devamında bulabilirsiniz.

Kurs Hakkında

Bir yazılımın bakımını yapmak geliştirmekten daha zordur. Kod altyapısının temiz olması ürünün bakımını kolaylaştırır. Bu açıdan temiz kod akımı yazılımda oldukça önemli ve popüler bir hale gelmiştir.

Temiz kod üretebilmek ve yeniden yapılandırmak (refactoring) için gerekli kurallar ve teknikler Java programlama dili ve araçları kullanılarak uygulamalı olarak anlatılacaktır.

Katılımcılar İçin Ön Şartlar

  • Temel düzeyde nesne yönelimli programlama (OOP) bilgisi olan

  • Okuduğunu anlayacak düzeyde İngilizce bilgisi olan

  • Temiz kod ve yeniden yapılandırma (refactoring) gibi kavramlara meraklı

  • Herhangi bir nesne yönelimli bir dil ile proje geliştiren,

  • Tercihen Java programlama diline hakim kişiler hedeflenmiştir.

Katılımcılardan İstenenler

  • Dizüstü bilgisayarlarının yanında getirmeleri,

  • Sistemlerine JDK 8 (Java Development Kit) ve Eclipse for JavaEE (Mars) kurmaları gerekmektedir, (Dileyenler IntellijIdea’nın topluluk versiyonunu kullanabilirler.)

Kontenjan

Kontenjan 16 kişi ile sınırlıdır.

Konular

1. Gün

  • Temiz kod nedir?
  • Kod Konvansiyonu (Code Convention)
  • İsimlendirme
  • Fonksiyonlar / Metodlar
  • Yorum Satırları
  • Kod Stili
  • Nesneler ve Veri Yapıları

2. Gün

  • Exception / Error Handling
  • Sınıflar
  • Üçüncü parti bağımlılıklar
  • Yeniden yapılandırma (Refactoring)
  • Temel yeniden yapılandırma teknikleri
  • Eclipse ile yeniden yapılandırma

3. Gün

  • Testler ve JUnit
  • Temiz Testler
  • Test Güdümlü Geliştirme
  • Örnek Uygulama: Bowling Oyunu
  • Test prensipleri (FIRST)
  • Örnek Uygulama: Video Store
  • Testlerin temizlenmesi
  • Ürün kodunun temizlenmesi

4. Gün

  • Kodu gözden geçirme (Code Review)
  • Sistemler
  • Temiz Mimari
  • Eşli Programlama (Pair Programming)
  • Eşli Programlama Uygulaması: Roma Rakamları, Tenis Oyunu

2 Ocak 2016

Twitter Auto Publish Powered By : XYZScripts.com