- SRP(Single Responsibility Principle)
- OCP(Open/Closed Principle)
- DIP(Dependency Inversion Principle)
// Logic for holding order data
public class Order {
private String orderId;
| // 1. แต่ละ table มีจำนวน row เท่าไร มี size ของข้อมูลเท่าไร | |
| SELECT relname AS table_name, | |
| pg_size_pretty(pg_total_relation_size(relid)) AS total_size, | |
| n_live_tup AS estimated_rows | |
| FROM pg_stat_user_tables | |
| ORDER BY pg_total_relation_size(relid) DESC; | |
| ตัวอย่างผลการทำงาน | |
| "customers" "20240 MB" |
| --- | |
| name: Neon Tokyo — Daybreak | |
| colors: | |
| surface: '#fcf8ff' | |
| surface-dim: '#d9d7f4' | |
| surface-bright: '#fcf8ff' | |
| surface-container-lowest: '#ffffff' | |
| surface-container-low: '#f5f2ff' | |
| surface-container: '#efecff' | |
| surface-container-high: '#e8e5ff' |
| @AnalyzeClasses(packages = "com.example.demoarch") | |
| public class ArchitectureTest { | |
| @ArchTest | |
| static final ArchRule layer_dependencies = layeredArchitecture() | |
| .consideringAllDependencies() | |
| .layer("Controller").definedBy("..controller..") | |
| .layer("Service").definedBy("..service..") | |
| .layer("Repository").definedBy("..repository..") |
| $brew install openai/tools/openai | |
| $openai -v | |
| openai version 1.1.2 | |
| //MAC or Linux | |
| $export OPENAI_API_KEY=<your key> | |
| // Windows | |
| $set OPENAI_API_KEY=<your key> |
| # Upgrade | |
| $bun upgrade | |
| $bun -version | |
| 1.3.13 | |
| # Create a new project | |
| $bun init demo | |
| ✓ Select a project template: Blank |
| // เรียกใช้งานผ่าน LiteLLM Proxy | |
| $curl -X POST 'http://127.0.0.1:4000/chat/completions' \ | |
| -H 'Content-Type: application/json' \ | |
| -H 'Authorization: Bearer dummy' \ | |
| -d '{ | |
| "model": "openthaigpt", | |
| "messages": [ | |
| {"role": "user", "content": "สวัสดี"} | |
| ] | |
| }' |
| // Version 1 : role | |
| await page.getByRole('button', { name: 'OK' }).click(); | |
| // Version 2 : role | |
| await page.getByRole('button', { name: 'Submit' }).click(); | |
| // Version 3 : role | |
| await page.getByRole('button', { name: 'Login' }).click(); | |
| $npm install -g mmx-cli | |
| $mmx | |
| ███╗ ███╗███╗ ███╗██╗ ██╗ | |
| ████╗ ████║████╗ ████║╚██╗██╔╝ | |
| ██╔████╔██║██╔████╔██║ ╚███╔╝ | |
| ██║╚██╔╝██║██║╚██╔╝██║ ██╔██╗ | |
| ██║ ╚═╝ ██║██║ ╚═╝ ██║██╔╝ ██╗ | |
| ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ |
| # ติดตั้ง และ ทำการ setup ผ่าน wizard แบบ step-by-step | |
| $pip install obsidian-llm-wiki | |
| $olw setup | |
| ╭────────────────────────────────────────────────────╮ | |
| │ obsidian-llm-wiki v0.2.0 · first run setup │ | |
| ╰────────────────────────────────────────────────────╯ | |
| Step 1/4 Ollama connection | |
| Warning: Could not reach http://localhost:11434 |