Musa BAL
2 min readSep 13, 2021

DAVUL UYGULAMASI — REFACTORING

import ‘package:flutter/material.dart’;

import ‘package:audioplayers/audioplayers.dart’; // sesleri çalmak için kütüphane yükledik

void main(){

runApp(DavulUygulamasi());

}

class DavulUygulamasi extends StatelessWidget {

@override

Widget build(BuildContext context) {

return MaterialApp(

home: Scaffold(

backgroundColor: Colors.black, // Uygulamanın arka zemin renk ayarını Scaffold üzerinden yaptık

body:

DavulSayfasi(), // Kodları parçalı anlaşılır yapmak için body kısmını dolduracağımız fonk. hazırladık

),

);

}

}

class DavulSayfasi extends StatelessWidget { // Kodu tek parça ve okuması zor olmasın diye ek fonk. hazırladık

final oynatici = AudioCache(); // Ses kütüphanesinin AudioCache() metodunu instance ettik

void sesiCal(String parca){ // Sesleri çalmak için parça adını parametre olarak alıyoruz

oynatici.play(parca); // sesiCal() fonksiyonu ile her butonda ayrı ayrı kod yazmıyoruz

}

@override

Widget build(BuildContext context) {

return SafeArea(

child: Padding(

padding: const EdgeInsets.fromLTRB(8, 4, 8, 4), // hücrelerin en dış boşlukları için

child: Column( // 4X2 hücre yapısını içine alan Column tanımladık

children: [

Expanded( // Row ekranda görünmesi ve yayılması için Expanded içine aldık

child:

Row( // Column içindeki 1. sol satır

children: [

Expanded( // FlatButton ekranda görünmesi ve yayılması için Expanded içine aldık

child: reFactorDavulSayfasi(“bip”, Colors.blueAccent),

),

Expanded(

child: reFactorDavulSayfasi(“bongo”, Colors.redAccent),

),

],

),

),

Expanded( // Row ekranda görünmesi ve yayılması için Expanded içine aldık

child:

Row( // Column içindeki 1. sağ satır

children: [

Expanded(

child: reFactorDavulSayfasi(“clap1”, Colors.grey) ,

),

Expanded(

child: reFactorDavulSayfasi(“clap2”, Colors.white),

),

],

),

),

Expanded( // Row ekranda görünmesi ve yayılması için Expanded içine aldık

child:

Row(

children: [

Expanded(

child: reFactorDavulSayfasi(“clap3”, Colors.cyanAccent),

),

Expanded(

child: reFactorDavulSayfasi(“crash”, Colors.brown),

),

],

),

),

Expanded( // Row ekranda görünmesi ve yayılması için Expanded içine aldık

child:

Row(

children: [

Expanded(

child: reFactorDavulSayfasi(“how”, Colors.pinkAccent),

),

Expanded(

child: reFactorDavulSayfasi(“oobah”, Colors.greenAccent),

),

],

),

),

Expanded( // Row ekranda görünmesi ve yayılması için Expanded içine aldık

child:

Row(

children: [

Expanded(

child: reFactorDavulSayfasi(“ridebel”, Colors.deepPurple),

),

Expanded(

child: reFactorDavulSayfasi(“woo”, Colors.amberAccent),

),

],

),

),

],

),

),

);

}

FlatButton reFactorDavulSayfasi(String ses, Color renk){ // Bana bir FlatButton döndüren fonksiyon

return FlatButton( // Ses ve rengi dışarıdan parametre olarak al

padding: EdgeInsets.all(10),

onPressed: (){

sesiCal(ses); // sesiCal fonksiyonunu çağırdık

},

child: Container( // Container FlatButton ile sarıldı

color: renk, // color a renk parametresini verdik

),

);

}

}

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Musa BAL
Musa BAL

No responses yet

Write a response