---
# System prepended metadata

title: 學習清單
tags: [Django, python, Database, 學習清單, 雜記, 記事]

---

# 學習清單
1-1. MVC(Model-View-Controller):
:::info
    1. Model: 軟體工程師在這裡編輯，包含演算法、資料管理、資料庫設計等等
    2. View: 介面設計師在此設計圖面與介面
    3. Controller: 
:::
1-2. MTV(Model-Template-View):
:::info
    1. Model: 建置物件各項屬性的階段。
    2. Template: 
    3. Views: 處理request和response的階段。
:::
2. Git:
:::info
    版本控制
:::
3. GitHub
:::info
    版本控制的集散地(雲端)
:::
4. JSON(JavaScript Object Notation)
:::info
    一種資料格式，常用於資料交換。
:::
5. HTML
:::info
    基本的網頁文件格式，用來表示結果的格式。
:::
6. HTTP(Hypertext Transfer Procotol，超文字傳輸協定)
:::info
    規範網頁的用戶端與伺服器，該如何交換請求與回應。
:::
7. URL(Uniform Resource Locator，統一資源定位符)
:::info
唯一的代表伺服器與伺服器上的資源的表示法
:::

網頁用戶端會用 *HTTP* 連接 *網頁伺服器* ，請求一個 *URL* ，並接收 *HTML*

8. Pandas
:::info
*      互動式資料分析的函式庫
*      常用來處理混亂資料(殘值漏字、古怪的格式、破碎的量測結果)的ELT工具。
:::
9. Django, Flask
:::info
    皆屬網頁框架
:::
10. Linux
:::info
    一種開源的作業系統的統稱，有各種發行版本。
:::
12. PySpark
:::info
    
:::
11. MySQL, PostgreSQL
:::info
    資料庫，且屬關聯資料庫
:::

12. NoSQL 
:::info
    非關聯資料庫
:::
13. Redis
:::info
    資料結構的伺服器
:::
14. 演算法
:::info
*     Graph
        Gale-Shapley
            BFS: Breadth-first search
            DFS: Deep-first search
            DAG: Directed Acyclic Graphs
*     Greedy Algorithms
*     Divide and Conquer
*     Dynamic programming with many appliccations
*     Flows and cuts in networks
*     Randomized algorithms
    
:::
16. 資料結構
:::info
    Array
    Matrix
:::
17. 單元測試
18. API: Application Programming Interface
19. ~~從JavaScript 學習細節?~~
19. TBD



額外內容
1. Object-oriented
2. Design Patterns
3. Micro Service
4. UML
5. Cluster
6. AZURE
7. AWS
8. LAMP 架構
9. key value data store
10. 工程數學:
    :::info
    *     Foirier Series
    *     Fourier Transformation
    :::
11. 矩陣運算
12. Hash Table
13. LeetCode
:::info
done
1. Two Sum
9. Palindrome Number
13. Roman to Integer

Pending
14. Longest Common Prefix: 可能要用matrix?
:::
15. SSH
16. Gitlab
