I am a Full Stack Developer from Finland.
- 🔭 Working as a Software Developer
- ✨ Intrested in tech, finance and nature
- 🎲 Like to play board games, chess and computer games
Chess bot using alpha-beta pruning
Projektin sekä testien ajo sujui ongelmitta, tosin käyttömukavuuden kannalta olisi ollut mukavaa, jos shakkibottia vastaan olisi mahdollista pelata ilman ohjelman uudelleenajamista jokaisella vuorolla. Lisäksi ainakin demotilaisuudessa olisi kiva nähdä botin pelaavan itseään vastaan. Tähän määrittelydokumentissa mainittu graafinen käyttöliittymä olisi oikein sopiva.
Koodi on yleisesti aika selkeää, ja suurimmasta osasta luokista löytyy myös JavaDocit. Testikattavuus on paikoitellen hieman matala, mutta vakavia puutteita ei näyttäisi olevan.
Ensi viikon demotilaisuudessa jonkinlainen suorituskyky- ja/tai pelitaitovertailu olisi myös mukava nähdä. Lisäksi esimerkiksi suorituskyvystä voisi olla jonkinlainen tarkempi analyysi, josta selviäisi, mitkä osat algoritmia vievät eniten aikaa, ja missä määrin algoritmin teoreettinen aikavaatimus näkyy käytännössä.
Kloonattu to 13.6.2019 klo 16.22
Projekti on laaja ja sen rakenne on hyvä ja siisti. Hakemistoja on käytetty monipuolisesti ja testit ovat omassa hakemistossaan siististi ja myös sisäinen jaottelu on toteutettu siististi ja alihakemistoja on käytetty runsaasti. Pakkauksen abcb nimentä ei ole (ainakaan itselle) kovin kuvaava ja sitä ehkä voisi miettiä.
Metodit ja muuttujat on nimetty selkästi ja kuvaavasti. Javadocit ovat selkeitä ja niistä saa hyvän käsityksen toiminnoista. Vaikka esimerkiksi Minimax.java luokassa ei ole (vielä?) javadoceja, kuvaavista muuttujien/metodien nimistä saa jo hyvin selvää tarkoituksesta. Silti ainakin pisimpiin metodeihin olisi hyvä lisätä javadocit lisäselvennykseksi. Koodi on kaikkiaan hyvää ja se on jaoteltu hyvin metodeihin ja sitä on selkeää lukea. Metodit ovat lähes kaikki sopivan pituisia. Alphabeta metodi on melko pitkä, mutta voi olla, että sitä on luonteensa vuoksi vaikea jaotellakaan lyhyemmiksi.
Yksikkötestit ajoin komentoriviltä ja ne menivät läpi. Testausdokumenttiin tulee varmastikin vielä lisää asiaa. Sovelluksen graafinen ilme on hieno ja sinänsä käyttöliittymä on niin selkeä, etten tarvinnut ihmeempää käyttöohjetta. Nappi, josta pääsisi palaamaan valikkoon olisi mahdollisesti pelaajan kannata hyvinkin kätevä.
Kun latasin projektin, jouduin muuttamaan openings2.txt tiedoston nimen openings.txt nimiseksi, jotta peli aukesi. Tekoäly toimi hienosti ja onnistui voittamaan minut (joka ei tosin ole varmaan kovin vaikea), mutta siirrot olivat hyviä. Kun pelissä tuli shakkimatti, siitä ei tosin tullut ilmoitusta näytölle, mutten voinut myöskään liikuttaa enää mitään nappia. Katsojaroolissa peli ilmoitti lopussa shakkimatista pelinäytölle. Tekoäly vaikuttaa tehokkaalta ja on myös nopea. Suorituskykytestejä ei ollut tästä vielä nähtävissä, mutta ne ovat mitä luultavimmin tekeillä vielä. Pelin toiminnot ja sallitut siirrot vaikuttavat toimivan oikein.
Kaiken kaikkiaan huolellisesti ja hyvin rakennettu työ. Hyvin laaja, hieno projekti!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.