Bursa Yapay Şelale
ASP.NET Core 8 ile Kurumsal Web Sitesi ve İçerik Yönetim Sistemi
Bursa Yapay Şelale, peyzaj, yapay şelale ve havuz hizmetleri sunan bir firma için geliştirdiğim kurumsal web uygulamasıdır.
Projenin amacı yalnızca firmanın hizmetlerini sergileyen bir web sitesi oluşturmak değil, aynı zamanda web sitesindeki içeriklerin merkezi bir yönetim paneli üzerinden kontrol edilebildiği sürdürülebilir bir yapı geliştirmekti.
Uygulama C#, .NET 8 ve ASP.NET Core MVC teknolojileri kullanılarak geliştirildi. Veri yönetiminde Microsoft SQL Server ve Entity Framework Core kullanılırken, kullanıcı yetkilendirme altyapısında ASP.NET Core Identity tercih edildi.
Kurumsal vitrin ve içerik yönetim sistemi aynı uygulama içerisinde çalışacak şekilde tasarlandı. Böylece hem ziyaretçi deneyimi hem de içerik yönetimi tek bir proje yapısı altında toplandı.
Diğer geliştirdiğim uygulamaları Projeler sayfasından inceleyebilirsiniz.
İçindekiler
- Bursa Yapay Şelale Projesi
- Projenin Amacı
- Yazılım Mimarisi
- Dinamik İçerik Yönetimi
- Yönetim Paneli
- Kurumsal Vitrin
- Veri Yönetimi
- Güvenlik Yaklaşımı
- SEO Altyapısı
- Kullanılan Teknolojiler
- Teknik Yaklaşım
- Sonuç
Bursa Yapay Şelale Projesi
Bursa Yapay Şelale projesi, firmanın dijital ortamda kurumsal olarak temsil edilmesini sağlarken içeriklerin de kolay şekilde güncellenebilmesine odaklanıyor.
Sistem iki temel bölümden oluşuyor:
- Ziyaretçilere açık kurumsal web sitesi
- İçeriklerin yönetildiği özel yönetim paneli
Kurumsal web sitesinde firmanın hizmetleri, görselleri, duyuruları, videoları ve iletişim bilgileri ziyaretçilere sunuluyor.
Yönetim tarafında ise bu içeriklerin önemli bir bölümü kod değişikliği gerektirmeden güncellenebiliyor.
Projenin Amacı
Kurumsal web projelerinde içeriklerin doğrudan kaynak kod içerisine yerleştirilmesi, zaman içerisinde bakım ve güncelleme süreçlerini zorlaştırabilir.
Örneğin yeni bir görsel eklemek, iletişim bilgilerini değiştirmek veya yeni bir duyuru yayınlamak için sürekli olarak uygulama koduna müdahale edilmesi sürdürülebilir bir yöntem değildir.
Bu nedenle Bursa Yapay Şelale uygulamasında içerik ile uygulama kodunun mümkün olduğunca birbirinden ayrılması hedeflendi.
Slaytlar, galeri içerikleri, duyurular, videolar, iletişim bilgileri ve kurumsal içerikler veritabanı üzerinden yönetilebilen bir yapıya dönüştürüldü.
Bu yaklaşım sayesinde web sitesi yalnızca statik bir kurumsal vitrin olmaktan çıkarak yönetilebilir bir web uygulaması haline geldi.
Yazılım Mimarisi
Proje katmanlı mimari yaklaşımıyla geliştirildi.
Uygulama temel olarak şu sorumluluk alanlarına ayrılıyor:
Domain
Uygulamanın temel veri modellerinin ve domain yapılarının bulunduğu katmandır.
Application
Uygulamanın servis sözleşmeleri, veri transfer yapıları ve iş kurallarının yönetildiği bölümdür.
Infrastructure
Veritabanı erişimi, Entity Framework Core, SQL Server, kimlik doğrulama ve altyapı servisleri bu bölümde ele alınır.
Web
ASP.NET Core MVC tabanlı ziyaretçi arayüzünü ve içerik yönetim bölümünü içerir.
Bu yapı sayesinde kullanıcı arayüzü, uygulama mantığı ve veri erişimi doğrudan birbirine bağımlı hale getirilmeden daha düzenli bir proje organizasyonu oluşturuldu.
ASP.NET Core hakkında daha fazla bilgi için Microsoft ASP.NET Core dokümantasyonu incelenebilir.
Dinamik İçerik Yönetimi
Bursa Yapay Şelale web uygulamasında vitrin tarafındaki önemli içeriklerin veritabanından yönetilmesine özellikle önem verildi.
Yönetilebilir içerikler arasında:
- Ana sayfa slaytları
- Kurumsal istatistikler
- Hakkımızda içerikleri
- Galeri
- Duyurular
- Videolar
- İletişim bilgileri
- Logo ve favicon
- Harita bilgileri
- CTA alanları
- SEO bilgileri
bulunuyor.
Bu yapı projenin içerik açısından daha sürdürülebilir olmasını sağlıyor.
Yönetim Paneli
Projenin önemli bileşenlerinden biri özel içerik yönetim panelidir.
Panel aracılığıyla web sitesinin farklı bölümleri merkezi bir noktadan yönetilebiliyor.
Örneğin site yöneticisi;
- ana sayfa içeriklerini,
- kurumsal bilgileri,
- galeri öğelerini,
- duyuruları,
- videoları,
- iletişim bilgilerini,
- görsel kimlik öğelerini
yönetebiliyor.
Burada portföy açısından önemli olan nokta, yönetim panelinin teknik giriş yapısı değil; uygulamanın içerik yönetimini kaynak koddan ayıran bir sistem sunmasıdır.
Kurumsal Vitrin
Ziyaretçi tarafında firmanın hizmetlerini ve çalışmalarını sunan farklı içerik bölümleri bulunuyor.
Bunlar arasında:
- Ana sayfa
- Hakkımızda
- Galeri
- Duyurular
- Duyuru detayları
- Videolar
- İletişim
yer alıyor.
Galeri sayesinde gerçekleştirilen çalışmalar görsel olarak sunulabilirken, duyuru sistemi firma tarafından yayınlanan içeriklerin ziyaretçilere ulaştırılmasını sağlıyor.
Video bölümü ise YouTube tabanlı içeriklerin web sitesi içerisinde görüntülenebilmesine imkan veriyor.
Veri Yönetimi
Bursa Yapay Şelale uygulamasının dinamik içerikleri Microsoft SQL Server üzerinde saklanıyor.
Veritabanı erişiminde Entity Framework Core kullanılıyor.
Bu yapı sayesinde uygulama modelleri ile veritabanı arasındaki veri işlemleri merkezi bir altyapı üzerinden yönetiliyor.
EF Core migration yaklaşımı da veritabanı şemasının uygulamanın geliştirme süreciyle birlikte kontrollü şekilde ilerletilmesine imkan sağlıyor.
Güvenlik Yaklaşımı
Web uygulamasında yönetim fonksiyonlarının genel ziyaretçi işlemlerinden ayrılması ve yalnızca yetkili kullanıcıların erişebilmesi amaçlandı.
Kimlik doğrulama ve yetkilendirme altyapısında ASP.NET Core Identity kullanılıyor.
Uygulamada ayrıca web uygulamalarında yaygın olarak kullanılan güvenli form işlemleri, kontrollü dosya yükleme ve güvenli veri erişimi yaklaşımları uygulanıyor.
Bu bölümde özellikle operasyonel güvenlik detaylarını paylaşmıyorum; portföy açısından önemli olan uygulamanın güvenlik gereksinimlerinin geliştirme sürecinin bir parçası olarak ele alınmış olmasıdır.
SEO Altyapısı
Bursa Yapay Şelale projesinde arama motoru görünürlüğü de uygulamanın teknik yapısının bir parçası olarak ele alındı.
Projede desteklenen SEO özellikleri arasında:
- Canonical URL
- Meta title
- Meta description
- Open Graph
- Twitter Card
- JSON-LD structured data
- Organization schema
- WebSite schema
- Service schema
- Article schema
- FAQPage schema
- LocalBusiness schema
- robots.txt
- sitemap.xml
- Google Search Console entegrasyonu
- GA4 / Google Tag Manager desteği
bulunuyor.
Bazı sayfalarda SEO başlığı ve açıklaması içerik bazında yönetilebiliyor.
Yapılandırılmış veri konusunda kullanılan standartlar Schema.org üzerinde incelenebilir.
Kullanılan Teknolojiler
Backend
- C#
- .NET 8
- ASP.NET Core
- ASP.NET Core MVC
- Razor
- Entity Framework Core
Database
- Microsoft SQL Server
Security
- ASP.NET Core Identity
- Role Based Authorization
Frontend
- HTML
- CSS
- JavaScript
Architecture
- Layered Architecture
- Domain
- Application
- Infrastructure
- Web
Teknik Yaklaşım
Bu projede öne çıkan teknik konulardan biri, kurumsal web sitesi ile içerik yönetiminin tek uygulama içerisinde birleştirilmesi oldu.
Ayrı sistemler oluşturmak yerine ASP.NET Core MVC üzerinde merkezi bir uygulama yapısı tercih edildi.
İkinci önemli konu dinamik içerik yönetimiydi. Kurumsal web sitesinde sık değişebilecek içeriklerin doğrudan kod içerisinde tutulması yerine yönetilebilir veri modelleri oluşturuldu.
Üçüncü önemli konu ise uygulamanın yalnızca çalışmasına değil, uzun vadede geliştirilebilir ve yönetilebilir kalmasına odaklanılmasıydı.
Katmanlı mimari ve servis tabanlı yaklaşım bu nedenle projenin temel teknik tercihlerinden biri oldu.
Sonuç
Bursa Yapay Şelale, ASP.NET Core 8 MVC ve SQL Server tabanlı kurumsal bir web uygulaması olarak geliştirildi.
Proje;
- kurumsal vitrin sitesi,
- dinamik içerik yönetimi,
- özel yönetim paneli,
- veritabanı tabanlı içerik yapısı,
- katmanlı yazılım mimarisi,
- kimlik doğrulama ve yetkilendirme altyapısı,
- SEO desteği
gibi özellikleri tek uygulamada bir araya getiriyor.
Bursa Yapay Şelale projesinde temel hedef yalnızca çalışan bir web sitesi ortaya çıkarmak değil, içerik yönetimi ve yazılım mimarisi açısından sürdürülebilir bir kurumsal uygulama geliştirmekti.
