Spring Boot ile ilk proje

Önceki yazımızda Spring boot projemizin nasıl oluşturacağını öğrenmiştik şimdi ise oluşturulmuş bir projeyi inceleyelim.

Intelij IDEA ile projemizi açalım.IDE’mizi çalıştırıp Open a tıklayalım ve projemizin dizinini seçip OK’a tıklayalım.

Açılan Intelij IDEA penceresinde projemiz aşağıdaki gibi görünmektedir.

SpringApplication Demo

Sol tarafta Project sekmesinde projemizin iskelet yapısını görüyoruz.

src > main > java > com.ciceksoft.demo dizininde projemizin main fonksiyonu bulunuyor.Uygulamamızın çalışacağı sınıf burasıdır.Projemizi oluştururken paket yöneticisi olarak MAVEN’i seçmiştik.

Projemizin bağımlılıklarını pom.xml’e tanımlayacağız.Haydi pom.xml’e bir göz atalım.

Projemiz ile ilgili yaptığımız ilk tanımlar “groupId”, “artifactId”, “name”, “description” ve “version” bilgileri burada ilgili taglar içerisinde tutuluyor.

Dikkat etmemiz gereken bölüm dependencies tag’i ve burada projemize dışardan bağımlılıklarımızı ek kütüphanelerimizi tanımlıyoruz.

Bu yazımızda ilk projemizi incelemiş olduk bir sonraki yazıda görüşmek üzere herkese iyi çalışmalar diliyorum.

Java Override Nedir ?

Arkadaşlar merhabalar override konusunu inceleyeceğiz.

Override üst sınıftan gelen bir metotu alıp kendi ihtiyacımıza göre gövdesini değiştirmek için kullanılır ama uymamız gereken bazı kurallar var.

Hemen basit bir örnek ile incelemeye başlayalım..

Java Override

Yandaki örnekte “Car” ve “Bmw” adlı sınıf oluşturduk ve “Bmw” sınıfını “Car” sınıfı ile extends işlemi gerçekleştirdik.

Sınıfımıza örnek olması için iki tane metot yazdık ve metotlarımızı “Bmw” sınıfında “Override” anotasyonu ile ezdik.

Output’umuz örnekte göründüğü gibi olacaktır.Yani burada üst sınıfımızdaki metotları kendi ihtiyacımıza göre kullanmış olduk.

 

Bu işlemi yaparken dikkat etmemiz gereken bazı kurallar vardır bunları şu şekilde özetleyebiliriz.

  • Static ve Final metotlar override edilemezler derleme hatası verir.
  • Private Metotlar override edilemezler çünkü visible’ı gizlidir diğer sınıflar göremez.
  • Override Metotlar için dönüş tipi veya parametreleri değiştirilemez derleme hatası verir.
  • Override Metotların acces levellerini düşüremeyiz ama  yükseltebiliriz. Sıralaması ise şöyle (public > protected > default > private)

Yukaridaki kurallara uyulmadığı sürece derleme hatası alınır.

Herkese iyi çalışmalar diliyorum.

 

 

Java Variable Arguments

Java-Varargs

Bazen fonksiyonumuza göndereceğimiz parametreler birden fazla olabilir ve biz bunun kaç tane olacağına emin olamıyorsak Variable Arguments yöntemi kullanabiliriz.


package com.company;
public class Main {
public static void main(String[] args) {
Test test = new Test();
test.varArgs(0);
test.varArgs(0,1);
test.varArgs(0,1,2);
test.varArgs(0,1,2,3);
test.varArgs(0,1,2,3,4);
}
}
class Test {
public void varArgs(int… number) {
for (int i : number) {
System.out.println(i);
}
}
}

view raw

Main.java

hosted with ❤ by GitHub

Faydalı olması dileğiyle 🙂

Java’da Enum Kullanımı

Merhabalar arkadaşlar bu yazımızda JAVA’da ENUM konusunu inceleyeceğiz.

Uygulama geliştirirken bazı sabit değerlerimiz vardır bunlar hiç değişmeyecektir.

Mesela Cinsiyet bilgisi ERKEK veya KADIN olarak sabittir ya da Ödeme seçenekleri KREDİ KARTI, KAPIDA ODEME Seçeneği gibi  sabit tanımlarımızı kodumuzun okunabilirliği açısından bu tip veri setimizi ENUM olarak tanımlayabiliriz.

Amacımız sabitlerimizi düzenli bir şekilde bir sırada tutmak. Bir örnek ile bunu inceleyelim.

Bir E-Ticaret Uygulamamızdan Kullanıcıya alacağı kıyafetin bedenini seçtireceğiz ve sabit bedenlerimiz SMALL MEDIUM ve LARGE Olsun.Bunun için bir enum oluşturuyoruz ve aşağıdaki gibi tanımlıyoruz.

Enum tanımlamak için aşağıdaki gibi enum keyword’ü kullanılır ve Büyük harf ile enumlarımızı yan yana tanımlayabiliriz isteğe bağlı olarak sonunda “;” de yazabilirsiniz.

1

Şimdi Main sınıfımızda tanımladığımız enum’a ulaşmaya çalışalım.

2

Main sınıfımızda BodySize objemizi oluşturup direkt olarak BodySize.LARGE, BodySize.MEDIUM,BodySize.SMALL şeklinde doğrudan ulaşabiliriz.Şimdi dikkatinizi bir şey çekmiş olmalı ! BodySize Enum  içerisinde name adında bir  fonksiyon tanımlamamıştık ama bize bodySize.name(); metotu tanımlı olarak geldi.

Burada enum keyword’ünün extend edilmiş olduğu sınıfı inceleyebilirsiniz.

https://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html

Enumlarımıza bir sıra değerini şu şekilde tanımlayabiliriz ve bu değere ulaşmak için bir size adında property tanımlayalım ve bir adet constructor’a ihtiyacımız olacak ama private olmalıdır.Tanımladığımız sıra değerine ulaşmak için bir tane getter metotumuzu tanımlayalım.Aşağıdaki kod örneği bu işlemi göstermektedir.

4

Şimdi Main sınıfımızda BodySize Enum’u yeniden inceleyelim. bodySize’ı tanımlamıştık ve içerisindeki getSize ı çağırdık.Console’a yazdırdık.

Hemen altında  bir döngü tanımlayıp BodySize dizisi oluşturdum ve Enum içerisindeki values(); metotunu göstermek istedim.

5

Enumların kullanımı bu şekilde herkese iyi çalışmalar diliyorum faydalı olması dileğiyle İyi Çalışmalar 🙂

 

Spring Boot Neden Tercih Edilmelidir ?

Merhaba arkadaşlar,Bu yazımızda sizlere Spring Boot’ u neden tercih etmemiz gerektiğini ve avantajlarından bahsedeceğim.

Spring, web ve kurumsal uygulamalar oluşturmak için popüler Java tabanlı bir framework’tür.Spring Boot’un oluşturulma amacı uygulama yapılandırılmasının karmaşıklığını gidermektir.

SPRING BOOT AVANTAJLARI

· Web uygulamalarınızı kolayca geliştirmek ve test etmek için HTTP sunucularını bizlere hazır olarak getirir.

· Geliştirme sürelerini kısaltır ve verimliliği artırır.

· Varsayılan yapılandırma ayarlarıyla bizlere hazır konfigürasyonu tamamlanmış bir seçenek sunar.

· Derleme araçlarını kolay bir şekilde kullanmamız için eklenti sağlar.(MAVEN, GRADLE..)

· Spring Boot Uygulamasını Spring Ekosistemindeki diğer modüller ile entegre etmek çok kolaydır. (SPRING JDBC,SPRING ORM,SPRING SECURITY..)

JAVA öğreniyor ve kariyerinizi bu alanda yönlendirmek istiyorsanız, öğrenmeniz gereken mükemmel bir framework !

Okuduğunuz için teşekkür ederim.Yararlı olması dileğiyle…

Spring Boot’un Temel Aldığı Yazılım Geliştirme Prensipleri

Merhaba Arkadaşlar,

Bu yazımızda sizlere SPRING BOOT’un temel aldığı yazılım geliştirme prensiplerinden bahsedeceğiz.

Dont Repeat Yourself : DRY prensibi kod tekrarlarından kaçınılmasını temsil eder. Aynı işlemi yapan kodların tekrar tekrar yazılması yerine bir yerde barındırılmalıdır.

Single Responsibility Principle : SOLID prensipleri arasında ilk sıradadır. Bu prensibe göre bir metodun veya sınıfın tek bir görevi olması gerekmektedir.

Keep It Simple Stupid : KISS prensibi uygulama geliştirirken her zaman basit ve sade çözüm üretilmesi gerektiğini dile getiren bir prensiptir.

Do Not Call Us, We Will Call You (Hollywood Principle) : Hollywood prensibi bileşen ve modüllerin doğrudan birbirlerinin API’lerine bağımlı olması yerine Olaylar(Event) vasıtası ile daha esnek bir biçimde haberleşmelerini ve birbirleri ile üzerinden bir takım işlemleri tetiklemelerini önermektedir.

Okuduğunuz için teşekkür ederim.Faydalı olması dileğiyle…

Spring Boot Nedir ?

Merhaba arkadaşlar,

SPRING eğitimimize SPRING BOOT ile devam edelim bakalım nedir , ne değildir ?

Artık uygulamalar kurumsal tabanlı geliştirilmekte ve uygulamar çeşitli katmanlardan oluşmaktadır.Bu katmanlara örnek verecek olursak;

· Veri Erişim Katmanı (Data Access Layer)

· İş Katmanı (Bussines Logic Layer)

· Sunum Katmanı (Presetation Layer)

· Servis Katmanı (Service Layer)

gibi katmanlardan oluşabilir.

Geliştireceğimiz uygulamanın katmanlarında ortaya çıkan bir takım servis ve ihtiyaçlarını hazır bir biçimde geliştiriciye sunan, yazılım geliştirme sürecini daha akıcı bir hale getirmek, uygulamanın çalışma ortamını daha rahat bir şekilde kontrolünü ve konfigürasyonunu SPRING BOOT sağlar.

Spring Nedir ?

Merhaba arkadaşlar, bu yazımızda spring framework ve modüllerini inceleyeceğiz.Öncelikle Framework kelimesinin ne anlama geldiğini öğrenelim.

Framework, yazılım geliştiricilerin kullandığı önceden hazırlanmış kütüphanelerin bulunduğu ve bunlara yenilerini ekleyebileceği yapıların adıdır.

SPRINGJAVA ile kurumsal tabanlı uygulama geliştirmede kullanılan, geliştiricilerin yani bizlerin işlerini hızlandıran ve kolaylaştıran bir framework olarak tanımlayabiliriz.

Spring Framework’ün açık kaynak (open source), ücretsiz ve modüler yapıdadır.Şimdi Modüllerine bir göz atalım.

SPRING FRAMEWORK MODÜLLERİ

Spring MVC (Model-View-Controller)

İlk önce MVC’ mimarisinin ne olduğuna bir göz atalım.

Model : Mimarinin veri katmanıdır veritabanı sınıfları burada tutulur.

View : Uygulamanın kullanıcı ile etkileşimde olan dosyalarının bulunduğu katmandır.

Controller : Model ile View arasında köprü işlemi görür.Kullanıcıdan alınan verileri model’e aktarmakta kullanılır.

Şimdi SPRING MVC modülünü tanımlayabiliriz.

Spring Framework’ün web tabanlı uygulama geliştirme modülüdür.MVC mimarisi kullanarak aktif bir şekilde uygulama geliştirmeyi sağlar.

Spring Core

Spring tabanlı projelerin temelini oluşturur.

Spring AOP (Aspect Oriented Programming)

AOP : Cephe yönelimli programlama yaklaşımıdır.

Spring’in AOP özellikleri direk kullanılmasa da, deklaratif transaksiyon ve güvenlik uygulamalarında Spring AOP , Spring Core tarafından dolaylı olarak kullanılır.

Spring DAO (Database Access Object)

JDBC teknolojisini kullanarak veritabanı işlemlerini yapmayı kolaylaştırır.

Spring ORM (Object Relational Mapping)

Bu modül Hibernate, JDO gibi popüler Object Relational Mapping frameworkler ile entegre olmasını sağlamaktır.

Spring Context

ApplicationContext ve WebApplicationContext gibi sınıflar bu modülde implemente edilmistir. XML dosyalarından bulunan Spring Bean tanımlamalarını okumak ve Spring Bean nesnelerini oluşturmak için kullanılırlar.

Spring Framework ve modüllerini inceledik.Okuduğunuz için teşekkür ederim.Faydalı olması dileğiyle.

Matlab ile Örnekler

Herkese Merhaba,

Bilgisayar Destekli Lineer Cebir Dersi için MATLAB çalışmalarımı  örnekler ile sizlere sunuyorum.Örnekler MATLAB R2018a ile hazırlanmıştır. Herkese başarılar faydalı olması dileğiyle.

Disp(Display) Komutu ile başlayalım.

1111.PNG

Operatörler ile Dört İşlem

4 işlem.PNG

Operatörlerin Öncelik Sırası 

2.PNG

Üs Alma ve Karekök (sqrt)

3.PNG

Atama Operatörü “=” ve “ans”

5.PNG

Pi Komutu, Format short ve Format long

6.PNG

Vektörler

  • Vektör Tanımlama
  • Vektörler ile Toplama
  • Bir Vektörü scaler bir değer ile çarpma

11111111111111.PNG

22222222222.PNG

-Özel vektörler “ones” ve “zeros”

Ekran Alıntısı.PNG

MATRİSLER

Matirsler m * n boyutunda oluşur, m satır n sütun sayısını verir.

11.PNG

 

Matrislerin Bir Skaler ile Çarpımı

Bir matris tanımlayalım ve bu matrisi 3 skaler sayısı ile çarpalım.

2222.PNG

Matrislerin Skaler Çarpımını kodlama ile gerçekleştirelim.

CARS.PNG

Matrislerin Toplanması

İki adet matris tanımlayalım ve bu matrisleri “+” operatörü ile toplayalım.

11.PNG

Matrislerin toplama işlemini kodlama ile gerçekleştirelim
55555555555555555555

Özel Matris

  • Kare Matris : Satır sayısı sütun sayısına eşit ise bu matris kare matristir.
  • Üst Üçgen Matris :  Kare matrisin ilk köşegeninin altındaki girişlerin tümü sıfırdır.
  • Alt Üçgen Matris  : Kare matrisin ilk köşegeninin üstündeki girişlerin tümü sıfırdır.
  • Diagonal Matris     : İlk Köşegen dışında kalan girişlerin tümü sıfır ve genellikle kare matrisdir.
  • Birim Matris   : Diagonal elemanlarının tümü 1 olan matrise denir.

Şimdi Örnekler ile inceleyelim.

3232323.PNG

Matrisin Transpozunu Almak

Matrisin satırları ile sütunlarının yer değiştirme işlemine denir.

3333333333333333333

Matris ile Vektörün Çarpımı

Bir matris ile vektörün çarpımı için birinin sütun sayısı ile diğerinin sütun sayısı eşit olmalıdır. Örn : 3 * 2 x 2 * 3

Bir örnek ile inceleyelim.

55555.PNG

 

 

 

 

 

 

Java Ortam Değişkeni Konfigürasyonu

Merhaba arkadaşlar,

Bu yazımda java ortam değişkenini ayarlamayı anlatacağım.Çok kolay fakat problemler yaşanıyor, aşağıdaki adımları takip ederek deneyelim.

İyi Çalışmalar 🙂

JDK’nın kurulumunu gerçekteleştiridikten sonra

  1. Bu bilgisayar’a sağ tıklıyoruz,
  2. Özellikler penceresini açıyoruz,
  3. Gelişmiş sistem ayarlarına tıklıyoruz.
  4. Gelişmiş sekmesine tıklayıp ortam değişkenlerine tıklıyoruz.

 

tempsnip.png

Yukarıda göründüğü gibi sırayla seçimlerimizi yapalım.Ortam değişkenleri butonuna  tıkladıktan sonra Yeni butonuna tıklıyoruz.Aşağıdaki gibi dolduruyoruz.

2.png

Değişken adımız JAVA_HOME,Değişken değerimiz JDK’nın dizini olmalıdır.Bunu doğrulamak için windows komut sisteminizi açıp aşağıdaki komutları sırayla gerçekleştirebilirsiniz.

C:\Program Files\Java dizininin içine giriniz ve echo %JAVA_HOME% yazınız size bulunduğu konumu verecektir.

JavaHome.PNG

Okuduğunuz için teşekkür ederim! Herkese faydalı olması dileğiyle 🙂