Coder Social home page Coder Social logo

dotnetcorekoans's Introduction

.Net Core Koans

Build status All Contributors

The .NET Core Koans walk you along the path to enlightenment in order to learn C# on .NET Core. The goal is to learn C# syntax, structure and some common functions and libraries available on the .NET Core platform. .NET Core is a cross platform environment that runs happily on Windows, OS X and Linux. It is super simple to get started learning.

The Structure

The koans are broken out into areas by file, arrays are covered in AboutArrays.cs, lambdas are introduced in AboutLambdas.cs, etc. They are presented in order in the PathToEnlightenment.cs file.

Each koan builds up your knowledge of C# and builds upon itself. It will stop at the first place you need to correct.

Some koans simply need to have the correct answer substituted for an incorrect one. Some, however, require you to supply your own answer. If you see the object FILL_ME_IN listed, it is a hint to you to supply your own code in order to make it work correctly.

Getting Started

  1. Install .NET Core SDK 3.1.
  2. Install Visual Studio Code, the Insiders Edition is highly recommended.
  3. Clone the repository: git clone https://github.com/NotMyself/DotNetCoreKoans.git.
  4. Change directory into the cloned repository cd DotNetCoreKoans.
  5. Restore packages: dotnet restore.
  6. Open the project in VSCode code-insiders . or code . depending on what version you chose to install.
  7. Run the koans in watch mode: dotnet watch --quiet run.
    • Note: The --quiet flag is used here to suppress mesages from the watch framework.
  8. Follow along with the instructions printed to your console. Each time you save a *.cs file, the project will be built and run again for you automatically.

Contributing

Want to contribute? Check out our Code of Conduct and Contributing docs. This project follows the all-contributors specification. Contributions of any kind welcome!

There are many topics yet to be covered by this set of koans. I have added a handful of needed topics as issues and tagged them as Up for Grabs. There are even some specifically tagged as Beginner Friendly.

If you have never contributed to an open source project, let this be your first. Take a stab at updating the AboutStrings Koan to include information about interpolation then submit it as a pull request. I promise to work with you to get your contribution into the repository and be friendly and encouraging about it. It is what Jim would have done.

If you think a topic is missing, propose it's inclusion by submitting an issue yourself. Or better yet submit the issue and an accompanying pull request with how you think the topic should be introduced. Think about beginners in your effort; be clear and informative, be concise and most of all be playful with your examples.

About Koans

This project is based on the work of Cory Foy and his original multi-language project DotNetKoans. If you are interested in learning VB.NET or the Full .NET Framework (windows only), please look at his fine work.

Programming Koans came about because of the most enlightened Ruby Koans by Jim Weirich. Jim was a great teacher & programmer whom I had the pleasure of meeting, learning from and playing games with. Rest in peace, sir. We will continue your effort to bring a love of the craft to anyone willing to learn.

For a fuller explanation of what is going here, see the blog post Learn C# on Windows, OSX or Linux with the .NET Core Koans

Contributors โœจ

Thanks goes to these wonderful people (emoji key):


John Hoerr

๐Ÿ’ป

Victor Grigoriu

๐Ÿ’ป

James Naylor

๐Ÿ’ป

Samuel Cherinet

๐Ÿ’ป

Chris

๐Ÿ’ป

Delaine Wendling

๐Ÿ’ป

Allen

๐Ÿ’ป

Jonathan Couldridge

๐Ÿ’ป

Lukas Sinkus

๐Ÿ’ป

Richard D

๐Ÿ’ป

Stratos Kourtzanidis

๐Ÿ’ป

Agustin

๐Ÿ’ป

Matthew Parsons

๐Ÿ’ป

Jamie MacLeod

๐Ÿ’ป

Stuart Harrison

๐Ÿ’ป

Chris Jones

๐Ÿ“–

Atanas Pashkov

๐Ÿ’ป

Tomasz Cielecki

๐Ÿ’ป

SophieLemos

๐Ÿ’ป ๐Ÿ› ๐ŸŽจ ๐Ÿ“– ๐Ÿค”

Dan Schnau

๐Ÿ›

Joshua Belden

๐Ÿ’ป

Shawn Vause

๐Ÿ’ป

Jeannie Nguyen

๐ŸŽจ

Adam

๐Ÿ’ป

This project follows the all-contributors specification. Contributions of any kind welcome!

dotnetcorekoans's People

Contributors

a-scratchy avatar agustashd avatar allcontributors[bot] avatar allenz0810 avatar beforan avatar cheesebaron avatar cmdkeen avatar cmjchrisjones avatar codeman869 avatar delainewendling avatar dgaduin avatar dutts avatar euronay avatar jeannienguyen avatar jhoerr avatar lus1n avatar macleodmac avatar melkor54248 avatar napalm684 avatar nauhcnoohc avatar notmyself avatar orangutech avatar pezholio avatar tomizechsterson avatar vgrigoriu 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.