HAFTA 20
Basamaklı stil şablonu (CSS – Cascaded Style Sheet) kullanımını
açıklar
Basamaklı Stil Şablonu (CSS – Cascaded Style Sheet), web sayfalarının görünümünü ve düzenini kontrol etmek için kullanılan bir stil dilidir. CSS, HTML veya diğer işaretleme dilleri ile birlikte kullanılarak, web sayfalarının renkleri, fontları, boyutları ve düzeni gibi görsel özelliklerini belirlemek için kullanılır. İşte CSS kullanımını açıklayan temel kavramlar:
CSS Temel Kavramları
- Selector (Seçici):
- HTML öğelerini hedeflemek için kullanılır.
- Örneğin,
h1
selector’u tüm başlık 1 öğelerini hedefler.
- Property (Özellik):
- Seçilen öğelerin görünümünü belirleyen özelliklerdir.
- Örneğin,
color
özelliği metin rengini belirler.
- Value (Değer):
- Bir özelliğin alabileceği değeri belirtir.
- Örneğin,
color: blue;
ifadesinde “blue” değeri metin rengini belirler.
- Declaration (Bildiri):
- Bir öğenin stilini tanımlayan bir veya daha fazla özellik ve değer çiftidir.
- Örneğin,
h1 { color: blue; }
ifadesinde “color: blue;” bir bildiridir.
- CSS Rule (CSS Kuralı):
- Bir seçici ve bu seçiciye uygulanan bir veya daha fazla bildiriden oluşan bir kurallar setidir.
- Örneğin,
1 2 3 4 5 6 |
h1 { color: blue; font-size: 24px; } |
- ifadesinde iki bildiri içeren bir CSS kuralı bulunur.
CSS Kullanımı
- İç CSS:
- HTML belgesinin
<style>
etiketi içinde CSS kodlarını tanımlamak.
- HTML belgesinin
1 2 3 4 5 6 7 |
<style> h1 { color: blue; } </style> |
Dış CSS:
- CSS kodlarını ayrı bir dosyada saklamak ve HTML belgesine bu dosyayı bağlamak.
- HTML Dosyası:
1 2 3 4 5 6 7 8 9 10 11 |
<!DOCTYPE html> <html lang="en"> <head> <link rel="stylesheet" href="styles.css"> </head> <body> <h1>Hello, World!</h1> </body> </html> |
- CSS Dosyası (styles.css):
1 2 3 4 5 |
h1 { color: blue; } |
CSS Selectors
- Element Selector:
- Belirli HTML öğelerini hedefler.
- Örneğin,
p
selector’u tüm paragrafları hedefler.
- Class Selector:
- Belirli bir sınıfa sahip öğeleri hedefler.
- Örneğin,
.highlight
selector’u “highlight” sınıfına sahip öğeleri hedefler.
- ID Selector:
- Belirli bir kimlik (ID) değerine sahip öğeleri hedefler.
- Örneğin,
#header
selector’u “header” ID’sine sahip öğeleri hedefler.
Web Tasarım açısından içeriğin önemini açıklar
Web tasarımı, kullanıcı deneyimini ve etkileşimini iyileştirmeyi amaçlayan bir sanat ve bilim kombinasyonudur. İçerik, web tasarımının temel taşlarından biridir çünkü kullanıcıların sitenize gelmelerinin temel nedeni içeriktir. İçeriğin doğru bir şekilde sunulması, kullanıcıların sitede gezinmelerini, bilgiye ulaşmalarını ve sitenin amacına ulaşmalarını kolaylaştırır. İşte web tasarımında içeriğin önemini açıklayan temel noktalar:
Kullanıcı Odaklı Deneyim
- Doğru ve İlgili Bilgi:
- Kullanıcılar, sitenize gelerek belirli bir bilgiye ulaşmak veya belirli bir ihtiyacını karşılamak ister. İçerik, bu ihtiyaçları karşılayacak şekilde düzenlenmelidir.
- Kullanıcı İhtiyaçlarına Göre Kişiselleştirme:
- İçerik, farklı kullanıcı gruplarına yönelik olarak kişiselleştirilebilir. Bu, kullanıcıların sitenizde daha uzun süre geçirmelerine ve tekrar ziyaret etmelerine olanak tanır.
SEO ve Arama Motoru Dostu İçerik
- Anahtar Kelime Kullanımı:
- İçerik, hedeflenen anahtar kelimeleri doğru ve organik bir şekilde içermelidir. Bu, arama motorları tarafından sitenizin daha iyi indekslenmesine yardımcı olur.
- Bilgilendirici Başlıklar ve Alt Başlıklar:
- Başlıklar ve alt başlıklar, içeriğin hiyerarşisini belirler ve okuyuculara içeriği taramalarında yardımcı olur. Aynı zamanda arama motorlarına içeriğin anlamını anlatır.
Görsel Çekicilik ve İletişim
- Görsel Elemanlar:
- Resimler, videolar ve grafikler gibi görsel elemanlar, içeriği zenginleştirir ve görsel bir çekicilik sağlar. Ancak, görsellerin aşırı kullanımından kaçınılmalıdır, çünkü ağır sayfa yükleri kullanıcı deneyimini olumsuz etkileyebilir.
- Renk ve Tipografi:
- Renk paleti ve tipografi, içeriğin algılanma biçimini etkiler. Renkler ve yazı stilleri, marka kimliği ile uyumlu olmalı ve okunabilirliği artırmalıdır.
İçerik Yönetimi ve Güncel Tutma
- Düzenli Güncellemeler:
- İçeriği düzenli olarak güncellemek, sitenizi ziyaret eden kullanıcılara ve arama motorlarına güncel ve değerli bir kaynak olduğunuzu gösterir.
- Kullanıcı İletişimi:
- Kullanıcı geri bildirimleri ve yorumlar, içeriğin kullanıcılar tarafından nasıl algılandığını anlamanın bir yolu olabilir. Bu geri bildirimlere dayanarak içeriği iyileştirmek önemlidir.
Web Tasarımda yeni teknolojilerin kullanılmasının önemini açıklar
Web tasarımında yeni teknolojilerin kullanılması, dinamik, etkileyici ve kullanıcı dostu web siteleri oluşturmak için önemli bir unsurdur. Teknolojinin hızla gelişmesi, web tasarımcılarına daha güçlü araçlar ve özellikler sunmaktadır. Bu nedenle, yeni teknolojileri takip etmek ve uygulamak, web tasarımının rekabetçi kalmasını sağlar. İşte web tasarımında yeni teknolojilerin kullanılmasının önemini açıklayan temel noktalar:
Kullanıcı Deneyimi ve Etkileşim
- Dinamik ve Hızlı Yüklenen Sayfalar:
- Yeni teknolojiler, sayfa yükleme hızını artırabilir ve kullanıcıların içeriğe daha hızlı erişmelerini sağlar. Özellikle tek sayfa uygulamaları (SPA) gibi teknolojiler, sayfa yeniden yükleme ihtiyacını azaltarak kullanıcı deneyimini iyileştirir.
- Modern Animasyonlar ve Efektler:
- CSS3 ve JavaScript tabanlı animasyonlar, sayfaları daha etkileyici hale getirir ve kullanıcıların dikkatini çeker. Özellikle parallax kaydırma ve sayfa geçiş efektleri gibi özellikler, modern web tasarımının vazgeçilmezlerindendir.
Mobil Uyum ve Duyarlı Tasarım
- Mobil Dostu Teknolojiler:
- Mobil cihazlar için optimize edilmiş teknolojiler (Bootstrap, React Native, Flutter gibi) kullanarak, web siteleri mobil kullanıcılar için daha iyi bir deneyim sunar.
- Duyarlı Tasarım ve İlerici Web Uygulamaları:
- Yeni teknolojiler, ekran boyutlarına ve cihaz özelliklerine otomatik olarak uyum sağlayabilen duyarlı tasarım yaklaşımlarını destekler. İlerici web uygulamaları (PWA), çevrimdışı erişim, anında yükleme ve bildirimler gibi özellikleri destekleyerek mobil deneyimi güçlendirir.
Güvenlik ve Performans
- HTTPS ve Güvenli Bağlantılar:
- SSL/TLS gibi güvenlik protokollerini destekleyen teknolojiler, web sitelerinin güvenliğini artırır ve kullanıcı verilerini korur.
- Gelişmiş Performans Optimizasyonu:
- Yeni teknolojiler, sayfa hızını ve performansını artırmak için gelişmiş optimizasyon tekniklerini destekler. Bu, kullanıcıların sitenizde daha uzun süre geçirmelerine ve daha fazla etkileşimde bulunmalarına yardımcı olabilir.
SEO ve Veri Yönetimi
- Teknoloji Tabanlı SEO Stratejileri:
- Arama motoru dostu teknolojiler kullanarak, web sitenizin indekslenmesini ve sıralamasını artırabilirsiniz.
- Gelişmiş Veri Yönetimi ve Analitik:
- Yeni teknolojiler, web sitelerinden elde edilen verilerin daha etkili bir şekilde yönetilmesini ve analiz edilmesini sağlar. Bu da kullanıcı davranışları hakkında daha derinlemesine bilgi sağlar.
HAFTA 21
Web sitesinin, alan adı, içerik vb. konularda uygunluğunu açıklar
Web sitesi oluştururken, sitenin alan adı, içerik ve diğer faktörlerde uygunluğu önemlidir. Bu unsurlar, kullanıcı deneyimini etkiler, marka itibarını şekillendirir ve web sitesinin başarısını belirler. İşte web sitesinin uygunluğunu açıklayan temel noktalar:
Alan Adı Uygunluğu
- Kolay Akılda Kalan ve Tanımlayıcı:
- Alan adı, ziyaretçilerin hafızasında kolayca yer edinmeli ve markanızı tanımlayıcı olmalıdır. Kısa, öz ve anlamlı alan adları tercih edilmelidir.
- Marka İmajına Uygun:
- Alan adı, markanızın değerlerini ve misyonunu yansıtmalıdır. İyi bir alan adı, marka imajınızı güçlendirir.
- SEO Dostu:
- Anahtar kelimeleri içeren ve arama motorlarına uygun olan bir alan adı seçmek, web sitenizin SEO performansını artırabilir.
İçerik Uygunluğu
- Hedef Kitleye Uygun İçerik:
- İçerik, sitenizin hedef kitlesini düşünerek hazırlanmalıdır. Hedef kitleye değerli bilgiler sunmak, kullanıcı bağlılığını artırır.
- Güncel ve Relevan İçerik:
- Web sitesindeki içerik düzenli olarak güncellenmeli ve sektörle ilgili en son bilgileri içermelidir.
- Görsel ve Multimedya İçerik:
- İyi seçilmiş görseller, videolar ve diğer multimedya öğeleri, içeriği zenginleştirir ve kullanıcıların ilgisini çeker.
Kullanıcı Deneyimi ve Arayüz Uygunluğu
- Duyarlı Tasarım:
- Web sitesi, farklı cihazlarda (bilgisayar, tablet, mobil) uyumlu ve kullanıcı dostu bir arayüze sahip olmalıdır.
- Kolay Navigasyon:
- Menüler ve sayfa düzeni, ziyaretçilerin kolayca gezinmelerini sağlamalıdır. Anlaşılır bir navigasyon, kullanıcı deneyimini olumlu yönde etkiler.
Güvenlik Uygunluğu
- SSL Sertifikası:
- Web sitenizin güvenliği için SSL sertifikası kullanılmalıdır. Bu, kullanıcı verilerini şifreleyerek güvenli bir bağlantı sağlar.
- Güvenlik Duvarları ve Güncel Yazılımlar:
- Web sitesi yazılımları güncel tutulmalı ve güvenlik duvarları gibi önlemler alınmalıdır.
Performans Uygunluğu
- Hızlı Yükleme Süreleri:
- Web sitesi, hızlı yükleme sürelerine sahip olmalıdır. Hızlı yüklenen siteler, kullanıcı memnuniyetini artırır.
- Mobil Optimizasyon:
- Web sitesi, mobil cihazlara uyumlu ve optimize edilmiş olmalıdır.
Web sitesinin tüm platformlarda sorunsuz çalışması ilkesini açıklar
Web sitesinin tüm platformlarda sorunsuz çalışması, kullanıcıların farklı cihazlarda (bilgisayarlar, tabletler, mobil telefonlar) ve farklı tarayıcılarda (Chrome, Firefox, Safari, vb.) aynı kaliteli deneyimi yaşamasını sağlamayı hedefler. Bu ilke, geniş bir kitleye ulaşmak ve kullanıcı memnuniyetini artırmak için önemlidir. İşte web sitesinin tüm platformlarda sorunsuz çalışması ilkesini açıklayan temel noktalar:
Duyarlı Tasarım (Responsive Design)
- Çeşitli Ekran Boyutlarına Uyum:
- Duyarlı tasarım, farklı ekran boyutlarına otomatik olarak uyum sağlar. Bu, kullanıcıların bilgisayar, tablet veya mobil cihazlarında sitenin düzgün görüntülenmesini sağlar.
- Esnek ve Akışkan Tasarım:
- Duyarlı tasarım, içeriği esnek bir şekilde düzenleyerek, ekran genişliği değiştikçe bile sitenin akıcı bir şekilde görüntülenmesini sağlar.
Tarayıcı Uyumluluğu
- Farklı Tarayıcıları Destekleme:
- Web sitesi, farklı tarayıcıları (Chrome, Firefox, Safari, Edge, vb.) destekleyerek, kullanıcıların tercih ettiği tarayıcıda sorunsuz çalışmasını sağlamalıdır.
- CSS ve JavaScript Uyumlu Kullanım:
- Tarayıcılar arasındaki uyumsuzlukları önlemek için CSS ve JavaScript kodları, tarayıcı uyumluluğuna dikkat edilerek yazılmalıdır.
Performans ve Hız
- Hızlı Yükleme Süreleri:
- Web sitesi, tüm platformlarda hızlı yükleme sürelerine sahip olmalıdır. Hızlı yükleme, kullanıcıların sitede daha uzun süre kalmasını sağlar.
- Verimli Kaynak Kullanımı:
- İleri düzey optimizasyon teknikleri kullanılarak, sayfa kaynakları (resimler, stil dosyaları, vb.) etkili bir şekilde yönetilmelidir.
Mobil Uyum ve İlerici Web Uygulamaları (PWA)
- Mobil Optimize Edilmiş Tasarım:
- Web sitesi, mobil cihazlara özel optimize edilmiş bir tasarıma sahip olmalıdır.
- İlerici Web Uygulamaları (PWA):
- PWA, web sitesinin mobil uygulama gibi davranmasını sağlar. Çevrimdışı erişim, anında yükleme ve bildirim özelliklerini destekler.
Test ve Geri Bildirim
- Çapraz Platform Testleri:
- Web sitesi, geliştirme aşamasında ve düzenli aralıklarla çapraz platform testlerine tabi tutularak, farklı cihazlarda ve tarayıcılarda sorunsuz çalıştığından emin olunmalıdır.
- Kullanıcı Geri Bildirimleri:
- Kullanıcı geri bildirimleri toplanarak, kullanıcıların farklı platformlarda yaşadıkları deneyimler değerlendirilmeli ve gerektiğinde düzeltmeler yapılmalıdır.
HTML5 belge yapısını kullanarak basit bir web sayfası hazırlar
HTML5, modern web geliştirmenin temel taşlarından biridir ve web sayfalarının yapısını oluşturmak için kullanılan bir işaretleme dilidir. HTML5 belge yapısını kullanarak basit bir web sayfası hazırlamak, temel HTML öğelerini anlamak ve kullanmak için önemlidir. Bu kazanım, öğrencilere HTML5’in temel yapı taşlarını öğretir ve basit bir web sayfası oluşturma becerisi kazandırır.
HTML5 Belge Yapısı
HTML5 belge yapısının temel özellikleri şunlardır:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Basit Web Sayfası</title> </head> <body> <header> <h1>Hoş Geldiniz!</h1> </header> <nav> <ul> <li><a href="#section1">Bölüm 1</a></li> <li><a href="#section2">Bölüm 2</a></li> <li><a href="#section3">Bölüm 3</a></li> </ul> </nav> <section id="section1"> <h2>Bölüm 1</h2> <p>Bu, web sayfasının birinci bölümüdür.</p> </section> <section id="section2"> <h2>Bölüm 2</h2> <p>Bu, web sayfasının ikinci bölümüdür.</p> </section> <section id="section3"> <h2>Bölüm 3</h2> <p>Bu, web sayfasının üçüncü bölümüdür.</p> </section> <footer> <p>© 2023 Basit Web Sayfası</p> </footer> </body> </html> |
Web Sayfası Oluşturma
Yukarıdaki örnekte, HTML5 belge yapısını kullanarak basit bir web sayfası oluşturulmuştur. Sayfa başlığı, menü, bölümler ve alt bilgi gibi temel yapı taşları kullanılmıştır.
Açıklama
<!DOCTYPE html>
: HTML5 belgesi olduğunu belirten doctype deklarasyonu.<html lang="en">
: HTML dokümanının başlangıcı ve dil tanımı (İngilizce).<head>
: Başlık, karakter seti ve görüntüleme özelliklerini içeren başlık bölümü.<body>
: Web sayfasının içeriğini içeren ana bölüm.<header>
: Sayfa başlığını içeren bölüm.<nav>
: Menü öğelerini içeren bölüm.<section>
: Web sayfasının ana bölümlerini içeren bölüm.<footer>
: Sayfa alt bilgisini içeren bölüm.
HAFTA 22
Web sayfaları arasında bağlantı sağlayan HTML kodunu uygular
Web sayfaları arasında bağlantı sağlamak, kullanıcıların farklı sayfalar arasında gezinmesini ve bilgilere hızlı bir şekilde erişmesini sağlar. Bu kazanım, HTML içindeki bağlantı oluşturma kodlarını anlamak ve kullanmak üzerine odaklanır.
HTML Bağlantı Oluşturma
HTML’de bağlantı oluşturmak için <a>
(anchor) etiketi kullanılır. Bu etiket, kullanıcıyı başka bir sayfaya, dosyaya, ya da dış bir kaynağa yönlendirmek için kullanılır.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Bağlantı Örneği</title> </head> <body> <h1>Web Sayfaları Arasında Bağlantı Örneği</h1> <!-- Harici bir web sayfasına bağlantı --> <a href="https://www.example.com" target="_blank">Example.com</a> <p>Diğer sayfalara bağlantılar:</p> <!-- İç sayfalara bağlantı --> <ul> <li><a href="sayfa1.html">Sayfa 1</a></li> <li><a href="sayfa2.html">Sayfa 2</a></li> <li><a href="sayfa3.html">Sayfa 3</a></li> </ul> </body> </html> |
Açıklama
<a>
etiketi: Bağlantı oluşturmak için kullanılır.href
özelliği: Bağlantının gideceği adresi belirtir.target="_blank"
: Bağlantının yeni bir pencerede açılmasını sağlar.
- İç sayfalara bağlantılar:
<a>
etiketi içinde diğer sayfalara bağlantılar oluşturulmuştur.
Form elemanlarının özelliklerini gösteren HTML5 kodunu uygular
HTML form elemanları, kullanıcılardan bilgi almak ve bu bilgileri sunucuya iletmek için kullanılır. Bu kazanım, HTML5 form elemanlarının temel özelliklerini anlamak ve uygulamak üzerine odaklanır.
HTML5 Form Elemanları ve Özellikleri
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Form Elemanları Örneği</title> </head> <body> <h1>Kullanıcı Bilgi Formu</h1> <form action="/submit" method="post"> <!-- Metin Kutusu (Text Input) --> <label for="ad">Adınız:</label> <input type="text" id="ad" name="ad" required> <!-- Şifre Alanı (Password Input) --> <label for="sifre">Şifreniz:</label> <input type="password" id="sifre" name="sifre" required> <!-- Radyo Düğmeleri (Radio Buttons) --> <label>Cinsiyet:</label> <input type="radio" id="erkek" name="cinsiyet" value="erkek" checked> <label for="erkek">Erkek</label> <input type="radio" id="kadin" name="cinsiyet" value="kadin"> <label for="kadin">Kadın</label> <!-- Onay Kutusu (Checkbox) --> <input type="checkbox" id="haberBulteni" name="haberBulteni" checked> <label for="haberBulteni">Haber Bülteni Aboneliği</label> <!-- Seçim Kutusu (Select) --> <label for="sehir">Yaşadığınız Şehir:</label> <select id="sehir" name="sehir"> <option value="istanbul">İstanbul</option> <option value="ankara">Ankara</option> <option value="izmir">İzmir</option> </select> <!-- Metin Alanı (Text Area) --> <label for="mesaj">Mesajınız:</label> <textarea id="mesaj" name="mesaj" rows="4" cols="50"></textarea> <!-- Gönderme Düğmesi (Submit Button) --> <button type="submit">Gönder</button> </form> </body> </html> |
Açıklama
- Metin Kutusu (
<input type="text">
): Kullanıcının metin girmesi için kullanılır. - Şifre Alanı (
<input type="password">
): Şifre girişi için kullanılır. - Radyo Düğmeleri (
<input type="radio">
): Kullanıcıya seçenekler arasında bir seçim yapma imkanı tanır. - Onay Kutusu (
<input type="checkbox">
): Kullanıcının bir şeyi onaylaması ya da reddetmesi için kullanılır. - Seçim Kutusu (
<select>
ve<option>
): Bir liste içerisinden bir seçenek seçme imkanı tanır. - Metin Alanı (
<textarea>
): Çok satırlı metin girişi için kullanılır. - Gönderme Düğmesi (
<button type="submit">
): Formu sunucuya göndermek için kullanılır.
Stil uygulanacak olan elemanların seçimini yapar
CSS (Cascading Style Sheets), web sayfalarının görünümünü düzenlemek ve özelleştirmek için kullanılan bir stil dilidir. Bu kazanım, CSS ile stil uygulanacak olan HTML elemanlarını seçme ve belirleme yeteneğini öğrencilere kazandırmayı amaçlar.
CSS İle Eleman Seçimi
CSS’de elemanları seçmek için farklı yöntemler kullanılabilir. İşte temel seçici örnekleri:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
/* Etiket Seçici: Belirli bir HTML etiketini seçme */ p { color: blue; } /* Sınıf Seçici: Belirli bir sınıfa sahip elemanları seçme */ .baslik { font-size: 24px; } /* ID Seçici: Belirli bir ID'ye sahip elemanı seçme */ #logo { width: 100px; } /* Karma (Combined) Seçici: Birden fazla seçiciyi birleştirme */ .header h1 { text-align: center; } |
Açıklama
- Etiket Seçici (
p
):<p>
etiketine sahip tüm paragrafları seçer ve mavi renk uygular. - Sınıf Seçici (
.baslik
):baslik
sınıfına sahip tüm elemanlara 24 piksel font boyutu uygular. - ID Seçici (
#logo
):logo
ID’sine sahip tüm elemanlara 100 piksel genişlik uygular. - Karma Seçici (
.header h1
):header
sınıfına sahip tüm<h1>
başlıklarına ortalanmış metin uygular.
HAFTA 23
Değişkenler ve veri tiplerini kullanarak etkileşimli sayfalar geliştirir
ASP.NET, dinamik ve etkileşimli web sayfaları oluşturmak için kullanılan bir web geliştirme teknolojisidir. Bu kazanım, ASP.NET ile değişkenleri ve veri tiplerini kullanarak etkileşimli bir web sayfası geliştirme yeteneğini öğrencilere kazandırmayı amaçlar.
ASP.NET Değişkenleri ve Veri Tipleri
ASP.NET, C# dilini temel alır ve bu nedenle C# değişkenleri ve veri tiplerini kullanır. İşte temel bir ASP.NET sayfasında değişken ve veri tipi kullanımı:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Değişken ve Veri Tipi Kullanımı</title> </head> <body> <form id="form1" runat="server"> <%-- String Değişken --%> <% string ad = "John"; Response.Write("<h1>Merhaba, " + ad + "!</h1>"); %> <%-- Sayısal Değişkenler --%> <% int yas = 25; double ortalama = 85.5; %> <p>Yaş: <%= yas %></p> <p>Ortalama: <%= ortalama %></p> </form> </body> </html> |
Açıklama
- String Değişken (
string ad
): Metin verileri için kullanılır. - Sayısal Değişkenler (
int yas
,double ortalama
): Tam sayı ve ondalık sayı verileri için kullanılır. - Değişken Kullanımı (
Response.Write
): Değişkenler ASP.NET sayfasına yazdırılır.
Fonksiyon türlerini kullanarak etkileşimli sayfa hazırlar
ASP.NET, dinamik web sayfaları oluşturmak için fonksiyonları kullanabilir. Bu kazanım, ASP.NET sayfalarında fonksiyon türlerini kullanarak etkileşimli bir sayfa hazırlama yeteneğini öğrencilere kazandırmayı amaçlar.
ASP.NET Fonksiyonları
Fonksiyonlar, belirli görevleri yerine getiren ve tekrar kullanılabilir kod bloklarıdır. ASP.NET sayfalarında fonksiyonları kullanarak sayfalarınızı daha modüler ve yönetilebilir hale getirebilirsiniz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Fonksiyon Kullanımı</title> </head> <body> <form id="form1" runat="server"> <%-- Fonksiyon Kullanımı --%> <% string ad = "John"; int yas = 25; double ortalama = 85.5; // Fonksiyon çağrısı SelamVer(ad); YasBilgisi(yas); OrtalamaBilgisi(ortalama); %> <%-- Fonksiyon Tanımları --%> <% // Adı selamlayan fonksiyon void SelamVer(string isim) { Response.Write("<h1>Merhaba, " + isim + "!</h1>"); } // Yaş bilgisini gösteren fonksiyon void YasBilgisi(int yas) { Response.Write("<p>Yaş: " + yas + "</p>"); } // Ortalama bilgisini gösteren fonksiyon void OrtalamaBilgisi(double ortalama) { Response.Write("<p>Ortalama: " + ortalama + "</p>"); } %> </form> </body> </html> |
Açıklama
- Fonksiyon Kullanımı: Değişkenlerin değerleri ve fonksiyon çağrıları kullanılarak etkileşimli bir sayfa oluşturulur.
- Fonksiyon Tanımları:
void
anahtar kelimesi ile belirtilen fonksiyonlar, belirli görevleri yerine getirir.
MVC tasarım desenini kullanarak web uygulamaları geliştirir
MVC (Model-View-Controller), web uygulamalarını organize etmek ve modülerleştirmek için kullanılan bir tasarım desenidir. Bu kazanım, ASP.NET Web Forms üzerinde MVC tasarım desenini kullanarak web uygulamaları geliştirme yeteneğini öğrencilere kazandırmayı amaçlar.
MVC Tasarım Deseni
MVC tasarım deseni, bir uygulamayı üç ana bileşene ayırır: Model, View ve Controller.
- Model: Uygulamanın veri ve iş mantığından sorumludur.
- View: Kullanıcı arayüzünü temsil eder ve kullanıcı ile etkileşimde bulunur.
- Controller: Kullanıcının girdilerini alır, Model ile etkileşime geçer ve View’ı günceller.
Aşağıda, basit bir ASP.NET Web Forms uygulamasında MVC tasarım deseninin nasıl kullanılacağını gösteren bir örnek bulunmaktadır.
ASP.NET Web Forms ile MVC Örneği
Model (UygulamaModel.cs)
1 2 3 4 5 6 7 8 |
public class UygulamaModel { public string Ad { get; set; } public int Yas { get; set; } public double Ortalama { get; set; } } |
View (WebForm1.aspx)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>MVC Örneği</title> </head> <body> <form id="form1" runat="server"> <%-- View: Kullanıcı arayüzü --%> <h1><%= Model.Ad %></h1> <p>Yaş: <%= Model.Yas %></p> <p>Ortalama: <%= Model.Ortalama %></p> </form> </body> </html> |
Controller (WebForm1.aspx.cs)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
public partial class WebForm1 : System.Web.UI.Page { // Controller: Kullanıcı girişlerini işler, Model'i günceller, View'ı günceller protected void Page_Load(object sender, EventArgs e) { // Model oluşturulur UygulamaModel model = new UygulamaModel(); model.Ad = "John"; model.Yas = 25; model.Ortalama = 85.5; // View'a Model gönderilir this.Model = model; } } |
Açıklama
- Model (
UygulamaModel
): Veri ve iş mantığı için bir model sınıfı oluşturulur. - View (
WebForm1.aspx
): Kullanıcı arayüzü HTML ve ASP.NET etiketleriyle oluşturulur. Model’in özellikleri View üzerinde kullanılır. - Controller (
WebForm1.aspx.cs
): Kullanıcı girişlerini işler, Model’i günceller, View’ı günceller.
HAFTA 24
Standart klasör ve sayfaları kullanarak web uygulamaları geliştirir
ASP.NET Web Forms, standart bir klasör ve sayfa yapısını destekler. Bu kazanım, ASP.NET Web Forms kullanarak standart klasör ve sayfaları kullanarak web uygulamaları geliştirme yeteneğini öğrencilere kazandırmayı amaçlar.
Standart Klasör ve Sayfa Yapısı
ASP.NET Web Forms projelerinde yaygın olarak kullanılan standart klasör ve sayfalar şunlardır:
- App_Code: Proje içinde paylaşılan sınıfların ve özellikle veritabanı işlemleri gibi kod dosyalarının bulunduğu klasördür.
- App_Data: Veritabanı dosyalarının depolandığı klasördür.
- App_Start: Uygulama başlangıcında çalıştırılacak olan sınıfların bulunduğu klasördür.
- Content: CSS, resim ve tema dosyalarının bulunduğu klasördür.
- Scripts: JavaScript dosyalarının bulunduğu klasördür.
- MasterPages: Ana sayfa şablonlarının bulunduğu klasördür.
- Pages: Web sayfalarının bulunduğu klasördür.
Aşağıda, standart bir ASP.NET Web Forms projesinin klasör yapısını içeren bir örnek bulunmaktadır.
Standart Klasör ve Sayfalar Örneği
Proje Klasör Yapısı
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
- App_Code/ - Veritabani.cs - App_Data/ - UygulamaVeritabani.mdf - App_Start/ - RouteConfig.cs - Content/ - Stil.css - Scripts/ - AnaScript.js - MasterPages/ - AnaMaster.master - Pages/ - AnaSayfa.aspx - UrunListesi.aspx - Web.config - Default.aspx - Global.asax |
Açıklama
- App_Code: Veritabanı işlemleri ve paylaşılan sınıflar için kullanılan klasördür.
- App_Data: Veritabanı dosyalarının depolandığı klasördür.
- App_Start: Uygulama başlangıcında çalıştırılacak sınıfların bulunduğu klasördür.
- Content: CSS ve tema dosyalarının bulunduğu klasördür.
- Scripts: JavaScript dosyalarının bulunduğu klasördür.
- MasterPages: Ana sayfa şablonlarının bulunduğu klasördür.
- Pages: Web sayfalarının bulunduğu klasördür.
Paket yöneticisini (Nuget) kullanır
NuGet, .NET geliştiricilerinin üçüncü taraf kütüphaneleri ve araçları kolayca projelerine eklemelerini sağlayan bir paket yöneticisidir. Bu kazanım, NuGet kullanarak .NET projelerine kütüphane ekleme, güncelleme ve yönetme yeteneğini öğrencilere kazandırmayı amaçlar.
NuGet Kullanımı
1. NuGet Paket Yükleme:
Visual Studio içinde bir proje için NuGet paketi yüklemek oldukça basittir. Projenizin çözümünde sağ tıklayarak “Manage NuGet Packages…” seçeneğini seçebilir ve NuGet Penceresi’ni açabilirsiniz. Buradan arama yaparak ve istediğiniz paketi seçerek yükleyebilirsiniz.
2. NuGet Komut Satırı:
Proje dizininin içinde komut istemcisini açarak NuGet komutlarını kullanabilirsiniz. Örneğin, bir paket yüklemek için:
1 2 3 |
nuget install PaketAdi |
veya bir paketi güncellemek için:
1 2 3 |
nuget update PaketAdi |
3. Package Manager Console:
Visual Studio içinde “Package Manager Console” penceresini kullanarak NuGet komutlarını direkt olarak çalıştırabilirsiniz. Örneğin, Install-Package
komutu ile bir paket yükleyebilirsiniz:
1 2 3 |
Install-Package PaketAdi |
Örnek: Entity Framework NuGet Paketi Yükleme
Visual Studio’da NuGet Paketi Yükleme:
- Projenizin çözümünde sağ tıklayın.
- “Manage NuGet Packages…” seçeneğini seçin.
- “Browse” sekmesine geçin ve arama kutusuna “EntityFramework” yazın.
- Entity Framework’u seçip “Install” butonuna tıklayarak yükleyin.
NuGet Komut Satırı İle Yükleme:
- Proje dizininde komut istemcisini açın.
- Aşağıdaki komutu kullanarak Entity Framework NuGet paketini yükleyin.
1 2 3 |
nuget install EntityFramework |
Package Manager Console İle Yükleme:
- Visual Studio’da “Package Manager Console” penceresini açın.
- Aşağıdaki komutu kullanarak Entity Framework NuGet paketini yükleyin.
1 2 3 |
Install-Package EntityFramework |
Açıklama
Bu örnek, Entity Framework’u NuGet ile bir .NET projesine nasıl ekleyeceğinizi gösterir. NuGet, .NET ekosistemi içinde yaygın olarak kullanılan kütüphaneleri projelerinize kolayca eklemenizi sağlar.
Entity Framework Core ile veri tabanı işlemlerini yapar
Entity Framework Core, .NET geliştiricilerine veri tabanı işlemlerini kolaylaştıran ve soyutlayan bir ORM (Object-Relational Mapping) çerçevesidir. Bu kazanım, Entity Framework Core’u kullanarak .NET projelerinde veri tabanı işlemleri yapma yeteneğini öğrencilere kazandırmayı amaçlar.
Entity Framework Core ile Veri Tabanı İşlemleri
1. Proje Oluşturma ve Entity Framework Core Paketini Eklemek:
- Visual Studio’da yeni bir .NET Core projesi oluşturun.
- Proje dosyasında (
csproj
) Entity Framework Core paketini ekleyin:
1 2 3 4 5 6 |
<ItemGroup> <PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.0" /> <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.0" /> </ItemGroup> |
2. Veri Modeli Oluşturma:
1 2 3 4 5 6 7 8 9 |
// Örneğin, Blog adında bir sınıf public class Blog { public int BlogId { get; set; } public string Title { get; set; } public string Content { get; set; } } |
3. DbContext Sınıfını Oluşturma:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
// DbContext sınıfı, veri tabanı bağlantısı ve tablo ile eşleşmeyi sağlar public class BlogDbContext : DbContext { public DbSet<Blog> Blogs { get; set; } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { // Veri tabanı bağlantı dizesini burada belirleyin optionsBuilder.UseSqlServer("Server=(localdb)\\mssqllocaldb;Database=BlogDb;Trusted_Connection=True;"); } } |
4. Migration Oluşturma ve Veri Tabanını Güncelleme:
- Package Manager Console’ı açın ve aşağıdaki komutları kullanarak ilk migration’ı oluşturun ve veri tabanını güncelleyin:
1 2 3 4 |
Add-Migration InitialCreate Update-Database |
5. Veri Eklemek, Güncellemek veya Silmek:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
using (var context = new BlogDbContext()) { // Yeni bir blog oluştur var newBlog = new Blog { Title = "Yeni Blog", Content = "Blog İçeriği" }; // Blogs tablosuna ekle context.Blogs.Add(newBlog); // Değişiklikleri veri tabanına uygula context.SaveChanges(); } |
Açıklama
Bu örnek, Entity Framework Core kullanarak bir .NET Core projesinde basit veri tabanı işlemlerini gerçekleştirmeyi gösterir. Entity Framework Core, veri tabanı ile etkileşimi soyutlayarak geliştiricilere daha kolay ve daha hızlı bir şekilde çalışma imkanı sunar.
HAFTA 25
Web servislerini kullanır
Web servisleri, farklı uygulamalar arasında iletişim kurmayı sağlayan ve veri paylaşımını mümkün kılan bir yapıdır. Bu kazanım, web servislerini kullanarak .NET projelerinde dış kaynaklardan veri çekme ve veri gönderme yeteneğini öğrencilere kazandırmayı amaçlar.
Web Servislerini Kullanma
1. HTTP İstekleri ile Veri Almak:
- .NET projenize bir web servisi eklemek için
HttpClient
sınıfını kullanabilirsiniz. Örneğin, JSONPlaceholder hizmetinden veri çekmek için:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
using (HttpClient client = new HttpClient()) { string url = "https://jsonplaceholder.typicode.com/todos/1"; HttpResponseMessage response = await client.GetAsync(url); if (response.IsSuccessStatusCode) { string data = await response.Content.ReadAsStringAsync(); // Veriyi işle } } |
2. SOAP Web Servislerini Kullanmak:
- .NET projenizde bir SOAP web servisini kullanmak için, projenize web servisi eklemelisiniz. Visual Studio’da “Service References” kısmından ekleyebilirsiniz.
1 2 3 4 5 6 7 |
using (WebServiceReference.WebServiceClient client = new WebServiceReference.WebServiceClient()) { string result = client.GetData(1); // Veriyi işle } |
3. RESTful Web Servislerini Kullanmak:
- .NET projenizde RESTful bir web servisini kullanmak için,
HttpClient
sınıfını kullanabilirsiniz. Örneğin, GitHub API’sinden veri çekmek için:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
using (HttpClient client = new HttpClient()) { string url = "https://api.github.com/users/octocat/repos"; client.DefaultRequestHeaders.Add("User-Agent", "request"); HttpResponseMessage response = await client.GetAsync(url); if (response.IsSuccessStatusCode) { string data = await response.Content.ReadAsStringAsync(); // Veriyi işle } } |
Açıklama
Bu örnek, .NET projelerinde farklı türdeki web servislerini kullanma konusunu ele alır. Web servisleri, dış kaynaklardan veri çekmek veya veri göndermek için yaygın bir yöntemdir ve bu beceri, birçok uygulama geliştirme senaryosunda kullanılır.
Yayınlama (Publish) işlemini yapar
Bir .NET projesini yayınlamak (publish), projenizi kullanıma hazır bir duruma getirerek web sunucularına veya başka bir ortama dağıtmanızı sağlar. Bu kazanım, .NET projenizi nasıl yayınlayacağınızı, kullanıma hazır bir hale getireceğinizi ve bir sunucuya nasıl dağıtacağınızı öğrencilere kazandırmayı amaçlar.
.NET Projesini Yayınlama
1. Proje Yapısını Ayarlama:
- Projede kullanılan dosyaların ve ayarların doğru olduğundan emin olun.
- Gerekli konfigürasyonları (örneğin, bağlantı dizesi, ortam ayarları) projenizin ayar dosyalarında belirtin.
2. Yayınlama Profilini Seçme:
- Visual Studio’da projenize sağ tıklayın ve “Publish” seçeneğini seçin.
- Yayınlama hedefini seçin. Örneğin, Azure’a, IIS’e veya bir dosya sistemine yayınlayabilirsiniz.
3. Hedef Ortamı Yapılandırma:
- Yayınlama hedefini seçtikten sonra, yayın yapılacak ortama göre gerekli konfigürasyonları yapın. Örneğin, bir Azure Web App’e yayınlıyorsanız Azure hesap bilgilerinizi girin.
4. Yayınlama İşlemini Gerçekleştirme:
- Yayın işlemini başlatmak için “Publish” veya “Deploy” butonuna tıklayın.
- Visual Studio, projenizi yayınlayacak ve belirttiğiniz hedef ortama dağıtacaktır.
Açıklama
Bu örnek, .NET projenizi yayınlama sürecini adım adım açıklar. Yayınlama işlemi, projenizi kullanıma hazır hale getirerek bir sunucuya dağıtmanızı sağlar. Her yayınlama hedefi, farklı konfigürasyon ve adımlar gerektirebilir, bu nedenle yayınlama işlemine başlamadan önce hedef ortamınızı ve gereksinimlerini dikkatlice incelemeniz önemlidir.
Mobil Uygulama için İşletim sistemine uygun uygulama geliştirme ortamını kurar
Bu kazanım, Java ile mobil uygulama geliştirmek için gerekli olan işletim sistemine uygun geliştirme ortamını kurma sürecini içerir. Java ile mobil uygulama geliştirmek genellikle Android uygulamalarını kapsar. İşte bu kazanımı gerçekleştirmek için izlenebilecek adımlar:
Java İle Android Uygulama Geliştirme Ortamını Kurma
1. Java Development Kit (JDK) Kurulumu:
Android uygulama geliştirmek için önce Java Development Kit’i (JDK) kurmanız gerekiyor. JDK’nın en son sürümünü Oracle JDK web sitesinden indirebilirsiniz.
2. Android Studio Kurulumu:
Android uygulama geliştirmek için yaygın olarak kullanılan Android Studio’nun en son sürümünü Android Developer web sitesinden indirebilirsiniz. Android Studio, Android uygulamalarını geliştirmek için gerekli olan Android SDK (Software Development Kit) ve diğer araçları içerir.
3. Android SDK Yükleyiciyi Çalıştırma:
Android Studio’yu kurduktan sonra, Android SDK Yükleyiciyi çalıştırarak gerekli Android SDK bileşenlerini yükleyin. Bu bileşenler, farklı Android sürümleri için geliştirme araçları ve emulatorleri içerir.
4. Android Virtual Device (AVD) Oluşturma:
Android Studio içinde bir Android Virtual Device (AVD) oluşturarak, geliştirdiğiniz uygulamaları farklı Android cihazlarında test edebilirsiniz.
5. İlk Android Projenizi Oluşturma:
Android Studio içinde “New Project” seçeneği ile yeni bir Android projesi oluşturun. Bu adım, temel bir proje şablonu oluşturarak geliştirmeye başlamanıza yardımcı olur.
Açıklama
Bu adımlar, Java ile Android uygulama geliştirmek için temel olan geliştirme ortamını kurma sürecini içerir. Android Studio, genellikle Android uygulamalarını geliştirmek için en yaygın kullanılan araçtır ve Android SDK’nın yanı sıra birçok faydalı özellik içerir. Geliştirme sürecine başlamadan önce, belirli bir proje üzerinde çalışmadan önce Android geliştirme süreçlerini ve Android Studio’nun temel özelliklerini öğrenmek faydalı olacaktır.
HAFTA 26
Mobil Uygulama Testi için Emulatör kurulumunu ve ayarlarını yapar
Bu kazanım, Java kullanarak mobil uygulama testleri için bir emülatör kurma ve ayarlama sürecini içerir. Mobil uygulama emülatörleri, uygulamanızın farklı cihazlarda ve işletim sistemlerinde nasıl çalıştığını test etmenizi sağlar. Android Studio, Android uygulamaları için bir emülatör sağlar. İşte bu kazanımı gerçekleştirmek için adım adım izlenebilecek temel adımlar:
Java ile Android Emülatör Kurulumu ve Ayarları
1. Android Studio’yu Açma:
Android Studio’yu başlatın ve varsa bir proje seçerek veya yeni bir proje oluşturarak projenizi açın.
2. AVD (Android Virtual Device) Yöneticisi Açma:
Android Studio üst menüsünden “Tools” > “AVD Manager” seçeneğini açarak Android Virtual Device (AVD) Yöneticisine erişin.
3. Yeni Bir AVD Oluşturma:
AVD Yöneticisinde “Create Virtual Device” seçeneğine tıklayarak yeni bir sanal cihaz oluşturma sürecini başlatın.
4. Cihaz Türünü ve İşletim Sistemini Seçme:
AVD Yöneticisi, farklı cihaz türlerini ve işletim sistemlerini içerir. Test etmek istediğiniz cihaz türünü seçin ve ardından hangi Android sürümünü kullanmak istediğinizi belirtin.
5. Sistem Görüntüsü ve Diğer Ayarları Seçme:
AVD oluşturma sürecinde, kullanmak istediğiniz sistem görüntüsünü seçin ve diğer emülatör ayarlarını yapılandırın (RAM miktarı, cihaz yönlendirmesi, vb.).
6. AVD’yi Oluşturma ve Başlatma:
Gerekli ayarları yaptıktan sonra “Finish” veya “Next” düğmesine tıklayarak AVD’nizi oluşturun. Ardından, AVD Yöneticisinde oluşturulan AVD’yi seçip “Play” düğmesine tıklayarak emülatörü başlatın.
7. Emülatörde Uygulamayı Test Etme:
Emülatör başladığında, Android Studio’da geliştirdiğiniz uygulamayı emülatörde test edebilirsiniz. Uygulamanızı emülatörde çalıştırmak için “Run” düğmesine tıklayın.
Açıklama
Bu adımlar, Java ile Android uygulama emülatörü kurma ve ayarlama sürecini içerir. Emülatör, uygulamanızı farklı cihazlarda ve işletim sistemlerinde test etmenizi sağlar, bu da uygulamanızın geniş bir kullanıcı kitlesi tarafından kullanılabilir ve uyumlu olmasını sağlar. Emülatörde uygulamayı test etmek, gerçek bir cihazda test etmekten daha hızlı ve daha maliyet etkin bir yöntemdir.
Yerleşim (Layout) çeşitlerini kullanarak ekran tasarımını yapar
Bu kazanım, Java kullanarak Android uygulamalarının yerleşim (layout) tasarımını yapma sürecini içerir. Android uygulamalarında UI tasarımı, kullanıcı arayüzünün düzeni ve öğelerinin yerleşimi anlamına gelir. Android Studio, kullanıcı arayüzü tasarlamak için bir dizi yerleşim çeşidini destekler. İşte bu kazanımı gerçekleştirmek için adım adım izlenebilecek temel adımlar:
Java ile Android Yerleşim Tasarımı
1. XML Dosyasında Layout Oluşturma:
Android uygulamalarında, yerleşim tasarımını genellikle XML dosyaları aracılığıyla yaparsınız. “res/layout” klasörü altına yeni bir XML dosyası oluşturun veya mevcut bir XML dosyasını düzenleyin.
Örneğin, “activity_main.xml” dosyasını açabilir ve içine aşağıdaki gibi bir basit lineer yerleşim ekleyebilirsiniz:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:padding="16dp" tools:context=".MainActivity"> <!-- Diğer UI öğelerini buraya ekleyin --> </LinearLayout> |
2. UI Öğelerini Eklemek:
Yerleşim dosyanıza eklemek istediğiniz UI öğelerini ekleyin. Örneğin, bir metin alanı (EditText) ve bir düğme (Button) ekleyelim:
1 2 3 4 5 6 7 8 9 10 11 12 |
<EditText android:id="@+id/editText" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Kullanıcı Adı"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Giriş Yap"/> |
3. Java Dosyasında Yerleşim İle Etkileşim:
Yerleşimdeki UI öğeleriyle etkileşim kurmak için ilgili Java dosyasını düzenleyin. Örneğin, giriş yapıldığında bir Toast mesajı göstermek için:
1 2 3 4 5 6 7 8 9 10 11 12 |
EditText editText = findViewById(R.id.editText); Button loginButton = findViewById(R.id.loginButton); loginButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String username = editText.getText().toString(); Toast.makeText(MainActivity.this, "Hoş geldin, " + username + "!", Toast.LENGTH_SHORT).show(); } }); |
Açıklama
Bu adımlar, Java ile Android uygulamalarında yerleşim tasarımını gerçekleştirmenin temel adımlarını içerir. Android Studio, yerleşim tasarımını kolaylaştıran bir dizi araç ve özellik sunar. Bu adımları takip ederek, kullanıcı arayüzünüzü oluşturabilir ve Java kodu ile etkileşim kurabilirsiniz.
İhtiyaca uygun dizi tanımlamaları yapar
Bu kazanım, Java dilinde ihtiyaca uygun dizi tanımlamalarını içerir. Diziler, aynı türdeki verileri gruplamak için kullanılır ve genellikle aynı türdeki verilerle çalışmak için etkili bir yol sağlar. İşte bu kazanımı gerçekleştirmek için örnek bir Java programı:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
public class DiziOrnegi { public static void main(String[] args) { // 1. Tek Boyutlu Dizi Tanımlama ve İlk Değerleri Atama int[] tekBoyutluDizi = {1, 2, 3, 4, 5}; // 2. Dizi Elemanlarına Erişim ve Yazdırma System.out.println("Tek Boyutlu Dizi Elemanları:"); for (int eleman : tekBoyutluDizi) { System.out.print(eleman + " "); } // 3. Çok Boyutlu Dizi Tanımlama ve İlk Değerleri Atama int[][] cokBoyutluDizi = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; // 4. Çok Boyutlu Dizi Elemanlarına Erişim ve Yazdırma System.out.println("\n\nÇok Boyutlu Dizi Elemanları:"); for (int[] satir : cokBoyutluDizi) { for (int eleman : satir) { System.out.print(eleman + " "); } System.out.println(); } // 5. Dizi Boyutunu Değiştirme ve Yeni Değerler Atama tekBoyutluDizi = new int[]{10, 20, 30, 40, 50}; // 6. Yeniden Tanımlanan Dizi Elemanlarını Yazdırma System.out.println("\nYeniden Tanımlanan Tek Boyutlu Dizi Elemanları:"); for (int eleman : tekBoyutluDizi) { System.out.print(eleman + " "); } } } |
Bu örnek program şu işlemleri gerçekleştirir:
- Tek boyutlu bir dizi tanımlanır ve ilk değerleri atanır.
- Tek boyutlu dizinin elemanlarına erişilir ve ekrana yazdırılır.
- Çok boyutlu bir dizi tanımlanır ve ilk değerleri atanır.
- Çok boyutlu dizinin elemanlarına erişilir ve matris şeklinde ekrana yazdırılır.
- Tek boyutlu dizinin boyutu değiştirilir ve yeni değerler atanır.
- Yeniden tanımlanan tek boyutlu dizinin elemanları ekrana yazdırılır.
Bu örnek, tek boyutlu ve çok boyutlu dizilerin tanımlanması, değerlerinin atanması ve erişilmesi gibi temel dizi işlemlerini içermektedir.
HAFTA 27
Mobil Uygulama için Yapılandırma bilgilerine uygun proje oluşturur
Bu kazanım, mobil uygulama geliştirmek için projenin yapılandırılmasını içerir. Mobil uygulama geliştirmek için genellikle belirli bir mobil platforma (örneğin, Android veya iOS) odaklanan bir proje oluşturmanız gerekir. İşte bu kazanımı gerçekleştirmek için adım adım izlenebilecek temel adımlar:
Mobil Uygulama İçin Yapılandırma Bilgilerine Uygun Proje Oluşturma
1. Geliştirme Platformunu Seçme:
Mobil uygulama geliştirmek için kullanacağınız geliştirme platformunu (Android Studio, Xcode, vb.) seçin. Bu platform, hedeflediğiniz mobil işletim sistemine bağlı olarak değişir.
2. Proje Oluşturma:
Seçtiğiniz geliştirme platformunda yeni bir proje oluşturun. Genellikle “New Project” veya “Create a new project” gibi bir seçenek bulunur. Proje oluşturma sürecinde, uygulamanızın adı, paket adı, hedeflenen Android veya iOS sürümü gibi temel bilgileri girmeniz istenecektir.
3. Proje Ayarlarını Yapma:
Proje oluşturulduktan sonra, geliştirme platformunun sunacağı proje ayarlarını yapın. Bu ayarlar, uygulamanızın genel özellikleri, görünümü, kullanılan kütüphaneler ve diğer önemli yapılandırma bilgilerini içerir.
4. Gerekli Kütüphaneleri Ekleme:
Uygulamanızın işlevselliğini artırmak için gerekli kütüphaneleri ekleyin. Bu kütüphaneler genellikle uygulamanızın ihtiyaçlarına bağlı olarak değişir. Örneğin, bir harita özelliği eklemek için harita kütüphanesini ekleyebilirsiniz.
5. Uygulama İkonu ve Teması:
Uygulamanızın ikonunu ve temasını belirleyin. Bu, kullanıcıların uygulamanızı tanımasına ve kullanmasına yardımcı olur.
6. Hedef Cihazları Belirleme:
Uygulamanızın çalışacağı hedef cihazları belirleyin. Örneğin, Android uygulaması geliştiriyorsanız, farklı ekran boyutlarına ve Android sürümlerine uygun hedef cihazları seçin.
7. Proje Yapısını Anlama:
Proje oluşturulduktan sonra, proje yapısını anlamak için projenizi inceleyin. Bu, dosya düzeni, kaynak kodlarının yerleşimi ve diğer önemli dosyaları içerir.
8. Debug ve Release Sürümlerini Ayarlama:
Uygulamanızı test etmek ve dağıtmak için debug ve release sürümlerini ayarlayın. Debug sürümü, geliştirme sırasında kullanılırken, release sürümü kullanıcılar için dağıtılan sürümdür.
Bu adımlar, mobil uygulama geliştirmek için yapılandırma bilgilerine uygun bir proje oluşturmanın temel adımlarını içerir. Seçtiğiniz geliştirme platformuna ve hedeflediğiniz mobil işletim sistemine bağlı olarak adımlar değişebilir.
Gelişmiş görünüm araçlarını kullanarak kullanıcı arayüzünü tasarlar
Bu kazanım, gelişmiş görünüm araçlarını kullanarak kullanıcı arayüzünü tasarlamayı içerir. Bu genellikle bir mobil uygulama veya masaüstü uygulama geliştirmekle ilgili bir beceridir. İşte bu kazanımı gerçekleştirmek için adım adım izlenebilecek temel adımlar:
Gelişmiş Görünüm Araçları ile Kullanıcı Arayüzü Tasarlamak
1. Geliştirme Ortamını Açma:
Geliştirmekte olduğunuz uygulamanın kullanıcı arayüzünü tasarlamak için kullanılan geliştirme ortamını açın. Örneğin, Android Studio, Xcode veya Visual Studio gibi bir IDE (Integrated Development Environment) kullanılıyorsa bu ortamı başlatın.
2. Kullanıcı Arayüzü Tasarım Ekranını Açma:
Projede kullanıcı arayüzü tasarımı için ayrılmış bir ekran veya pencere açın. Bu genellikle “activity_main.xml” veya benzeri bir dosya olacaktır.
3. Gelişmiş Görünüm Araçlarını İnceleme:
Geliştirme ortamının içerdiği gelişmiş görünüm araçlarını inceleyin. Bu araçlar genellikle sürükle ve bırak, özel bileşenler, stil düzenleme gibi özellikleri içerir. İhtiyaçlarınıza uygun olan araçları anlamak için belgelere veya öğretici kaynaklara başvurun.
4. Arayüz Elemanlarını Sürükle ve Bırak:
Gelişmiş görünüm araçlarını kullanarak arayüz elemanlarını tasarım ekranına sürükleyip bırakarak yerleştirin. Bu elemanlar genellikle düğmeler, metin alanları, resimler, listeler ve diğer UI öğelerini içerir.
5. Stil ve Tema Ayarlarını Değiştirme:
Görünüm araçları genellikle arayüz elemanlarının stil ve tema ayarlarını değiştirmenize olanak tanır. Renk, font, arka plan gibi özellikleri özelleştirerek kullanıcı arayüzünü kişiselleştirin.
6. Özel Bileşenler Ekme:
Eğer projeniz özel bir gereksinim veya özellik içeriyorsa, geliştirme ortamının özel bileşen ekme yeteneklerini kullanarak özel arayüz öğelerini projenize ekleyin.
7. Arayüzü Canlandırma ve Etkileşim Ekme:
Gelişmiş görünüm araçları genellikle arayüze animasyonlar, geçiş efektleri ve etkileşimler eklemenizi sağlar. Bu özellikleri kullanarak kullanıcı arayüzünü daha canlı ve etkileşimli hale getirebilirsiniz.
8. Arayüzü Önizleme ve Test Etme:
Tasarladığınız kullanıcı arayüzünü önizleyerek ve test ederek görünüm araçlarının beklentilerinize uygun çalışıp çalışmadığını kontrol edin. Bu, uygulamanızın son kullanıcıya nasıl görüneceğini anlamanıza yardımcı olur.
Bu adımlar, gelişmiş görünüm araçlarını kullanarak kullanıcı arayüzünü tasarlamanın temel adımlarını içerir. Hangi geliştirme ortamını kullandığınıza bağlı olarak bu adımlar değişebilir.
Uygulama içinde çoklu aktiviteyle çalışır
Bu kazanım, uygulama içinde çoklu aktivite (activity) kullanma becerisini ifade eder. Android platformunda aktiviteler, kullanıcı arayüzü ve uygulama mantığının birleştirildiği temel bileşenlerdir. İşte bu kazanımı gerçekleştirmek için adım adım izlenebilecek temel adımlar:
Uygulama İçinde Çoklu Aktivite Kullanma (Android Örneği)
1. Proje Oluşturma:
- Android Studio’yu açın ve yeni bir proje oluşturun.
- Projenize uygun temel ayarları yapın.
2. İlk Aktiviteyi Tasarlama:
- Projenizin içindeki “res/layout” klasörü altındaki “activity_main.xml” dosyasını açın.
- İlk aktivitenizin kullanıcı arayüzünü tasarlayın, gerekli bileşenleri ekleyin.
3. İlk Aktiviteye Mantık Ekme:
- Projenizin içindeki “src” klasörü altındaki “MainActivity.java” dosyasını açın.
- İlk aktivitenizin mantığını burada kodlayın. Kullanıcı girişi alabilir, veritabanı işlemleri yapabilir veya diğer işlevleri gerçekleştirebilirsiniz.
4. İkinci Aktiviteyi Oluşturma:
- Android Studio’da “app” klasörüne sağ tıklayın, “New” -> “Activity” -> “Empty Activity” seçeneğini seçin.
- Bu size yeni bir aktivite sınıfı ve ilgili XML dosyasını ekleyecektir.
5. İkinci Aktiviteyi Tasarlama:
- Yeni oluşturduğunuz aktivitenin XML dosyasını (“activity_second.xml” gibi) açın.
- İkinci aktivitenizin kullanıcı arayüzünü tasarlayın.
6. İkinci Aktiviteye Mantık Ekme:
- Yeni oluşturulan aktivitenin Java dosyasını (“SecondActivity.java” gibi) açın.
- İkinci aktivitenizin mantığını burada kodlayın.
7. Aktiviteler Arası Geçiş Ekme:
- İlk aktivitenizde bir düğme veya başka bir etkileşim öğesi ekleyin.
- Bu öğe üzerine tıklanınca ikinci aktiviteye geçiş yapacak bir kod ekleyin.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
// MainActivity.java public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button goToSecondActivityButton = findViewById(R.id.goToSecondActivityButton); goToSecondActivityButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this, SecondActivity.class); startActivity(intent); } }); } } |
8. Geri Dönüş İşlemi Ekme:
- İkinci aktiviteden ilk aktiviteye geri dönüşü sağlamak için “onBackPressed()” veya bir geri düğmesi ekleyebilirsiniz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
// SecondActivity.java public class SecondActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); // Geri dönüş işlemi Button goBackButton = findViewById(R.id.goBackButton); goBackButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { onBackPressed(); } }); } } |
Bu adımlar, Android platformunda uygulama içinde çoklu aktivite kullanmanın temelini atmaktadır. İlgili aktiviteler arasında geçiş yapma ve geri dönme işlemlerini içerir.
HAFTA 28
Fragment yapısını oluşturarak uygulamada kullanır
Bu kazanım, Android uygulamalarında Fragment yapısını oluşturmayı ve kullanmayı içerir. Fragmentlar, kullanıcı arayüzünü küçük, bağımsız ve yeniden kullanılabilir parçalara bölen Android uygulamalarının temel yapı taşlarından biridir. İşte bu kazanımı gerçekleştirmek için adım adım izlenebilecek temel adımlar:
Fragment Yapısını Oluşturarak Kullanma (Android Örneği)
1. Proje Oluşturma:
- Android Studio’yu açın ve yeni bir proje oluşturun.
- Projenize uygun temel ayarları yapın.
2. Fragment Sınıfını Oluşturma:
- “app” klasörüne sağ tıklayın, “New” -> “Fragment” -> “Fragment (Blank)” seçeneğini seçin.
- Bu size yeni bir Fragment sınıfı ve ilgili XML dosyasını ekleyecektir.
3. Fragment Tasarımını Düzenleme:
- Oluşturulan XML dosyasını (örneğin “fragment_example.xml”) açarak Fragment’ın kullanıcı arayüzünü tasarlayın.
1 2 3 4 5 6 7 8 9 10 11 12 |
<!-- fragment_example.xml --> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <!-- Fragment içeriği buraya eklenebilir --> </LinearLayout> |
4. Fragment Java Dosyasını Düzenleme:
- Oluşturulan Fragment sınıfını (örneğin “ExampleFragment.java”) açarak Fragment’ın mantığını kodlayın.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
// ExampleFragment.java public class ExampleFragment extends Fragment { public ExampleFragment() { // Gerekirse boş bir yapıcı metot ekleyebilirsiniz. } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Fragment'ın görünümünü oluşturmak için bu metodu kullanın. return inflater.inflate(R.layout.fragment_example, container, false); } } |
5. Fragment’ı Aktivite İçinde Kullanma:
- Bir aktivitenin içinde Fragment’ı kullanmak için XML dosyasına bir
FrameLayout
veyaLinearLayout
gibi bir konteyner ekleyin.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<!-- activity_main.xml --> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <!-- Aktivitenin içindeki diğer arayüz elemanları --> <!-- Fragment'ın yerleştirileceği konteyner --> <FrameLayout android:id="@+id/fragmentContainer" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" /> </LinearLayout> |
6. Fragment’ı Aktivite İçinde Yerleştirme:
- Aktivitenin Java dosyasında Fragment’ı yerleştirmek için şu kodu kullanabilirsiniz:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
// MainActivity.java public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Fragment'ı yerleştirme getSupportFragmentManager().beginTransaction() .replace(R.id.fragmentContainer, new ExampleFragment()) .commit(); } } |
Bu adımlar, Android uygulamasında Fragment yapısını oluşturmayı ve kullanmayı göstermektedir. Oluşturulan Fragment, bir aktivitenin içinde kullanılarak modüler ve yeniden kullanılabilir bir yapı elde edilir.
SharedPreferences yapısını kullanır
Bu kazanım, Android uygulamalarında SharedPreferences yapısını kullanarak veri depolama işlemlerini gerçekleştirmeyi içerir. SharedPreferences, küçük veri parçacıklarını anahtar-değer çiftleri olarak depolayan ve uygulama içinde basit yapıda veri saklamak için kullanılan bir mekanizmadır. İşte bu kazanımı gerçekleştirmek için adım adım izlenebilecek temel adımlar:
SharedPreferences Yapısını Kullanma (Android Örneği)
1. SharedPreferences Oluşturma:
- SharedPreferences nesnesi oluşturmak için
getSharedPreferences()
veyagetPreferences()
metotları kullanılır. Genellikle bir aktivitenin içinde veya uygulama genelinde kullanılacaksagetSharedPreferences()
tercih edilir.
1 2 3 4 |
// Örneğin: MainActivity.java SharedPreferences sharedPreferences = getSharedPreferences("UygulamaVerileri", Context.MODE_PRIVATE); |
2. Veri Eklemek:
- SharedPreferences’e veri eklemek için
SharedPreferences.Editor
sınıfı kullanılır.
1 2 3 4 5 6 |
// Veri eklemek için örnek (int tipinde bir değer ekleyelim) SharedPreferences.Editor editor = sharedPreferences.edit(); editor.putInt("anahtar", 42); editor.apply(); |
3. Veri Okumak:
- SharedPreferences’ten veri okumak için uygun veri tipine göre ilgili get metodu kullanılır.
1 2 3 4 |
// Veri okumak için örnek (int tipinde bir değeri okuyalım) int okunanDeger = sharedPreferences.getInt("anahtar", defaultValue); |
4. Veri Güncellemek:
- Var olan bir değeri güncellemek için, değeri tekrar ekleyerek üzerine yazabilirsiniz.
1 2 3 4 5 |
SharedPreferences.Editor editor = sharedPreferences.edit(); editor.putInt("anahtar", yeniDeger); editor.apply(); |
5. Veri Silmek:
- Bir anahtara sahip veriyi silmek için
remove()
metodu kullanılır.
1 2 3 4 5 |
SharedPreferences.Editor editor = sharedPreferences.edit(); editor.remove("anahtar"); editor.apply(); |
6. Tüm Verileri Silmek:
- SharedPreferences içindeki tüm verileri silmek için
clear()
metodu kullanılır.
1 2 3 4 5 |
SharedPreferences.Editor editor = sharedPreferences.edit(); editor.clear(); editor.apply(); |
Bu adımlar, Android uygulamalarında SharedPreferences yapısını kullanmayı göstermektedir. Bu yapı, küçük boyutlu verileri depolamak için pratik ve hızlı bir çözümdür.
Yerel veri tabanı erişimini sağlayarak veri tabanını kullanır
Bu kazanım, Android uygulamalarında yerel bir veritabanına erişim sağlamayı ve bu veritabanını kullanmayı içerir. Android platformunda en yaygın kullanılan yerel veritabanı yönetim sistemlerinden biri SQLite’dir. İşte bu kazanımı gerçekleştirmek için adım adım izlenebilecek temel adımlar:
Yerel Veritabanı Erişimi ve Kullanımı (Android Örneği)
1. SQLiteOpenHelper Sınıfını Oluşturma:
SQLiteOpenHelper
sınıfını genişleterek, veritabanı oluşturma ve güncelleme işlemlerini yönetecek bir sınıf oluşturun.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
public class VeritabaniYardimcisi extends SQLiteOpenHelper { // Veritabanı adı ve sürümü private static final String VERITABANI_ADI = "ornek_veritabani"; private static final int VERITABANI_SURUM = 1; // Tablo oluşturma sorgusu private static final String TABLO_OLUSTUR_SORGUSU = "CREATE TABLE kisiler (id INTEGER PRIMARY KEY AUTOINCREMENT, ad TEXT, soyad TEXT)"; public VeritabaniYardimcisi(Context context) { super(context, VERITABANI_ADI, null, VERITABANI_SURUM); } @Override public void onCreate(SQLiteDatabase db) { // Tablo oluşturma sorgusunu çalıştırma db.execSQL(TABLO_OLUSTUR_SORGUSU); } @Override public void onUpgrade(SQLiteDatabase db, int eskiSurum, int yeniSurum) { // Veritabanı güncelleme işlemleri } } |
2. Veritabanını Kullanma:
- Veritabanına erişim sağlamak ve işlemleri gerçekleştirmek için
SQLiteDatabase
sınıfını kullanın.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
// Veritabanı yardımcısı nesnesini oluşturun VeritabaniYardimcisi yardimci = new VeritabaniYardimcisi(context); // Veritabanına yazma modunda erişim sağlayın SQLiteDatabase db = yardimci.getWritableDatabase(); // Veritabanı işlemlerini gerçekleştirin (örneğin, veri ekleme) ContentValues values = new ContentValues(); values.put("ad", "John"); values.put("soyad", "Doe"); // "kisiler" tablosuna veri ekleme db.insert("kisiler", null, values); // Veritabanını kapatın db.close(); |
3. Veri Okuma ve Güncelleme:
- Veritabanından veri okuma ve güncelleme işlemlerini gerçekleştirin.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
// Veritabanına okuma modunda erişim sağlayın SQLiteDatabase db = yardimci.getReadableDatabase(); // "kisiler" tablosundan veri okuma Cursor cursor = db.query("kisiler", null, null, null, null, null, null); // Veri üzerinde işlemleri gerçekleştirin (örneğin, veriyi okuma) if (cursor.moveToFirst()) { do { String ad = cursor.getString(cursor.getColumnIndex("ad")); String soyad = cursor.getString(cursor.getColumnIndex("soyad")); // Veri üzerinde işlemleri gerçekleştirin (örneğin, veriyi güncelleme) ContentValues updatedValues = new ContentValues(); updatedValues.put("soyad", "Smith"); db.update("kisiler", updatedValues, "ad=?", new String[]{ad}); } while (cursor.moveToNext()); } // Cursor ve Veritabanını kapatın cursor.close(); db.close(); |
Bu adımlar, Android uygulamalarında yerel bir veritabanına erişim sağlama ve bu veritabanını kullanma işlemlerini göstermektedir. Bu sayede uygulamalar, kullanıcı verilerini tutmak ve yönetmek için yerel bir veritabanını etkili bir şekilde kullanabilirler.
HAFTA 29
Uzak veri tabanı erişimini sağlayarak veri tabanını kullanır
Bu kazanım, Android uygulamalarında uzak bir veritabanına erişim sağlama ve bu veritabanını kullanma işlemlerini içermektedir. Firebase, popüler bir mobil ve web uygulamaları platformu olarak uzak veritabanı ihtiyaçlarını karşılayan bir hizmet sunmaktadır. İşte bu kazanımı gerçekleştirmek için adım adım izlenebilecek temel adımlar:
Uzak Veritabanına Erişim ve Kullanım (Firebase, Android Örneği)
1. Firebase Projesi Oluşturma:
- Firebase Console’da yeni bir proje oluşturun ve proje ayarlarını yapın.
- “Authentication” ve “Realtime Database” gibi hizmetleri etkinleştirin.
2. Firebase SDK’nın Eklenmesi:
- Android Studio projesine Firebase SDK’yı ekleyin.
build.gradle
dosyalarına gerekli bağımlılıkları ekleyin.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
// Proje düzeyindeki build.gradle dependencies { classpath 'com.google.gms:google-services:4.3.10' } // Uygulama düzeyindeki build.gradle dependencies { implementation 'com.google.firebase:firebase-database:24.0.0' implementation 'com.google.firebase:firebase-auth:24.0.0' implementation 'com.google.firebase:firebase-analytics:24.0.0' } apply plugin: 'com.google.gms.google-services' |
3. Firebase Bağlantısı Kurma:
- Firebase’i kullanarak uzak veritabanına erişim sağlamak için
FirebaseDatabase
sınıfını kullanın.
1 2 3 4 |
// Firebase bağlantısı oluşturun FirebaseDatabase firebaseDatabase = FirebaseDatabase.getInstance(); |
4. Veri Okuma ve Yazma:
- Uzak veritabanından veri okuma ve yazma işlemlerini gerçekleştirin.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
// Veritabanı referansı oluşturun DatabaseReference myRef = firebaseDatabase.getReference("mesajlar"); // Veri okuma myRef.addValueEventListener(new ValueEventListener() { @Override public void onDataChange(@NonNull DataSnapshot dataSnapshot) { // Veri değiştiğinde buraya düşer String value = dataSnapshot.getValue(String.class); Log.d(TAG, "Veri: " + value); } @Override public void onCancelled(@NonNull DatabaseError databaseError) { // Veri okuma işlemi başarısız olduğunda buraya düşer Log.w(TAG, "Veri okuma başarısız: " + databaseError.toException()); } }); // Veri yazma myRef.setValue("Merhaba, Firebase!"); |
Bu adımlar, Android uygulamalarında Firebase kullanarak uzak bir veritabanına erişim sağlama ve bu veritabanını kullanma işlemlerini göstermektedir. Firebase’in sunduğu hizmetler, uygulamalarınızın kullanıcı verilerini güvenli ve ölçeklenebilir bir şekilde yönetmenizi sağlar.
Mobil uygulama geliştirme servislerini kullanır
Bu kazanım, mobil uygulama geliştirme sürecinde kullanılan çeşitli servisleri içermektedir. Mobil uygulama geliştirmenin modern ekosistemi, farklı servislerin entegrasyonunu gerektirebilir. İşte bu kazanımı gerçekleştirmek için örnek bir açıklama:
Mobil Uygulama Geliştirme Servislerini Kullanma
Mobil uygulama geliştirme sürecinde, uygulamanızı zenginleştirmek ve çeşitli özellikleri eklemek için farklı servisleri kullanabilirsiniz. Bu servisler, uygulamanızın kullanıcı deneyimini artırmak, performansını optimize etmek ve genel olarak uygulama işlevselliğini geliştirmek için önemlidir.
1. Harita Servisleri:
- Kullanıcıların konumunu belirlemek ve harita üzerinde göstermek için harita servislerini entegre edebilirsiniz. Google Haritalar veya Mapbox gibi servisler, kullanıcıların etkileşimli haritalar üzerinde gezinmelerini sağlar.
1 2 3 4 5 6 7 8 9 |
// Google Maps API kullanarak harita entegrasyonu örneği @Override public void onMapReady(GoogleMap googleMap) { LatLng sydney = new LatLng(-34, 151); googleMap.addMarker(new MarkerOptions().position(sydney).title("Marker in Sydney")); googleMap.moveCamera(CameraUpdateFactory.newLatLng(sydney)); } |
2. Push Bildirim Servisleri:
- Kullanıcılarınıza hedeflenmiş bildirimler göndermek için push bildirim servislerini kullanabilirsiniz. Firebase Cloud Messaging (FCM) veya OneSignal gibi servisler, kullanıcıları etkileşimde bulunmaya teşvik eder.
1 2 3 4 |
// Firebase Cloud Messaging ile bildirim gönderme örneği FirebaseMessaging.getInstance().subscribeToTopic("haberler"); |
3. Kimlik Doğrulama Servisleri:
- Kullanıcıların güvenli bir şekilde giriş yapmalarını ve hesaplarını yönetmelerini sağlamak için kimlik doğrulama servislerini entegre edebilirsiniz. Firebase Authentication gibi servisler, kimlik doğrulama işlemlerini kolaylaştırır.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
// Firebase Authentication ile e-posta ve şifre ile giriş örneği FirebaseAuth.getInstance().signInWithEmailAndPassword("email@example.com", "password123") .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() { @Override public void onComplete(@NonNull Task<AuthResult> task) { if (task.isSuccessful()) { // Giriş başarılı } else { // Giriş başarısız } } }); |
4. Ödeme Servisleri:
- Uygulamanız içinde çevrimiçi ödeme işlemleri sağlamak için ödeme servislerini entegre edebilirsiniz. Stripe veya PayPal gibi servisler, güvenli ödeme işlemlerini kolaylaştırır.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
// Stripe API kullanarak ödeme entegrasyonu örneği Stripe stripe = new Stripe(context, "your_publishable_key"); stripe.createPaymentMethod( PaymentMethodCreateParams.create( Card.create(cardNumber, expMonth, expYear, cvc) ), new ApiResultCallback<PaymentMethod>() { @Override public void onSuccess(PaymentMethod result) { // Ödeme başarılı } @Override public void onError(@NonNull Exception e) { // Ödeme başarısız } } ); |
Bu örnekler, farklı mobil uygulama geliştirme servislerini nasıl kullanacağınızı göstermektedir. Uygulamanızın gereksinimlerine bağlı olarak, diğer birçok servisi de entegre edebilir ve uygulamanızı daha işlevsel hale getirebilirsiniz.
E-posta ve SMS gönderimi yapabilen mobil tabanlı uygulama
geliştirir
Bu kazanım, mobil uygulama geliştirme sürecinde e-posta ve SMS gönderimini içermektedir. Bu tür iletişim kanalları, kullanıcılarla etkileşim kurmak ve önemli bilgileri iletmek için yaygın olarak kullanılır. İşte bu kazanımı gerçekleştirmek için örnek bir açıklama:
E-posta ve SMS Gönderimi Yapan Mobil Uygulama Geliştirmek
Mobil uygulamanızın, kullanıcılara e-posta ve SMS gönderme yeteneği, kullanıcılarla etkileşimi artırabilir ve önemli bildirimleri iletebilir. İşte bu kazanımı gerçekleştirmek için temel adımlar:
1. E-posta Gönderimi:
- E-posta gönderimi için JavaMail veya daha spesifik bir kütüphane kullanabilirsiniz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
// JavaMail API kullanarak e-posta gönderimi örneği public void sendEmail(String to, String subject, String message) { Properties props = new Properties(); props.put("mail.smtp.host", "smtp.example.com"); props.put("mail.smtp.port", "587"); props.put("mail.smtp.auth", "true"); props.put("mail.smtp.starttls.enable", "true"); Session session = Session.getInstance(props, new Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication("your_email@example.com", "your_password"); } }); try { Message mimeMessage = new MimeMessage(session); mimeMessage.setFrom(new InternetAddress("your_email@example.com")); mimeMessage.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to)); mimeMessage.setSubject(subject); mimeMessage.setText(message); Transport.send(mimeMessage); System.out.println("E-posta gönderildi."); } catch (MessagingException e) { e.printStackTrace(); } } |
2. SMS Gönderimi:
- SMS gönderimi için Android platformunda yerleşik olarak sunulan
SmsManager
sınıfını kullanabilirsiniz.
1 2 3 4 5 6 7 |
// Android SMS gönderimi örneği public void sendSMS(String phoneNumber, String message) { SmsManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage(phoneNumber, null, message, null, null); } |
3. Kullanıcı Arayüzü Entegrasyonu:
- E-posta ve SMS gönderimi için kullanıcı arayüzü elemanlarını ekleyin, gerekirse form verilerini toplayın.
1 2 3 4 5 6 7 |
// Kullanıcıya e-posta gönderme işlemi sendEmail("recipient@example.com", "Konu", "Merhaba, bu bir e-posta mesajıdır."); // Kullanıcıya SMS gönderme işlemi sendSMS("5551234567", "Merhaba, bu bir SMS mesajıdır."); |
Bu adımlar, mobil uygulamanızın e-posta ve SMS gönderimini entegre etmek için temel bir çerçevedir. Gerçek uygulama senaryonuza bağlı olarak, daha fazla güvenlik önlemi ve kullanıcı deneyimi eklemek isteyebilirsiniz.
Bizim gelişim tablosunda çalışma alanı diye bir şey var konu olarak ona ne yazmamız gerekiyor tam olarak.
[…] defteri doldurmak için web programcılığı staj defteri konuları başlığını […]