Repetition of the topics covered in Bootcamp

Overview

BootcampTekrarHepsiburada

Bootcampta işlenen konuların tekrar edilmesi

val ve var nedir ? Arasındaki farklar nelerdir ?

Değişken tanımlamak istediğimizde val veya var anahtar kelimelerine ihtiyacımız vardır. var anahtar kelimesi değiştirilebilir. Örneğin ;

var age = 16 
age = 18 

olarak değiştirebiliriz.Ancak val anahtar kelimesi ise değiştirilemez.Örneğin ;

var myName = "Sahra"
myName = "Merve"

yazarsak hata almış oluruz.

null-safety Nedir ? (?,!! arasındaki farklar nelerdir ? Ne işe yararlar ?)

Öncelikle null boş demektir.Biz kendi değişkenlerimizi tanımlarken null durumunu kontrol edebiliriz.Çökme durumlarının olmaması için kotlin bu tip durumları engellemek için null-safety ? (null kontrolü) denmektedir. Not null assertion : !! Operator Bu operatör null olabilen bir değişkenin null kontrolü yapılmadan çağrılmasını sağlar. Hatalı kullanımda NullPointerException hatası almamız olasıdır.

kalıtım-inheritance nedir ?

Sınıf -> Nesnelerin özellikleri ve davranışları ile ilgili ayrıntıları tutmak için kullanılan yapıdır. class A Nesne(object) -> Nesneler sınıfların somutlaştırılmış halidir.Sınıflar ve nesneler arasında bir bağ vardır. val system = MySystem() burada MySystem() sınıfından system adında bir nesne oluşturuldu.Örneğin ; system.goster() kullanılabilir. Kalıtım -> Mevcut sınıftan başka bir sınıf türetilmesi için kullanılır.Kodun tekrar kulllanılabilirliğini arttırır. open anahtar kelimesi sınıfın başına yazılır.

open class MySystem() 
open class addSystem: MySystem()

open class MySystem(var isim:String,var kod:Int,var adres:String) {
}
open class addSystem(isim:String,kod:Int,adres:String,var system:String):MySystem(isim,kod,adres){
}
class Notlar(isim:String,kod:Int,adres:String,system:String,var puan:Int):addSystem(isim,kod,adres,puan){
}

fun main(){
    var my = Notlar("Sahra",21457822,"Tekirdağ","Elektrik Devreleri",87)
}

polimorfizm nedir ?

Inheritance ettiğimiz class’daki bir metodu ovveride etmemize verilen isimdir. Böylelikle o metodun içeriğini istediğimiz gibi değiştirebiliriz.

open class Picture(){
          open fun draw(){println("Picture Class")}
}
class Papper : Picture(){
   //super ile Picture daki draw metodunun çalıştırılması sağlanıyor.
    fun test() { super.draw()}
    override fun draw() {println("Papper Class")}
}

abstruct class nedir ? Interface Nedir ?

Abstract Class ve interface’lerden objeler türetilemez. Class’lara implement edilirler.Abstract, tüm classlarda kullanılacak yapıları içerirken Interface’ler nitelik bazlıdır. Bu yüzden spesifik bir özellik içeriliyorsa bu yapıyı Interface’lerde tanımlamalıyız. Şablon yapıları kurgularken de Abstract class’ları tercih etmeliyiz. Abstract Birden fazla Abstract Class bir sınıfa implement edilemez. Abstract Class içerisinde fonksiyonların abstract olacağını belirtirsek body’siz fonksiyon tanımlayabiliriz aksi halde body’siz fonksiyon tanımlamasına izin verilmeyecektir. Değişken tanımı yapılırken initialize etmemiz gerekmektedir.

fun main(args: Array<String>) {
    val jack = Engineer("Recep Yeşilkaya")
    jack.displayJob("Computer Engineering")
    jack.personAge(22)
}
 
abstract class Person(name: String) {
    init {
        println("Name : $name")
    }
    fun personAge(age: Int) {
        println("Age : $age")
    }

   abstract fun displayJob(description: String)
}
class Engineer(name: String): Person(name) {
    override fun displayJob(description: String) {
        println("Description : $description")
    }
}

android:exported="true" nedir ?

Diğer uygulamaların gösterilen activity'i kullanmasına izin vermek demek.Ancak kullanmak istemiyorsak android:exported="false" olarak ayarlanır.Bu işlem AndroidManifest.xml dosyasında yer almaktadır.

data class nedir ?

Data Class nedir Data class bir class tanımlamasıdır , aşağıdaki fonksiyoneliteleri çok kısa bir şekilde içine alır (otomatik tanımlar): constructor Fields-alan Getter ve setter fonksiyonları hashCode(), equals() ve toString() fonksiyonları Class tanımalamızda data keywordünü kullandığımızda Kotlin otomatik olarak fieldlara ulaşılabilcek getter setterları ,hashCode(), equals(), toString(), copy() ve componentN() fonksiyonlarını yaratır.

data class Book(val name: String, val author: String, var page: Int)

Recyclerview vw listview arasındaki fark nedir ?

Öncelikle iki yapı arasındaki fark performans farkıdır.Bu performans farkının recyclerview>listview olduğunu söylebilirim.Nedeni ise listview belirtilen listenin tamamanını ekranda çizdirmeye çalışır.Ancak recyclerview ekrana sığacak kadar veri sağlar.Bu ise ayırt edici bir performans özelliği sağlamaktadır.

Viewholder-LayoutManager

ViewHolder basitçe liste elemanlarını öğe üzerinde tutan yapıdır diyebiliriz. Bu yapı Listviewde isteğe bağlı kullanılırken; Recyclerviewde kullanımı zorunludur. LayoutManager, adapter ve recyclerview arasındaki bir katman yada bir düzenleyici yapıdır. Elemanlarımızın ekranda nasıl konumlandırılacağı ile ilgilenir. ListView kullanımında elemanlar dikey olarak hizalanırken; RecylerView ile karşımıza 3 seçenek çıkmaktadır: recylerview LinearLayoutManager: Elemanlarımızı yatayda veya dikeyde hizalar. GridLayoutManager: Elemanları belirlediğimiz satır ve sütunda aynı boyutta hizalar StaggeredGridLayoutManager: Elemanlarımızı bizim belirlediğimiz sınırlarda farklı boyutlarda hizalar.

Adapter

Adapter bir veri kaynağıyla, veriye ihtiyacı olan nesneyi birbirine bağlamaya yarayan yapılardır. ListView gibi bir dizi veriyi içinde bulunduran yapılara, bu verileri adapter aracılığıyla veririz. Adapter bir veri kaynağındaki verileri (kısaca, veri modelini) görsel öğelerde kullanmaya uygun hale getirir.

Lifecycle

Bir aktivite yeni bir duruma girerken sistem bu geri aramaların her birini çağırır. activity_lifecycle

Firebase Nedir ?

Google tarafından yeni özelliklerin eklenmesiyle gelişen Firebase, bütün bu ihtiyaçları karşılayabilme iddiasında bulunan ücretsiz bir kullanım sunan platform image-firebase0002

You might also like...
A semi-official port of the open source Anki spaced repetition flashcard system to Android
A semi-official port of the open source Anki spaced repetition flashcard system to Android

AnkiDroid A semi-official port of the open source Anki spaced repetition flashcard system to Android. Memorize anything with AnkiDroid! Features night

Simple configurable Twitch Chat Bot for Emote Repetition 😎

DopaminChatter Dopamin is the happiness hormone. What's better than a Twitch Chat with great Emote Usage and Emote Chains (same Emotes after another).

Graduation project of
Graduation project of "Android Bootcamp Turkey"

Spending Tracking Mobile App Screenshots ENG Description This application allows you to record your bills, rent and all other expenses in 4 different

Android Bootcamp Turkey Final Project
Android Bootcamp Turkey Final Project

Expenses App Features Splash Screen OnBoarding Screen Change Icon Room Database Navigation View Binding / Data Binding Retrofit RecyclerView Currency

Kotlin Leaning Notes from Udacity Course | Kotlin Bootcamp for Programmers by Google
Kotlin Leaning Notes from Udacity Course | Kotlin Bootcamp for Programmers by Google

Kotlin Beginners Notes These are all personal notes taken from the Udacity Course (ud9011) of Kotlin Bootcamp for Programmers by Google as well as oth

app conversor de moedas/cambio com Kotlin, no Bootcamp Carrefour Android Developer na plataforma da Digital Innovation One
app conversor de moedas/cambio com Kotlin, no Bootcamp Carrefour Android Developer na plataforma da Digital Innovation One

Status do Projeto: ✔️ concluído a proposta de criação um app conversor de moedas/cambio com Kotlin, no Bootcamp Carrefour Android Developer na plataforma da Digital Innovation One

 Bootcamp - Digital Innovation One e NTT Data - Aula de Recursos Nativos do Android
Bootcamp - Digital Innovation One e NTT Data - Aula de Recursos Nativos do Android

Recursos-Nativos-Android -Foto e Camera Bootcamp - Digital Innovation One e NTT Data - Aula de Recursos Nativos do Android Tutorial de uso da bibliote

 🏫 HelloWorld for Factoria F5 Bootcamp
🏫 HelloWorld for Factoria F5 Bootcamp

🏫 HelloWorld for Factoria F5 Bootcamp

Filmesflix - Project made during the NTT DATA Android Developer bootcamp. Developing knowledge in MVVM and Clear Architecture
Filmesflix - Project made during the NTT DATA Android Developer bootcamp. Developing knowledge in MVVM and Clear Architecture

FilmesFlix Projeto criado para o módulo de MVVM e Clean Architecture no Bootcamp

Android Bootcamp with Kotlin Final Project
Android Bootcamp with Kotlin Final Project

EasyFoodApp Android Bootcamp with Kotlin Final Project WEB SERVİS API Tüm yemekleri Listeleme Sepetteki Yemekleri Listeleme Sepete Yemek Ekleme Sepett

Second assigment of the UpSchool Android Development Bootcamp
Second assigment of the UpSchool Android Development Bootcamp

Android-Tween-Animation-Sample 🌟 The view animation framework supports both tween and frame-by-frame animations, both of which can be declared in XML

Repositorio de los ejemplos desarrollados en el Bootcamp de Kotlin de DAMnificad@s
Repositorio de los ejemplos desarrollados en el Bootcamp de Kotlin de DAMnificad@s

DAMnificad@s Kotlin Bootcamp Ejemplos de código de Kotlin para el Bootcamp de DAMnificad@s. DAMnificad@s Kotlin Bootcamp Bootcamp DAMnificad@s Kotlin

Travel Guide App - FMSS Kotlin Bootcamp
Travel Guide App - FMSS Kotlin Bootcamp

Travel-Guide-Capstone-Project Travel Guide App - FMSS Kotlin Bootcamp 💻 Table of Contents About The Project Pages About The Project Travel Guide App

Owner
Sahranur Er
Junior Android Developer || Computer Engineer
Sahranur Er
The app features real-time chatting between different users on daily topics

DailyDiscuss The app features real-time chatting between different users on daily topics. The app comes with 2 types of user interface: Admin who crea

null 1 Dec 20, 2021
Kotlin Leaning Notes from Udacity Course | Kotlin Bootcamp for Programmers by Google

Kotlin Beginners Notes These are all personal notes taken from the Udacity Course (ud9011) of Kotlin Bootcamp for Programmers by Google as well as oth

Süha Tanrıverdi 34 Dec 10, 2022
🏫 HelloWorld for Factoria F5 Bootcamp

?? HelloWorld for Factoria F5 Bootcamp

Adevinta Spain 3 Feb 23, 2022
Repositorio de los ejemplos desarrollados en el Bootcamp de Kotlin de DAMnificad@s

DAMnificad@s Kotlin Bootcamp Ejemplos de código de Kotlin para el Bootcamp de DAMnificad@s. DAMnificad@s Kotlin Bootcamp Bootcamp DAMnificad@s Kotlin

José Luis González Sánchez 15 Sep 27, 2022
AwesomeDialog 3.1 0.0 Kotlin No description, website, or topics provided.

AwesomeDialog This library is a set of simple wrapper classes that was created to help you easily make SCLA like dialogs. Gradle add jitpack to your p

null 152 Nov 30, 2022
****. Use the native and support library variants instead - https://developer.android.com/guide/topics/ui/look-and-feel/fonts-in-xml.html. An android library that makes it easy to add custom fonts to edittexts and textviews

Add to your project Add this line to your dependencies in build.gradle compile 'in.workarounds.typography:typography:0.0.8' Using the views There are

Workarounds 43 Nov 6, 2021
Native solution for common React Native problem of focused views being covered by soft input view.

react-native-avoid-softinput Native solution for common React Native problem of focused views being covered by soft input view. It is solved by listen

Mateusz Mędrek 312 Jan 2, 2023
simple game implements with kotlin and jetpack.(covered by unit test)

Simple Spy Game: Source Code ?? Published version ?? This repository contains a detailed game app that implements simple game using Koin, Room, Corout

Reza Darvishian 11 Jul 2, 2022
API for a library using Kotlin, Spring-boot and covered by test

Library API This API is to create Books and be able to borrow from them I'm using: Spring Boot version 2.5.6 Kotlin 1.5.31 Java 11 I'm implementing us

Daniel Queiroz 1 Nov 5, 2021
The app features real-time chatting between different users on daily topics

DailyDiscuss The app features real-time chatting between different users on daily topics. The app comes with 2 types of user interface: Admin who crea

null 1 Dec 20, 2021