38
What is a Good Code?

What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

What is a Good Code?

Page 2: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

About me

Bartek Kuczyński aka Koziołek

Koziolekweb.pl

4programmers.net

Wrocław JUG

Page 3: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

How to define good code?

Page 4: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Context

Page 5: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

They will pay for it

Page 6: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

It works

Page 7: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Definition of work

Page 8: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Code meets requirements

Page 9: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Process(Scrum, Agile, RUP)

Page 10: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Never ever realise crap

Page 11: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Will thank you for it

Page 12: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

If you do code reviews?

Page 13: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

GerritCrucible

Code Brag

Github

Page 14: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Pick good tools

Page 15: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Learn new things everyday

Page 16: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Lone wolves dies first

Page 17: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

public void writeFileToConsole(String path) throws IOException {

BufferedReader br = new BufferedReader(new FileReader(path));

String line = null;while ((line = br.readLine()) != null) {

System.out.println(line);}

}

Page 18: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

public void writeFileToConsole(String path) throws IOException {

List<String> lines = Files.readAllLines(

FileSystems.getDefault().getPath("/", path));

for(String line : lines){System.out.println(line);

}}

Page 19: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

public void writeFileToConsole(String path) throws IOException {

lines(getDefault().getPath("/", path))

.forEach(out::println);}

Page 20: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

When you do it in bad way?

Page 21: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Then you realise crap

Page 22: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

They will blesses you for it

Page 23: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

End of development

Page 24: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Maintenance

Page 25: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Good tests

Page 26: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

public void doSth(A param1, B param2){checkNotNull(param1);checkNotNull(param2);R resp1 = outService.askfor(param1);if(resp1.isValid()){

inServiceDao.save(new BDTO(param2));}

}

Page 27: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

What tests we need here?

Page 28: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Flood of Unit tests

Page 29: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Myth of 100% coverage

Page 30: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Tests should tell a story

Page 31: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Good documentation

Page 32: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Easy to understand

Page 33: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Sum up

Page 34: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

It works

Page 35: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Technically good

Page 36: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Has good tests

Page 37: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Has good documentation

Page 38: What is a Good Code? · What is a Good Code? About me Bartek Kuczyński aka Koziołek Koziolekweb.pl 4programmers.net Wrocław JUG. How to define good code? Context. They will pay

Questions?