9 Kasım 2016 Çarşamba

AngularJS Nedir?


AngularJS, google'nin desteklediği, javascript MVC kütüphanesidir. MVC (Modal View Controller) verinin, görünümün ve kontrollerin ayrı tutulmasına dayanır. 
Modal: Verilerin tutulduğu nesnelerdir. İlişkili olduğu View nesnesini tetikler.
View: Görünümün (template) tutulduğu nesnelerdir.Controller: 
Modal ve View nesnelerinin bağlandığı nesnedir. İşlemler ve kontroller burada yapılır.


  • ng-app: AngularJs kapsama alanını belirler.
  • ng-model: Değişken tanımlamayı sağlar.
  • {{degisken}}: Value değeri
  • ng-controller: ;İlgili elementin hangi controller ile yönetilebileceği belirtilir. Bir html sayfasında birden çok controller kullanılabilir.
  • ng-click: İlgili elemente click event'i atamamızı sağlar. ng-click içerisinde hangi fonksiyonun çağıralacağını, varsa parametreleri buradan gönderilir.
  • ng-repeat: Bir liste üzerinde dönüp işlem yapmamızı sağlar. C#'taki foreach benzeri bir yapıya sahiptir.
  • ng-class: Çok kullanılan AngularJs'lerden biridir. İlgili elemente class atamaktadır. Bunu yaparken ise koşul koymamıza olanak sağlar.

Example:









<html ng-app>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.min.js"></script>
</head>
<title>Example of correct number calculation</title>
<body>
<h1>Example of correct number calculation</h1>
True Number :
<input type="text" ng-model="numberTrue" > <br/>
Wrong Number :
<input type="text" ng-model="numberWrong" > <br/>
Result : {{numberTrue-(numberWrong/4)}}
</body>
</html>

22 Ekim 2016 Cumartesi

Git Nedir?


Projelerimizi geliştirirken kodlarımızı daima yedeklemeye ihtiyaç duyarız. Bu yedeklemeyi manuel olarak yaptığımızda bir süre sonra yedekler çoğalmaya başlar ve yedekler zamanla bir karmaşa yaratır. Bununla birlikte bellekte fazladan alanı kapsamış olur. Bütün bu karmaşaların önüne geçmek için bize yardımcı olan araçlar mevcut. Bu araçlara sürüm kontrol sistemleri veya versiyon kontrol sistemleri de denmektedir.

Proje geliştirirken birçok avantajından yararlanabildiğimiz git, çalışmalarımızı bizim yerimize otomatik olarak yedekliyor. Bu bize zamandan, bellekten ve yedekleme karşmaşasından kurtulmamızı sağlıyor. Bunların yanında bu programların birçok avantajları daha mevcut.
  • Projemiz ya da herhangi bir klasör üzerinde yapılan değişiklikleri zamanları, kullanıcı bilgisi, versiyon numarası gibi bilgilerle birlikte tutuyorlar.
  • Projenin yayına çıkacak kısmının beklemesini istiyorsak ve üzerinde de bir şeyler denemek istiyorsak o zaman çalışan kopyamız belli bir dallanmayla (branching) ayrılarak diğer kopyalar üzerinde rahatça çalışmamız sağlanıyor.İstersek bu kopyayı çalışabilir durumdaki kopya ile birleştirebiliyoruz.
  • Grup halinde çalışmalarda herkesin yaptığı değişiklikleri görebiliyoruz.
  • Git dağıtık bir yapı kullanıyor.Diğer versiyon kontrol sistemleri merkezi bir yapı kullanırken ve bu yapıya sürekli bağlı olmak gerekirken git’te her kullanıcıda bütün bir kopya mevcuttur ve internet olmayan ortamlarda dahi proje geliştirilmeye devam edilebiliyor.
  • Git gerçekten çok hızlı 2.Git kaynak depoları disk üzerinde çok az yer kaplıyor. 3.Git ile dallanma (branching) ve birleştirme(merging) işlemleri kolay ve hızlı 4.Git offline olarak kullanılabiliyor. 5.Git dağıtık (distributed) olduğu için her bir geliştiricinin makinesinde proje bütün geçmişi ile birlikte tutulabiliyor. İlk başta bunun işlemleri yavaşlattığı ve disk israfı olduğu düşünülebilir. Fakat git'in oldukça etkin algoritmalar kullanması sayesinde bu sorunlar hiç yaşanmıyor.
Kaynak: https://github.com

23 Mart 2016 Çarşamba

 

Biyoinformatik Dizi Hizalaması


Biyoenformatikte dizi hizalaması, DNA, RNA veya protein dizilerini düzenleyerek benzer bölgelerin tespit edilmesidir. Bu bölgelerin benzer olması, diziler arasında işlevsel,yapısal veya evrimsel bir ilişki olduğu anlamına gelir. Hizalanmış nükleotit veya aminoasit kalıntı dizileri tipik olarak bir matriksin satırları olarak gösterilir. Kimyasal kalıntıları temsil eden harflerin arasına boşluklar konarak ardışık sütunlarda yer alan aynı veya benzer harflerin bir hizada olması (altalta gelmesi) sağlanır.

Global ve Lokal Hizalamalar


Global hizalamalarda her dizideki her harfin hizalanması amaçlanır. Sorgu kümesindeki diziler birbirine benzer ve yaklaşık aynı uzunlukta olursa global hizalamaları en yararlı olur. (Ama bu, global hizalamaların boşluklarla sonlanamayacağı anlamına gelmez.) Global hizalama tekniklerinden biri, dinamik programlamaya dayalı olan Needleman-Wunsch algoritmasıdır. Birbirine benzemeyen ama benzer bölgeler içerdiği tahmin edilen diziler için lokal hizalamalar daha yararlıdır. Keza, benzer kısa dizi motiflerinin tespitinde lokal hizalamalar kullanılır. Smith-Waterman algoritması da dinamik programlamaya dayalı bir lokal hizalama yöntemidir. Eğer diziler yeterince birbirine benziyorsa lokal ve global hizalama sonuçları arasında bir fark olmaz.


Hibrit yöntemler (yarı global veya "glokal" yöntemler olarak da adlandırılabilir) bir veya öbür dizinin başı ve sonunu da kapsayan en iyi hizalamayı bulmaya çalışır. Dizilerden birinin sonu, öbürünün başı ile örtüşüyorsa bu özellikle yararlı olabilir. Bu durumda ne global ne de lokal hizalama tamamen uygundur: global yöntem hizalamayı örtüşme bölgesinin dışına uzatmaya çalışacaktır, lokal yöntem ise örtüşme bölgesini yeterince kapsamayabilir.

Nokta Matris Yöntemleri

Nokta matris yaklaşımında her bir dizi bölgesi için hizalama aileleri üretilir. Bu yöntem nitel ve basittir ama büyük ölçekte analiz etmesi zaman alıcıdır. İnsersiyon, delesyon, tekrar ve ters dönmüş tekrar (inverted repeats) gibi bazı dizi özelliklerinin görsel tespiti çok kolaydır. Bir nokta matrisi oluşturmak için iki dizi, iki boyutlu bir matrisin üst satırı ve sol sütunu boyunca yazılır, sonra eğer bir satır ve sütunun başındaki harfler aynıysa kesişim yerine bir nokta konur. Bu yaklaşımın bazı uygulamalarında iki harfin benzerlik derecesiyle orantılı büyüklükte bir nokta konur, korunmalı substitusyonları hesaba katabilmek için. Birbirine çok benzeyen dizilerin nokta matrisleri, matrisin ana çaprazı boyunca giden tek bir çizgi gibi görünür.


Nokta matris grafikleri (İng. dot plot) tek bir dizi içindeki tekrarlılık miktarını belirlemekte de kullanılabilir. Bir dizi kendi kendisi ile grafiklenir, birbirine önemli derecede benzerlik gösteren bölgeler ana çaprazın yanlarında çizgiler olarak görünür. Proteinin birden çok benzer yapısal bölgeden oluşması durumunda bu görülebilir.


C# kodunu indirin.

17 Aralık 2015 Perşembe

GeoMath

GeoMath, istenilen matematik denklemi veya geometri çokgen grafiğini kullanıcılara otomatik veren bir web sitesidir. Site html, css ve javascript dilleriyle birlikte kodlanmıştır. Sitenin tamamını buradan indirebilirsiniz.



22 Temmuz 2015 Çarşamba

ACCESS VERİTABANI İLE C# FORM İŞLEMLERİ




     Microsoft Access bir İlişkisel Veri Tabanı Yönetim Sistemi uygulamasıdır. Bir veri tabanını oluşturmak ve kullanmak Access ile diğer veri tabanı uygulamalarına göre çok daha kolaydır. Bunun nedeni Access’in , Windows ortamının Grafiksel Kullanıcı Arabiriminin sağladığı avantajların tümünden yararlanma imkanı vermesidir. Grafiksel Kullanıcı Arabirimi , karmaşık komut dizilerini öğrenmeyi gerektirmeden , ekran üzerindeki nesneler ve simgeler yardımıyla , fare desteğinden de yararlanarak kullanıcının çalışmasına olanak verir. 
      Access veritabanı ayrıntıları ve kullanımı videoda ayrıntılı anlatılmıştır.