27 Nisan 2014 Pazar

Sass (Syntactically Awesome StyleSheets) -1

Nezih bahçenin en dip köşesinde yemeklerimizi hazırlayan ve servis eden Leyla hanımın özentili hareketleri bir anda aklıma SASS olgusunu düşürdü Neden mi ? Biz yazılımcılar alışa geldiğimiz variable mantığı yani değişkenler ile uygulamalarımızı geliştirirken, CSS ile bu neden yapılamıyor sorusunun"SASS" ile çözümlenmesi, her şeyi daha da profesyonel hale getirmişti.

SASS ne sorusunu dediğinizi duyar gibiyim? SASS aslında maklemin başlığında da belirttiğim gibi mükemmel söz dizilimli stil dizilimleri ya da stil dosyalarını hazırlayan framework. 

CSS yazan arkadaşlarımızın bildiği gibi CSS yazarken bir nesnelin alt elamanlarına ulaşmak ya da tip belirteçleri ile bunları bir birinden ayırmak ya da tanımlanan bir değeri her seferinde farklı yerlerde kullanmak zamanla yazım hızını ve düzenini bozan tarayıcı tarafında da ilgili web sayfaları ya da uygulamaların response yani cevap süresini etkilemektedir. SASS ile yani bu frameworkcük ile işleri dahada kolaylaştırıp daha programatik mantığa sahip stil dosyaları ya da formları hazırlayabiliriz isterseniz lafı fazla uzatmadan örneklendirmeye bakalım.

Öncelikle SCSS dosyaları değimiz ve bilegeldiğimiz CSS dosyalarından farklı yapıya sahip SCSS dosyalarını oluşturabilmemiz için Ruby ile kurulumunu yapmamız gerekli bu konu ile ilgili bilgileri buradan takip edebilirsiniz. 
Bu frameworkun Synatax'ı 2 türlü oluşturulabilir.
SASS: Noktalı virgül ya da süslü parentez kullanmadan istediğimiz gibi yazabiliriz.
SCSS: Bildiğimiz CSS söz dizilimi gibi kullanabiliriz.

Bu framework ile çalışırken değişkenler $ işareti ile tanımlanır.

SAAS Syntax
$fontType: Helvetica, Arial
$fontSize:10px
$urunGenelPasayici:border:1px solid #efe
$urunH2Color:#ffff00
body 
       font-size:$fontSize
       font-family:$fontType

SCSS Syntax
$fontType: Helvetica, Arial;
$fontSize:10px;
$urunGenelPasayici:border:1px solid #efe;
$urunH2:#ffff00
body 
{
       font-size:$fontSize
       font-family:$fontType
}


Genişletme 
SASS Syntax
ul
     margin:0px
     padding:0px
      li
         display:inline-block
          div
              border:1px solid #eee          
                 a
                     text-decoration:none
                     color:red

SCSS Syntax                 
ul                     {
     margin:0px;
     padding:0px;
                        }
      li                }
         display:inline-block;
                        }
          div         {
              border:1px solid #eee;
                        }
                 a     {
                     text-decoration:none;
                     color:red;
                        }

Yukarıda anlatmaya çalıştığım örneklemede iki söz dizilimi arasındaki farkları belirttim yalnız SASS'ın bize sağladığı  yetenekler bu kadarla sınırlı değil ayrıca Visual studio 2013 RC2 de SASS için ayrı bir motor sunulacağı geçtiğimiz günlerde belirtildi. 

Bir sonraki makalemde SASS ile gelen 
  • Partial (bölümlü ya da parçalı)
  • Import(dahil etme)
  • Mixins(Eklemler, Katmalar)
  • Inheritance(Miras Alma)
  • Operators(Öperatorler)

Konusunu işleyeceğiz.

Saygı ve Sevgilerimle
Rahmi Tuğrul Altın

22 Şubat 2014 Cumartesi

Ne yapayım Asp.Net MCV mi öğreneyim yoksa Asp.Net Form Application Mı ?

Son yıllarda baya revaçda olan "MVC ile mi yazacaksınız ?" sorusunun verdiği rahatsızlık ve bilgilendirme adına sizlere kısa bilgiler sunmayı kendime bir iş edindim.

Mvc  yok ken biz ne yapıyorduk ? 
Mvc yokken biz yazılım geliştiriciler ASP mi PHP(MVC yoktu o zamanlar ya da henüz relase aşamasındaydı) tartışmaları arasında boğlurken şimdi bu soruya alternatif cevap olan Asp.Net MVC şıkkını seçebiliyoruz.

İş dünyasında oluşan MVC algısı tamamen sektöre vurulan darbeler ve beceriksizlerin bir ürünü oldugunu bir kez daha ıspatlamış oldu. Her görüşmede ya da toplantı sonunda ; "Abi mvc ile yazılırsa bi yazılımcı diğerinin yazdığı kodları kaldığı yerden devam edebiliyormuş..." algısını göğüsler olduk.

Aslına  bakarsak Katmanlı Mimari ile yazılım geliştirmeyen kurumlar, şahıslar için bu durum oldukça doğru.

Peki bizler nasıl uygulama geliştiriyorduk ?

Rta Yazılım Bilişim hizmetleri yazılım departmanında bu konuda bugune kadar hiçbir problemle karşılaşmamıştır çünkü kendisine mimari oluşturmada genel geçer teknikleri ilke edinerek MVC 'de ortadan kaldırılan kod karmaşasını yıllar önceden çözümlemişti.

Çoğu zaman alay konusu olan (yazılımcı arkadaş ya da çevrelerde) mimarimizi daha sonradan kullanan bireyler ve kurumlar gözümüzden kaçamadılar.

MVC bildiğimiz gibi tabiki daha rahat ve farklı bir konuma kendini ulaştırdı, yalnız asp.net form applicationlar olmasaydı zaten bu yapıya erişmemiz zor olacaktı.


Karşılaştırmalara gelince kim nederse kendine göre haklı sebeplere sahip. Yazılımcı olarak MVC'nin daha iyi olduğunu ama Asp.net Web applicationların MVC kadar beceriksiz olduğu kanısına herzaman karşı durdum.

Hangi platformda çalışmalıyız konusuna gelincede tercih ve yetenek meselesinin cücüğüne parmak basmış oluyoruz.

Teknoloji MVC taraflı daha hızlı ilerleyecek bunda kararlıyız belkide asp.net applicationlar artık geliştirmeyi sonlandıracak(IDE bazında) bu çerçevede MVC ile uygulama geliştrmek şu şartlarda daha performanslı ve mantıklı.

Soru ve problemleriniz için herzaman iletişim sayfamızdaki adresten bize ulaşabilrisiniz.

Saygı ve sevgilerimle.
Rahmi Tuğrul ALTIN