Code Monkey home page Code Monkey logo

enigma_2005's Introduction

Enigma Project for Week 6 of Mod 1

Explanation

I worked on a system of "red-green-refactor" with this project. I first wanted to get all the methods to pass per the interaction patterns listed, then refactor to see if I could improve my code.

I believe this refactoring was very helpful and allowed me to simplify my code substantially. In this process I was able to add a module and delete 2 extraneous classes and a module that went along with them, plus any associated tests. I was able to use better enumerators and methods and implement a hash where I thought it relevant.

My self-evaluation based on the rubric (linked here) is below.

Functionality - 3

I was able to write working encrypt and decrypt methods, which are able to be used in the command line. I opted to not try for the cracking method as I felt refactoring was a better use of my time.

Object Oriented Programming - 4

I implemented a module in a logical manner and used encapsulation in an appropriate way. I'm able to explain why I made the design choices that I did and why those choices improve organization.

Ruby Conventions and Mechanics - 3

I used proper indentation, spacing and good line length, and all class, method, variable and file names follow convention. I believe I chose the right enumerable for the job. Some of my methods are long however well and I struggled to see how I could reduce their line length, which keeps this from being a 4.

Test Driven Development - 3

I tested every method at both the unit and integration level, and wrote tests before methods. However, I did not implement mocks or stubs as I could not find a way to implement one in a good way. I did have 100% test coverage however.

enigma_2005's People

Contributors

dtsehl avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.