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.
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 🙂
Herkes Uyurken Kodlama : .NET 6.0 ve ASP.NET Core MVC ile – Part 03
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.
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.
.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.
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
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.
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 ü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.
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.
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 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.