Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

しげる:第5回SGTechスキルアップ勉強会「変なカレンダー生成プログラム」 #1

Open
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

4geru
Copy link

@4geru 4geru commented Oct 28, 2024

したこと

コードのアピールポイント(感想含む)

TDD

完結にわかりやすくしました。TDD ベースで作成しました。
TDD は進めている感じがあったいいですね。

リファクタリング

Vertical / Horizonal は、最初はそれぞれ別で実装していました。
共通できる部分をリファクタとして切り出し Base class を作成しました。

エラー処理

1000 - 9999 年を対象とし、それより大きい値が入力された場合は、エラーにしています。
2025 年でも誕生日を覚えている方がいらっしゃったらお祝いしてください!

irb(main):001> require './lib/sg_strange_calendar.rb'
=> true
irb(main):002> puts SgStrangeCalendar.new(20).generate
==== error === invalid === year ====

🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂

1996 Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo
Jan      1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Feb               1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
Mar                  1 [2] 3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Apr      1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
May            1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Jun                     1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Jul      1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Aug               1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Sep   1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Oct         1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Nov                  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Dec   1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂

しげるの誕生日は 1996年3月2日 です!
=> nil

コードを書くのにかかった時間(ざっくりでよいです。10分、1時間、3日、etc.)

たぶん3時間くらいかかってると思います。

だいたいのプログラミング歴

C言語、BASICを高校の時にしたので、10年くらい

実際に解いてみた感想

直感的に Ruby がかけるのは楽しいですね

確認

 → make test/calendar
ruby test/sg_strange_calendar_test.rb --no-plugins
Run options: --seed 29022

# Running:

.........

Finished in 0.003815s, 2359.1088 runs/s, 2359.1088 assertions/s.

9 runs, 9 assertions, 0 failures, 0 errors, 0 skips

@4geru 4geru changed the title 4geru calendar 第5回SGTechスキルアップ勉強会「変なカレンダー生成プログラム」 Oct 29, 2024
@4geru 4geru marked this pull request as ready for review October 29, 2024 11:03
@4geru 4geru changed the title 第5回SGTechスキルアップ勉強会「変なカレンダー生成プログラム」 しげる:第5回SGTechスキルアップ勉強会「変なカレンダー生成プログラム」 Oct 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant