ちゃんなるぶろぐ

エンジニア5年生🧑‍💻 オライリーとにらめっこする毎日。

【3分でわかる!】プログラミング〜SLAPについて〜

読み終えるまで約3分

 

どうも、ちゃんなるです。

今回はこの本の内容を元に投稿します!

『プリンシプル・オブ・プログラミング』

 

この本から得られるもの

いいコードを書くための『プリンシプル』

(プリンシプルとは原理・原則のことで、これを知ることがプログラマとして成長するための『王道』『近道』である)

 

本書の目的は、『プリンシプル』を通して良いコードを書けるようになることです。

 

『プリンシプル』は抽象的な内容であり、本書にはプログラムコードによる具体例もありません。

そのため、自分なりに内容を咀嚼し、自分なりの具体例を考えようとする姿勢が大切です。

①SLAPとは

SLAP:Single Level of Abstraction Principle.

日本語で言うと、『抽象化レベルの統一』です。

 

コードを書く際、高いレベルの抽象化概念と低いレベルの抽象化概念を分離するようにするということです。

言い換えると、同じ関数(≒スコープ)に属するコードの抽象度を統一するということです。

 

例えば…(読みにくいかもしれません)

function 高水準() { // レベル1
    中水準1();
    中水準2();
}
function 中水準1() { // レベル2
    低水準1();
    低水準2();
}
function 低水準1() { // レベル3
    // 処理
}
function 低水準2() { // レベル3
    // 処理
}
function 中水準2() { // レベル2
    低水準3();
    低水準4();
}
function 低水準3() { // レベル3
    // 処理
}
function 低水準4() { // レベル3
    // 処理
}

 

なぜこのようにするかと言うと、

同じところに同じ抽象どの情報が書かれていると、読みやすい理解しやすいからです。

②SLAPをどう実践するか

関数を構造化しましょう。

 

処理を、意図の伝わりやすい抽象化レベルの揃った小さな処理に分割しましょう。

その後、各関数内の処理は、一段抽象度の落ちた関数(または処理)で構成されるようにしましょう。

 

関数名で意図を適切に伝えられるのであれば、処理が1行であっても関数化して良いです。

まとめ

読みやすい、理解しやすいコードにするための考え方の一つとして、SLAPがあります。

この原則を知った上でコーディングすることで、今よりも可読性の高いコードが書けるかもしれませんね!

 

*より深く知りたい方は、ぜひ本書を手にとってみてください!

書籍情報 

プリンシプルオブプログラミング 3年目までに身につけたい一生役立つ101の原理原則 [ 上田勲 ]

価格:2,420円
(2021/8/28 14:24時点)
感想(2件)

プリンシプル オブ プログラミング 3年目までに身につけたい 一生役立つ101の原理原則【電子書籍】[ 上田勲 ]

価格:2,178円
(2021/8/28 14:24時点)
感想(1件)

【書籍名】プリンシプル オブ プログラミング 3年目までに身につけたい 一生役立つ101の原理原則

【著者名】上田勲

【出版社】秀和システム

【出版日】2016年3月

【ページ数】303p

著者紹介

f:id:Chan-Naru:20210828142858p:plain

著者:上田勲

横浜国立大学経営学部卒。キヤノンITソリューションズ勤務。Webアプリケーション自動生成ツール「Web Performer」の開発に、立ち上げ期より関わる。現在、テクニカルリーダー、スペックリーダー、アーキテクト、デザイナーを担いつつ、自らもプログラミングに携わる

上田勲|プロフィール|HMV&BOOKS onlineより)

 画像は上田勲に関する記事一覧 - ログミーより