---
title: スマホアプリから 学ぶ言語思想
tags: 
author: [Palm](https://convert.docswell.com/user/palm7710)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/YE99ZNRXE3.jpg?width=480
description: マルチパラダイム言語の世界
published: January 31, 26
canonical: https://convert.docswell.com/s/palm7710/KM6J7E-2026-01-31-143329
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/YE99ZNRXE3.jpg)

―
スマホアプリから
学ぶ言語思想
マルチパラダイム言語の世界 ―
palm


# Page. 2

![Page Image](https://bcdn.docswell.com/page/GE891KW97D.jpg)

マルチパラダイム言語とは？
オブジェクト指向や関数型といった
複数のパラダイム（考え方）を
あわせ持つ言語のことです！


# Page. 3

![Page Image](https://bcdn.docswell.com/page/LELWQZNMJR.jpg)

最近の発見💡
スマホアプリ開発用の言語って、
責務を分けたり、コンパイラが厳しかったり、
処理をチェーンでつないだり、
UIが宣言的だったりして、
いろんな思想やスタイルを使ってるぞ？？


# Page. 4

![Page Image](https://bcdn.docswell.com/page/4JM91VX6EW.jpg)

スマホアプリ開発で使われる思想やスタイル
オブジェクト指向
関数型
命令型
宣言的UI


# Page. 5

![Page Image](https://bcdn.docswell.com/page/PJRGL2NNE9.jpg)

オブジェクト指向
コードを構造化し、チーム開発を支える
クラスで「データと処理」をまとめる。
プロトコルに「ルール」だけ置いておく、
デリゲートで「疎結合」を実現する。
役割を細かく分けることで、
コードを変更しても、他に影響しにくい！


# Page. 6

![Page Image](https://bcdn.docswell.com/page/PEXXWDN8EX.jpg)

関数型
書き換えず変換し、安全性と可読性を高める
で値を「不変」にし、
オプショナルで「NULLを安全」に扱い、
map で「書き換えず」に新データ作成。
let
状態を持たずに処理できるため、
データの流れが明確になり（透明性）
壊れにくく超安全なコードになる！


# Page. 7

![Page Image](https://bcdn.docswell.com/page/3EKWVXNLED.jpg)

命令型（手続き型）
思考の流れで実装でき、爆速開発
で「可変」な状態を持ち、
その場で「状態（データ）を更新」し、
命令を「上から書いた順」に実行する。
これが、CPU の逐次実行モデルや
人間の思考に近いため、
処理の流れが「直感的」
ミリ秒単位の細かな制御を可能にし、
軽量化と複雑なUIを高いレベルで実現！
var


# Page. 8

![Page Image](https://bcdn.docswell.com/page/L731M5V6J5.jpg)

宣言的UI
シンプル / 直感的 / 一貫性のあるUI体験
View
で「見た目を定義」する。
@State
で「状態(データ)を管理」し、
状態の値を変えると UI が「動的に更新」。
テキストやボタン、図形などのパーツを
「パズル」のように組み立てて、
「デザインが統一」されたViewを構築可能。
直感的でモダンなUI開発体験が楽しい！


# Page. 9

![Page Image](https://bcdn.docswell.com/page/87DX6D8MEG.jpg)

もちろんデメリットもある
オブジェクト指向 正しい設計を学ばないと、コードが複雑化
関数型 不変にこだわりすぎると、可読性やビルド時間に影響する
命令型 密結合で変更に弱く、バグが起こりやすい
宣言的UI 細かい制御が必要な複雑なアニメーションはまだ発展途上
どの思想/スタイルも決して万能ではなく、
弱点を理解した上で使い分けることが重要！


# Page. 10

![Page Image](https://bcdn.docswell.com/page/VJPPYX8QJ8.jpg)

まとめ
スマホアプリ言語は・・・
チーム開発・安全・高速・可読性
を両立するために、
複数の思想/スタイルをいいとこ取りしていた！！
※
トレードオフ（長所/短所）はもちろんある。


