fbpx
modelleme dili

Modelleme dili, yapıların ve modellerin tasarımını, inşasını ve düzenlenmesini sağlayan bir bilgisayar dilidir. Belirli aşamaların birbirini takip ettiği bu dil, yapay dille birçok konuda benzerlik gösterir. Modelleme dili, tasarımsal ve metinsel alanda bilgisayar bilimi ve mühendisliği alanında yapılan çalışmalarda kullanılır. Geliştiriciler birçok yazılım, sistem, cihaz ve ekipman modellerini modelleme dili ile tasarlar.

Modelleme dili genel olarak metinsel ve grafiksel olarak 2 kısımdan oluşur. Ancak, kullanım alanlarının farklılığı nedeniyle 4 kategoride incelenir. Bunlar: sistem modelleme dili, nesne modelleme dili, sanal gerçeklik modelleme dili ve veri modelleme dilidir. Bu yazımızda grafiksel modelleme dilleri olan, sistem ve nesne dillerini kapsayan birleşik modelleme dili (UML) hakkında merak edilen detayları ele alacağız.

Dikkatinizi Çekebilir: Gereksinim analizi nasıl yapılır?

UML (Unified Modelling Language)

Unified modelling language kelimelerinin baş harflerinden oluşturulan UML, Türkçede birleşik modelleme dili anlamına gelir. Bir sistemin tasarımını görselleştirmek için kullanılan bir bilgisayar dilidir. 1995’te standart bir notasyon sağlamak ve öncü notasyonların en iyi ögelerini seçip birleştirmek için tasarlanmıştır. Karmaşık ve dağıtılmış sistemlerde düzgün yapılar sağlar.

UML, nesne yönelimli yazılım geliştirme süreçlerinde oldukça önemli bir konumdadır. Birleşik modelleme dili kullanmak; proje ekiplerinin iletişim kurmasına, potansiyel tasarımları keşfetmesine ve yazılımın mimari tasarımını doğrulamasına olanak sağlar. UML diyagramları ile tasarlanan bir yazılım projesi, sonrasında herhangi bir programlama dili ile entegre edilebilir. Bu durum bilgisayar ve yazılım mühendisleri arasında ortak bir dil oluşturur ve yazılım geliştirme süreçlerini kolaylaştırır.

class diyagramları

Class Diyagramları

Kodlama için kullanılan nesne yönelimli programlama (OOP) dillerinin hemen hemen hepsinde bulunan class diyagramları, nesnelerin türlerini ve nesneler arasındaki çeşitli statik ilişkileri tanımlar. Bu ilişkiler 4 kısımda incelenir. Bunları şu şekilde sıralayabiliriz:

1. Generalization/Inheritence (Genelleme/Kalıtım)

Kalıtım veya genelleme, bir sınıflandırıcı ile spesifik bir sınıflandırıcı arasındaki ilişkiye denir. Sınıflandırıcılar arasında güçlü bir bağ vardır; spesifik sınıflandırıcı genel sınıflandırıcının özelliklerini alır. Bu türde nesneler arasında “IS-A” ilişkisi bulunur. Sınıf adı italik olarak gösterilir.

2. Realization/Implementation (Gerçekleştirme/Uygulama)

Arayüzlerle sınıflar arasındaki ilişkiyi temsil eder. Kesikli çizgiler kullanılır.

3. Association (Ortaklık)

Sınıflarda en sık gördüğümüz ilişkilerden biridir. Özellikle design patterns yazılımlarında karşımıza çıkar. Bu türde sınıflar arasında “HAS-A” ilişkisi bulunur.

4. Dependency (Toplama ve Kompozisyon)

Toplama ve kompozisyonda sınıflar arasındaki parçalar söz konusudur. Bu türde bir sınıf diğer sınıfın bir parçasıdır. Sınıf yok edildiği zaman, parçaları olan sınıflar da yok olur. Bu tür ilişkilerini “HAS-A” ya da “IS-PART-OF” olarak tanımlayabiliriz.

Sequence Diyagramları

Sequence, Türkçede birbirini takip etme anlamına gelir. Bir yazılım terimi olarak ise birleşik modelleme dili (UML) diyagramı içerisinde, nesnelerin birbiriyle etkileşim içerisinde olmalarını ve zaman boyutundaki ilişkilerini tanımlamak için kullanılır. Sequence diyagramlarında, nesnelerin birbiriyle olan ilişkileri zamana bağlı olarak ele alınır. Burada belirtilen zaman kavramı, birbirini takip etme ve bu takiplerin belirlenen zaman dilimleri içerisinde olmasını ifade eder. Sequence diyagramı; nesneler (objects), mesajlar (messages) ve zaman çizelgesi (timeline) olmak üzere 3 temel unsurdan meydana gelir.

Bu yazımızda modelleme dili hakkında merak edilen detayları ele aldık. Daha fazlası hakkında bilgi almak için diğer içeriklerimize göz atabilirsiniz. RDC Partner olarak internet, telekomünikasyon ve kurumsal sınıf çözümleri aracılığı ile yüksek kalitede dijital hizmetler sunuyoruz. Yazılım çözümlerimizden faydalanmak, ürün ve hizmetlerimiz hakkında daha fazla bilgi sahibi olabilmek için sitemizi inceleyebilir ya da iletişim kanallarımızdan birini kullanarak bizimle iletişime geçebilirsiniz.