SASS Nedir? SASS ve SCSS Farkları
SASS, CSS yazımını daha verimli ve güçlü hale getiren bir CSS ön-işlemcisidir. Yazılımcılar için daha temiz, okunabilir, modüler ve etkili CSS yazımı sağlar.
SASS, CSS yazımını daha verimli ve güçlü hale getiren bir CSS ön-işlemcisidir. Yazılımcılar için daha temiz, daha okunabilir, daha modüler ve etkili CSS yazımı sağlar. SASS, yazılımcıların projelerinde değişkenler, iç içe yazım, karışımlar (mixins) ve fonksiyonlar gibi gelişmiş özellikleri kullanmalarına olanak tanır. Bu özellikler sayesinde, SASS ile yazılan CSS kodları hem daha kolay yönetilebilir hale gelir hem de tekrarlayan kod bloklarını minimuma indirir. SASS kullanarak, büyük projelerde bile düzenli ve sürdürülebilir bir stil dosyası yapısı oluşturabilirsiniz.
SASS ve SCSS, aslında aynı teknolojinin iki farklı sözdizimidir. SASS, Python ve Haml'dan esinlenmiş, satır sonlarında noktalı virgül kullanmayan ve girintilere dayalı bir sözdizimi sunar. SCSS ise CSS'e daha yakın bir sözdizimi sunar ve her satırın sonunda noktalı virgül kullanır, bu nedenle CSS yazımına daha aşina olanlar için daha kolaydır.
Örneğin, SASS sözdizimi:
SCSS sözdizimi ise şu şekildedir:
Hangi sözdizimini kullanacağınız tamamen kişisel tercihinize bağlıdır, ancak SCSS, daha yaygın olarak tercih edilir çünkü mevcut CSS kodları ile daha uyumludur ve dönüşümü daha kolaydır.
SASS'ın sunduğu birçok avantaj bulunmaktadır. Öncelikle, değişkenler sayesinde renkler, font boyutları gibi sabit değerleri bir kez tanımlayıp, kodun her yerinde bu değişkenleri kullanarak tutarlı bir stil elde edebilirsiniz. İç içe yazım (nesting) ile daha okunabilir ve hiyerarşik bir stil yapısı oluşturabilirsiniz. Karışımlar (mixins) ve fonksiyonlar, tekrar eden stil kurallarını tek bir yerde tanımlamanıza ve gerektiğinde bu tanımları kullanmanıza olanak tanır. Böylece, aynı stil kurallarını tekrar tekrar yazmak zorunda kalmazsınız. Ayrıca, SASS modülerliği destekler, yani stil dosyalarınızı küçük, yönetilebilir parçalara ayırarak projenizi daha düzenli hale getirebilirsiniz.
SASS kurulumuna başlamadan önce, Node.js ve npm (Node Package Manager) kurulu olmalıdır. Bu araçlar, SASS'ı yüklemek ve yönetmek için gereklidir. İlk olarak, Node.js'in resmi web sitesinden indirip kurabilirsiniz. Node.js kurulduktan sonra, komut satırına şu komutu yazarak SASS'ı global olarak yükleyebilirsiniz:
Bu komut, SASS'ı bilgisayarınıza global olarak kurar ve 'sass' komutunu her yerde kullanmanıza olanak tanır. Projelerinizde SASS kullanmaya başlamak için, bir proje klasörü oluşturun ve bu klasörde 'styles.scss' gibi bir SCSS dosyası oluşturun. Bu dosyayı derlemek için, şu komutu kullanabilirsiniz:
Bu komut, 'styles.scss' dosyasını alır ve aynı dizinde 'styles.css' adında bir CSS dosyasına dönüştürür. Bu işlemi otomatik hale getirmek için, '--watch' seçeneğini kullanabilirsiniz:
Bu komut, 'styles.scss' dosyasındaki değişiklikleri izler ve her değişiklik yaptığınızda 'styles.css' dosyasını otomatik olarak günceller.
SASS dosya yapısı, stil dosyalarınızı daha modüler ve yönetilebilir hale getirir. Temel olarak, her bileşen veya modül için ayrı SCSS dosyaları oluşturabilir ve bu dosyaları ana SCSS dosyanıza import edebilirsiniz. Örneğin:
Ana 'styles.css' dosyası, diğer SCSS dosyalarını şu şekilde import eder:
Bu yapı, stil dosyalarınızı daha düzenli tutar ve her bileşen veya modülü ayrı ayrı yönetmenizi sağlar.
SASS değişkenleri, tekrarlanan değerleri merkezi bir yerden yönetmenizi sağlar. Örneğin, renkleri ve font boyutlarını değişken olarak tanımlayabilirsiniz:
Karışımlar (mixins), tekrar eden stil bloklarını tanımlamanıza ve gerektiğinde kullanmanıza olanak tanır:
İç içe yazım (nesting), CSS kurallarını daha hiyerarşik ve okunabilir hale getirir:
Modülerlik için partial dosyalar oluşturabilir ve bu dosyaları ana SCSS dosyanıza import edebilirsiniz. Örneğin, '_buttons.scss' dosyasında buton stillerini tanımlayabilirsiniz:
Ve ana dosyanızda import edebilirsiniz:
SASS, Control Directives (@if, @else, @while, @for, @each) ve fonksiyonlar ile CSS'inize mantıksal işlemler eklemenizi sağlar. Örneğin, @if ile koşullu stiller uygulayabilirsiniz:
Fonksiyonlar ise karmaşık işlemleri basitleştirir. Örneğin, bir renk tonunu hafifletmek için bir fonksiyon tanımlayabilirsiniz:
SASS, responsive tasarım ve modern CSS teknikleri ile uyumludur. Örneğin, medya sorgularını iç içe yazım ile tanımlayabilirsiniz:
Ayrıca, CSS Grid ve Flexbox ile SASS kullanarak esnek ve güçlü layoutlar oluşturabilirsiniz. BEM metodolojisi ile SASS kullanarak daha yapılandırılmış ve ölçeklenebilir CSS yazabilirsiniz:
Bu rehberde SASS'ın ne olduğu, nasıl kurulduğu ve nasıl kullanıldığı hakkında kapsamlı bilgileri ele aldık. Genel hatlarıyında konuyu özetleyecek ve üzerinden geçecek olursak, SASS'ın CSS yazımını daha verimli hale getiren güçlü özellikleri arasında değişkenler, iç içe kurallar, mixinler ve fonksiyonlar bulunur. SASS'ı Node.js ve npm kullanarak kolayca kurabilir ve SCSS dosyalarınızı CSS'e dönüştürebilirsiniz. CSS değişkenleri, girdilere dayalı fonksiyonlar ve diğer ileri düzey özellikler ile CSS yazımını daha etkili ve modüler hale getirebilirsiniz. Ayrıca medya sorguları, CSS Grid ve Flexbox kullanarak esnek ve duyarlı yani responsive tasarım oluşturabilirsiniz. BEM metodolojisi ile SASS kullanarak daha etkili ve ölçeklenebilir CSS kodları yazabilirsiniz.