NET 6 ile Kurumsal Yazılım Mimarisi Eğitimimizi Tamamladık

Sakarya Uygulamalı Bilimler Üniversitesi – NET 6 Kurumsal Yazılım Mimarisi Eğitimi – Kadir Murat Başeren – Codeove Yazılım ve Danışmanlık

Object oriented programming(OOP) detaylarından, Entity Framework Core detaylarına, SOLID prensiplerinden, bazı design pattern lara kadar uzanan ve sonunda neredeyse her şeyi kullandığımız katmanlı bir kurumsal web api projesi ile hem ilişkisel hem noSql veri tabanı kullandığımız, logging, caching yetenekli eğitimimizi gerçekleştirdik.

Keyifli bir eğitimdi ve bir o kadar da misafirperver bir ekiple tanıştığım için mutluyum. 🙂

Faydalı olması ve projelerinizin başarılı olması dileklerimle.

Herkes Uyurken Kodlama : Entity Framework Core ile Farklı Veri Tabanlarını Kullanma – Part 04

14 Kasım 2022 Pazartesi – 21:30 ‘de görüşmek üzere diyorum 🙂

PART 04 Konuları

  • Entity Framework Core – CodeFirst ve Migrations ile
  • MSSQL
  • MySQL
  • PostgreSQL
  • SQLite
  • InMemory

Veri tabanları ile belirli bir code-base üzerinden git branch kullanarak çalışma örneklendirmesi.

Youtube kanalımda

Video için bildirim ayarlarınızı yapmayı unutmayın!

Herkes Uyurken Kodlama Part 04 – Entity Framework Core ile Farklı Veri Tabanlarını Kullanma – Canlı Yayın
“Herkes Uyurken Kodlama : Entity Framework Core ile Farklı Veri Tabanlarını Kullanma – Part 04” yazısını okumaya devam et

Herkes Uyurken Kodlama : .NET 6.0 ve ASP.NET Core MVC ile – Part 03

Sağlık sorunları nedeni ile ki(burnum tıkalı olunca konuşmak zor oluyor 🙂 ) bu sefer ki canlı yayını biraz ötelemiş olduk ama sorun yok. İlk 2 canlı yayında devam ettiğimiz olayı bu bölümle tamamlayacağım. Bundan sonraki canlı yayınlar daha bağımsız konular, kütüphaneler ve araçlardan oluşuyor olacak.

24 Ekim 2022 Pazartesi – 22:00 ‘de görüşmek üzere diyorum 🙂

PART 03 Konuları

  • JSONResult ile JSON Veri Döndürme(Cookie Auth ile)
  • JWTBearer ile API Controller Oluşturma (JWT Token ile) (Cookie Auth varken !!)

Youtube kanalımda

Video için bildirim ayarlarınızı yapmayı unutmayın!

PART 03

Bu canlı yayından önce

Bu bölüm ile ilişkili PART 02 ve PART 01 ‘i izlemeniz iyi olabilir.

PART 01
PART 02
“Herkes Uyurken Kodlama : .NET 6.0 ve ASP.NET Core MVC ile – Part 03” yazısını okumaya devam et

Herkes Uyurken Kodlama : .NET 6.0 ve ASP.NET Core MVC ile – Part 02

PART 02 Konuları

  • Profil sayfası iyileştirmeleri
  • Image Upload işlemi
  • Admin sayfası User yönetimi (CRUD)
  • Admin sayfası User yönetimi (Modal ve AJAX ile CRUD)
  • JQuery Ajax Unobtrusive Kütüphanesi Kullanımı
  • AutoMapper Kullanımı

Youtube kanalımda

Video için bildirim ayarlarınızı yapmayı unutmayın!

Bu canlı yayından önce

Bu bölüm ile ilişkili PART 01 ‘i izlemeniz iyi olabilir.

“Herkes Uyurken Kodlama : .NET 6.0 ve ASP.NET Core MVC ile – Part 02” yazısını okumaya devam et

Herkes Uyurken Kodlama : .NET 6.0 ve ASP.NET Core MVC ile – Part 01

Herkes Uyurken Kodlama : .NET 6.0 ve ASP.NET Core MVC ile – Part 01

.NET 6.0 ve ASP.NET Core MVC ile canlı yayın serisi planlıyorum. Çeşitli kütüphaneleri ve “..şu nasıl yapılır, böyle bir şeyi nasıl yaparız..” şeklinde kendimce kurguladığım senaryolar üzerinden projeyi ilerletiyor olacağım.

PART 01 Konuları

  • Login, Register, Logout & Profile Page Oluşturma
  • Cookie Authentication
  • Entity Framework CodeFirst & Mig.
  • Password Encryption
  • Project Template Oluşturma

GitHub proje reposu (aradığın her şey orada – Part01 klasöründe)
https://github.com/muratbaseren/herkes-uyurken-kodlama

Canlı Yayın Serisi Amacı

  • .NET Core teknolojisi ve MVC ile yazılım geliştirme konusunda yeni olan,
  • bir şeyler yapmaya çalışan ama teorik bilgiyi pratiğe dökemeyen,
  • pratiğe döken ama şu nasıl yapılıyormuş onu da öğrenmek isteyen,
  • bildiği ya da bilmediği kütüphaneleri öğrenmek ve nasıl kullanılır görmek isteyen,
  • herkes uyurken film izlemek yerine beni dinlemek ve beni yalnız bırakmak istemeyen, 🙂
  • en azından herkes uyurken rahat rahat bir şeyler öğrenmek

isteyenler için daha uygundur. Tecrübeli kişiler için çok uygun olmayabilir(o konuda başka planlarım var 😉 ).

Bu canlı yayın ve devamında, ön gereksinim olarak bilmeniz gereken temel konular hakkında bilgi sahibi olduğunuz KABUL EDİLEREK ANLATILACAK. (mesela; C# dili temelleri, MVC temelleri, veri tabanı ve sql temelleri gibi bilgileri bildiğiniz varsayılarak anlatacağım.) Yani bir dil ya da teknoloji öğretiminden çok birlikte canlı canlı projeyi geliştirme ve elinizde ileri de pratik şekilde hızlıca bir uygulama geliştirme noktasında imkanların olmasını sağlamak diyebiliriz. 🙂

Projeyi geliştirme süreci doğal, yer yer doğaçlama bir yapıda ilerliyor olabilir.

BAZI LİNKLER

Tüm sosyal medya ya da platform adreslerim için;
https://about.me/KadirMuratBaseren

GitHub profilim için;
https://github.com/muratbaseren

Udemy sayfam için;
https://www.udemy.com/user/kadirmuratbaeren

Projeleriniz ile ilgili

Talepleriniz ya da ürünlerimiz, hizmetlerimiz ve çözümlerimiz için aşağıdaki adresten kurumsal detayları öğrenebilirsiniz.

Codeove – Bulut Yazılım Geliştirme ve Danışmanlık
https://www.codeove.com
https://akademi.codeove.com

Acunmedya Akademi Dijital ile Yazılım Uzmanlığı Eğitimlerim Başlıyor

Acunmedya Akademi – K. Murat Başeren

Acunmedya Akademi Dijital ve Nişantaşı Üniversitesi tarafından düzenlenen Genişletilmiş Yazılım Uzmanlığı Eğitimlerim yakında başlıyor. Detaylar ve başvuruyu bu sayfadan yapabilirsiniz.

Acunmedya Akademi deki eğitmen sayfama buradan ulaşabilirsiniz. 😉

K. Murat Başeren – Acunmedya Akademi Videosu

DETAYLAR

Yazılım Uzmanlığı Eğitimi 2 aşamada tamamlanacaktır. Öğrencilerimiz eğitimin ilk aşamasında; “Temel Yazılım” öğrenerek uzmanlaşmak istedikleri alanı seçecek duruma geleceklerdir. Böylece öğrencilerimiz kendi gelecekleri ve kariyerleri konusunda kendi kararlarını vererek Back-end ya da Front-end Uzmanlıklarından tercih ettikleri ile eğitimlerinin ikinci aşamasına devam ederler.

Bu eğitim programında; 80 Saat Temel Eğitim ve 100 Saat Uzmanlık Eğitimlerine ek olarak 100 saat video, 50 saat online etüt çalışması yapılmaktadır. Toplam eğitim içeriği 18 Hafta 330 saattir.

DİJİTAL İŞİN OLSUN

Sürekli yenilenen ve gelişen dijital dünyanın yeni nesil uzmanlarını yetiştirmek için biz hazırız. Peki sen bu dünyanın kapılarını aralamaya hazır mısın? Uygulama odaklı, eşsiz eğitim içeriklerini alanında uzman eğitmenler titizlikle anlatırken sektörün tanınmış üstadları da bu eğitimlere konuk olarak iş hayatından yaşanmış örnekler ve deneyimlerini aktaracaklar.

EĞİTİM ALACAK KİŞİLERE SAĞLANACAK EK FAYDALAR NELERDİR?

Tüm öğrencilerimiz Acunedya Akademi’nin geniş network’ünün içine girerek, eğitim süresince organize edilen Talks, Workshop ve MasterClass etkinlikleri sayesinde, sektör duayenleri ile bire bir tanışma, sohbet etme ve soru sorma fırsatı yakalayarak kendi network’lerini oluşturuyorlar.

TEMEL EĞİTİM KONULARI (80 Saat)

-Algoritma
-Temel HTML
-Temel CSS
-Bootstrap
-Javascript programlama
-JQUERY-AJAX
-SQL (MSSQL)
-NoSQL (MongoDB)
-Temel API programlama (Node JS / WEB API)
-Web uygulama örnekleri
-Windows forms app programlama
-Desktop uygulama örnekleri
-Git
-GitHub
-Proje yayınlama

BACK-END UZMANLIK EĞİTİM KONULARI (100 Saat)

-C# Programlama
-Object oriented programming
-Advanced SQL programming
-Advanced windows form app
-ADO.NET
-DAPPER
-ENTITY FRAMEWORK & EF CORE
-ASPNET Core MVC
-ASPNET Core razor pages
-ASPNET Core web API
-Proje yayınlama

FRONT-END UZMANLIK EĞİTİM KONULARI (100 Saat)

-Advanced HTML, HTML5
-Advanced CSS, CSS3
-SASS programlama
-Advanced javascript
-Advanced jquery & AJAX
-EcmaScript 6
-NodeJS
-MongoDB
-ReactJS
-Redux
-NextJS
-Proje yayınlama

Office 365 Hesabınızı Kullanarak uygulamalarınız Üzerinden E-Posta Gönderme

Web Hosting hesapları üzerinden herhangi bir ayar yapmadan SMTP e-posta gönderimi yapabilirken, office 365 e geçtiğimiz de güvenlik önlemlerinin fazla olması sebebi ile bu işlem bir kaç ayardan sonra yapılabilir durumda oluyor. Tabii ki bu ayarlar sizin güvenliğiniz için ama bazı zamanlar biraz fazla güvenli olabiliyor. Neyse sözü çok uzatmadan bu ayarlara bakalım.

Geliştirdiğiniz uygulamanızda SMTP e-posta gönderimi için office 365 hesabınızı kullanmak istediğiniz de öncelikle lisanslı bir adresinizi kullanmanız gerekiyor. Yani bir grup(group) ya da paylaşımı(shared) e-posta hesabı kullanarak atmak isteseniz bile kullanıcı adı ve şifre olarak lisanslı bir e-posta adresi bilgilerini yazmanız gerekecektir.

Bunları yapsanız da yine bazı hatalar alabilirsiniz. Bu hatalardan biri mesela bu;

535 5.7.139 Authentication unsuccessful, the request did not meet the criteria to be authenticated successfully.

Eğer doğru kullanıcı adı(yani e-posta adresi) ve şifresi elinizde varsa şu ayarları yaparak denerseniz e-posta gönderimini yapabilirsiniz. Ben denediğimde bu şekilde gönderilmesini sağladım.

Öncelikle e-posta göndereceğiniz adresin SMTP ayarı açık mı bakalım yoksa açın!

https://admin.microsoft.com/ adresine giderek sol panel den kullanıcılara gidin.

E-posta göndereceğiniz lisanslı hesap adına tıklayarak ayarlarına gidin!

Manage email apps seçeneği ile açılan pencerede SMTP yi etkinleştirin!

Ardından yine kullanıcı listesine gelerek “Multi-factor authentication” ayarlarını kontrol ediyoruz. İlgili e-posta adresi için disabled olmalı.

Şimdi ise son olarak Azure Portal a giderek “Azure Active Directory” ayarlarında varsayılan olarak gelen “Enable Security defaults” (güvenlik varsayılanları) ayarını kapatmamız gerekiyor.

Aşağıdaki şekilde bunu yapabilirsiniz. Sebep olarak “other” diyip bir şeyler yazabilirsiniz. Ya da var olanlardan birini seçebilirsiniz, önemi yok!

Bu işlemin ardından ben Mailkit kullanarak NET Core proje de aşağıdaki kod ile SMTP e-posta gönderimini sağlayabildim. Umarım sizlere de faydalı olur.

GitHub Storage Aşımı ve Spending Limit Uyarısı

GitHub Storage Harcama Limiti(Spending Limit) Uyarısı

GitHub üzerinde repolarınız ile çalışırken karşılaşabileceğiniz, özellikle Actions ya da Packages kullanıyorsanız, aşağıdaki gibi bir uyarı ile karşılaşmanız mümkün. Bende karşılaştığım için bu durumdan ve çözümünden bahsetmek iyi olabilir diye düşündüm.

GitHub Storage (GitHub Actions and Packages) Spending Limit Uyarısı Görünümü

Bu uyarı repolarınızda varsa ayarladığınız Actions ların çalışma sonrası oluşan publish(yayınlanmaya) hazır Artifact denen paketlerin birikmesinden dolayı oluşmaktadır.

Daha basit bir şekilde bu paketleri anlatmak gerekirse; bir projenizi publish etmek istediğinizde, bir klasöre publish edip dosyaları FTP ile(ya da farklı bir yöntemle) sunucuya atarsınız ya, işte o klasöre publish ettiğiniz dosya yığınları diyebiliriz.

GitHub üzerinde repolarınız da, Actions kavramını kullanıyorsanız her action workflow işleminin çalışması sonrası bu publish paketleri oluşup birikmektedir. Repo ayarlarında bu paketlerin maksimum saklanma süresi varsayılan olarak 90 gün olarak belirtildiğinden, 90 günde bir resetlenir. Bu süre uzun olduğundan biriken zamanla ciddi bir hacime ulaşır.

GitHub Free Plan Özellikleri

Yukardaki ekran görüntüsünde benim bireysel hesabımda(free plan) bu bahsettiğim hacim(GitHub Storage) 500 MB olduğundan sınırı geçmeniz durumunda bu uyarı çıkacaktır. Size “Hizmetin kesintiye uğramaması için ödeme yapmanızı önerecektir.” Eğer buna ihtiyacınız varsa ödeme yapabilir ve daha geniş bir Storage alanının keyfini sürebilirsiniz. Ya da Pro Plan a geçmekte size (yine ödemeli) daha fazla özellik ve yüksek değerler sağlayacaktır.

Sınırı Geçtiğimin Resmi

Bu aşamada Free Plan da kalarak bu durumu aşmak istiyorsanız. Mecburen bu Actions ların oluşturduğu artifacts ve log dosyalarının alıkonma(retention) gün süresini azaltmalısınız ki çok birikmesin ve ücretsiz 500 MB GitHub Storage ‘ınız dolmasın. Bunu maalesef repo larda tek tek yapmanız gerekiyor. Yani Actions ayarlı repoların “Settings” sayfasına girerek aşağıdaki menü den bu süreyi o repo için ayarlayabilirsiniz.

Repository de Artifact ve Log Alıkonma(Retention) Gün Ayarı

Uyarı hemen kaybolmayabilir. Bir süre beklemek gerekecek. GitHub sistemindeki bazı Job lar bu kontrolleri yapıp belirttiğiniz gün den eski artifact ve log dosyalarını silecektir. Tabii ki bir başka Job da Storage alanınızın hesabını yapacaktır. Belki bir başka job da uyarıyı kaldıracaktır. En kötü belirtilen gün(alana yazdığınız gün değeri) sonrasında gerekli sıfırlanma yapılacaktır. Kısacası bir şekilde Storage alanınızda yer açılınca uyarı kalkacaktır.

Burada dikkat edilmesi gereken, Retention gün değeri olarak yazılan gün süresi içinde çok fazla Actions çalışması artifact oluşumunu yine sağlayacağından alanınız hiç boşalamayabilir. Ona göre gerekirse 1 gün gibi bir değer vererek sıfırlama sürenizi kısa tutmak hızlı dolan Storage lar için yeterli çözüm olacaktır.

Fakat buna rağmen aşıyorsanız Free Plan size uygun olmayabilir. O zaman mecbur ödeme ya da farklı bir sistem üzerinden bu CI/CD süreçlerini konuşlandırabilirsiniz.

Faydalı olması dileklerimle..

codeove-yazilim-gelistirme-ve-danismanlik-hizmetleri

Codeove : Bulut(Cloud) Yazılım Geliştirme ve Danışmanlık Hizmetleri

Codeove ile Bulut(Cloud) Yazılım Geliştirme ve Danışmanlık Hizmetleri

CODEOVE

Codeove; web tabanlı bulut yazılım çözümleri sunan ve bulut teknolojileri üzerine uzmanlaşmış bir yazılım ve danışmanlık firmasıdır. Tecrübemiz ile sizin için paket veya özel bulut çözümler üretiyor, hayata geçiriyoruz. Sürekli olarak güncel teknolojiler ile geliştirdiğimiz, yeni proje ve yazılımlarımız ile siz müşterilerimize alternatifli çözümler sunuyoruz.

Sitemizi incelemek için tıklayınız : codeove.com

Yazılım Danışmanlığı çözümlerimiz ile sizde şirketinizi dijitalleştirin

Son teknolojiler ile yazılım alt yapılarınızı oluşturabilir veya geliştirmenize yardımcı olabiliriz. Şirketiniz için geliştirmeyi düşündüğünüz yazılım projelerini birlikte hayata geçirebiliriz. Sizde doğru adımlarla projelerinizi hayata geçirmekte geç kalmayın.

Özel Yazılım Geliştirme çözümümüz ile projelerinizi ertelemeyin

Uzun yıllar edindiğimiz bilgi ve tecrübe ile son teknoloji yazılım ve sistem ekipmanlarıyla ve uzman kadromuz ile her zaman yanınızdayız. Geliştirmeyi planladığınız projenizi sizin istekleriniz doğrultusunda analiz ederek size özel bir çözüm ile hayata geçirmenize yardımcı olabiliriz.

Proje Analiz hizmetimiz ile projelerinizi birlikte analiz edebiliriz

Yazılım geliştirmeye başlamadan önceki aşamada, ilk olarak genel bir kapsam çıkartılması gerekir. Bu kapsamla birlikte yazılımın üzerinde çalışacağı donanım bileşenlerini de kapsayacak şekilde bir sistem analizi yapıyoruz. Ardından yazılım ve donanım gereksinimleri ana hatlarıyla belirlenince yazılım için proje planı çıkartarak yazılım gereksinimlerinizi çözümlemeye başlamanıza destek olabiliriz.

Proje ve Ekip Yönetimi hizmetimiz ile projelerinizi takip ediyor ve yönetiyoruz

Mevcut proje ve ekibinizi uygun metodolojileri kullanarak yönetiyoruz. İş süreçlerinizi doğru bir şekilde planlayarak doğru uygulamalarla takip ediyor ve planlı bir şekilde ilerletiyoruz. Anlık olarak proje süreçlerinizi görüntülenebilir ve raporlanabilir hale getiriyoruz.

Çözümlerimiz de Bulut Teknolojilerini Kullanıyoruz

Bulut teknolojisi ile fark yaratan iş modellerini sizlerle tanıştırıp sizleri geleceğe taşıyoruz. Şirketlerin bulut yazılımlar ile en doğru şekilde çalışmasını ve geliştirdiğimiz uygulamaların bulut teknolojisinin tüm imkanlarını kullanmasını sağlıyoruz.

Superpeer : muratbaseren

Superpeer platformuna katılmış bulunuyorum. Bu platform üzerinden sunduğum bazı hizmetler için bire-bir(1:1) görüşme ayarlayabilirsiniz. Aşağıdaki adresten hesabıma ulaşabilirsiniz.

Superpeer : muratbaseren