Exercism exercises in Dart
# "bob" - this is an example slug
# $ ./tool/create-exercise <slug>
$ ./tool/create-exercise bob
$ cd exercism/bob
# vim / emacs / code / subl / (other editor)
$ vim .
Add the exercise to the config.json
file, by adding an entry to the exercises
array:
{
"slug": "dart",
"language": "Dart",
"repository": "https://github.com/exercism/dart",
"active": true,
"exercises": [
// ...
{
"slug": "bob",
"difficulty": 1,
"topics": [
"Control flow (conditionals)",
"Polymorfism",
"Strings",
"Unicode",
"Pattern recognition",
"Regular expressions"
]
},
// ...
],
// ...
}
$ pub run test
pub run dart_style:format -l 120 -w .
$ git checkout -b feature/exercise-bob
$ git commit -am 'Added exercise: bob'
$ git push origin feature/exercise-bob
Follow the Dart style guide
Exercise dirname in kebab-case
# good
exercises/complex-numbers
# bad
exercises/complex_numbers
exercises/complexNumbers
exercises/complex\ numbers
Filenames in snake_case
# good
exercises/complex-numbers/lib/complex_numbers.dart
exercises/complex-numbers/test/complex_numbers_test.dart
# bad
exercises/complex-numbers/lib/complex-numbers.dart
exercises/complex-numbers/test/complex-numbers_test.dart
exercises/complex-numbers/lib/complexNumbers.dart
exercises/complex-numbers/test/complexNumbers_test.dart
exercises/complex-numbers/lib/complex\ numbers.dart
exercises/complex-numbers/test/complex\ numbers_test.dart
Variables / methods / functions in camelCase
// good
void complexNumbers() { }
// bad
void complex_numbers() { }
Classes in PascalCase
// good
class ComplexNumbers { }
// bad
class complexNumbers { }
class complex_numbers { }
class Complex_numbers { }
Constatns in UPPER_SNAKE_CASE
// good
const SECRET_ANSWER = 42;
// bad
const secret_answer = 42;
const secretAnswer = 42;
const SecretAnswer = 42;
- Fork it (https://github.com/SuperPaintman/exercism-dart/fork)
- Create your feature branch (
git checkout -b feature/exercise-<slug>
) - Commit your changes (
git commit -am 'Added exercise: <slug>'
) - Push to the branch (
git push origin feature/exercise-<slug>
) - Create a new Pull Request
- SuperPaintman SuperPaintman - creator, maintainer