iT邦幫忙

2021 iThome 鐵人賽

DAY 5
0
Software Development

使用Django Rest Framework, Docker, Docker Compose 製作後端服務應用系列 第 5

[Day5] - Django 介紹

現在開始要開始介紹我們使用的工具了,工欲善其事必先利其器,這一篇首先帶大家來了解一下我們要使用的Django 框架~

Django 是什麼?

Django 是一個非常熱門的Web框架,基於Python 程式語言進行開發。Django 一開始是為了快速建立新聞瀏覽網站而設計。透過Django 我們可以快速地建立網站,後端服務應用。

什麼是Web框架?

Web框架用於開發Web應用服務,Web 框架提供了開發Web 服務的流程及方式,並且根據常用到常見到的功能,會進行適合的設計,讓使用者可以更快速的開發出應用。
比如說現在的購物車都有會員管理的機制,那們我們不需要每寫一套購物車網站,就重新自己科一個會員系統,透過網站框架,把開發上,維運上之重點功能,進行設計,並且不斷得完善,讓使用者能夠更有效率的開發。

Django 設計理念

  1. 低耦合 -- 程式中不同 Layer 彼此不需要知道彼此的程式,也不需要互相依賴
  2. 更少的Code
  3. 快速開發
  4. 不用重複造輪子(DRY)
  5. 明確優於隱藏
  6. 一致性

Django 架構

有別於常聽到的MVC架構,
Django 採用的架構略微不同,Django 採用的是MTV架構。

  • M-Model 處理與資料庫相關的操作
  • T-Template 處理介面的呈現
  • V-View 處理業務邏輯

而簡單的流程圖如下:

https://ithelp.ithome.com.tw/upload/images/20210918/20140477lDXdRsQI1L.png

Why Django ?

我們都知道,程式語言五花八門,時不時就出來新的語言,而框架也是有許多的選擇。相信很多人一開始都會有選擇障礙,其實我一開始也會有點茫然。但是隨著開發的項目越來越多。自己慢慢覺得,其實沒有所謂最好的框架,只有最適合的框架,適合當前的團隊,適合當前的目標。因此我們其實需要去了解每個框架的優勢劣勢,並加以進行判斷。
而Django的優點:

  1. 開發快速
  2. 自備後台
  3. 有許多相應套件可以使用

在如今的程式黃金時代,可能一定比例的國中生都會寫Python的時代。比較惋惜的是大家滿多只會寫課本上或是書上教的習題,但是卻沒有踏入實際開發應用的這一步。透過學習使用Python可以幫助大家把程式的基礎學習推進到開發實戰,何樂而不為呢?


上一篇
[Day4] - RESTful API 介紹
下一篇
[Day6] - Django 起手式
系列文
使用Django Rest Framework, Docker, Docker Compose 製作後端服務應用30

尚未有邦友留言

立即登入留言