Tags: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , | Categories: Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Coding Disaster, Tip, Coding Disaster, Coding Disaster, Coding Disaster, Tip, Tip, Coding Disaster, Coding Disaster, Tip, Coding Disaster, Coding Disaster, Coding Disaster, Tip, Tip, Tip, Coding Disaster, Coding Disaster, Tip, Tip, Tip, Coding Disaster, Coding Disaster, Coding Disaster, Tip, Tip, Tip, Tip, Coding Disaster, Tip, Tip, Tip, Coding Disaster, Tip, Tip, Tip, Tip, Tip, Tip, Coding Disaster, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip, Tip Posted by okutbay on 05.03.2014 19:45 | Yorumlar (0)

Selamlar, kod yazmak zor (dışarıdan çok kolay görünebilir) bir iştir. Gelecek cümle özellikle yeni başlayan, başlayacak arkadaşlar için. "Ama kod okumak çok daha zor bir iştir!"

O nedenle kod yazarken, bir süre sonra sizin ya da başka birinin bu kodu okuyup anlaması gerektiğini aklınızdan çıkarmadan üşengeçlik yapmamaya özen göstermek önemlidir.

Bu yolda kullanabileceğiniz en güçlü bedava araçlardan biri aynı kod blogunda olan (indent olarak aynı hizada olan) kod satırları arasında okumayı kolaylaştıracak boşlukları gerektiği kadar vermektir. Gerektiği kadar diyorum çünkü her satır arasına boşluk koymak da koymamakla aynı şeydir. Kodunuzun okunmasını zorlaştırır.

Örneğin şu kod bloguna bakin.

List<ContactMethod> contactMethods = new List<ContactMethod>();
ContactMethod contactMethod = null;
values = new System.Collections.ArrayList();
values.Add(LangID);
values.Add(companyID);
try
{
    command = x.DaoBase.DBHelper.GetCommand(type, "8", values);
    dr = command.ExecuteReader();
    if (dr != null)
    {
        while (dr.Read())
        {
            contactMethod = new ContactMethod();

Bunu yazarken şu şeklide yazmak okumayi ve kodu anlamayi kolaylaştıracaktır.

List<ContactMethod> contactMethods = new List<ContactMethod>();
ContactMethod contactMethod = null;
values = new System.Collections.ArrayList();
values.Add(LangID);
values.Add(companyID);

try
{
    command = x.DaoBase.DBHelper.GetCommand(type, "8", values);
    dr = command.ExecuteReader();
    if (dr != null)
    {
        while (dr.Read())
        {
            contactMethod = new ContactMethod();

Boşlukları vererek kod blogunda (aynı seviyede) yer alan kodları mantıksal olarak ilişkilerine göre gruplamış olduk aslında. Özellikle try, if gibi kod bloklarını aynı seviyedeki kodlardan ayırmak için öncesinde bir satır boşluk bırakmak iyi olur. Aynı seviyede olmayan try ve command arasına boşluk vermeye gerek olmadığını da söylemek isterim.

Olay bu kadar.

Klavyeler şen ola...!

11 kişi tarafından 2.0 olarak değerlendirildi

  • Currently 2/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: , , | Categories: Fun Posted by okutbay on 28.01.2014 04:41 | Yorumlar (0)

Link için Fevzi Kaba'ya teşekkür ederim...

http://devopsreactions.tumblr.com/post/49667540079/trying-to-fix-someone-elses-css

 

Bu yazıyı ilk değerlendiren siz olun

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: , , , , | Categories: Fun Posted by okutbay on 15.04.2011 03:22 | Yorumlar (0)

 

A wife asks her husband, a computer programmer; "Could you please go to the store for me and buy one carton of milk, and if they have eggs, get 6!"

A short time later the husband comes back with 6 cartons of milk.

The wife asks him, "Why the hell did you buy 6 cartons of milk?"

He replied, "They had eggs."

Bu yazıyı ilk değerlendiren siz olun

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: , , , , , , , | Categories: Genel Posted by okutbay on 30.03.2010 10:55 | Yorumlar (5)

Bazen iki tarihin arasında geçen süreyi bulmanız gerekir. Bu kişinin şu anki yaşı olabileceği gibi bir işçinin o gün çalıştığı süre de olabilir. C# bize bu konuda yardımcı olmak için TimeSpan tipini sunar. Bu tipi kullanarak iki tarih arasında geçen süreyi farklı şekillerde alabiliriz. Örneğin iki tarih arasında kaç saat olduğunu bulmak istiyorsak TotalHours özelliğini kullanabiliriz. Eğer iki tarih arasında geçen sürenin sadece saat kısmı bizi ilgilendiriyorsa Hours özelliğini kullanabiliriz.

    1 DateTime myStartTime = Convert.ToDateTime("30.03.2010 08:04:00");

    2 DateTime myEndTime = Convert.ToDateTime("30.03.2010 18:02:00");

    3 TimeSpan myWorkingTime = myEndTime - myStartTime;

    4 double myWorkingHours = myWorkingTime.TotalHours;

Bu işi uygulamanız içinde birden çok kullanacaksanız bir method haline getirmek faydalı olacaktır.

    1 public static double GetWorkingHours(DateTime startTime, DateTime endTime)

    2 {

    3     TimeSpan workingTime = endTime - startTime;

    4     double workingHours = workingTime.TotalHours;

    5     return workingHours;

    6 }

 

bu yeni metodu soyle kullanirsiniz.

    1 DateTime myStartTime = Convert.ToDateTime("30.03.2010 08:04:00");

    2 DateTime myEndTime = Convert.ToDateTime("30.03.2010 18:02:00");

    3 double myWorkingHours = GetWorkingHours(myStartTime, myEndTime);

 

Not:Methodun ve kodun aynı classta olduğu varsayılmıştır...

Kolay gelsin...

1 kişi tarafından 1.0 olarak değerlendirildi

  • Currently 1/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Tags: , , | Categories: Tip, Programlama, Genel Posted by okutbay on 26.02.2010 11:41 | Yorumlar (0)

You can always write comment to your codes. But comment itself can be outdated and misleads a developer. So writing self-documented codes must our first aim to make our code more maintainable.

In my opinion a big step to achieve self-documented code begins writing if clauses.

If a developer understands if clause, he/she understand purpose of the code block more easily.

But how can we write more readable if clause.

Very easy: Don't write logical comparisons into if clause.

    1 if ((preprocessedFailedEmails.Count > 0) || (failedEmails.Count > 0))

    2 {

    3     //some code

    4 }

Although this is a very simple if clause it's a bit hard to get what is happening there. Let's make it more readable.

    1 bool hasErrors = ((preprocessedFailedEmails.Count > 0) || (failedEmails.Count > 0));

    2 if (hasErrors)

    3 {

    4     //some code

    5 }

Happy coding...

Bu yazıyı ilk değerlendiren siz olun

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5