SlideShare a Scribd company logo
1 of 26
toioで分数タイマー
自己紹介: 小野寺 修(Sam)
■ とある一般社団法人のひとり情シス
ミュージシャンにお金を分配する業務
基幹システムの企画/構築/実装/運用をちくちくと
■ ソラコムUG東京のコアメンバー
■ obniz界隈に出没
■ #指紋の人なる称号を頂戴
“タミヤ1/35戦車模型とobnizで作る、他人とシェアリングできるラジコン”
https://youtu.be/wDEbnEQ6QEc
そのフォローが定年後の励みになります@SAMonodera
toioについて書いたQiita記事が
トレンド入り!
応援して頂いた皆さまに感謝申し上げますmm
そのフォローが定年後の励みになります@SAMonodera
Toioで分数タイマー:
1~9分間を計れるタイマーを作ってみました。
① 数字の上にキューブを置いて、タイマーの時間(分)を設定する
② 予めカラーコピー機でサークルを印刷しておいたマットの上にtoioを置く
③ キューブがサークル状に移動を開始、タイマーの設定時間で一周する
今回の作品を動画でご紹介します
そのフォローが定年後の励みになります@SAMonodera
https://www.youtube.com/watch?v=fTCxwLCT-pM
そのフォローが定年後の励みになります@SAMonodera
(リアルデモのお時間)
そのフォローが定年後の励みになります@SAMonodera
プログラムの解説:
ココから唐突に、みんなのバイブル『リーダブルコード』が降臨。心の準備はいいですか?
そのフォローが定年後の励みになります@SAMonodera 今回のプログラムの全容です
そのフォローが定年後の励みになります@SAMonodera メイン部分を例に説明します
そのフォローが定年後の励みになります@SAMonodera
7章5節: 関数から早く返す
・関数で複数のreturn文を使ってはいけないと思っている人がいる、アホくさ。
・関数から早く返すのはいいことだ。むしろ望ましいときもある。
注)私の言葉ではなく、書籍の言葉です。あしからず。
そのフォローが定年後の励みになります@SAMonodera メイン部分を例に説明します
そのフォローが定年後の励みになります@SAMonodera ❶は if だけ、❷は if~else にしたものです
❶ else節なし ❷ else節あり
そのフォローが定年後の励みになります@SAMonodera
❶ else節なし ❷ else節あり
❷の方が短くて良さそう?
そのフォローが定年後の励みになります@SAMonodera 機能毎に分割して見てみると…
そのフォローが定年後の励みになります@SAMonodera ❶の方は、例外処理が起きると、即モジュール(イベント)を抜けるようにしています
ただちに終了
するので、それ
以降を考えなくて
済みます
そのフォローが定年後の励みになります@SAMonodera
7章7節: ネストを浅くする
・ネストの深いコードは理解しにくいし、その条件が何だったのかうまく思い出せない。
・早めに返してネストを削除する。
そのフォローが定年後の励みになります@SAMonodera
❶ else節なし ❷ else節あり
そのフォローが定年後の励みになります@SAMonodera ❷の方が、else節がある分、階層(ネスト)が一段深いのです
この部分が
思考エネルギーを
吸い取って
しまいます!
そのフォローが定年後の励みになります@SAMonodera
(リアルデモの途中経過)
そのフォローが定年後の励みになります@SAMonodera
13章3節: コードを小さく保つ
・汎用的なコードを作って重複を削除する。
・コードの「重量」を意識して軽量で機敏にしておく。
そのフォローが定年後の励みになります@SAMonodera 機能ごとに分割することで、メインの構造をシンプルにしています
そのフォローが定年後の励みになります@SAMonodera
例えば。
メイン部分を分割(イベント化)しない場合は、
❷のように難読性が高まります。
❶ 分割あり ❷ 分割なし
そのフォローが定年後の励みになります@SAMonodera
Tips
「開発者向けマット(仮)」には直接、カラーコピー機で印刷ができます
そのフォローが定年後の励みになります@SAMonodera
実際の印刷例:
マットのドットを潰さないように淡い色を選択。「トナー節約」モードはオンで。
まとめ
■ (else節を使う時などは)ネストの深さに留意する
■ (イベント化や関数化して)モジュール性を高めよう
■ 「開発者向けマット」はカラーコピー機で印刷可能!
そのフォローが定年後の励みになります@SAMonodera
ご清聴ありがとうございました
“ 最も読みやすいコードは、何も書かれていないコードだ。”
(リーダブルコード, P. 168)
そのフォローが定年後の励みになります@SAMonodera

More Related Content

What's hot

ここまでできるkintoneカスタマイズ事例
ここまでできるkintoneカスタマイズ事例ここまでできるkintoneカスタマイズ事例
ここまでできるkintoneカスタマイズ事例Cybozucommunity
 
kintoneで実現 リモートワークという働き方 Cloud days 2016 Tokyo
kintoneで実現 リモートワークという働き方 Cloud days 2016 Tokyo kintoneで実現 リモートワークという働き方 Cloud days 2016 Tokyo
kintoneで実現 リモートワークという働き方 Cloud days 2016 Tokyo JOYZO
 
kintone hive ライトニングトーク ジョイゾー 四宮様
kintone hive ライトニングトーク ジョイゾー 四宮様kintone hive ライトニングトーク ジョイゾー 四宮様
kintone hive ライトニングトーク ジョイゾー 四宮様Cybozucommunity
 
しゃちくフレンズ
しゃちくフレンズしゃちくフレンズ
しゃちくフレンズTsuyoshi Saito
 
次世代自動販売機オペレーター提供サービスのご案内
次世代自動販売機オペレーター提供サービスのご案内次世代自動販売機オペレーター提供サービスのご案内
次世代自動販売機オペレーター提供サービスのご案内kashiwanoha-iot
 
【kintone hive 上海】株式会社ジョイゾー様講演資料_160923
【kintone hive 上海】株式会社ジョイゾー様講演資料_160923【kintone hive 上海】株式会社ジョイゾー様講演資料_160923
【kintone hive 上海】株式会社ジョイゾー様講演資料_160923Cybozucommunity
 
2013.2.13クローズアップ現代〜収入源は動画投稿〜補足解説
2013.2.13クローズアップ現代〜収入源は動画投稿〜補足解説2013.2.13クローズアップ現代〜収入源は動画投稿〜補足解説
2013.2.13クローズアップ現代〜収入源は動画投稿〜補足解説新潟コンサルタント横田秀珠
 
kintone プラグインで Enjoy IT, Enjoy LIFE
kintone プラグインで Enjoy IT, Enjoy LIFEkintone プラグインで Enjoy IT, Enjoy LIFE
kintone プラグインで Enjoy IT, Enjoy LIFECybozucommunity
 
日本社会忖度システム
日本社会忖度システム日本社会忖度システム
日本社会忖度システムNegishi
 
2015/05/22 kintone hive
2015/05/22 kintone hive2015/05/22 kintone hive
2015/05/22 kintone hiveJOYZO
 
アフターコロナのスマート経営
アフターコロナのスマート経営アフターコロナのスマート経営
アフターコロナのスマート経営Hideaki Sone
 
kintone × IoT 連携による現場業務の改善(kintone hive)
kintone × IoT 連携による現場業務の改善(kintone hive)kintone × IoT 連携による現場業務の改善(kintone hive)
kintone × IoT 連携による現場業務の改善(kintone hive)JOYZO
 
YouTubeに見る「利益とはライバルが参入するまでの時間である」
YouTubeに見る「利益とはライバルが参入するまでの時間である」YouTubeに見る「利益とはライバルが参入するまでの時間である」
YouTubeに見る「利益とはライバルが参入するまでの時間である」新潟コンサルタント横田秀珠
 

What's hot (14)

ここまでできるkintoneカスタマイズ事例
ここまでできるkintoneカスタマイズ事例ここまでできるkintoneカスタマイズ事例
ここまでできるkintoneカスタマイズ事例
 
kintone革命クラウドが生み出す新革命20160429
kintone革命クラウドが生み出す新革命20160429kintone革命クラウドが生み出す新革命20160429
kintone革命クラウドが生み出す新革命20160429
 
kintoneで実現 リモートワークという働き方 Cloud days 2016 Tokyo
kintoneで実現 リモートワークという働き方 Cloud days 2016 Tokyo kintoneで実現 リモートワークという働き方 Cloud days 2016 Tokyo
kintoneで実現 リモートワークという働き方 Cloud days 2016 Tokyo
 
kintone hive ライトニングトーク ジョイゾー 四宮様
kintone hive ライトニングトーク ジョイゾー 四宮様kintone hive ライトニングトーク ジョイゾー 四宮様
kintone hive ライトニングトーク ジョイゾー 四宮様
 
しゃちくフレンズ
しゃちくフレンズしゃちくフレンズ
しゃちくフレンズ
 
次世代自動販売機オペレーター提供サービスのご案内
次世代自動販売機オペレーター提供サービスのご案内次世代自動販売機オペレーター提供サービスのご案内
次世代自動販売機オペレーター提供サービスのご案内
 
【kintone hive 上海】株式会社ジョイゾー様講演資料_160923
【kintone hive 上海】株式会社ジョイゾー様講演資料_160923【kintone hive 上海】株式会社ジョイゾー様講演資料_160923
【kintone hive 上海】株式会社ジョイゾー様講演資料_160923
 
2013.2.13クローズアップ現代〜収入源は動画投稿〜補足解説
2013.2.13クローズアップ現代〜収入源は動画投稿〜補足解説2013.2.13クローズアップ現代〜収入源は動画投稿〜補足解説
2013.2.13クローズアップ現代〜収入源は動画投稿〜補足解説
 
kintone プラグインで Enjoy IT, Enjoy LIFE
kintone プラグインで Enjoy IT, Enjoy LIFEkintone プラグインで Enjoy IT, Enjoy LIFE
kintone プラグインで Enjoy IT, Enjoy LIFE
 
日本社会忖度システム
日本社会忖度システム日本社会忖度システム
日本社会忖度システム
 
2015/05/22 kintone hive
2015/05/22 kintone hive2015/05/22 kintone hive
2015/05/22 kintone hive
 
アフターコロナのスマート経営
アフターコロナのスマート経営アフターコロナのスマート経営
アフターコロナのスマート経営
 
kintone × IoT 連携による現場業務の改善(kintone hive)
kintone × IoT 連携による現場業務の改善(kintone hive)kintone × IoT 連携による現場業務の改善(kintone hive)
kintone × IoT 連携による現場業務の改善(kintone hive)
 
YouTubeに見る「利益とはライバルが参入するまでの時間である」
YouTubeに見る「利益とはライバルが参入するまでの時間である」YouTubeに見る「利益とはライバルが参入するまでの時間である」
YouTubeに見る「利益とはライバルが参入するまでの時間である」
 

Recently uploaded

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 

Recently uploaded (9)

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 

toioで分数タイマー