laba_3's People
Forkers
levalexeevlaba_3's Issues
code review
class Cell:
- enum class CellColor can be simplified
var c не используется, ее можно убрать, и в принципе не добавлять в скобках цвета - смысл переопределять equals и hashcode, если кажется конкретно сравнение cell нигде не происходит кроме тестов,
а везде идет сравнение лишь их цветов
class Chip:
- есть ли смысл делать его open, т к (как я поняла) это для того, чтобы можно было его наследовать, но вроде он нигде не наследуется?
class Board:
- fun readyEat() можно сделать private и нужно ли ее выносить, если она использеутся лишь раз и ее функционал просто в возвращении
- нейминг bcng/wcng - не совсем понятно, что они делают, если смотришь первый раз
- нейминг goalbef
- должны ли cells и turn быть публичными?
- заменить дублирование кода в местах, где идет проверка вокруг клетки
строки 202 - 206
строки 180 - 189
строки 166 - 170
например, с помощью вынесения функции -
fun chooseDirection(i: Int): MutableList<Int> { val signs = mutableListOf<Int>() if ( i == 0 ) { signs.add(1) signs.add(1) } if ( i == 1 ) { signs.add(1) signs.add(-1) } if ( i == 2 ) { signs.add(-1) signs.add(1) } if ( i == 3 ) { signs.add(-1) signs.add(-1) } return signs }
можно сделать по другому - примерный вариант
for ( i in 0..3) { result = checkEat(Cell(cell.x + chooseDirection(i)[0], cell.y + chooseDirection(i)[1], CellColor.BROWN), chooseDirection(i)[0], chooseDirection(i)[0], result) }
CheckersView
Добавить кнопку для изменения позиции
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.