Yazılım
Subversion Eğitim Seti
0Ülkemizde maalesef screencast olayı çok fazla yok. Aslında makale de çok fazla çıkmıyor. Bu açıdan gerçek anlamda emek verilen ve herkese hitap edebilecek her video eğitimi destekliyorum. Bu destek kapsamında sizlere ceviz.net yöneticilerinden Süleyman Demirkeser’in hazırladığı “Subversion sürüm kontrol sistemi” hakkındaki eğitimi tanıtmak istiyorum.
Windows ortamı için hazırlanan bu eğitim şu konulardan oluşuyor:
- 1. Neden Subversion
- 2.a Visual SVN Server Kurulumu 04:31
- 2.b Visual SVN Server ile Reporsitory (Depo) Oluşturmak 06:40
- 2.c Visual SVN Server Yetkilendirme – Kullanıcı İşlemleri – Güvenlik Seviyeleri 09:00
- 3.a Tortoise SVN Kurulumu 02:11
- 3.b Tortoise SVN ile Browse, Checkout, Commit, Update İşlemleri 23:23
- 3.c Geçmişe (History) Dönük İşlemler – Geçmiş (Show Log), Farklar (Diff) Geri alma (Revert) İşlemleri 10:12
- 3.d Projeyi Export İşlemi İle Dışarı Alma 02:31
- 3.e Svn Depo Adresini Değiştirme İşlemi (Relocate) 02:07
- 3.f Offline Depo İle Çalışmak 05:19
- 3.g Conflict (Çakışma) Kavramı ve Çözümleme İşlemi 07:29
- 3.h Tortoise SVN Türkçeleştirme İşlemi 01:50
- 3.h Tortoise SVN Gözardı edilenler (Ignore) Listesi oluşturma 02:39
- 3.i Kayıtlı kullanıcı adı ve şifreyi değiştirmek 01:54
- 4. Dreamviewer ile subversion kullanımı 07:11
- 5. Google Code ile Subversion Projesi Geliştirmek 06:54
Üstelik Süleyman Bey, seti satın aldıktan sonra yeni hazırlayacağı videoları ücretsiz olarak size ulaştırmayı garanti ediyor. Eğitim ücreti ise çok cüzi bir miktar; 10 TL. Eğer sizde svn kurulumunu ve kullanımını öğrenmek istiyorsanız, bu eğitim setini sizlere tavsiye ederim..
http://forum.ceviz.net/duyurular-amp-ilanlar/113053-kod-kaybetmeye-son-subversionsvn-ile-surum-yonetim-sistemi-video-egitimi-cikti.html
RSA Şifreleme Algoritması
2Matematik ve Bilgisayar Bilimleri okuduğumu hissettiren tek ders “Ayrık Matematik” oldu. Sebebi; şu anda dünyada en çok kullanılan ve en güvenli şifreleme algoritması olan RSA’nın matematiksel algoritmasını öğrenmemiz
Hemen bu şifreleme metoduyla ilgili detaylara geçeyim. (daha fazla…)
PHP ile basit SEF yapımı (URL Rewrite)
1Apache bizlere SEF konusunda çok büyük bir nimet sağlıyor. Bunun adı .htaccess
Bu dosya içerisine çeşitli kurallar yazıyorsunuz ve o kurallara göre arama motoru dostu bağlantıları kullanabiliyorsunuz. Ancak bu kural yazma işi can sıkıcı olabiliyor. Zira RegExp (Regular Expression – Koşullu ifadeler) bilmeniz gerekmekte. Ve bazen baya uğraştırıcı olabiliyor. Ben bu konuda daha farklı bir yöntem kullanıyorum. Belki performans açısından direkt olarak kural yazmaya göre daha kötü olabilir ama çok çok büyük bir projede çalışmıyorsanız çok fazla etkileyeceğini düşünmüyorum.
Öncelikle nasıl bir sistem kullandığımdan bahsedeyim, sonrasında bir kaç kod ile örnek göstereyim. Yazının sonunda ise çok basit bir örnek sistemi indirebilirsiniz. (daha fazla…)
Linux’ta Sıkıştırılmış Yedek Oluşturma
2Zayıf C++ bilgimle istenilen dosyayı/klasörü istenilen klasöre yedekleyen bir program yazdım.
Ancak bu program öyle ahım şahım değil. Zaten Linux komut satırını kullanıyor. Linuxta konsola yazdığınız kodu kısmen bu program içerisine yazıyorsunuz. Bunu konsoldan da yapabilirim diyebilirsiniz, ancak isterseniz cronjob ile dilediğiniz zaman programın çalıştırılıp yedek almasını sağlayabilirsiniz. Ben bilgisayar kapanırken veya yeniden başlatılırken yedek almasını sağlamak için yapacağım bunu.
Programın kodları aşırı derece de amele usulü olabilir, kabulümdür. Malum üniversitemizde C++ öğreteceğiz dediler ama for,while ve bir kaç string fonksiyonu dışında hiçbirşey göstermediler. Buna rağmen araştırmacı kişilik olarak işimi görecek bu programı yazmayı başardım
Kodların devamında açıklamalarda bulunacağım. (daha fazla…)
MVC Yapısının Önemi
5Uzun zamandır yazmaya başladığım yazıları sonlandıramıyorum. Öyle taslakta kalıyorlar, bir süre sonra da siliyorum. Umarım bu sefer başladığım yazı yarım kalmaz.
Öncelikle MVC’nin tanımından başlamak gerekiyor sanırsam.
MVC yani Model-View-Controller benim anladığım kadarıyla sitenin kod kısmı ile tasarım kısmının birbirinden ayrılmasını sağlıyor. Emin olun bir yazılımcı için çok büyük kolaylıklar sağlıyor. En büyük özelliği de bir başkasının kodlarınızı incelediğinde basit bir yapıyla karşılaşması. Bu, iş hayatında çok önemli. Bir proje yaparsınız ve bir başka iş arkadaşınız kodlarınızdan hiç birşey anlamadığında hiç hoş olmaz.
Model-view-controller, yazılım mühendisliği‘nde kullanılan bir “mimari desen“dir. Kullanıcıya yüklü miktarda verinin sunulduğu karmaşık uygulamalarda veri ve gösterimin soyutlanması esasına dayanır. Böylece veriler (model) ve kullanıcı arayüzü (view) birbirini etkilemeden düzenlenebilir. Model-view-controller, bunu controller adı verilen ara bileşenle, veri gösterimi ve kullanıcı etkileşiminden, veri erişimi ve iş mantığını çıkarma suretiyle çözmektedir.
Model-view-controller - Vikipedi
MVC kavramını ilk duyduğumda biraz araştırdım ve ne gerek var gibi bir cümle kurdum. Hem tasarımımı yaparım hem de kodlarımı yazarım aynı sayfada dedim. Kaldı ki bu dediğimde kendi açımdan çok zor değil. Gayet rahat bir şekilde yapabiliyorum. Ancak MVC ile ilk proje geliştirdiğimde gerçekten ne kadar rahat olduğunu gördüm.
Biraz detaya gireyim; MVC denilen kavram üç temel olaydan oluşuyor.
Model: Veritabanı ile bağlantı işlemleri burada yapılıyor.
View: Sitenin tasarımı controllerdan alınan verilerle view sayfalarında yapılıyor.
Controller: Bir nevi model ile view arasında köprü görevi görüyor.
- M (Model)
- M (Model), İş Mantığını ve veri işleme süreçlerini yürütür. C (Controller) tarafından gönderilen emirlere göre hareket eder. Bilgi işleme sürecinden sonra veriyi C’ye, diğer modellere veya doğrudan V (View)’ye gönderir.
- V (View)
- V (View) son kullanıcıya gösterilecek olan verinin sunumu ile ilgilenir. V, bu bilgiyi C veya M’den alır, aynı zamanda son kullanıcıdan gelen talepleri C’ye iletir.
- C (Controller)
- C ise sistemin ana kısmıdır. Gelen talepleri kontrol eder ve sistemin diğer elemanlarının (M,V) bilgiyi uygun şekilde alıp, göndermelerini sağlar.
Böyle söyleyince bu tanımların çok havada kaldığını tahmin edebiliyorum. O zaman çok fazla kod kullanmadan basit bir sistem yazalım. (daha fazla…)


