MenuBar
技術 †
長年開発していると、色々勉強したなー。
もう、古い技術とかあまり役立たないけど、
思い出すと結構おもしろい・・・ということで、ちょっとだけまとめてみる。
基礎・理論 †
構造化、開発手法、アーキテクチャ †
- 手続き型 (C, Rust)
- オブジェクト指向 (Java, C#, C++)
- コンポーネント指向 (C#, Vue.js, React, Angular), Spring, OSGi)
- アスペクト指向 (AspectJ)
- 宣言型 (SQL, React, etc.)
- 関数型 (Lisp, Scala, Haskell, OCaml, etc.)
- イベント駆動型 (Node.js, ウィンドウズプログラミング)
- 論理型 (Prolog)
- リアクティブ (Swift)
- AIネイティブ
- エージェント指向
- 階層型
- MVC
- マイクロサービス
- モノシリック
- ドメイン駆動
- クリーン
- etc...
なんか、ほとんど、ここ20-30年で出てきたり、流行りだしたり。
今から勉強する人は、さらに+αされていく?AIネイティブ、エージェント指向
もう、プログラムあまり関係なくなっていくんだろうか・・・。
AspectJ とか懐かしい。。。
React ・・なんか、リアクティブ言語じゃないよとか揉めてた時期もあったな。
OS、低レイヤー †
- カーネル
- デバイスドライバー
- BSP
- ファイルシステム
- 割り込み処理
- シグナル
- 仮想技術 (KVM, QEMU, LXD, Virtual Box, VMWare, Hyper-V, (WSL))
- コンテナ技術 (Vagrant, LXD, Multipass, Podman, SNAP, Docker, Kubernetes, etc.)
- クラウド (Public/Private)
ネットワーク †
- Ethernet
- Wi-Fi
- L2 (STP, LACP, VLAN, LLDP, ARP, PPP, PPPoE, HDLC, L2TP, etc.)
- SR/SRv6 (Segment Routing)
- MPLS
- L3
- HTTP/HTTPS
- QUIC
- WebSocket
- MQTT
- ECHONET (Lite)
- SMNP
- SLNP
- MODBUS
- DNS
- mDNS
- Telnet
- SSH
- [S]FTP
- SMTP[S]
- POP3 (もう、ほぼ廃止)
- IMAP
- MNET
- Finger
- NTP
- LDAP
- RTP
- BOOTP
- TFTP
- RPC
- OpenAdr
- Matter
- BACnet
- CEMP\TR-069
- LwM2M
DB †
- リレーショナル
- NOSQL
- Key Value Store
- カラム指向 (カサンドラとか)
- グラフDB (neo4j とか)
- 分散DB
セキュリティ †
分野 †
- 組み込み
- アプリ
- クラウド
- IoT
- インフラ(基幹ネットワーク含む)、建設
- 家電
- モビリティ
- 産業機器、FA
- 医療
- 決済
- 環境、エネルギー
- 農業
- ゲーム
- メディア処理
- GIS
うむ。いろいろありすぎてまとめにくい。。。
技術分野-1 †
- クラウド (Linux, Windows)
- オンプレミス (Linux, Windows, HP-UX, SunOS)
- モバイル (Android, iOS)
- PC (Linux, Windows)
- 組み込み [Linux 系]
- 組み込み [リアルタイムOS系(VxWorks, TRON, T-Kernel, FreeRTOS, etc.)]
- 組み込み [OS 無し、PICマイコン、etc.)]
- FPGA, CPLD
- ASIC
- ハードウェア
技術分野-2(通信) †
- 有線
- LAN (Ethernet)
- CAN (Controller Area Network)
- USB (Universal Serial Bus)
- シリアル (RS-485, RS-232C)
- PLC
- 有線(通信回路)
- I2S: 音声データ転送にて利用した
- 1-Wire: 温度センサー読取に利用
- I2C: いろいろ利用
- I3C; 使ったことはない。
- SPI: いろいろ利用
- UART: いろいろ利用
- MIPI: カメラ用で少しつかった
- PCI Express: 利用はよくするが、プログラムで制御は、昔一度だけ。
- SATA: 利用のみ
- SDIO: コマンド送って、SDカードの書き込み回数などの情報を読み取ったりした。
- JTAG: デバッグで。
- GPIO: いろいろ利用
- 無線
- Bluetooth
- NFC
- UWB
- Wi-Fi
- Zigbee
- Thread
- 5G/6G
- LoRa
- Wi-SUN
- 特定小電力無線
- 衛星通信
OS (インストールした程度のものも含む。) †
- Linux
- Debian 系
- Debian
- Ubuntu (Ubuntu, Kubuntu, Xubuntu, Lubuntu)
- Rapsberry Pi OS
- BackTrack
- Kali Linux
- Tails
- Devuan
- KNOPPIX
- Linux Mint
- RedHat 系
- RHEL
- Rocky Linux
- AlmaLinux
- Fedora
- Amazon Linux
- Oracle Linux
- CentOS
- Vine Linux
- Kondara MNU/Linux
- Momonga Linux
- Slackware 系
- Slackware
- Plamo Linux
- Pupppy Linux
- SUSE Linux 系
- Android 系
- Arch Linux
- Tiny Core Linux
- Gentoo Linux
- Azure Linux
- Apple 系
- BSD
- Windows
- UNIX系
- μITRON
- FreeRTOS
- Azure RTOS
- VxWorks
- QNX
今は、趣味は大抵 Debian 系使っているけど、
Kondara とか、Plamo とか使ってた頃は、あまり、xxx 系とか意識せずつかってたな。。。
SunOS とか使ってる頃、ブラウザビルドするのに、一日ぐらいビルドかかってたのが懐かしい。。。そもそもOSインストール自体、何日かかかったな・・・。