Ruby Koans: Học ruby từ fix lỗi 😄

http://rubykoans.com/

Koans cho ngôn ngữ khác :smiley:
Python: https://github.com/gregmalcolm/python_koans
Java: https://github.com/matyb/java-koans
Và còn nhiều cái nữa: https://github.com/search?o=desc&p=2&q=koans&ref=cmdform&s=stars&type=Repositories

Có ai học theo kiểu này chưa, thú vị phết :smile:
Còn nửa đường nửa là tìm được “chân lý” roài :smile_cat:

10 Likes

Cụ thể tí, nghe có vẻ hay :smiley:

2 Likes

Nó có một đống các bài như này ạ, xong fix lỗi cho đến khi hết lỗi thì thôi :smile: nó giống như TDD vậy, RED - GREEN - REFACTOR :blush:

Nhưng có cái là mình có một ông sư phụ hướng dẫn, lúc nào cũng phán: “Em chưa đạt đến sự khai sáng” xong cho đáp án câu đang làm. Với cả trong source code cũng có các comment gợi ý, và gợi mở nữa (tức là không cho đáp án mà phải tự nghĩ hoặc tự google :grin: )

Ví dụ bài này là bài về regex, mình phải điền vào cái __ đó để cho assert_equal trả về true:

  def test_a_vertical_pipe_means_or
    grays = /(James|Dana|Summer) Gray/
    assert_equal __, "James Gray"[grays]
    assert_equal __, "Summer Gray"[grays, 1]
    assert_equal __, "Jim Gray"[grays, 1]
  end

  # THINK ABOUT IT:
  #
  # Explain the difference between a character class ([...]) and alternation (|).

  # ------------------------------------------------------------------
2 Likes

À, cái này hay đấy :thumbsup: Làm cái này để sau này thích luôn TDD :smiley:

2 Likes

Ôi thao trường đây rồi…lâu lắm mới được ngồi fix lỗi sướng ghê :blush: cảm giác fix xong rất tuyệt vời :blush:

2 Likes

Tks anh @thanhmssl10 :smile:

2 Likes

Hehe em có học ruby không, cái koans này nhiều ngôn ngữ cũng có bản port đó :smile:

Python: https://github.com/gregmalcolm/python_koans
Java: https://github.com/matyb/java-koans

Và còn nhiều cái nữa: https://github.com/search?o=desc&p=2&q=koans&ref=cmdform&s=stars&type=Repositories

4 Likes

Em đang học đây ạ, may giờ có thêm web này để có thêm điều kiện rèn luyện :slight_smile:

1 Like

Đưa mấy cái link này lên 1 đi cho mọi người thấy :smiley: Toàn link hay :thumbsup:

2 Likes

Cái này học như thế nào vậy anh @ltd. hay bạn nào giúp mình cái. Thanks.

1 Like

Bạn down cái koans về chưa, down rồi thì cd đến thư mục đó xong, $ ruby path_to_enlightenment.rb rồi làm theo hướng dẫn :smile: (mà tốt nhất là bạn đọc cái file README đó :smile: )

about_asserts.rb               about_scope.rb
about_blocks.rb                about_scoring_project.rb
about_classes.rb               about_strings.rb
about_class_methods.rb         about_symbols.rb
about_constants.rb             about_to_str.rb
about_control_statements.rb    about_triangle_project_2.rb
about_dice_project.rb          about_triangle_project.rb
about_exceptions.rb            about_true_and_false.rb
about_extra_credit.rb          about_variable_scope.rb
about_hashes.rb                example_file.txt
about_inheritance.rb           GREED_RULES.txt
about_iteration.rb             koans.watchr
about_java_interop.rb          my_test.rb
about_keyword_arguments.rb     neo.rb
about_message_passing.rb       path_to_enlightenment.rb
about_methods.rb               Rakefile
about_modules.rb               README.rdoc
about_nil.rb                   test.rb
about_objects.rb               triangle.rb
about_open_classes.rb          versioning_spec.rb
about_proxy_object_project.rb
$ ruby path_to_enlightenment.rb 

1 Like

Hay quá , nghịch tý, trên lớp cũng đang có môn học Ruby :wink:

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?